/*
Theme Name: Drupal 7 Gulp Starter Theme
Theme URI: https://github.com/lasseyls/Drupal-7-Starter-Theme
Description: Drupal 7 Gulp Starter Theme for use as a starting template for building custom themes.
Author: Lasse Moos
Author URI: http://www.yourlocalstudio.dk
License: GNU General Public License v2.0
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Version: 1.0
*/
/*
 * Mixin for easy media queries
 * @include bp(tablet) { SCSS here };
*/
/*
 * Mixin for micro clearfix
 * @include microclearfix;
*/
/*
 * Mixin for basic CSS triangles
 * @include triangle(up, #000, 50px)
*/
/*
 * @font-face mixin
 * Bulletproof font-face via Font Squirrel
 * @include fontface('family', 'assets/fonts/', 'myfontname');
 */
@font-face {
  font-family: 'icomoon';
  src: url("../fonts/icomoon.eot?dnp27k");
  src: url("../fonts/icomoon.eot?dnp27k#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf?dnp27k") format("truetype"), url("../fonts/icomoon.woff?dnp27k") format("woff"), url("../fonts/icomoon.svg?dnp27k#icomoon") format("svg");
  font-weight: normal;
  font-style: normal; }

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-user3:before {
  content: "\e90e"; }

.icon-copy:before {
  content: "\e90d"; }

.icon-users:before {
  content: "\e905"; }

.icon-user-plus:before {
  content: "\e906"; }

.icon-calendar-plus-o:before {
  content: "\e90b"; }

.icon-calendar:before {
  content: "\e90c"; }

.icon-log-out:before {
  content: "\e90a"; }

.icon-users:before {
  content: "\e905"; }

.icon-users2:before {
  content: "\e907"; }

.icon-user2:before {
  content: "\e908"; }

.icon-plus:before {
  content: "\e114"; }

.icon-circle-cross:before {
  content: "\e909"; }

.icon-menu:before {
  content: "\e904"; }

.icon-user:before {
  content: "\e902"; }

.icon-pen:before {
  content: "\e903"; }

.icon-location:before {
  content: "\e901"; }

.icon-note:before {
  content: "\e900"; }

/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Remove default margin.
 */
body {
  margin: 0; }

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none; }

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold; }

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic; }

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0; }

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px; }

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0; }

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto; }

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal; }

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  /* 2 */
  box-sizing: content-box; }

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto; }

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold; }

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */
/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */
html {
  color: #222;
  font-size: 1em;
  line-height: 1.4; }

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */
::-moz-selection {
  background: orange;
  text-shadow: none; }

::selection {
  background: orange;
  text-shadow: none; }

/*
 * A better looking default horizontal rule
 */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0; }

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */
audio,
canvas,
img,
svg,
video {
  vertical-align: middle; }

/*
 * Remove default fieldset styles.
 */
fieldset {
  border: 0;
  margin: 0;
  padding: 0; }

/*
 * Allow only vertical resizing of textareas.
 */
textarea {
  resize: vertical; }

/* ==========================================================================
   Browse Happy prompt
   ========================================================================== */
.browsehappy {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0; }

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
/* Alignment */
.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em; }

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em; }

.aligncenter {
  clear: both;
  display: block;
  margin: 0 auto; }

/* Text meant only for screen readers */
.assistive-text {
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important; }

/*
 * Box Sizing
 *
 * Set that shit to border-box, yo. And fix those pesky pseudo elements
 */
*,
:before,
:after {
  box-sizing: border-box; }

.grid {
  margin: 0 0 20px 0;
  *zoom: 1; }
  .grid:before, .grid:after {
    content: "";
    display: table; }
  .grid:after {
    clear: both; }

[class*='col-'] {
  float: left;
  padding-right: 20px; }
  .grid [class*='col-']:last-of-type {
    padding-right: 0; }

.col-1-2 {
  width: 50%; }

.col-1-3 {
  width: 33.33%; }

.col-2-3 {
  width: 66.66%; }

.col-1-4 {
  width: 25%; }

.col-3-4 {
  width: 75%; }

.col-1-8 {
  width: 12.5%; }

.col-7-8 {
  width: 87.5%; }

.module {
  padding: 20px; }

/* Opt-in outside padding */
.grid-pad {
  padding: 20px 0 20px 20px; }
  .grid-pad [class*='col-']:last-of-type {
    padding-right: 20px; }

/* GENERAL */
::-moz-selection {
  background: orange;
  text-shadow: none; }

::selection {
  background: orange;
  text-shadow: none; }

/* HEADINGS / TYPOGRAPHY */
h1,
h2,
h3,
h4 {
  font-weight: normal;
  margin: 0 0 10px 0; }

/* STRUCTURE */
#container {
  max-width: 1000px;
  margin: 20px auto; }

/* HEADER */
/* NAV */
/* MAIN */
/* SIDEBAR */
/* FOOTER */
/****************************************
PAGE TEMPLATES
*****************************************/
/* Home Page */
/* Blog Page */
/* POSTS */
article {
  clear: both;
  margin: 0 0 35px 0; }

blockquote {
  background: url(assets/images/icons/blockquote.png) no-repeat 0 12px;
  padding: 10px 20px 10px 50px;
  font-style: italic; }

.alignleft {
  float: left;
  width: auto;
  margin: 5px 15px 15px 0; }

.alignright {
  float: right;
  width: auto;
  margin: 5px 0 15px 15px; }

.aligncenter {
  text-align: center;
  margin-bottom: 5px; }

img.aligncenter {
  margin-left: auto;
  margin-right: auto;
  display: block; }

/* SHARING */
.sharing h4 {
  margin-bottom: 0;
  padding-bottom: 0; }

.sharing ul {
  list-style: none;
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 5px;
  padding-bottom: 0; }

.sharing li {
  float: left; }

.sharing li:first-child {
  padding-left: 0; }

.sharing .share-twitter {
  padding-top: 1px; }

.sharing .share-facebook {
  padding-top: 1px; }

.sharing .share-googleplus {
  margin-left: 30px; }

/* POST NAVIGATION */
/* BLOCKS */
/* SEARCH */
/* FORMS */
/* ==========================================================================
   Helper classes
   ========================================================================== */
/*
 * Image replacement
 */
.ir {
  background-color: transparent;
  border: 0;
  overflow: hidden;
  /* IE 6/7 fallback */
  *text-indent: -9999px; }

.ir:before {
  content: "";
  display: block;
  width: 0;
  height: 150%; }

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */
.hidden {
  display: none !important;
  visibility: hidden; }

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }

/*
 * Hide visually and from screenreaders, but maintain layout
 */
.invisible {
  visibility: hidden; }

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */ }

.clearfix:after {
  clear: both; }

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */
.clearfix {
  *zoom: 1; }

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */
@media print {
  * {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster: h5bp.com/s */
    box-shadow: none !important;
    text-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  /*
     * Don't show links for images, or javascript/internal links
     */
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group;
    /* h5bp.com/t */ }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; } }

/* General styles for all menus */
.cbp-spmenu {
  background: #47a3da;
  position: fixed; }

.cbp-spmenu h3 {
  color: #afdefa;
  font-size: 1.9em;
  padding: 20px;
  margin: 0;
  font-weight: 300;
  background: #0d77b6; }

.cbp-spmenu a {
  display: block;
  color: #fff;
  font-size: 1.1em;
  font-weight: 300; }

.cbp-spmenu a:hover {
  background: #258ecd; }

.cbp-spmenu a:active {
  background: #afdefa;
  color: #47a3da; }

/* Orientation-dependent styles for the content of the menu */
.cbp-spmenu-vertical {
  width: 240px;
  height: 100%;
  top: 0;
  z-index: 1000; }

.cbp-spmenu-vertical a {
  border-bottom: 1px solid #258ecd;
  padding: 1em; }

.cbp-spmenu-horizontal {
  width: 100%;
  height: 150px;
  left: 0;
  z-index: 1000;
  overflow: hidden; }

.cbp-spmenu-horizontal h3 {
  height: 100%;
  width: 20%;
  float: left; }

.cbp-spmenu-horizontal a {
  float: left;
  width: 20%;
  padding: 0.8em;
  border-left: 1px solid #258ecd; }

/* Vertical menu that slides from the left or right */
.cbp-spmenu-left {
  left: -240px; }

.cbp-spmenu-right {
  right: -240px; }

.cbp-spmenu-left.cbp-spmenu-open {
  left: 0px; }

.cbp-spmenu-right.cbp-spmenu-open {
  right: 0px; }

/* Horizontal menu that slides from the top or bottom */
.cbp-spmenu-top {
  top: -150px; }

.cbp-spmenu-bottom {
  bottom: -150px; }

.cbp-spmenu-top.cbp-spmenu-open {
  top: 0px; }

.cbp-spmenu-bottom.cbp-spmenu-open {
  bottom: 0px; }

/* Push classes applied to the body */
.cbp-spmenu-push {
  overflow-x: hidden;
  position: relative;
  left: 0; }

.cbp-spmenu-push-toright {
  left: 240px; }

.cbp-spmenu-push-toleft {
  left: -240px; }

/* Transitions */
.cbp-spmenu,
.cbp-spmenu-push {
  transition: all 0.3s ease; }

/* Example media queries */
@media screen and (max-width: 55.1875em) {
  .cbp-spmenu-horizontal {
    font-size: 75%;
    height: 110px; }
  .cbp-spmenu-top {
    top: -110px; }
  .cbp-spmenu-bottom {
    bottom: -110px; } }

@media screen and (max-height: 26.375em) {
  .cbp-spmenu-vertical {
    font-size: 90%;
    width: 190px; }
  .cbp-spmenu-left,
  .cbp-spmenu-push-toleft {
    left: -190px; }
  .cbp-spmenu-right {
    right: -190px; }
  .cbp-spmenu-push-toright {
    left: 190px; } }

#header {
  background: #e0e0d8;
  min-height: 60px; }

#main {
  margin: 40px; }

.page-kaart #main {
  margin: 0; }

.front #main {
  margin: 0; }

.cbp-spmenu a {
  text-decoration: none; }

.pane-system-main-menu {
  position: absolute; }

.cbp-spmenu-vertical {
  z-index: 9999; }

.cbp-spmenu-push {
  overflow-x: visible; }

i.icon {
  padding-right: 1em; }

#showLeft {
  position: absolute;
  font-size: 1.9em;
  padding: 20px;
  right: 0;
  top: 0;
  background: none;
  border: none;
  color: #afdefa; }
  #showLeft:hover {
    color: white; }
  #showLeft i {
    padding-right: 0; }

#showLeft2 {
  font-size: 1.9em;
  position: relative;
  border: 1px solid #0074BD;
  border-radius: 8px;
  padding: 5px 10px;
  top: 10px;
  left: 10px;
  text-transform: uppercase;
  transition: all 0.4s ease; }
  @media all and (max-width: 600px) {
    #showLeft2 {
      font-size: 1em; } }
  #showLeft2:hover {
    color: white;
    background: #0074BD;
    text-decoration: none; }

.page-home #main {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

#header h2 {
  width: 100%;
  text-align: center;
  padding: 0;
  margin: 0;
  padding-top: 20px;
  font-size: 1.8em;
  text-transform: uppercase; }
  @media all and (max-width: 650px) {
    #header h2 {
      font-size: 1.4em;
      text-align: right;
      padding-right: 20px; } }
  @media all and (max-width: 400px) {
    #header h2 {
      font-size: 1em; } }

h1 {
  text-transform: uppercase; }

.view-articles table,
.view-veldbezoek table {
  font-size: 0.85em; }

.view-articles .views-field-field-datum,
.view-veldbezoek .views-field-field-datum {
  min-width: 9em; }

.view-articles .views-field-field-groepsgrootte-mensen,
.view-articles .views-field-field-groepsgrootte-wisenten,
.view-veldbezoek .views-field-field-groepsgrootte-mensen,
.view-veldbezoek .views-field-field-groepsgrootte-wisenten {
  max-width: 8em; }

.view-articles .views-field-field-gedrag-mens,
.view-veldbezoek .views-field-field-gedrag-mens {
  min-width: 10em; }

.view-articles .views-field-field-notities,
.view-veldbezoek .views-field-field-notities {
  width: 20%; }

fieldset {
  border: 1px solid #ccc;
  padding: 2.5em 0 0 0;
  /* LTR */
  position: relative;
  margin: 1em 0; }

input.form-autocomplete, input.form-text, input.form-file, textarea.form-textarea, select.form-select {
  max-width: 100%;
  width: 100%; }

.view-veldbezoek .view-content,
.view-documenten .view-content,
.view-articles .view-content {
  display: block;
  overflow: scroll;
  max-width: 100%; }

form.node-logboek_entree-form #main {
  max-width: 800px; }
  @media all and (min-width: 840px) {
    form.node-logboek_entree-form #main {
      margin: 40px auto; } }

.page-node-edit form.node-logboek_entree-form .panel-2col-stacked .panel-col-last,
.page-node-edit form.node-logboek_entree-form .panel-2col-stacked .panel-col-last,
.page-node-add form.node-logboek_entree-form .panel-2col-stacked .panel-col-last,
.page-node-add form.node-logboek_entree-form .panel-2col-stacked .panel-col-last {
  float: none;
  width: 100%; }

.page-node-edit form.node-logboek_entree-form .panel-2col-stacked .panel-col-first,
.page-node-edit form.node-logboek_entree-form .panel-2col-stacked .panel-col-first,
.page-node-add form.node-logboek_entree-form .panel-2col-stacked .panel-col-first,
.page-node-add form.node-logboek_entree-form .panel-2col-stacked .panel-col-first {
  float: none;
  width: 100%; }

.node-type-logboek-entree .description,
.page-node-add-logboek-entree .description {
  color: red !important; }

.node-type-logboek-entree fieldset .description,
.page-node-add-logboek-entree fieldset .description {
  color: inherit !important; }

.node-type-logboek-entree fieldset,
.page-node-add-logboek-entree fieldset {
  border: none;
  margin: 0;
  padding: 0; }
  .node-type-logboek-entree fieldset .fieldset-wrapper,
  .page-node-add-logboek-entree fieldset .fieldset-wrapper {
    *zoom: 1;
    padding: 0; }
    .node-type-logboek-entree fieldset .fieldset-wrapper:before, .node-type-logboek-entree fieldset .fieldset-wrapper:after,
    .page-node-add-logboek-entree fieldset .fieldset-wrapper:before,
    .page-node-add-logboek-entree fieldset .fieldset-wrapper:after {
      content: "";
      display: table; }
    .node-type-logboek-entree fieldset .fieldset-wrapper:after,
    .page-node-add-logboek-entree fieldset .fieldset-wrapper:after {
      clear: both; }
  .node-type-logboek-entree fieldset .fieldset-legend,
  .page-node-add-logboek-entree fieldset .fieldset-legend {
    position: relative;
    padding: 0;
    margin: 0;
    text-transform: none;
    font-size: 1.2em;
    margin-bottom: 1em; }

.node-type-logboek-entree .form-item label,
.page-node-add-logboek-entree .form-item label {
  font-size: 1.2em;
  margin-bottom: 1em; }

.node-type-logboek-entree .form-item .form-type-date-select label,
.page-node-add-logboek-entree .form-item .form-type-date-select label {
  font-size: inherit;
  margin-bottom: 0;
  margin-top: 0; }

.node-type-logboek-entree fieldset .form-item label,
.page-node-add-logboek-entree fieldset .form-item label {
  font-size: inherit;
  margin-bottom: 0;
  margin-top: 0; }

.node-type-logboek-entree h2.pane-title,
.page-node-add-logboek-entree h2.pane-title {
  font-weight: 600; }

.node-type-logboek-entree .field-type-number-integer input,
.page-node-add-logboek-entree .field-type-number-integer input {
  width: 100px; }

.form-item-field-time-und-0-value input,
.form-item-field-time-und-0-value2 input {
  width: 80px; }

.form-item-field-time-und-0-value,
.form-item-field-time-und-0-value2 {
  float: left;
  padding-right: 30px; }

#ui-timepicker-div *,
#ui-timepicker-div :before,
#ui-timepicker-div :after {
  box-sizing: content-box; }

.tabs {
  *zoom: 1;
  border-bottom: 1px solid #a6a7a2; }
  .tabs:before, .tabs:after {
    content: "";
    display: table; }
  .tabs:after {
    clear: both; }

.view-nieuw-logboek table td {
  vertical-align: top; }

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInd0c3R5bGUuc2NzcyIsInBhcnRpYWxzL19taXhpbnMuc2NzcyIsInBhcnRpYWxzL192YXJpYWJsZXMuc2NzcyIsInd0c3R5bGUuY3NzIiwicGFydGlhbHMvX25vcm1hbGl6ZS5zY3NzIiwicGFydGlhbHMvX2dsb2JhbC5zY3NzIiwicGFydGlhbHMvX2dyaWQuc2NzcyIsInBhcnRpYWxzL19wYWdlLnNjc3MiLCJwYXJ0aWFscy9fcG9zdHMuc2NzcyIsInBhcnRpYWxzL19ibG9ja3Muc2NzcyIsInBhcnRpYWxzL19zZWFyY2guc2NzcyIsInBhcnRpYWxzL19mb3Jtcy5zY3NzIiwicGFydGlhbHMvX2hlbHBlcnMuc2NzcyIsInBhcnRpYWxzL19wcmludC5zY3NzIiwicGFydGlhbHMvX21lbnUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7O0VBU0U7QUNURjs7O0VBR0U7QUFhRjs7O0VBR0U7QUFPRjs7O0VBR0U7QUFnQ0Y7Ozs7R0FJRztBQzlESDtFQUNJLHVCQUF1QjtFQUN2Qix3Q0FBVztFQUNYLCtPQUdxRDtFQUNyRCxvQkFBb0I7RUFDcEIsbUJBQW1CLEVBQUE7O0FDdUJ2QjtFRG5CSSxnRkFBZ0Y7RUFDaEYsa0NBQWtDO0VBQ2xDLFlBQVk7RUFDWixtQkFBbUI7RUFDbkIsb0JBQW9CO0VBQ3BCLHFCQUFxQjtFQUNyQixxQkFBcUI7RUFDckIsZUFBZTtFQUVmLHVDQUF1QztFQUN2QyxvQ0FBb0M7RUFDcEMsbUNBQW1DLEVBQ3RDOztBQUVEO0VBQ0ksaUJBQWlCLEVBQ3BCOztBQUNEO0VBQ0ksaUJBQWlCLEVBQ3BCOztBQUNEO0VBQ0ksaUJBQWlCLEVBQ3BCOztBQUNEO0VBQ0ksaUJBQWlCLEVBQ3BCOztBQUNEO0VBQ0ksaUJBQWlCLEVBQ3BCOztBQUNEO0VBQ0ksaUJBQWlCLEVBQ3BCOztBQUNEO0VBQ0ksaUJBQWlCLEVBQ3BCOztBQUNEO0VBQ0ksaUJBQWlCLEVBQ3BCOztBQUNEO0VBQ0ksaUJBQWlCLEVBQ3BCOztBQUNE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OztFQUtJLFlBQVk7RUFDWixZQUFZLEVBQ2Y7O0FBUEQ7Ozs7RUFVSSxZQUFZO0VBQ1osWUFBWSxFQUNmOztBQUlEOztFQUlJLHNCQUFxQixFQUN4Qjs7QUFMRDs7RUFPSSwwQkFBeUIsRUFDNUI7O0FBUkQ7O0VBVUksYUFBYTtFQUNiLFVBQVU7RUFDVixXQUFXLEVBYWQ7RUF6QkQ7O0tDMUxDLFFBQVM7SUR5TUYsV0FBVyxFQUNkO0lBaEJMOzs7TUM1THFCLFlBQVk7TUFBRSxlQUFlLEVBQUk7SUQ0THREOztNQzNMVyxZQUFZLEVBQUk7RUQyTDNCOztJQWtCUSxtQkFBbUI7SUFDbkIsV0FBVztJQUNYLFVBQVU7SUFDVixxQkFBcUI7SUFDakIsaUJBQWlCO0lBQ3pCLG1CQUFtQixFQUNsQjs7QUF4Qkw7O0VBNkJJLGlCQUFpQjtFQUNqQixtQkFBbUIsRUFDdEI7O0FBL0JEOztFQWlDUSxtQkFBbUI7RUFDbkIsaUJBQWlCO0VBQ2pCLGNBQWMsRUFDakI7O0FBcENMOztFQXdDUSxtQkFBbUI7RUFDbkIsaUJBQWlCO0VBQ2pCLGNBQWMsRUFDakI7O0FBM0NMOztFQTZDSSxpQkFBaUIsRUFDcEI7O0FBOUNEOztFQWdESSxhQUFZLEVBQ2Y7O0FBSUQ7O0VBRUksWUFBVyxFQUVkOztBQUNEOztFQUVJLFlBQVc7RUFDWCxvQkFBb0IsRUFDdkI7O0FBRUQ7OztFQUlJLHdCQUF3QixFQUMzQjs7QUFJRDtHQ25RQyxRQUFTO0VEcVFOLGlDQUFpQyxFQUNwQztFQUhEO0lDclFxQixZQUFZO0lBQUUsZUFBZSxFQUFJO0VEcVF0RDtJQ3BRVyxZQUFZLEVBQUk7O0FEeVEzQjtFQUNJLG9CQUFvQixFQUN2QiIsImZpbGUiOiJ3dHN0eWxlLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG5UaGVtZSBOYW1lOiBEcnVwYWwgNyBHdWxwIFN0YXJ0ZXIgVGhlbWVcblRoZW1lIFVSSTogaHR0cHM6Ly9naXRodWIuY29tL2xhc3NleWxzL0RydXBhbC03LVN0YXJ0ZXItVGhlbWVcbkRlc2NyaXB0aW9uOiBEcnVwYWwgNyBHdWxwIFN0YXJ0ZXIgVGhlbWUgZm9yIHVzZSBhcyBhIHN0YXJ0aW5nIHRlbXBsYXRlIGZvciBidWlsZGluZyBjdXN0b20gdGhlbWVzLlxuQXV0aG9yOiBMYXNzZSBNb29zXG5BdXRob3IgVVJJOiBodHRwOi8vd3d3LnlvdXJsb2NhbHN0dWRpby5ka1xuTGljZW5zZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdjIuMFxuTGljZW5zZSBVUkk6IGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwtMi4wLmh0bWxcblZlcnNpb246IDEuMFxuKi9cblxuLy8gUmVzZXQsIFZhcmlhYmxlcywgTWl4aW5zLCBFdGNcbi8vIERPIE5PVCBFRElUIE9SREVSIE9GIEZJTEVTXG5AaW1wb3J0IFwicGFydGlhbHMvbWl4aW5zXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvbm9ybWFsaXplXCI7XG5cbi8vIEdsb2JhbHNcbkBpbXBvcnQgXCJwYXJ0aWFscy9nbG9iYWxcIjtcblxuLy8gVGhlIGdyaWRcbkBpbXBvcnQgXCJwYXJ0aWFscy9ncmlkXCI7XG5cbi8vIFBhZ2UgYW5kIFNpdGUgU3R5bGVzXG5AaW1wb3J0IFwicGFydGlhbHMvcGFnZVwiO1xuQGltcG9ydCBcInBhcnRpYWxzL3Bvc3RzXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvYmxvY2tzXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvc2VhcmNoXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvZm9ybXNcIjtcblxuLy8gSGVscGVyIENsYXNzZXMsIFByaW50LCBFdGNcbkBpbXBvcnQgXCJwYXJ0aWFscy9oZWxwZXJzXCI7XG5AaW1wb3J0IFwicGFydGlhbHMvcHJpbnRcIjtcbkBpbXBvcnQgXCJwYXJ0aWFscy9tZW51XCI7XG5cbiNoZWFkZXIge1xuICAgIGJhY2tncm91bmQ6I2UwZTBkODtcbiAgICBtaW4taGVpZ2h0OjYwcHg7XG59XG4jbWFpbiB7XG4gICAgbWFyZ2luOiA0MHB4O1xufVxuLnBhZ2Uta2FhcnQgI21haW4ge1xuICAgIG1hcmdpbjogMDtcbn1cbi5mcm9udCAjbWFpbiB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4uY2JwLXNwbWVudSB7XG5cbiAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbn1cblxuLnBhbmUtc3lzdGVtLW1haW4tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cblxuLmNicC1zcG1lbnUtdmVydGljYWwge1xuICAgIHotaW5kZXg6IDk5OTk7XG59XG4uY2JwLXNwbWVudS1wdXNoIHtcbiAgICBvdmVyZmxvdy14OnZpc2libGU7XG59XG5cbmkuaWNvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMWVtO1xufVxuXG4jc2hvd0xlZnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBmb250LXNpemU6IDEuOWVtO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgcmlnaHQ6MDtcbiAgICB0b3A6MDtcbiAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgYm9yZGVyOm5vbmU7XG4gICAgY29sb3I6ICNhZmRlZmE7XG4gICAgJjpob3ZlciB7XG4gICAgY29sb3I6d2hpdGU7XG59XG4gICAgaSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxufVxuXG4jc2hvd0xlZnQyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjllbTtcbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDo2MDBweCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIH1cbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3JkZXI6MXB4IHNvbGlkICMwMDc0QkQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICAgIHRvcDoxMHB4O1xuICAgICAgICBsZWZ0OjEwcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2U7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDc0QkQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cblxuXG5cbn1cblxuLnBhZ2UtaG9tZSAjbWFpbiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4jaGVhZGVyIGgyICB7XG4gICAgd2lkdGg6MTAwJTtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBmb250LXNpemU6IDEuOGVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDo2NTBweCkge1xuICAgICAgICBmb250LXNpemU6IDEuNGVtO1xuICAgICAgICB0ZXh0LWFsaWduOnJpZ2h0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIH1cbiAgICAgICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDo0MDBweCkge1xuICAgICAgICBmb250LXNpemU6IDFlbTtcblxuICAgIH1cbn1cblxuaDEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi52aWV3LWFydGljbGVzLFxuLnZpZXctdmVsZGJlem9layB7XG4gICAgdGFibGUge1xuICAgICAgICBmb250LXNpemU6IDAuODVlbTtcbiAgICB9XG4gICAgLnZpZXdzLWZpZWxkLWZpZWxkLWRhdHVtIHtcbiAgICAgICAgbWluLXdpZHRoOiA5ZW07XG4gICAgfVxuICAgIC52aWV3cy1maWVsZC1maWVsZC1ncm9lcHNncm9vdHRlLW1lbnNlbixcbiAgICAudmlld3MtZmllbGQtZmllbGQtZ3JvZXBzZ3Jvb3R0ZS13aXNlbnRlbiB7XG4gICAgICAgIG1heC13aWR0aDo4ZW07XG4gICAgfVxuICAgIC52aWV3cy1maWVsZC1maWVsZC1nZWRyYWctbWVucyB7XG4gICAgICAgIG1pbi13aWR0aDoxMGVtO1xuICAgIH1cbiAgICAudmlld3MtZmllbGQtZmllbGQtbm90aXRpZXMge1xuICAgICAgICB3aWR0aDoyMCU7XG4gICAgfVxufVxuXG5maWVsZHNldCB7XG5ib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xucGFkZGluZzogMi41ZW0gMCAwIDA7XG4vKiBMVFIgKi9cbnBvc2l0aW9uOiByZWxhdGl2ZTtcbm1hcmdpbjogMWVtIDA7XG59XG5cbmlucHV0LmZvcm0tYXV0b2NvbXBsZXRlLCBpbnB1dC5mb3JtLXRleHQsIGlucHV0LmZvcm0tZmlsZSwgdGV4dGFyZWEuZm9ybS10ZXh0YXJlYSwgc2VsZWN0LmZvcm0tc2VsZWN0IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6MTAwJTtcbn1cblxuLnZpZXctdmVsZGJlem9layxcbi52aWV3LWRvY3VtZW50ZW4sXG4udmlldy1hcnRpY2xlcyB7XG4gICAgLnZpZXctY29udGVudCB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBvdmVyZmxvdzpzY3JvbGw7XG4gICAgbWF4LXdpZHRoOjEwMCU7XG59XG59XG5cbmZvcm0ubm9kZS1sb2dib2VrX2VudHJlZS1mb3JtICNtYWlue1xuICAgIG1heC13aWR0aDo4MDBweDtcbiAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOjg0MHB4KSB7XG4gICAgICAgIG1hcmdpbjo0MHB4IGF1dG87XG4gICAgfVxufVxuXG4ucGFnZS1ub2RlLWVkaXQsXG4ucGFnZS1ub2RlLWFkZCB7XG5mb3JtLm5vZGUtbG9nYm9la19lbnRyZWUtZm9ybSB7XG4gLnBhbmVsLTJjb2wtc3RhY2tlZCAucGFuZWwtY29sLWxhc3QsXG4gLnBhbmVsLTJjb2wtc3RhY2tlZCAucGFuZWwtY29sLWxhc3Qge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuIC5wYW5lbC0yY29sLXN0YWNrZWQgLnBhbmVsLWNvbC1maXJzdCxcbiAucGFuZWwtMmNvbC1zdGFja2VkIC5wYW5lbC1jb2wtZmlyc3R7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG59XG59XG59XG5cbi5ub2RlLXR5cGUtbG9nYm9lay1lbnRyZWUsXG4ucGFnZS1ub2RlLWFkZC1sb2dib2VrLWVudHJlZSB7XG5cbiAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICBjb2xvcjpyZWQgIWltcG9ydGFudDtcbn1cbiBmaWVsZHNldCAuZGVzY3JpcHRpb24ge1xuICAgIGNvbG9yOmluaGVyaXQgIWltcG9ydGFudDtcbn1cbmZpZWxkc2V0IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLmZpZWxkc2V0LXdyYXBwZXIge1xuICAgICAgICBAaW5jbHVkZSBtaWNyb2NsZWFyZml4ICgpO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICAuZmllbGRzZXQtbGVnZW5kIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgfVxufVxuLmZvcm0taXRlbSB7XG5cbiAgICAgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuICAgIC5mb3JtLXR5cGUtZGF0ZS1zZWxlY3QgbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG59XG4gICAgZmllbGRzZXQgLmZvcm0taXRlbSBsYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5oMi5wYW5lLXRpdGxlIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuLmZpZWxkLXR5cGUtbnVtYmVyLWludGVnZXIgaW5wdXQge1xuICAgIHdpZHRoOjEwMHB4O1xufVxuXG59XG5cbi5mb3JtLWl0ZW0tZmllbGQtdGltZS11bmQtMC12YWx1ZSBpbnB1dCxcbi5mb3JtLWl0ZW0tZmllbGQtdGltZS11bmQtMC12YWx1ZTIgaW5wdXQge1xuICAgIHdpZHRoOjgwcHg7XG5cbn1cbi5mb3JtLWl0ZW0tZmllbGQtdGltZS11bmQtMC12YWx1ZSxcbi5mb3JtLWl0ZW0tZmllbGQtdGltZS11bmQtMC12YWx1ZTJ7XG4gICAgZmxvYXQ6bGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xufVxuXG4jdWktdGltZXBpY2tlci1kaXYge1xuICAgICosXG46YmVmb3JlLFxuOmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxufVxuXG4udGFicyB7XG4gICAgQGluY2x1ZGUgbWljcm9jbGVhcmZpeCgpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYTZhN2EyOztcbn1cblxuLnZpZXctbmlldXctbG9nYm9layB0YWJsZSB0ZCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuXG5cbiIsIi8qXG4gKiBNaXhpbiBmb3IgZWFzeSBtZWRpYSBxdWVyaWVzXG4gKiBAaW5jbHVkZSBicCh0YWJsZXQpIHsgU0NTUyBoZXJlIH07XG4qL1xuQG1peGluIGJwKCRwb2ludCkge1xuXHRAaWYgJHBvaW50ID09IGJpZ2dpZSB7XG5cdFx0QG1lZGlhIChtYXgtd2lkdGggOiAxNjAwcHgpIHsgQGNvbnRlbnQ7IH1cblx0fVxuXHRAaWYgJHBvaW50ID09IHRhYmxldCB7XG5cdFx0QG1lZGlhIChtYXgtd2lkdGggOiAxMDI0cHgpIHsgQGNvbnRlbnQ7IH1cblx0fVxuXHRAZWxzZSBpZiAkcG9pbnQgPT0gcGhvbmUge1xuXHRcdEBtZWRpYSAobWF4LXdpZHRoIDogNzY4cHgpIHsgQGNvbnRlbnQ7IH1cblx0fVxufVxuXG4vKlxuICogTWl4aW4gZm9yIG1pY3JvIGNsZWFyZml4XG4gKiBAaW5jbHVkZSBtaWNyb2NsZWFyZml4O1xuKi9cbkBtaXhpbiBtaWNyb2NsZWFyZml4IHtcblx0JjpiZWZvcmUsICY6YWZ0ZXIgeyBjb250ZW50OiBcIlwiOyBkaXNwbGF5OiB0YWJsZTsgfVxuXHQmOmFmdGVyIHsgY2xlYXI6IGJvdGg7IH1cblx0Knpvb206IDE7XG59XG5cbi8qXG4gKiBNaXhpbiBmb3IgYmFzaWMgQ1NTIHRyaWFuZ2xlc1xuICogQGluY2x1ZGUgdHJpYW5nbGUodXAsICMwMDAsIDUwcHgpXG4qL1xuQG1peGluIHRyaWFuZ2xlKCRkaXJlY3Rpb246dXAsICRjb2xvcjojMDAwLCAkc2l6ZToxMDBweCkge1xuXHRAaWYoJGRpcmVjdGlvbiA9PSB1cCkge1xuXHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJGNvbG9yO1xuXHRcdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdFx0Ym9yZGVyLXdpZHRoOiAwICRzaXplICRzaXplO1xuXHRcdGhlaWdodDogMDtcblx0XHR3aWR0aDogMDtcblx0fVxuXHRAaWYoJGRpcmVjdGlvbiA9PSBkb3duKSB7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG5cdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0XHRib3JkZXItd2lkdGg6ICRzaXplO1xuXHRcdGhlaWdodDowO1xuXHRcdHdpZHRoOjA7XG5cdH1cblx0QGlmKCRkaXJlY3Rpb24gPT0gbGVmdCkge1xuXHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJGNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuXHRcdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdFx0Ym9yZGVyLXdpZHRoOiAkc2l6ZSAkc2l6ZSAkc2l6ZSAwO1xuXHRcdGhlaWdodDogMDtcblx0XHR3aWR0aDogMDtcblx0fVxuXHRAaWYoJGRpcmVjdGlvbiA9PSByaWdodCkge1xuXHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJGNvbG9yO1xuXHRcdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdFx0Ym9yZGVyLXdpZHRoOiAkc2l6ZSAwICRzaXplICRzaXplO1xuXHRcdGhlaWdodDowO1xuXHRcdHdpZHRoOjA7XG5cdH1cbn1cblxuLypcbiAqIEBmb250LWZhY2UgbWl4aW5cbiAqIEJ1bGxldHByb29mIGZvbnQtZmFjZSB2aWEgRm9udCBTcXVpcnJlbFxuICogQGluY2x1ZGUgZm9udGZhY2UoJ2ZhbWlseScsICdhc3NldHMvZm9udHMvJywgJ215Zm9udG5hbWUnKTtcbiAqL1xuXG5AbWl4aW4gZm9udGZhY2UoJGZvbnQtZmFtaWx5LCAkZm9udC11cmwsICRmb250LW5hbWUpIHtcblx0QGZvbnQtZmFjZSB7XG5cdFx0Zm9udDoge1xuXHRcdFx0ZmFtaWx5OiAkZm9udC1mYW1pbHk7XG5cdFx0XHRzdHlsZTogbm9ybWFsO1xuXHRcdFx0d2VpZ2h0OiBub3JtYWw7XG5cdFx0fVxuXHRcdHNyYzogdXJsKCRmb250LXVybCArICcvJyArICRmb250LW5hbWUgKyAnLmVvdCcpO1xuXHRcdHNyYzogdXJsKCRmb250LXVybCArICcvJyArICRmb250LW5hbWUgKyAnLmVvdCNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcblx0XHRcdCB1cmwoJGZvbnQtdXJsICsgJy8nICsgJGZvbnQtbmFtZSArICcud29mZicpIGZvcm1hdCgnd29mZicpLFxuXHRcdFx0IHVybCgkZm9udC11cmwgKyAnLycgKyAkZm9udC1uYW1lICsgJy50dGYnKSAgZm9ybWF0KCd0cnVldHlwZScpLFxuXHRcdFx0IHVybCgkZm9udC11cmwgKyAnLycgKyAkZm9udC1uYW1lICsgJy5zdmcjJyArICRmb250LW5hbWUpIGZvcm1hdCgnc3ZnJyk7XG5cdH1cbn1cbiIsIi8vIEZvbnQgRmFjZVxuLy8gQGluY2x1ZGUgZm9udGZhY2UoJ0ZPTlRfTkFNRScsICdhc3NldHMvZm9udHMvJywgJ0ZPTlRfRkFNSUxZJyk7XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gICAgc3JjOiAgICB1cmwoJy4uL2ZvbnRzL2ljb21vb24uZW90P2RucDI3aycpO1xuICAgIHNyYzogICAgdXJsKCcuLi9mb250cy9pY29tb29uLmVvdD9kbnAyN2sjaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgICAgIHVybCgnLi4vZm9udHMvaWNvbW9vbi50dGY/ZG5wMjdrJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgICAgICB1cmwoJy4uL2ZvbnRzL2ljb21vb24ud29mZj9kbnAyN2snKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgdXJsKCcuLi9mb250cy9pY29tb29uLnN2Zz9kbnAyN2sjaWNvbW9vbicpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbltjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgICBmb250LWZhbWlseTogJ2ljb21vb24nICFpbXBvcnRhbnQ7XG4gICAgc3BlYWs6IG5vbmU7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4uaWNvbi11c2VyMzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTBlXCI7XG59XG4uaWNvbi1jb3B5OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MGRcIjtcbn1cbi5pY29uLXVzZXJzOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MDVcIjtcbn1cbi5pY29uLXVzZXItcGx1czpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTA2XCI7XG59XG4uaWNvbi1jYWxlbmRhci1wbHVzLW86YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkwYlwiO1xufVxuLmljb24tY2FsZW5kYXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkwY1wiO1xufVxuLmljb24tbG9nLW91dDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTBhXCI7XG59XG4uaWNvbi11c2VyczpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTA1XCI7XG59XG4uaWNvbi11c2VyczI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkwN1wiO1xufVxuLmljb24tdXNlcjI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkwOFwiO1xufVxuLmljb24tcGx1czpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlMTE0XCI7XG59XG4uaWNvbi1jaXJjbGUtY3Jvc3M6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkwOVwiO1xufVxuLmljb24tbWVudTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTA0XCI7XG59XG4uaWNvbi11c2VyOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MDJcIjtcbn1cbi5pY29uLXBlbjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTAzXCI7XG59XG4uaWNvbi1sb2NhdGlvbjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XG59XG4uaWNvbi1ub3RlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGU5MDBcIjtcbn1cblxuXG5cblxuLy8gU3RydWN0dXJlXG4kcGFnZVdpZHRoOiAxMDAwcHg7XG5cbi8vIFRleHQgU2VsZWN0aW9uXG4kc2VsZWN0aW9uQ29sb3I6IG9yYW5nZTtcblxuLy8gTGlua3NcbiRsaW5rQ29sb3I6IGJsdWU7XG4kbGlua0hvdmVyQ29sb3I6IGJsdWU7XG5cbi8vIE90aGVyXG4iLCIvKlxuVGhlbWUgTmFtZTogRHJ1cGFsIDcgR3VscCBTdGFydGVyIFRoZW1lXG5UaGVtZSBVUkk6IGh0dHBzOi8vZ2l0aHViLmNvbS9sYXNzZXlscy9EcnVwYWwtNy1TdGFydGVyLVRoZW1lXG5EZXNjcmlwdGlvbjogRHJ1cGFsIDcgR3VscCBTdGFydGVyIFRoZW1lIGZvciB1c2UgYXMgYSBzdGFydGluZyB0ZW1wbGF0ZSBmb3IgYnVpbGRpbmcgY3VzdG9tIHRoZW1lcy5cbkF1dGhvcjogTGFzc2UgTW9vc1xuQXV0aG9yIFVSSTogaHR0cDovL3d3dy55b3VybG9jYWxzdHVkaW8uZGtcbkxpY2Vuc2U6IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHYyLjBcbkxpY2Vuc2UgVVJJOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvZ3BsLTIuMC5odG1sXG5WZXJzaW9uOiAxLjBcbiovXG4vKlxuICogTWl4aW4gZm9yIGVhc3kgbWVkaWEgcXVlcmllc1xuICogQGluY2x1ZGUgYnAodGFibGV0KSB7IFNDU1MgaGVyZSB9O1xuKi9cbi8qXG4gKiBNaXhpbiBmb3IgbWljcm8gY2xlYXJmaXhcbiAqIEBpbmNsdWRlIG1pY3JvY2xlYXJmaXg7XG4qL1xuLypcbiAqIE1peGluIGZvciBiYXNpYyBDU1MgdHJpYW5nbGVzXG4gKiBAaW5jbHVkZSB0cmlhbmdsZSh1cCwgIzAwMCwgNTBweClcbiovXG4vKlxuICogQGZvbnQtZmFjZSBtaXhpblxuICogQnVsbGV0cHJvb2YgZm9udC1mYWNlIHZpYSBGb250IFNxdWlycmVsXG4gKiBAaW5jbHVkZSBmb250ZmFjZSgnZmFtaWx5JywgJ2Fzc2V0cy9mb250cy8nLCAnbXlmb250bmFtZScpO1xuICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pY29tb29uLmVvdD9kbnAyN2tcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaWNvbW9vbi5lb3Q/ZG5wMjdrI2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9pY29tb29uLnR0Zj9kbnAyN2tcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL2ljb21vb24ud29mZj9kbnAyN2tcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi5zdmc/ZG5wMjdrI2ljb21vb25cIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuW2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xuICBzcGVhazogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuLmljb24tdXNlcjM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGVcIjsgfVxuXG4uaWNvbi1jb3B5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBkXCI7IH1cblxuLmljb24tdXNlcnM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDVcIjsgfVxuXG4uaWNvbi11c2VyLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDZcIjsgfVxuXG4uaWNvbi1jYWxlbmRhci1wbHVzLW86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGJcIjsgfVxuXG4uaWNvbi1jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwY1wiOyB9XG5cbi5pY29uLWxvZy1vdXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGFcIjsgfVxuXG4uaWNvbi11c2VyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNVwiOyB9XG5cbi5pY29uLXVzZXJzMjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwN1wiOyB9XG5cbi5pY29uLXVzZXIyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA4XCI7IH1cblxuLmljb24tcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTExNFwiOyB9XG5cbi5pY29uLWNpcmNsZS1jcm9zczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwOVwiOyB9XG5cbi5pY29uLW1lbnU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDRcIjsgfVxuXG4uaWNvbi11c2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAyXCI7IH1cblxuLmljb24tcGVuOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAzXCI7IH1cblxuLmljb24tbG9jYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDFcIjsgfVxuXG4uaWNvbi1ub3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7IH1cblxuLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4yIHwgTUlUIExpY2Vuc2UgfCBnaXQuaW8vbm9ybWFsaXplICovXG4vKipcbiAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4gKiAyLiBQcmV2ZW50IGlPUyB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZSwgd2l0aG91dCBkaXNhYmxpbmdcbiAqICAgIHVzZXIgem9vbS5cbiAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICovXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi8qIEhUTUw1IGRpc3BsYXkgZGVmaW5pdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuICogYW5kIEZpcmVmb3guXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuICovXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgYGlubGluZS1ibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBpbiBJRSA4LzkuXG4gKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFByZXZlbnQgbW9kZXJuIGJyb3dzZXJzIGZyb20gZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMuXG4gKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4gKiBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4gKi9cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIExpbmtzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi8qKlxuICogSW1wcm92ZSByZWFkYWJpbGl0eSB3aGVuIGZvY3VzZWQgYW5kIGFsc28gbW91c2UgaG92ZXJlZCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7IH1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkOyB9XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKi9cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4vKipcbiAqIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbiAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAqL1xuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4gKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyOiAwOyB9XG5cbi8qKlxuICogQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXG4gKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcbiAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAqL1xuaHIge1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qKlxuICogQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXG4gKiBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4gKi9cbi8qKlxuICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4gKiAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAzICovIH1cblxuLyoqXG4gKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbiAqL1xuYnV0dG9uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4gKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbiAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4gKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICovXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDIgKi9cbiAgY3Vyc29yOiBwb2ludGVyO1xuICAvKiAzICovIH1cblxuLyoqXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuICovXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qKlxuICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxuICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gKi9cbmlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxuXG4vKipcbiAqIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbiAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gKlxuICogMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbiAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gKi9cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogRml4IHRoZSBjdXJzb3Igc3R5bGUgZm9yIENocm9tZSdzIGluY3JlbWVudC9kZWNyZW1lbnQgYnV0dG9ucy4gRm9yIGNlcnRhaW5cbiAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXG4gKi9cbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lXG4gKiAgICAoaW5jbHVkZSBgLW1vemAgdG8gZnV0dXJlLXByb29mKS5cbiAqL1xuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovXG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC8qIDIgKi9cbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cblxuLyoqXG4gKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgc2VhcmNoIGNhbmNlbCBidXR0b24gaW4gU2FmYXJpIGFuZCBDaHJvbWUgb24gT1MgWC5cbiAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbiAqL1xuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLyoqXG4gKiBEZWZpbmUgY29uc2lzdGVudCBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXG4gKi9cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICovXG5sZWdlbmQge1xuICBib3JkZXI6IDA7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDgvOS8xMC8xMS5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKipcbiAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAqIE5PVEU6IHRoZSBkZWZhdWx0IGNhbm5vdCBzYWZlbHkgYmUgY2hhbmdlZCBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYLlxuICovXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qIFRhYmxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxuICovXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwOyB9XG5cbnRkLFxudGgge1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qISBIVE1MNSBCb2lsZXJwbGF0ZSB2NC4zLjAgfCBNSVQgTGljZW5zZSB8IGh0dHA6Ly9oNWJwLmNvbS8gKi9cbi8qXG4gKiBXaGF0IGZvbGxvd3MgaXMgdGhlIHJlc3VsdCBvZiBtdWNoIHJlc2VhcmNoIG9uIGNyb3NzLWJyb3dzZXIgc3R5bGluZy5cbiAqIENyZWRpdCBsZWZ0IGlubGluZSBhbmQgYmlnIHRoYW5rcyB0byBOaWNvbGFzIEdhbGxhZ2hlciwgSm9uYXRoYW4gTmVhbCxcbiAqIEtyb2MgQ2FtZW4sIGFuZCB0aGUgSDVCUCBkZXYgY29tbXVuaXR5IGFuZCB0ZWFtLlxuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmFzZSBzdHlsZXM6IG9waW5pb25hdGVkIGRlZmF1bHRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuaHRtbCB7XG4gIGNvbG9yOiAjMjIyO1xuICBmb250LXNpemU6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuXG4vKlxuICogUmVtb3ZlIHRleHQtc2hhZG93IGluIHNlbGVjdGlvbiBoaWdobGlnaHQ6IGg1YnAuY29tL2lcbiAqIFRoZXNlIHNlbGVjdGlvbiBydWxlIHNldHMgaGF2ZSB0byBiZSBzZXBhcmF0ZS5cbiAqIEN1c3RvbWl6ZSB0aGUgYmFja2dyb3VuZCBjb2xvciB0byBtYXRjaCB5b3VyIGRlc2lnbi5cbiAqL1xuOjotbW96LXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6IG9yYW5nZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7IH1cblxuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiBvcmFuZ2U7XG4gIHRleHQtc2hhZG93OiBub25lOyB9XG5cbi8qXG4gKiBBIGJldHRlciBsb29raW5nIGRlZmF1bHQgaG9yaXpvbnRhbCBydWxlXG4gKi9cbmhyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMXB4O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuICBtYXJnaW46IDFlbSAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qXG4gKiBSZW1vdmUgdGhlIGdhcCBiZXR3ZWVuIGltYWdlcywgdmlkZW9zLCBhdWRpbyBhbmQgY2FudmFzIGFuZCB0aGUgYm90dG9tIG9mXG4gKiB0aGVpciBjb250YWluZXJzOiBoNWJwLmNvbS9pLzQ0MFxuICovXG5hdWRpbyxcbmNhbnZhcyxcbmltZyxcbnN2ZyxcbnZpZGVvIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4vKlxuICogUmVtb3ZlIGRlZmF1bHQgZmllbGRzZXQgc3R5bGVzLlxuICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qXG4gKiBBbGxvdyBvbmx5IHZlcnRpY2FsIHJlc2l6aW5nIG9mIHRleHRhcmVhcy5cbiAqL1xudGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsOyB9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCcm93c2UgSGFwcHkgcHJvbXB0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmJyb3dzZWhhcHB5IHtcbiAgbWFyZ2luOiAwLjJlbSAwO1xuICBiYWNrZ3JvdW5kOiAjY2NjO1xuICBjb2xvcjogIzAwMDtcbiAgcGFkZGluZzogMC4yZW0gMDsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQXV0aG9yJ3MgY3VzdG9tIHN0eWxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIEFsaWdubWVudCAqL1xuLmFsaWdubGVmdCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMS41ZW07IH1cblxuLmFsaWducmlnaHQge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDEuNWVtOyB9XG5cbi5hbGlnbmNlbnRlciB7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLyogVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycyAqL1xuLmFzc2lzdGl2ZS10ZXh0IHtcbiAgY2xpcDogcmVjdCgxcHggMXB4IDFweCAxcHgpO1xuICAvKiBJRTYsIElFNyAqL1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50OyB9XG5cbi8qXG4gKiBCb3ggU2l6aW5nXG4gKlxuICogU2V0IHRoYXQgc2hpdCB0byBib3JkZXItYm94LCB5by4gQW5kIGZpeCB0aG9zZSBwZXNreSBwc2V1ZG8gZWxlbWVudHNcbiAqL1xuKixcbjpiZWZvcmUsXG46YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5ncmlkIHtcbiAgbWFyZ2luOiAwIDAgMjBweCAwO1xuICAqem9vbTogMTsgfVxuICAuZ3JpZDpiZWZvcmUsIC5ncmlkOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5ncmlkOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG5bY2xhc3MqPSdjb2wtJ10ge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuICAuZ3JpZCBbY2xhc3MqPSdjb2wtJ106bGFzdC1vZi10eXBlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG5cbi5jb2wtMS0yIHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uY29sLTEtMyB7XG4gIHdpZHRoOiAzMy4zMyU7IH1cblxuLmNvbC0yLTMge1xuICB3aWR0aDogNjYuNjYlOyB9XG5cbi5jb2wtMS00IHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uY29sLTMtNCB7XG4gIHdpZHRoOiA3NSU7IH1cblxuLmNvbC0xLTgge1xuICB3aWR0aDogMTIuNSU7IH1cblxuLmNvbC03LTgge1xuICB3aWR0aDogODcuNSU7IH1cblxuLm1vZHVsZSB7XG4gIHBhZGRpbmc6IDIwcHg7IH1cblxuLyogT3B0LWluIG91dHNpZGUgcGFkZGluZyAqL1xuLmdyaWQtcGFkIHtcbiAgcGFkZGluZzogMjBweCAwIDIwcHggMjBweDsgfVxuICAuZ3JpZC1wYWQgW2NsYXNzKj0nY29sLSddOmxhc3Qtb2YtdHlwZSB7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuXG4vKiBHRU5FUkFMICovXG46Oi1tb3otc2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogb3JhbmdlO1xuICB0ZXh0LXNoYWRvdzogbm9uZTsgfVxuXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6IG9yYW5nZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7IH1cblxuLyogSEVBRElOR1MgLyBUWVBPR1JBUEhZICovXG5oMSxcbmgyLFxuaDMsXG5oNCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbjogMCAwIDEwcHggMDsgfVxuXG4vKiBTVFJVQ1RVUkUgKi9cbiNjb250YWluZXIge1xuICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgbWFyZ2luOiAyMHB4IGF1dG87IH1cblxuLyogSEVBREVSICovXG4vKiBOQVYgKi9cbi8qIE1BSU4gKi9cbi8qIFNJREVCQVIgKi9cbi8qIEZPT1RFUiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblBBR0UgVEVNUExBVEVTXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIEhvbWUgUGFnZSAqL1xuLyogQmxvZyBQYWdlICovXG4vKiBQT1NUUyAqL1xuYXJ0aWNsZSB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IDAgMCAzNXB4IDA7IH1cblxuYmxvY2txdW90ZSB7XG4gIGJhY2tncm91bmQ6IHVybChhc3NldHMvaW1hZ2VzL2ljb25zL2Jsb2NrcXVvdGUucG5nKSBuby1yZXBlYXQgMCAxMnB4O1xuICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCA1MHB4O1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLmFsaWdubGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luOiA1cHggMTVweCAxNXB4IDA7IH1cblxuLmFsaWducmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDVweCAwIDE1cHggMTVweDsgfVxuXG4uYWxpZ25jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDVweDsgfVxuXG5pbWcuYWxpZ25jZW50ZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKiBTSEFSSU5HICovXG4uc2hhcmluZyBoNCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi5zaGFyaW5nIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy10b3A6IDVweDtcbiAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLnNoYXJpbmcgbGkge1xuICBmbG9hdDogbGVmdDsgfVxuXG4uc2hhcmluZyBsaTpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuXG4uc2hhcmluZyAuc2hhcmUtdHdpdHRlciB7XG4gIHBhZGRpbmctdG9wOiAxcHg7IH1cblxuLnNoYXJpbmcgLnNoYXJlLWZhY2Vib29rIHtcbiAgcGFkZGluZy10b3A6IDFweDsgfVxuXG4uc2hhcmluZyAuc2hhcmUtZ29vZ2xlcGx1cyB7XG4gIG1hcmdpbi1sZWZ0OiAzMHB4OyB9XG5cbi8qIFBPU1QgTkFWSUdBVElPTiAqL1xuLyogQkxPQ0tTICovXG4vKiBTRUFSQ0ggKi9cbi8qIEZPUk1TICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSGVscGVyIGNsYXNzZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogSW1hZ2UgcmVwbGFjZW1lbnRcbiAqL1xuLmlyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyogSUUgNi83IGZhbGxiYWNrICovXG4gICp0ZXh0LWluZGVudDogLTk5OTlweDsgfVxuXG4uaXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDE1MCU7IH1cblxuLypcbiAqIEhpZGUgZnJvbSBib3RoIHNjcmVlbnJlYWRlcnMgYW5kIGJyb3dzZXJzOiBoNWJwLmNvbS91XG4gKi9cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4vKlxuICogSGlkZSBvbmx5IHZpc3VhbGx5LCBidXQgaGF2ZSBpdCBhdmFpbGFibGUgZm9yIHNjcmVlbnJlYWRlcnM6IGg1YnAuY29tL3ZcbiAqL1xuLnZpc3VhbGx5aGlkZGVuIHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7IH1cblxuLypcbiAqIEV4dGVuZHMgdGhlIC52aXN1YWxseWhpZGRlbiBjbGFzcyB0byBhbGxvdyB0aGUgZWxlbWVudCB0byBiZSBmb2N1c2FibGVcbiAqIHdoZW4gbmF2aWdhdGVkIHRvIHZpYSB0aGUga2V5Ym9hcmQ6IGg1YnAuY29tL3BcbiAqL1xuLnZpc3VhbGx5aGlkZGVuLmZvY3VzYWJsZTphY3RpdmUsXG4udmlzdWFsbHloaWRkZW4uZm9jdXNhYmxlOmZvY3VzIHtcbiAgY2xpcDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogYXV0bzsgfVxuXG4vKlxuICogSGlkZSB2aXN1YWxseSBhbmQgZnJvbSBzY3JlZW5yZWFkZXJzLCBidXQgbWFpbnRhaW4gbGF5b3V0XG4gKi9cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLypcbiAqIENsZWFyZml4OiBjb250YWluIGZsb2F0c1xuICpcbiAqIEZvciBtb2Rlcm4gYnJvd3NlcnNcbiAqIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXG4gKiAgICBgY29udGVudGVkaXRhYmxlYCBhdHRyaWJ1dGUgaXMgaW5jbHVkZWQgYW55d2hlcmUgZWxzZSBpbiB0aGUgZG9jdW1lbnQuXG4gKiAgICBPdGhlcndpc2UgaXQgY2F1c2VzIHNwYWNlIHRvIGFwcGVhciBhdCB0aGUgdG9wIGFuZCBib3R0b20gb2YgZWxlbWVudHNcbiAqICAgIHRoYXQgcmVjZWl2ZSB0aGUgYGNsZWFyZml4YCBjbGFzcy5cbiAqIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXG4gKiAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXG4gKi9cbi5jbGVhcmZpeDpiZWZvcmUsXG4uY2xlYXJmaXg6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMiAqLyB9XG5cbi5jbGVhcmZpeDphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi8qXG4gKiBGb3IgSUUgNi83IG9ubHlcbiAqIEluY2x1ZGUgdGhpcyBydWxlIHRvIHRyaWdnZXIgaGFzTGF5b3V0IGFuZCBjb250YWluIGZsb2F0cy5cbiAqL1xuLmNsZWFyZml4IHtcbiAgKnpvb206IDE7IH1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFByaW50IHN0eWxlcy5cbiAgIElubGluZWQgdG8gYXZvaWQgcmVxdWlyZWQgSFRUUCBjb25uZWN0aW9uOiBoNWJwLmNvbS9yXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgIC8qIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3MgKi9cbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiOyB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7IH1cbiAgLypcbiAgICAgKiBEb24ndCBzaG93IGxpbmtzIGZvciBpbWFnZXMsIG9yIGphdmFzY3JpcHQvaW50ZXJuYWwgbGlua3NcbiAgICAgKi9cbiAgLmlyIGE6YWZ0ZXIsXG4gIGFbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTphZnRlcixcbiAgYVtocmVmXj1cIiNcIl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIC8qIGg1YnAuY29tL3QgKi8gfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH0gfVxuXG4vKiBHZW5lcmFsIHN0eWxlcyBmb3IgYWxsIG1lbnVzICovXG4uY2JwLXNwbWVudSB7XG4gIGJhY2tncm91bmQ6ICM0N2EzZGE7XG4gIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG4uY2JwLXNwbWVudSBoMyB7XG4gIGNvbG9yOiAjYWZkZWZhO1xuICBmb250LXNpemU6IDEuOWVtO1xuICBwYWRkaW5nOiAyMHB4O1xuICBtYXJnaW46IDA7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGJhY2tncm91bmQ6ICMwZDc3YjY7IH1cblxuLmNicC1zcG1lbnUgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxLjFlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG4uY2JwLXNwbWVudSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzI1OGVjZDsgfVxuXG4uY2JwLXNwbWVudSBhOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNhZmRlZmE7XG4gIGNvbG9yOiAjNDdhM2RhOyB9XG5cbi8qIE9yaWVudGF0aW9uLWRlcGVuZGVudCBzdHlsZXMgZm9yIHRoZSBjb250ZW50IG9mIHRoZSBtZW51ICovXG4uY2JwLXNwbWVudS12ZXJ0aWNhbCB7XG4gIHdpZHRoOiAyNDBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IDEwMDA7IH1cblxuLmNicC1zcG1lbnUtdmVydGljYWwgYSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMjU4ZWNkO1xuICBwYWRkaW5nOiAxZW07IH1cblxuLmNicC1zcG1lbnUtaG9yaXpvbnRhbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDE1MHB4O1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDAwO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5jYnAtc3BtZW51LWhvcml6b250YWwgaDMge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAyMCU7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5jYnAtc3BtZW51LWhvcml6b250YWwgYSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjAlO1xuICBwYWRkaW5nOiAwLjhlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMjU4ZWNkOyB9XG5cbi8qIFZlcnRpY2FsIG1lbnUgdGhhdCBzbGlkZXMgZnJvbSB0aGUgbGVmdCBvciByaWdodCAqL1xuLmNicC1zcG1lbnUtbGVmdCB7XG4gIGxlZnQ6IC0yNDBweDsgfVxuXG4uY2JwLXNwbWVudS1yaWdodCB7XG4gIHJpZ2h0OiAtMjQwcHg7IH1cblxuLmNicC1zcG1lbnUtbGVmdC5jYnAtc3BtZW51LW9wZW4ge1xuICBsZWZ0OiAwcHg7IH1cblxuLmNicC1zcG1lbnUtcmlnaHQuY2JwLXNwbWVudS1vcGVuIHtcbiAgcmlnaHQ6IDBweDsgfVxuXG4vKiBIb3Jpem9udGFsIG1lbnUgdGhhdCBzbGlkZXMgZnJvbSB0aGUgdG9wIG9yIGJvdHRvbSAqL1xuLmNicC1zcG1lbnUtdG9wIHtcbiAgdG9wOiAtMTUwcHg7IH1cblxuLmNicC1zcG1lbnUtYm90dG9tIHtcbiAgYm90dG9tOiAtMTUwcHg7IH1cblxuLmNicC1zcG1lbnUtdG9wLmNicC1zcG1lbnUtb3BlbiB7XG4gIHRvcDogMHB4OyB9XG5cbi5jYnAtc3BtZW51LWJvdHRvbS5jYnAtc3BtZW51LW9wZW4ge1xuICBib3R0b206IDBweDsgfVxuXG4vKiBQdXNoIGNsYXNzZXMgYXBwbGllZCB0byB0aGUgYm9keSAqL1xuLmNicC1zcG1lbnUtcHVzaCB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwOyB9XG5cbi5jYnAtc3BtZW51LXB1c2gtdG9yaWdodCB7XG4gIGxlZnQ6IDI0MHB4OyB9XG5cbi5jYnAtc3BtZW51LXB1c2gtdG9sZWZ0IHtcbiAgbGVmdDogLTI0MHB4OyB9XG5cbi8qIFRyYW5zaXRpb25zICovXG4uY2JwLXNwbWVudSxcbi5jYnAtc3BtZW51LXB1c2gge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTsgfVxuXG4vKiBFeGFtcGxlIG1lZGlhIHF1ZXJpZXMgKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU1LjE4NzVlbSkge1xuICAuY2JwLXNwbWVudS1ob3Jpem9udGFsIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBoZWlnaHQ6IDExMHB4OyB9XG4gIC5jYnAtc3BtZW51LXRvcCB7XG4gICAgdG9wOiAtMTEwcHg7IH1cbiAgLmNicC1zcG1lbnUtYm90dG9tIHtcbiAgICBib3R0b206IC0xMTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiAyNi4zNzVlbSkge1xuICAuY2JwLXNwbWVudS12ZXJ0aWNhbCB7XG4gICAgZm9udC1zaXplOiA5MCU7XG4gICAgd2lkdGg6IDE5MHB4OyB9XG4gIC5jYnAtc3BtZW51LWxlZnQsXG4gIC5jYnAtc3BtZW51LXB1c2gtdG9sZWZ0IHtcbiAgICBsZWZ0OiAtMTkwcHg7IH1cbiAgLmNicC1zcG1lbnUtcmlnaHQge1xuICAgIHJpZ2h0OiAtMTkwcHg7IH1cbiAgLmNicC1zcG1lbnUtcHVzaC10b3JpZ2h0IHtcbiAgICBsZWZ0OiAxOTBweDsgfSB9XG5cbiNoZWFkZXIge1xuICBiYWNrZ3JvdW5kOiAjZTBlMGQ4O1xuICBtaW4taGVpZ2h0OiA2MHB4OyB9XG5cbiNtYWluIHtcbiAgbWFyZ2luOiA0MHB4OyB9XG5cbi5wYWdlLWthYXJ0ICNtYWluIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5mcm9udCAjbWFpbiB7XG4gIG1hcmdpbjogMDsgfVxuXG4uY2JwLXNwbWVudSBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5wYW5lLXN5c3RlbS1tYWluLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLmNicC1zcG1lbnUtdmVydGljYWwge1xuICB6LWluZGV4OiA5OTk5OyB9XG5cbi5jYnAtc3BtZW51LXB1c2gge1xuICBvdmVyZmxvdy14OiB2aXNpYmxlOyB9XG5cbmkuaWNvbiB7XG4gIHBhZGRpbmctcmlnaHQ6IDFlbTsgfVxuXG4jc2hvd0xlZnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogMS45ZW07XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6ICNhZmRlZmE7IH1cbiAgI3Nob3dMZWZ0OmhvdmVyIHtcbiAgICBjb2xvcjogd2hpdGU7IH1cbiAgI3Nob3dMZWZ0IGkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuI3Nob3dMZWZ0MiB7XG4gIGZvbnQtc2l6ZTogMS45ZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwNzRCRDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgdG9wOiAxMHB4O1xuICBsZWZ0OiAxMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlOyB9XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgI3Nob3dMZWZ0MiB7XG4gICAgICBmb250LXNpemU6IDFlbTsgfSB9XG4gICNzaG93TGVmdDI6aG92ZXIge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiAjMDA3NEJEO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4ucGFnZS1ob21lICNtYWluIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuXG4jaGVhZGVyIGgyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLXRvcDogMjBweDtcbiAgZm9udC1zaXplOiAxLjhlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICBAbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA2NTBweCkge1xuICAgICNoZWFkZXIgaDIge1xuICAgICAgZm9udC1zaXplOiAxLjRlbTtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG4gIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDQwMHB4KSB7XG4gICAgI2hlYWRlciBoMiB7XG4gICAgICBmb250LXNpemU6IDFlbTsgfSB9XG5cbmgxIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4udmlldy1hcnRpY2xlcyB0YWJsZSxcbi52aWV3LXZlbGRiZXpvZWsgdGFibGUge1xuICBmb250LXNpemU6IDAuODVlbTsgfVxuXG4udmlldy1hcnRpY2xlcyAudmlld3MtZmllbGQtZmllbGQtZGF0dW0sXG4udmlldy12ZWxkYmV6b2VrIC52aWV3cy1maWVsZC1maWVsZC1kYXR1bSB7XG4gIG1pbi13aWR0aDogOWVtOyB9XG5cbi52aWV3LWFydGljbGVzIC52aWV3cy1maWVsZC1maWVsZC1ncm9lcHNncm9vdHRlLW1lbnNlbixcbi52aWV3LWFydGljbGVzIC52aWV3cy1maWVsZC1maWVsZC1ncm9lcHNncm9vdHRlLXdpc2VudGVuLFxuLnZpZXctdmVsZGJlem9layAudmlld3MtZmllbGQtZmllbGQtZ3JvZXBzZ3Jvb3R0ZS1tZW5zZW4sXG4udmlldy12ZWxkYmV6b2VrIC52aWV3cy1maWVsZC1maWVsZC1ncm9lcHNncm9vdHRlLXdpc2VudGVuIHtcbiAgbWF4LXdpZHRoOiA4ZW07IH1cblxuLnZpZXctYXJ0aWNsZXMgLnZpZXdzLWZpZWxkLWZpZWxkLWdlZHJhZy1tZW5zLFxuLnZpZXctdmVsZGJlem9layAudmlld3MtZmllbGQtZmllbGQtZ2VkcmFnLW1lbnMge1xuICBtaW4td2lkdGg6IDEwZW07IH1cblxuLnZpZXctYXJ0aWNsZXMgLnZpZXdzLWZpZWxkLWZpZWxkLW5vdGl0aWVzLFxuLnZpZXctdmVsZGJlem9layAudmlld3MtZmllbGQtZmllbGQtbm90aXRpZXMge1xuICB3aWR0aDogMjAlOyB9XG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgcGFkZGluZzogMi41ZW0gMCAwIDA7XG4gIC8qIExUUiAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMWVtIDA7IH1cblxuaW5wdXQuZm9ybS1hdXRvY29tcGxldGUsIGlucHV0LmZvcm0tdGV4dCwgaW5wdXQuZm9ybS1maWxlLCB0ZXh0YXJlYS5mb3JtLXRleHRhcmVhLCBzZWxlY3QuZm9ybS1zZWxlY3Qge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi52aWV3LXZlbGRiZXpvZWsgLnZpZXctY29udGVudCxcbi52aWV3LWRvY3VtZW50ZW4gLnZpZXctY29udGVudCxcbi52aWV3LWFydGljbGVzIC52aWV3LWNvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbmZvcm0ubm9kZS1sb2dib2VrX2VudHJlZS1mb3JtICNtYWluIHtcbiAgbWF4LXdpZHRoOiA4MDBweDsgfVxuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA4NDBweCkge1xuICAgIGZvcm0ubm9kZS1sb2dib2VrX2VudHJlZS1mb3JtICNtYWluIHtcbiAgICAgIG1hcmdpbjogNDBweCBhdXRvOyB9IH1cblxuLnBhZ2Utbm9kZS1lZGl0IGZvcm0ubm9kZS1sb2dib2VrX2VudHJlZS1mb3JtIC5wYW5lbC0yY29sLXN0YWNrZWQgLnBhbmVsLWNvbC1sYXN0LFxuLnBhZ2Utbm9kZS1lZGl0IGZvcm0ubm9kZS1sb2dib2VrX2VudHJlZS1mb3JtIC5wYW5lbC0yY29sLXN0YWNrZWQgLnBhbmVsLWNvbC1sYXN0LFxuLnBhZ2Utbm9kZS1hZGQgZm9ybS5ub2RlLWxvZ2JvZWtfZW50cmVlLWZvcm0gLnBhbmVsLTJjb2wtc3RhY2tlZCAucGFuZWwtY29sLWxhc3QsXG4ucGFnZS1ub2RlLWFkZCBmb3JtLm5vZGUtbG9nYm9la19lbnRyZWUtZm9ybSAucGFuZWwtMmNvbC1zdGFja2VkIC5wYW5lbC1jb2wtbGFzdCB7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogMTAwJTsgfVxuXG4ucGFnZS1ub2RlLWVkaXQgZm9ybS5ub2RlLWxvZ2JvZWtfZW50cmVlLWZvcm0gLnBhbmVsLTJjb2wtc3RhY2tlZCAucGFuZWwtY29sLWZpcnN0LFxuLnBhZ2Utbm9kZS1lZGl0IGZvcm0ubm9kZS1sb2dib2VrX2VudHJlZS1mb3JtIC5wYW5lbC0yY29sLXN0YWNrZWQgLnBhbmVsLWNvbC1maXJzdCxcbi5wYWdlLW5vZGUtYWRkIGZvcm0ubm9kZS1sb2dib2VrX2VudHJlZS1mb3JtIC5wYW5lbC0yY29sLXN0YWNrZWQgLnBhbmVsLWNvbC1maXJzdCxcbi5wYWdlLW5vZGUtYWRkIGZvcm0ubm9kZS1sb2dib2VrX2VudHJlZS1mb3JtIC5wYW5lbC0yY29sLXN0YWNrZWQgLnBhbmVsLWNvbC1maXJzdCB7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogMTAwJTsgfVxuXG4ubm9kZS10eXBlLWxvZ2JvZWstZW50cmVlIC5kZXNjcmlwdGlvbixcbi5wYWdlLW5vZGUtYWRkLWxvZ2JvZWstZW50cmVlIC5kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiByZWQgIWltcG9ydGFudDsgfVxuXG4ubm9kZS10eXBlLWxvZ2JvZWstZW50cmVlIGZpZWxkc2V0IC5kZXNjcmlwdGlvbixcbi5wYWdlLW5vZGUtYWRkLWxvZ2JvZWstZW50cmVlIGZpZWxkc2V0IC5kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cblxuLm5vZGUtdHlwZS1sb2dib2VrLWVudHJlZSBmaWVsZHNldCxcbi5wYWdlLW5vZGUtYWRkLWxvZ2JvZWstZW50cmVlIGZpZWxkc2V0IHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLm5vZGUtdHlwZS1sb2dib2VrLWVudHJlZSBmaWVsZHNldCAuZmllbGRzZXQtd3JhcHBlcixcbiAgLnBhZ2Utbm9kZS1hZGQtbG9nYm9lay1lbnRyZWUgZmllbGRzZXQgLmZpZWxkc2V0LXdyYXBwZXIge1xuICAgICp6b29tOiAxO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAubm9kZS10eXBlLWxvZ2JvZWstZW50cmVlIGZpZWxkc2V0IC5maWVsZHNldC13cmFwcGVyOmJlZm9yZSwgLm5vZGUtdHlwZS1sb2dib2VrLWVudHJlZSBmaWVsZHNldCAuZmllbGRzZXQtd3JhcHBlcjphZnRlcixcbiAgICAucGFnZS1ub2RlLWFkZC1sb2dib2VrLWVudHJlZSBmaWVsZHNldCAuZmllbGRzZXQtd3JhcHBlcjpiZWZvcmUsXG4gICAgLnBhZ2Utbm9kZS1hZGQtbG9nYm9lay1lbnRyZWUgZmllbGRzZXQgLmZpZWxkc2V0LXdyYXBwZXI6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgLm5vZGUtdHlwZS1sb2dib2VrLWVudHJlZSBmaWVsZHNldCAuZmllbGRzZXQtd3JhcHBlcjphZnRlcixcbiAgICAucGFnZS1ub2RlLWFkZC1sb2dib2VrLWVudHJlZSBmaWVsZHNldCAuZmllbGRzZXQtd3JhcHBlcjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAubm9kZS10eXBlLWxvZ2JvZWstZW50cmVlIGZpZWxkc2V0IC5maWVsZHNldC1sZWdlbmQsXG4gIC5wYWdlLW5vZGUtYWRkLWxvZ2JvZWstZW50cmVlIGZpZWxkc2V0IC5maWVsZHNldC1sZWdlbmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXNpemU6IDEuMmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFlbTsgfVxuXG4ubm9kZS10eXBlLWxvZ2JvZWstZW50cmVlIC5mb3JtLWl0ZW0gbGFiZWwsXG4ucGFnZS1ub2RlLWFkZC1sb2dib2VrLWVudHJlZSAuZm9ybS1pdGVtIGxhYmVsIHtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMWVtOyB9XG5cbi5ub2RlLXR5cGUtbG9nYm9lay1lbnRyZWUgLmZvcm0taXRlbSAuZm9ybS10eXBlLWRhdGUtc2VsZWN0IGxhYmVsLFxuLnBhZ2Utbm9kZS1hZGQtbG9nYm9lay1lbnRyZWUgLmZvcm0taXRlbSAuZm9ybS10eXBlLWRhdGUtc2VsZWN0IGxhYmVsIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5ub2RlLXR5cGUtbG9nYm9lay1lbnRyZWUgZmllbGRzZXQgLmZvcm0taXRlbSBsYWJlbCxcbi5wYWdlLW5vZGUtYWRkLWxvZ2JvZWstZW50cmVlIGZpZWxkc2V0IC5mb3JtLWl0ZW0gbGFiZWwge1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLm5vZGUtdHlwZS1sb2dib2VrLWVudHJlZSBoMi5wYW5lLXRpdGxlLFxuLnBhZ2Utbm9kZS1hZGQtbG9nYm9lay1lbnRyZWUgaDIucGFuZS10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLm5vZGUtdHlwZS1sb2dib2VrLWVudHJlZSAuZmllbGQtdHlwZS1udW1iZXItaW50ZWdlciBpbnB1dCxcbi5wYWdlLW5vZGUtYWRkLWxvZ2JvZWstZW50cmVlIC5maWVsZC10eXBlLW51bWJlci1pbnRlZ2VyIGlucHV0IHtcbiAgd2lkdGg6IDEwMHB4OyB9XG5cbi5mb3JtLWl0ZW0tZmllbGQtdGltZS11bmQtMC12YWx1ZSBpbnB1dCxcbi5mb3JtLWl0ZW0tZmllbGQtdGltZS11bmQtMC12YWx1ZTIgaW5wdXQge1xuICB3aWR0aDogODBweDsgfVxuXG4uZm9ybS1pdGVtLWZpZWxkLXRpbWUtdW5kLTAtdmFsdWUsXG4uZm9ybS1pdGVtLWZpZWxkLXRpbWUtdW5kLTAtdmFsdWUyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH1cblxuI3VpLXRpbWVwaWNrZXItZGl2ICosXG4jdWktdGltZXBpY2tlci1kaXYgOmJlZm9yZSxcbiN1aS10aW1lcGlja2VyLWRpdiA6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgfVxuXG4udGFicyB7XG4gICp6b29tOiAxO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2E2YTdhMjsgfVxuICAudGFiczpiZWZvcmUsIC50YWJzOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC50YWJzOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4udmlldy1uaWV1dy1sb2dib2VrIHRhYmxlIHRkIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuIiwiLyohIG5vcm1hbGl6ZS5jc3MgdjMuMC4yIHwgTUlUIExpY2Vuc2UgfCBnaXQuaW8vbm9ybWFsaXplICovXG5cbi8qKlxuICogMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbiAqIDIuIFByZXZlbnQgaU9TIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlLCB3aXRob3V0IGRpc2FibGluZ1xuICogICAgdXNlciB6b29tLlxuICovXG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgZGVmYXVsdCBtYXJnaW4uXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBkZXRhaWxzYCBvciBgc3VtbWFyeWAgaW4gSUUgMTAvMTFcbiAqIGFuZCBGaXJlZm94LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cbiAqL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuICogMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxucHJvZ3Jlc3MsXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAqL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5cbltoaWRkZW5dLFxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogSW1wcm92ZSByZWFkYWJpbGl0eSB3aGVuIGZvY3VzZWQgYW5kIGFsc28gbW91c2UgaG92ZXJlZCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKipcbiAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuICogY29udGV4dHMgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZDogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8qKlxuICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbiAqL1xuXG5pbWcge1xuICBib3JkZXI6IDA7XG59XG5cbi8qKlxuICogQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXG4gKi9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZHJlc3MgbWFyZ2luIG5vdCBwcmVzZW50IGluIElFIDgvOSBhbmQgU2FmYXJpLlxuICovXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICovXG5cbmhyIHtcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuICogc3R5bGluZyBvZiBgc2VsZWN0YCwgdW5sZXNzIGEgYGJvcmRlcmAgcHJvcGVydHkgaXMgc2V0LlxuICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4gKiAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICogMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgY29sb3I6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICBtYXJnaW46IDA7IC8qIDMgKi9cbn1cblxuLyoqXG4gKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cbiAqL1xuXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4gKiBBbGwgb3RoZXIgZm9ybSBjb250cm9sIGVsZW1lbnRzIGRvIG5vdCBpbmhlcml0IGB0ZXh0LXRyYW5zZm9ybWAgdmFsdWVzLlxuICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbiAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4gKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICovXG5cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gIGN1cnNvcjogcG9pbnRlcjsgLyogMyAqL1xufVxuXG4vKipcbiAqIFJlLXNldCBkZWZhdWx0IGN1cnNvciBmb3IgZGlzYWJsZWQgZWxlbWVudHMuXG4gKi9cblxuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cbiAqL1xuXG5pbnB1dCB7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG59XG5cbi8qKlxuICogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxuICogRmlyZWZveCdzIGltcGxlbWVudGF0aW9uIGRvZXNuJ3QgcmVzcGVjdCBib3gtc2l6aW5nLCBwYWRkaW5nLCBvciB3aWR0aC5cbiAqXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxuICogMi4gUmVtb3ZlIGV4Y2VzcyBwYWRkaW5nIGluIElFIDgvOS8xMC5cbiAqL1xuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuICogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbiAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbiAqL1xuXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWVcbiAqICAgIChpbmNsdWRlIGAtbW96YCB0byBmdXR1cmUtcHJvb2YpLlxuICovXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAyICovXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4vKipcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuICogU2FmYXJpIChidXQgbm90IENocm9tZSkgY2xpcHMgdGhlIGNhbmNlbCBidXR0b24gd2hlbiB0aGUgc2VhcmNoIGlucHV0IGhhc1xuICogcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuICovXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbiAqL1xuXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4gKiAyLiBSZW1vdmUgcGFkZGluZyBzbyBwZW9wbGUgYXJlbid0IGNhdWdodCBvdXQgaWYgdGhleSB6ZXJvIG91dCBmaWVsZHNldHMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm9yZGVyOiAwOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gKi9cblxub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLyogVGFibGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAqL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDtcbn0iLCIvKiEgSFRNTDUgQm9pbGVycGxhdGUgdjQuMy4wIHwgTUlUIExpY2Vuc2UgfCBodHRwOi8vaDVicC5jb20vICovXG5cbi8qXG4gKiBXaGF0IGZvbGxvd3MgaXMgdGhlIHJlc3VsdCBvZiBtdWNoIHJlc2VhcmNoIG9uIGNyb3NzLWJyb3dzZXIgc3R5bGluZy5cbiAqIENyZWRpdCBsZWZ0IGlubGluZSBhbmQgYmlnIHRoYW5rcyB0byBOaWNvbGFzIEdhbGxhZ2hlciwgSm9uYXRoYW4gTmVhbCxcbiAqIEtyb2MgQ2FtZW4sIGFuZCB0aGUgSDVCUCBkZXYgY29tbXVuaXR5IGFuZCB0ZWFtLlxuICovXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCYXNlIHN0eWxlczogb3BpbmlvbmF0ZWQgZGVmYXVsdHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmh0bWwge1xuICBjb2xvcjogIzIyMjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbi8qXG4gKiBSZW1vdmUgdGV4dC1zaGFkb3cgaW4gc2VsZWN0aW9uIGhpZ2hsaWdodDogaDVicC5jb20vaVxuICogVGhlc2Ugc2VsZWN0aW9uIHJ1bGUgc2V0cyBoYXZlIHRvIGJlIHNlcGFyYXRlLlxuICogQ3VzdG9taXplIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIG1hdGNoIHlvdXIgZGVzaWduLlxuICovXG5cbjo6LW1vei1zZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiAkc2VsZWN0aW9uQ29sb3I7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICRzZWxlY3Rpb25Db2xvcjtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qXG4gKiBBIGJldHRlciBsb29raW5nIGRlZmF1bHQgaG9yaXpvbnRhbCBydWxlXG4gKi9cblxuaHIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2M7XG4gIG1hcmdpbjogMWVtIDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qXG4gKiBSZW1vdmUgdGhlIGdhcCBiZXR3ZWVuIGltYWdlcywgdmlkZW9zLCBhdWRpbyBhbmQgY2FudmFzIGFuZCB0aGUgYm90dG9tIG9mXG4gKiB0aGVpciBjb250YWluZXJzOiBoNWJwLmNvbS9pLzQ0MFxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxuaW1nLFxuc3ZnLFxudmlkZW8ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKlxuICogUmVtb3ZlIGRlZmF1bHQgZmllbGRzZXQgc3R5bGVzLlxuICovXG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qXG4gKiBBbGxvdyBvbmx5IHZlcnRpY2FsIHJlc2l6aW5nIG9mIHRleHRhcmVhcy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCcm93c2UgSGFwcHkgcHJvbXB0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYnJvd3NlaGFwcHkge1xuICBtYXJnaW46IDAuMmVtIDA7XG4gIGJhY2tncm91bmQ6ICNjY2M7XG4gIGNvbG9yOiAjMDAwO1xuICBwYWRkaW5nOiAwLjJlbSAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQXV0aG9yJ3MgY3VzdG9tIHN0eWxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXG5cbi8qIEFsaWdubWVudCAqL1xuLmFsaWdubGVmdCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMS41ZW07XG59XG4uYWxpZ25yaWdodCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogMS41ZW07XG59XG4uYWxpZ25jZW50ZXIge1xuICBjbGVhcjogYm90aDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4vKiBUZXh0IG1lYW50IG9ubHkgZm9yIHNjcmVlbiByZWFkZXJzICovXG4uYXNzaXN0aXZlLXRleHQge1xuICBjbGlwOiByZWN0KDFweCAxcHggMXB4IDFweCk7IC8qIElFNiwgSUU3ICovXG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG59XG5cblxuLypcbiAqIEJveCBTaXppbmdcbiAqXG4gKiBTZXQgdGhhdCBzaGl0IHRvIGJvcmRlci1ib3gsIHlvLiBBbmQgZml4IHRob3NlIHBlc2t5IHBzZXVkbyBlbGVtZW50c1xuICovXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyAgICBCb3JkZXItYm94IGFsbCB0aGUgdGhpbmdzIVxuLy8gICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiosXG46YmVmb3JlLFxuOmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbiIsIiRwYWQ6IDIwcHg7XG5cbi5ncmlkIHtcblx0bWFyZ2luOiAwIDAgJHBhZCAwO1xuXHRAaW5jbHVkZSBtaWNyb2NsZWFyZml4KCk7XG59XG5cbltjbGFzcyo9J2NvbC0nXSB7XG5cdGZsb2F0OiBsZWZ0O1xuXHRwYWRkaW5nLXJpZ2h0OiAkcGFkO1xuXHQuZ3JpZCAmOmxhc3Qtb2YtdHlwZSB7XG5cdFx0cGFkZGluZy1yaWdodDogMDtcblx0fVxufVxuXG4uY29sLTEtMiB7XG5cdHdpZHRoOiA1MCU7XG59XG5cbi5jb2wtMS0zIHtcblx0d2lkdGg6IDMzLjMzJTtcbn1cbi5jb2wtMi0zIHtcblx0d2lkdGg6IDY2LjY2JTtcbn1cblxuLmNvbC0xLTQge1xuXHR3aWR0aDogMjUlO1xufVxuLmNvbC0zLTQge1xuXHR3aWR0aDogNzUlO1xufVxuXG4uY29sLTEtOCB7XG5cdHdpZHRoOiAxMi41JTtcbn1cbi5jb2wtNy04IHtcblx0d2lkdGg6IDg3LjUlO1xufVxuXG4ubW9kdWxlIHtcblx0cGFkZGluZzogJHBhZDtcbn1cblxuLyogT3B0LWluIG91dHNpZGUgcGFkZGluZyAqL1xuLmdyaWQtcGFkIHtcblx0cGFkZGluZzogJHBhZCAwICRwYWQgJHBhZDtcblx0W2NsYXNzKj0nY29sLSddOmxhc3Qtb2YtdHlwZSB7XG5cdFx0cGFkZGluZy1yaWdodDogJHBhZDtcblx0fVxufVxuIiwiLyogR0VORVJBTCAqL1xuYm9keSB7IH1cblxuLy8gYSxcbi8vIGE6dmlzaXRlZCB7XG4vLyBcdGNvbG9yOiAkbGlua0NvbG9yO1xuLy8gfVxuLy8gYTpob3ZlciB7XG4vLyBcdGNvbG9yOiAkbGlua0hvdmVyQ29sb3I7XG4vLyB9XG5cbjo6LW1vei1zZWxlY3Rpb24ge1xuICAgIGJhY2tncm91bmQ6ICRzZWxlY3Rpb25Db2xvcjtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuOjpzZWxlY3Rpb24ge1xuICAgIGJhY2tncm91bmQ6ICRzZWxlY3Rpb25Db2xvcjtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLyogSEVBRElOR1MgLyBUWVBPR1JBUEhZICovXG5oMSxcbmgyLFxuaDMsXG5oNCB7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdG1hcmdpbjogMCAwIDEwcHggMDtcbn1cbmgxIHsgfVxuaDIgeyB9XG5oMyB7IH1cbmg0IHsgfVxuXG4vKiBTVFJVQ1RVUkUgKi9cbiNjb250YWluZXIge1xuXHRtYXgtd2lkdGg6ICRwYWdlV2lkdGg7XG5cdG1hcmdpbjogMjBweCBhdXRvO1xufVxuXG4vKiBIRUFERVIgKi9cbmhlYWRlciB7IH1cbiNsb2dvIHsgfVxuXG4vKiBOQVYgKi9cbm5hdiB7IH1cblxuLyogTUFJTiAqL1xuI21haW4geyB9XG5cbi8qIFNJREVCQVIgKi9cbmFzaWRlIHsgfVxuXG4vKiBGT09URVIgKi9cbmZvb3RlciB7IH1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblBBR0UgVEVNUExBVEVTXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLyogSG9tZSBQYWdlICovXG4uaG9tZSB7IH1cblxuLyogQmxvZyBQYWdlICovXG4uYmxvZyB7IH1cbiIsIi8qIFBPU1RTICovXG5cbmFydGljbGUge1xuXHRjbGVhcjogYm90aDtcblx0bWFyZ2luOiAwIDAgMzVweCAwO1xufVxuXG5ibG9ja3F1b3RlIHtcblx0YmFja2dyb3VuZDogdXJsKGFzc2V0cy9pbWFnZXMvaWNvbnMvYmxvY2txdW90ZS5wbmcpIG5vLXJlcGVhdCAwIDEycHg7XG5cdHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDUwcHg7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbmJsb2NrcXVvdGUgcCB7IH1cblxuLnBvc3QgeyB9XG5cbi5hbGlnbmxlZnQge1xuXHRmbG9hdDogbGVmdDtcblx0d2lkdGg6IGF1dG87XG5cdG1hcmdpbjogNXB4IDE1cHggMTVweCAwO1xufVxuLmFsaWducmlnaHQge1xuXHRmbG9hdDogcmlnaHQ7XG5cdHdpZHRoOiBhdXRvO1xuXHRtYXJnaW46IDVweCAwIDE1cHggMTVweDtcbn1cbi5hbGlnbmNlbnRlciB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0bWFyZ2luLWJvdHRvbTogNXB4O1xufVxuaW1nLmFsaWduY2VudGVyIHtcblx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdG1hcmdpbi1yaWdodDogYXV0bztcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbnByZSB7IH1cbmNvZGUsIHR0IHsgfVxuXG4ubWV0YSB7IH1cbi5wb3N0bWV0YWRhdGEgeyB9XG5cbi8qIFNIQVJJTkcgKi9cblxuLnNoYXJpbmcgaDQge1xuXHRtYXJnaW4tYm90dG9tOiAwO1xuXHRwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi5zaGFyaW5nIHVsIHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luLXRvcDogMDtcblx0bWFyZ2luLWJvdHRvbTogMDtcblx0cGFkZGluZy10b3A6IDVweDtcblx0cGFkZGluZy1ib3R0b206IDA7XG59XG4uc2hhcmluZyBsaSB7XG5cdGZsb2F0OiBsZWZ0O1xufVxuLnNoYXJpbmcgbGk6Zmlyc3QtY2hpbGQge1xuXHRwYWRkaW5nLWxlZnQ6IDA7XG59XG4uc2hhcmluZyAuc2hhcmUtdHdpdHRlciB7XG5cdHBhZGRpbmctdG9wOiAxcHg7XG59XG4uc2hhcmluZyAuc2hhcmUtZmFjZWJvb2sge1xuXHRwYWRkaW5nLXRvcDogMXB4O1xufVxuLnNoYXJpbmcgLnNoYXJlLWdvb2dsZXBsdXMge1xuXHRtYXJnaW4tbGVmdDogMzBweDtcbn1cblxuLyogUE9TVCBOQVZJR0FUSU9OICovXG5cbiIsIi8qIEJMT0NLUyAqL1xuXG4uYmxvY2sgeyB9XG4iLCIvKiBTRUFSQ0ggKi9cblxuI3NlYXJjaGZvcm0gbGFiZWwgeyB9XG4jc2VhcmNoZm9ybSBkaXYgeyB9XG4jc2VhcmNoZm9ybSBkaXYgaW5wdXQgeyB9XG4jc2VhcmNoZm9ybSBkaXYgaW5wdXQjcyB7IH1cbiNzZWFyY2hmb3JtIGRpdiBpbnB1dCNzZWFyY2hzdWJtaXQgeyB9IiwiLyogRk9STVMgKi9cblxuZm9ybSB7IH1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBIZWxwZXIgY2xhc3Nlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEltYWdlIHJlcGxhY2VtZW50XG4gKi9cblxuLmlyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvKiBJRSA2LzcgZmFsbGJhY2sgKi9cbiAgICAqdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG59XG5cbi5pcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAxNTAlO1xufVxuXG4vKlxuICogSGlkZSBmcm9tIGJvdGggc2NyZWVucmVhZGVycyBhbmQgYnJvd3NlcnM6IGg1YnAuY29tL3VcbiAqL1xuXG4uaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKlxuICogSGlkZSBvbmx5IHZpc3VhbGx5LCBidXQgaGF2ZSBpdCBhdmFpbGFibGUgZm9yIHNjcmVlbnJlYWRlcnM6IGg1YnAuY29tL3ZcbiAqL1xuXG4udmlzdWFsbHloaWRkZW4ge1xuICAgIGJvcmRlcjogMDtcbiAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG59XG5cbi8qXG4gKiBFeHRlbmRzIHRoZSAudmlzdWFsbHloaWRkZW4gY2xhc3MgdG8gYWxsb3cgdGhlIGVsZW1lbnQgdG8gYmUgZm9jdXNhYmxlXG4gKiB3aGVuIG5hdmlnYXRlZCB0byB2aWEgdGhlIGtleWJvYXJkOiBoNWJwLmNvbS9wXG4gKi9cblxuLnZpc3VhbGx5aGlkZGVuLmZvY3VzYWJsZTphY3RpdmUsXG4udmlzdWFsbHloaWRkZW4uZm9jdXNhYmxlOmZvY3VzIHtcbiAgICBjbGlwOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbn1cblxuLypcbiAqIEhpZGUgdmlzdWFsbHkgYW5kIGZyb20gc2NyZWVucmVhZGVycywgYnV0IG1haW50YWluIGxheW91dFxuICovXG5cbi5pbnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLypcbiAqIENsZWFyZml4OiBjb250YWluIGZsb2F0c1xuICpcbiAqIEZvciBtb2Rlcm4gYnJvd3NlcnNcbiAqIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXG4gKiAgICBgY29udGVudGVkaXRhYmxlYCBhdHRyaWJ1dGUgaXMgaW5jbHVkZWQgYW55d2hlcmUgZWxzZSBpbiB0aGUgZG9jdW1lbnQuXG4gKiAgICBPdGhlcndpc2UgaXQgY2F1c2VzIHNwYWNlIHRvIGFwcGVhciBhdCB0aGUgdG9wIGFuZCBib3R0b20gb2YgZWxlbWVudHNcbiAqICAgIHRoYXQgcmVjZWl2ZSB0aGUgYGNsZWFyZml4YCBjbGFzcy5cbiAqIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXG4gKiAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXG4gKi9cblxuLmNsZWFyZml4OmJlZm9yZSxcbi5jbGVhcmZpeDphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7IC8qIDEgKi9cbiAgICBkaXNwbGF5OiB0YWJsZTsgLyogMiAqL1xufVxuXG4uY2xlYXJmaXg6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xufVxuXG4vKlxuICogRm9yIElFIDYvNyBvbmx5XG4gKiBJbmNsdWRlIHRoaXMgcnVsZSB0byB0cmlnZ2VyIGhhc0xheW91dCBhbmQgY29udGFpbiBmbG9hdHMuXG4gKi9cblxuLmNsZWFyZml4IHtcbiAgICAqem9vbTogMTtcbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBQcmludCBzdHlsZXMuXG4gICBJbmxpbmVkIHRvIGF2b2lkIHJlcXVpcmVkIEhUVFAgY29ubmVjdGlvbjogaDVicC5jb20vclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgLyogQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vcyAqL1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSxcbiAgICBhOnZpc2l0ZWQge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICBhW2hyZWZdOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gICAgfVxuXG4gICAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBEb24ndCBzaG93IGxpbmtzIGZvciBpbWFnZXMsIG9yIGphdmFzY3JpcHQvaW50ZXJuYWwgbGlua3NcbiAgICAgKi9cblxuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTphZnRlcixcbiAgICBhW2hyZWZePVwiI1wiXTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuXG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgdGhlYWQge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IC8qIGg1YnAuY29tL3QgKi9cbiAgICB9XG5cbiAgICB0cixcbiAgICBpbWcge1xuICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICAgIG9ycGhhbnM6IDM7XG4gICAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7XG4gICAgICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkO1xuICAgIH1cbn0iLCIvKiBHZW5lcmFsIHN0eWxlcyBmb3IgYWxsIG1lbnVzICovXG5cbi5jYnAtc3BtZW51IHtcbiAgICBiYWNrZ3JvdW5kOiAjNDdhM2RhO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLmNicC1zcG1lbnUgaDMge1xuICAgIGNvbG9yOiAjYWZkZWZhO1xuICAgIGZvbnQtc2l6ZTogMS45ZW07XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBiYWNrZ3JvdW5kOiAjMGQ3N2I2O1xufVxuXG4uY2JwLXNwbWVudSBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDEuMWVtO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi5jYnAtc3BtZW51IGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICMyNThlY2Q7XG59XG5cbi5jYnAtc3BtZW51IGE6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAjYWZkZWZhO1xuICAgIGNvbG9yOiAjNDdhM2RhO1xufVxuXG4vKiBPcmllbnRhdGlvbi1kZXBlbmRlbnQgc3R5bGVzIGZvciB0aGUgY29udGVudCBvZiB0aGUgbWVudSAqL1xuXG4uY2JwLXNwbWVudS12ZXJ0aWNhbCB7XG4gICAgd2lkdGg6IDI0MHB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogMTAwMDtcbn1cblxuLmNicC1zcG1lbnUtdmVydGljYWwgYSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyNThlY2Q7XG4gICAgcGFkZGluZzogMWVtO1xufVxuXG4uY2JwLXNwbWVudS1ob3Jpem9udGFsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTAwMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uY2JwLXNwbWVudS1ob3Jpem9udGFsIGgzIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDIwJTtcbiAgICBmbG9hdDogbGVmdDtcbn1cblxuLmNicC1zcG1lbnUtaG9yaXpvbnRhbCBhIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjAlO1xuICAgIHBhZGRpbmc6IDAuOGVtO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzI1OGVjZDtcbn1cblxuLyogVmVydGljYWwgbWVudSB0aGF0IHNsaWRlcyBmcm9tIHRoZSBsZWZ0IG9yIHJpZ2h0ICovXG5cbi5jYnAtc3BtZW51LWxlZnQge1xuICAgIGxlZnQ6IC0yNDBweDtcbn1cblxuLmNicC1zcG1lbnUtcmlnaHQge1xuICAgIHJpZ2h0OiAtMjQwcHg7XG59XG5cbi5jYnAtc3BtZW51LWxlZnQuY2JwLXNwbWVudS1vcGVuIHtcbiAgICBsZWZ0OiAwcHg7XG59XG5cbi5jYnAtc3BtZW51LXJpZ2h0LmNicC1zcG1lbnUtb3BlbiB7XG4gICAgcmlnaHQ6IDBweDtcbn1cblxuLyogSG9yaXpvbnRhbCBtZW51IHRoYXQgc2xpZGVzIGZyb20gdGhlIHRvcCBvciBib3R0b20gKi9cblxuLmNicC1zcG1lbnUtdG9wIHtcbiAgICB0b3A6IC0xNTBweDtcbn1cblxuLmNicC1zcG1lbnUtYm90dG9tIHtcbiAgICBib3R0b206IC0xNTBweDtcbn1cblxuLmNicC1zcG1lbnUtdG9wLmNicC1zcG1lbnUtb3BlbiB7XG4gICAgdG9wOiAwcHg7XG59XG5cbi5jYnAtc3BtZW51LWJvdHRvbS5jYnAtc3BtZW51LW9wZW4ge1xuICAgIGJvdHRvbTogMHB4O1xufVxuXG4vKiBQdXNoIGNsYXNzZXMgYXBwbGllZCB0byB0aGUgYm9keSAqL1xuXG4uY2JwLXNwbWVudS1wdXNoIHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG59XG5cbi5jYnAtc3BtZW51LXB1c2gtdG9yaWdodCB7XG4gICAgbGVmdDogMjQwcHg7XG59XG5cbi5jYnAtc3BtZW51LXB1c2gtdG9sZWZ0IHtcbiAgICBsZWZ0OiAtMjQwcHg7XG59XG5cbi8qIFRyYW5zaXRpb25zICovXG5cbi5jYnAtc3BtZW51LFxuLmNicC1zcG1lbnUtcHVzaCB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4vKiBFeGFtcGxlIG1lZGlhIHF1ZXJpZXMgKi9cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTUuMTg3NWVtKXtcblxuICAgIC5jYnAtc3BtZW51LWhvcml6b250YWwge1xuICAgICAgICBmb250LXNpemU6IDc1JTtcbiAgICAgICAgaGVpZ2h0OiAxMTBweDtcbiAgICB9XG5cbiAgICAuY2JwLXNwbWVudS10b3Age1xuICAgICAgICB0b3A6IC0xMTBweDtcbiAgICB9XG5cbiAgICAuY2JwLXNwbWVudS1ib3R0b20ge1xuICAgICAgICBib3R0b206IC0xMTBweDtcbiAgICB9XG5cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDI2LjM3NWVtKXtcblxuICAgIC5jYnAtc3BtZW51LXZlcnRpY2FsIHtcbiAgICAgICAgZm9udC1zaXplOiA5MCU7XG4gICAgICAgIHdpZHRoOiAxOTBweDtcbiAgICB9XG5cbiAgICAuY2JwLXNwbWVudS1sZWZ0LFxuICAgIC5jYnAtc3BtZW51LXB1c2gtdG9sZWZ0IHtcbiAgICAgICAgbGVmdDogLTE5MHB4O1xuICAgIH1cblxuICAgIC5jYnAtc3BtZW51LXJpZ2h0IHtcbiAgICAgICAgcmlnaHQ6IC0xOTBweDtcbiAgICB9XG5cbiAgICAuY2JwLXNwbWVudS1wdXNoLXRvcmlnaHQge1xuICAgICAgICBsZWZ0OiAxOTBweDtcbiAgICB9XG59XG4iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0= */
