@charset "UTF-8";
/* ------------------------------------------------------------------------ *\
 * Helpers
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Mixins
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Functions
\* ------------------------------------------------------------------------ */
/*
 * Retrieve a color variable
 *
 * @param  {string}  $color - The name of the color as defined in _variables
 * @param  {string}  $tone  - The variant of the color (shade|base|tint)
 */
/*
 * Remove the unit of a length
 *
 * @param  {Number}  $number
 */
/*
 * Convert PX units in to EM or REM, relative to a specified base sizes
 *
 * @param  {Number}  $size - Array of up to four sizes in PX units
 * @param  {Number}  $base - Font size to base calculations off of
 * @param  {String}  $unit - Either "em" or "rem"
 */
/*
 * Convert Photoshop leading to CSS line-height
 *
 * @param  {Number}  $size - Value of Leading in Photoshop's Character Panel
 * @param  {Number}  $base - Value of Font Size in Photosohp's Character Panel
 */
/*
 * Convert Photoshop tracking to CSS letter-spacing
 *
 * @param  {Number}  $size - Value of Tracking in Photoshop's Character Panel
 * @param  {Number}  $base - Value of Font Size in Photosohp's Character Panel
 */
/* ------------------------------------------------------------------------ *\
 * Colors
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Fonts
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Widths
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Break Points
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Layers
\* ------------------------------------------------------------------------ */
.__dark {
  color: #000000 !important;
}

.__light {
  color: #FFFFFF !important;
}

.__big {
  font-size: 1.25em !important;
}

.__small {
  font-size: 0.75em !important;
}

.__bold {
  font-weight: 700 !important;
}

.__italic {
  font-style: italic !important;
}

.__textcenter {
  text-align: center !important;
}

.__textleft {
  text-align: left !important;
}

.__textright {
  text-align: right !important;
}

.__nowrap {
  white-space: nowrap !important;
}

.__center {
  margin-left: auto !important;
  margin-right: auto !important;
}

.__left {
  float: left !important;
}

.__right {
  float: right !important;
}

.__nomargin {
  margin: 0 !important;
}

.__nopadding {
  padding: 0 !important;
}

.__notransform {
  transform: none !important;
}

.__notransition {
  transition: none !important;
}

.__block {
  display: block !important;
}

.__flex {
  display: flex !important;
}

.__visuallyhidden {
  left: -999em !important;
  position: absolute !important;
  top: -999em !important;
}

.__primary {
  color: #008349 !important;
}

.__accent {
  color: #B33527 !important;
}

.__error {
  color: #B33527 !important;
}

/* visibility classes */
@media (pointer: fine) {
  .__touch {
    display: none !important;
  }
}
@supports not (pointer: fine) {
  .__touch {
    display: none !important;
  }
}
@media (pointer: coarse) {
  .__mouse {
    display: none !important;
  }
}
@media print {
  .__noprint {
    display: none !important;
  }
}
/* "visible" classes */
@media (max-width: 47.9375em) {
  .__visible-xs {
    display: none !important;
  }
}

@media (max-width: 53.25em) {
  .__visible-s {
    display: none !important;
  }
}

@media (max-width: 59.9375em) {
  .__visible-m {
    display: none !important;
  }
}

@media (max-width: 63.9375em) {
  .__visible-l {
    display: none !important;
  }
}

@media (max-width: 79.9375em) {
  .__visible-xl {
    display: none !important;
  }
}

/* "hidden" classes -- NOTE: It is important that _hidden classes come after _visible for override purposes */
@media (min-width: 48em) {
  .__hidden-xs {
    display: none !important;
  }
}

@media (min-width: 53.3125em) {
  .__hidden-s {
    display: none !important;
  }
}

@media (min-width: 60em) {
  .__hidden-m {
    display: none !important;
  }
}

@media (min-width: 64em) {
  .__hidden-l {
    display: none !important;
  }
}

@media (min-width: 80em) {
  .__hidden-xl {
    display: none !important;
  }
}

/* ------------------------------------------------------------------------ *\
 * Base
\* ------------------------------------------------------------------------ */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* ------------------------------------------------------------------------ *\
 * Normalize
\* ------------------------------------------------------------------------ */
/* stylelint-disable property-no-vendor-prefix, selector-max-type, selector-no-qualifying-type */
/* These styles are intended to be global */
*,
*::before,
*::after {
  box-sizing: border-box;
}

button,
input,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
  box-shadow: none;
}

[type=search] {
  -webkit-appearance: none;
}

svg {
  max-height: 100%;
  max-width: 100%;
}

/* Remove outline for non-keyboard :focus */
*:focus:not(.focus-visible) {
  outline: none;
}

/* ------------------------------------------------------------------------ *\
 * Grid (based loosely on https://v4-alpha.getbootstrap.com/layout/grid/)
\* ------------------------------------------------------------------------ */
/* stylelint-disable selector-class-pattern */
.row {
  display: flex;
  flex-wrap: wrap;
}
.row.row--grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
}
.row.row--grid.row--equal {
  grid-auto-columns: 1fr;
  grid-auto-rows: 1fr;
}
.row > [class*=col-] {
  flex-grow: 1;
  flex-shrink: 1;
  min-width: 0;
}
.row > [class*=col-].col--nogrow {
  flex-grow: 0;
}
.row > [class*=col-].col--noshrink {
  flex-shrink: 0;
}
.row.row--padded {
  width: calc(100% + 1.25em);
}
.row.row--padded > [class*=col-] {
  padding-right: 1.25em;
}
.row.row--padded.row--tight {
  width: calc(100% + 0.625em);
}
.row.row--padded.row--tight > [class*=col-] {
  padding-right: 0.625em;
}
.row.row--padded.row--loose {
  width: calc(100% + 1.875em);
}
.row.row--padded.row--loose > [class*=col-] {
  padding-right: 1.875em;
}
.row.row--nowrap {
  flex-wrap: nowrap;
}
.row.row--wrapreverse {
  flex-wrap: wrap-reverse;
}
.row.row--center {
  align-items: center;
  justify-content: center;
}
.row:not(.row--column).row--hcenter {
  justify-content: center;
}
.row:not(.row--column).row--vcenter {
  align-items: center;
}
.row:not(.row--column).row--top {
  align-items: flex-start;
}
.row:not(.row--column).row--right {
  justify-content: flex-end;
}
.row:not(.row--column).row--bottom {
  align-items: flex-end;
}
.row:not(.row--column).row--left {
  justify-content: flex-start;
}
.row.row--stretch {
  align-items: stretch;
}
.row.row--around {
  justify-content: space-around;
}
.row.row--between {
  justify-content: space-between;
}
.row:not(.row--column).row--reverse {
  flex-direction: row-reverse;
}
.row.row--column {
  flex-direction: column;
}
.row.row--column.row--vcenter {
  justify-content: center;
}
.row.row--column.row--top {
  justify-content: flex-start;
}
.row.row--column.row--right {
  align-items: flex-end;
}
.row.row--column.row--bottom {
  justify-content: flex-end;
}
.row.row--column.row--left {
  align-items: flex-start;
}
.row.row--column.row--hcenter {
  align-items: center;
}
.row.row--column.row--reverse {
  flex-direction: column-reverse;
}

.col-auto {
  flex-basis: auto;
}

.col-0 {
  flex-basis: 0%;
  grid-column: span 0;
}

.col-1 {
  flex-basis: 8.3333333333%;
  grid-column: span 1;
}

.col-2 {
  flex-basis: 16.6666666667%;
  grid-column: span 2;
}

.col-3 {
  flex-basis: 25%;
  grid-column: span 3;
}

.col-4 {
  flex-basis: 33.3333333333%;
  grid-column: span 4;
}

.col-5 {
  flex-basis: 41.6666666667%;
  grid-column: span 5;
}

.col-6 {
  flex-basis: 50%;
  grid-column: span 6;
}

.col-7 {
  flex-basis: 58.3333333333%;
  grid-column: span 7;
}

.col-8 {
  flex-basis: 66.6666666667%;
  grid-column: span 8;
}

.col-9 {
  flex-basis: 75%;
  grid-column: span 9;
}

.col-10 {
  flex-basis: 83.3333333333%;
  grid-column: span 10;
}

.col-11 {
  flex-basis: 91.6666666667%;
  grid-column: span 11;
}

.col-12 {
  flex-basis: 100%;
  grid-column: span 12;
}

@media (min-width: 48em) {
  .col-xs-auto {
    flex-basis: auto;
  }

  .col-xs-0 {
    flex-basis: 0%;
    grid-column: span 0;
  }

  .col-xs-1 {
    flex-basis: 8.3333333333%;
    grid-column: span 1;
  }

  .col-xs-2 {
    flex-basis: 16.6666666667%;
    grid-column: span 2;
  }

  .col-xs-3 {
    flex-basis: 25%;
    grid-column: span 3;
  }

  .col-xs-4 {
    flex-basis: 33.3333333333%;
    grid-column: span 4;
  }

  .col-xs-5 {
    flex-basis: 41.6666666667%;
    grid-column: span 5;
  }

  .col-xs-6 {
    flex-basis: 50%;
    grid-column: span 6;
  }

  .col-xs-7 {
    flex-basis: 58.3333333333%;
    grid-column: span 7;
  }

  .col-xs-8 {
    flex-basis: 66.6666666667%;
    grid-column: span 8;
  }

  .col-xs-9 {
    flex-basis: 75%;
    grid-column: span 9;
  }

  .col-xs-10 {
    flex-basis: 83.3333333333%;
    grid-column: span 10;
  }

  .col-xs-11 {
    flex-basis: 91.6666666667%;
    grid-column: span 11;
  }

  .col-xs-12 {
    flex-basis: 100%;
    grid-column: span 12;
  }
}
@media (min-width: 53.3125em) {
  .col-s-auto {
    flex-basis: auto;
  }

  .col-s-0 {
    flex-basis: 0%;
    grid-column: span 0;
  }

  .col-s-1 {
    flex-basis: 8.3333333333%;
    grid-column: span 1;
  }

  .col-s-2 {
    flex-basis: 16.6666666667%;
    grid-column: span 2;
  }

  .col-s-3 {
    flex-basis: 25%;
    grid-column: span 3;
  }

  .col-s-4 {
    flex-basis: 33.3333333333%;
    grid-column: span 4;
  }

  .col-s-5 {
    flex-basis: 41.6666666667%;
    grid-column: span 5;
  }

  .col-s-6 {
    flex-basis: 50%;
    grid-column: span 6;
  }

  .col-s-7 {
    flex-basis: 58.3333333333%;
    grid-column: span 7;
  }

  .col-s-8 {
    flex-basis: 66.6666666667%;
    grid-column: span 8;
  }

  .col-s-9 {
    flex-basis: 75%;
    grid-column: span 9;
  }

  .col-s-10 {
    flex-basis: 83.3333333333%;
    grid-column: span 10;
  }

  .col-s-11 {
    flex-basis: 91.6666666667%;
    grid-column: span 11;
  }

  .col-s-12 {
    flex-basis: 100%;
    grid-column: span 12;
  }
}
@media (min-width: 60em) {
  .col-m-auto {
    flex-basis: auto;
  }

  .col-m-0 {
    flex-basis: 0%;
    grid-column: span 0;
  }

  .col-m-1 {
    flex-basis: 8.3333333333%;
    grid-column: span 1;
  }

  .col-m-2 {
    flex-basis: 16.6666666667%;
    grid-column: span 2;
  }

  .col-m-3 {
    flex-basis: 25%;
    grid-column: span 3;
  }

  .col-m-4 {
    flex-basis: 33.3333333333%;
    grid-column: span 4;
  }

  .col-m-5 {
    flex-basis: 41.6666666667%;
    grid-column: span 5;
  }

  .col-m-6 {
    flex-basis: 50%;
    grid-column: span 6;
  }

  .col-m-7 {
    flex-basis: 58.3333333333%;
    grid-column: span 7;
  }

  .col-m-8 {
    flex-basis: 66.6666666667%;
    grid-column: span 8;
  }

  .col-m-9 {
    flex-basis: 75%;
    grid-column: span 9;
  }

  .col-m-10 {
    flex-basis: 83.3333333333%;
    grid-column: span 10;
  }

  .col-m-11 {
    flex-basis: 91.6666666667%;
    grid-column: span 11;
  }

  .col-m-12 {
    flex-basis: 100%;
    grid-column: span 12;
  }
}
@media (min-width: 64em) {
  .col-l-auto {
    flex-basis: auto;
  }

  .col-l-0 {
    flex-basis: 0%;
    grid-column: span 0;
  }

  .col-l-1 {
    flex-basis: 8.3333333333%;
    grid-column: span 1;
  }

  .col-l-2 {
    flex-basis: 16.6666666667%;
    grid-column: span 2;
  }

  .col-l-3 {
    flex-basis: 25%;
    grid-column: span 3;
  }

  .col-l-4 {
    flex-basis: 33.3333333333%;
    grid-column: span 4;
  }

  .col-l-5 {
    flex-basis: 41.6666666667%;
    grid-column: span 5;
  }

  .col-l-6 {
    flex-basis: 50%;
    grid-column: span 6;
  }

  .col-l-7 {
    flex-basis: 58.3333333333%;
    grid-column: span 7;
  }

  .col-l-8 {
    flex-basis: 66.6666666667%;
    grid-column: span 8;
  }

  .col-l-9 {
    flex-basis: 75%;
    grid-column: span 9;
  }

  .col-l-10 {
    flex-basis: 83.3333333333%;
    grid-column: span 10;
  }

  .col-l-11 {
    flex-basis: 91.6666666667%;
    grid-column: span 11;
  }

  .col-l-12 {
    flex-basis: 100%;
    grid-column: span 12;
  }
}
@media (min-width: 80em) {
  .col-xl-auto {
    flex-basis: auto;
  }

  .col-xl-0 {
    flex-basis: 0%;
    grid-column: span 0;
  }

  .col-xl-1 {
    flex-basis: 8.3333333333%;
    grid-column: span 1;
  }

  .col-xl-2 {
    flex-basis: 16.6666666667%;
    grid-column: span 2;
  }

  .col-xl-3 {
    flex-basis: 25%;
    grid-column: span 3;
  }

  .col-xl-4 {
    flex-basis: 33.3333333333%;
    grid-column: span 4;
  }

  .col-xl-5 {
    flex-basis: 41.6666666667%;
    grid-column: span 5;
  }

  .col-xl-6 {
    flex-basis: 50%;
    grid-column: span 6;
  }

  .col-xl-7 {
    flex-basis: 58.3333333333%;
    grid-column: span 7;
  }

  .col-xl-8 {
    flex-basis: 66.6666666667%;
    grid-column: span 8;
  }

  .col-xl-9 {
    flex-basis: 75%;
    grid-column: span 9;
  }

  .col-xl-10 {
    flex-basis: 83.3333333333%;
    grid-column: span 10;
  }

  .col-xl-11 {
    flex-basis: 91.6666666667%;
    grid-column: span 11;
  }

  .col-xl-12 {
    flex-basis: 100%;
    grid-column: span 12;
  }
}
/* ------------------------------------------------------------------------ *\
 * Selection
\* ------------------------------------------------------------------------ */
::selection {
  background-color: #B33527;
  color: #FFFFFF;
}

/* ------------------------------------------------------------------------ *\
 * Link
\* ------------------------------------------------------------------------ */
.link, .user-content a[href^="tel:"] {
  color: #B33527;
  cursor: pointer;
  text-decoration: none;
  transition: color 0.15s;
}
.link:focus, .user-content a[href^="tel:"]:focus, .link:hover, .user-content a[href^="tel:"]:hover {
  color: #D44939;
}

/* inherit variant */
.link--inherit {
  color: inherit;
}
.link--inherit:focus, .link--inherit:hover {
  color: inherit;
  text-decoration: underline;
}

/* ------------------------------------------------------------------------ *\
 * Button
\* ------------------------------------------------------------------------ */
.button, .weblinx-tab-list__button, .weblinx-accordion__button {
  background: #008349;
  border: 0;
  border-radius: 0.375em;
  color: #FFFFFF;
  cursor: pointer;
  display: inline-block;
  font-family: "lithos-pro", "Helvetica", "Arial", sans-serif;
  font-size: 1em;
  font-weight: 600;
  line-height: 1.2em;
  margin: 0em 0em 1.25em;
  outline: 0;
  padding: 0.9375em 1.125em;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.15s;
}
.button:active, .weblinx-tab-list__button:active, .weblinx-accordion__button:active {
  background-color: #00502D;
}

/* disabled variant */
.button--disabled {
  cursor: not-allowed;
  opacity: 0.6;
}

/* ------------------------------------------------------------------------ *\
 * Alignment
\* ------------------------------------------------------------------------ */
.alignleft {
  float: left;
  margin-right: 1.5625em;
  max-width: 33.3333333333%;
}

.alignright {
  float: right;
  margin-left: 1.5625em;
  max-width: 33.3333333333%;
}

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

/* ------------------------------------------------------------------------ *\
 * Divider
\* ------------------------------------------------------------------------ */
.divider {
  background: #008349;
  border: 0;
  clear: both;
  height: 2px;
  height: 0.125rem;
  margin: 0.9375em 0em;
  width: 100%;
}

/* ------------------------------------------------------------------------ *\
 * Input
\* ------------------------------------------------------------------------ */
.input {
  background: #ECE8DE;
  border: 2px solid #CABB9D;
  border: 0.125rem solid #CABB9D;
  border-radius: 0.25em;
  color: #554632;
  display: block;
  font-family: "calibri", "Helvetica", "Arial", sans-serif;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.2em;
  margin: 0px 0px 10px;
  margin: 0rem 0rem 0.625rem;
  outline: 0;
  padding: 0.625em 0.9375em 0.625em 0.9375em;
  text-overflow: ellipsis;
  transition: background-color 0.15s, background-size 0.15s, border-color 0.15s, color 0.15s;
  width: 100%;
}
.input:not(.input--disabled):active, .input:not(.input--disabled):focus {
  border-color: #B33527;
}
.input::placeholder {
  color: #756045;
  opacity: 1;
}

/* error variant */
.input--error, .nf-error .input {
  border-color: #B33527;
}

/* success variant */
.input--success, .nf-pass .input {
  border-color: #008349;
}

/* select variant */
.input--select {
  cursor: pointer;
  text-indent: 0.01px;
}
.input--select::-ms-expand {
  display: none;
}

.input--arrow {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512' fill='%23554632'%3E%3Cpath d='M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41zm255-105L177 64c-9.4-9.4-24.6-9.4-33.9 0L24 183c-15.1 15.1-4.4 41 17 41h238c21.4 0 32.1-25.9 17-41z'/%3E%3C/svg%3E %3C!-- Font Awesome Pro 5.5.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) --%3E");
  background-position: center right 0.9375em;
  background-repeat: no-repeat;
  background-size: 0.75em;
  padding-right: calc(0.75em + 1.875em);
}

/* checkbox & radiobutton variants */
.input--checkbox,
.input--radiobutton {
  border-width: 1px;
  border-width: 0.0625rem;
  cursor: pointer;
  display: inline-block;
  height: 1.5em;
  overflow: hidden;
  padding: 0;
  position: relative;
  vertical-align: middle;
  width: 1.5em;
}
.input--checkbox::after,
.input--radiobutton::after {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 0.75em;
  content: "";
  display: block;
  height: 100%;
  left: -999em;
  position: absolute;
  top: 0;
  transition: background-color 0.15s, left 0s 0.15s, transform 0.15s;
  width: 100%;
}
.input--checkbox:checked::after,
.input--radiobutton:checked::after {
  left: 0;
  transition: background-color 0.15s, transform 0.15s;
}
.input--checkbox + .text--label,
.input--radiobutton + .text--label {
  display: inline-block;
}

.input--checkbox:checked {
  background-color: #B33527;
  border-color: #B33527;
}
.input--checkbox::after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='%23FFFFFF'%3E%3Cpath d='M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z'/%3E%3C/svg%3E %3C!-- Font Awesome Pro 5.5.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) --%3E");
  transform: rotate(90deg);
}
.input--checkbox:checked::after {
  transform: rotate(0);
}

.input--radiobutton {
  border-radius: 50%;
}
.input--radiobutton::after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='%23B33527'%3E%3Cpath d='M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8z'/%3E%3C/svg%3E %3C!-- Font Awesome Pro 5.5.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) --%3E");
  transform: scale(0);
}
.input--radiobutton:checked::after {
  transform: scale(1);
}

/* disabled variant */
.input--disabled {
  background-color: #dbd2be;
  cursor: not-allowed;
  opacity: 0.6;
}

/* select browser variants */
/* stylelint-disable selector-max-type, selector-no-vendor-prefix, selector-type-no-unknown */
/* IE */
_:-ms-input-placeholder,
:root .input--select {
  padding: 0.625em calc(0.9375em - 3px) calc(0.625em - 2px);
}

_:-ms-input-placeholder,
:root .input--arrow {
  padding-right: calc(0.75em + 1.875em - 3px);
}

/* Chrome  */
@supports (-webkit-appearance: none) and (font-stretch: normal) and (not (-ms-accelerator: true)) {
  .input--select {
    padding: 0.625em 0.9375em 0.625em 0.9375em;
  }

  .input--arrow {
    padding-right: calc(0.75em + 1.875em);
  }
}
/* Safari */
_::-webkit-full-page-media,
_:future,
:root .input--select {
  padding: 0.625em 0.9375em 0.625em 0.9375em;
}

_::-webkit-full-page-media,
_:future,
:root .input--arrow {
  padding-right: calc(0.75em + 1.875em);
}

/* Edge */
@supports (-ms-ime-align: auto) {
  .input--select {
    padding: calc(0.625em - 1px) calc(0.9375em - 2px) calc(0.625em - 1px) calc(0.9375em - 2px);
  }

  .input--arrow {
    padding-right: calc(0.75em + 1.875em - 2px);
  }
}
/* Firefox */
@-moz-document url-prefix("") {
  .input--select {
    padding: 0.625em calc(0.9375em - 4px) 0.625em calc(0.9375em - 4px);
  }

  .input--arrow {
    padding-right: calc(0.75em + 1.875em - 4px);
  }
}
/* stylelint-enable */
/* ------------------------------------------------------------------------ *\
 * Text
\* ------------------------------------------------------------------------ */
.text {
  color: #554632;
  display: block;
  font-family: "calibri", "Helvetica", "Arial", sans-serif;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.5em;
  margin: 0em 0em 0.8125em;
}
.text > .button:last-child, .text > .weblinx-tab-list__button:last-child, .text > .weblinx-accordion__button:last-child {
  margin-bottom: 0 !important;
}

/* label variant */
.text--label {
  cursor: pointer;
  font-weight: 700;
}

/* list variant */
.text--list {
  padding: 0em 0em 0em 1.25em;
}
.text--list .text__list-item {
  display: list-item;
}
.text--list .text__list-item:not(:last-child) {
  margin-bottom: 0.25em;
}

/* list ordered variant */
.text--ordered {
  list-style: decimal;
}

/* list unordered variant */
.text--unordered {
  list-style: disc;
}

/* table variant */
.text__table__container {
  overflow: auto;
  width: 100%;
}

.text--table {
  border-collapse: collapse;
  display: table;
  width: 100%;
}
.text--table .text__header {
  display: table-header-group;
}
.text--table .text__body {
  display: table-row-group;
}
.text--table .text__footer {
  color: #756045;
  display: table-footer-group;
  font-style: italic;
}
.text--table .text__row {
  display: table-row;
}
.text--table .text__cell {
  border: 1px solid #554632;
  border: 0.0625rem solid #554632;
  min-width: 7.8125em;
  padding: 0.625em 0.9375em;
  text-align: left;
  vertical-align: top;
}
.text--table .text__header .text__cell,
.text--table .text__body .text__cell--header {
  font-weight: 700;
}
.text--table .text__body .text__cell--header {
  text-align: left;
}

/* ------------------------------------------------------------------------ *\
 * Title
\* ------------------------------------------------------------------------ */
.title {
  color: #008349;
  font-family: "lithos-pro", "Helvetica", "Arial", sans-serif;
  font-size: 1.8125em;
  font-weight: 700;
  line-height: 0.8275862069em;
  margin: 0em 0em 0.3448275862em;
  text-transform: uppercase;
}

.title--h2,
.title--h3,
.title--h4 {
  font-size: 1.25em;
  line-height: 1.3em;
  margin-bottom: 0.25em;
}

.title--h2 {
  color: #4886AF;
}

.title--h3 {
  color: #B33527;
}

.title--h4 {
  color: #D4621A;
}

.title--h5,
.title--h6 {
  color: #554632;
  font-family: "calibri", "Helvetica", "Arial", sans-serif;
  margin-bottom: 0;
}

.title--h5 {
  font-size: 1.125em;
  line-height: 1.1111111111em;
}

.title--h6 {
  font-size: 1em;
  line-height: 1.6em;
  text-transform: none;
}

/* divider variant */
.title--divider {
  align-items: center;
  display: flex;
}
.title--divider::before, .title--divider::after {
  background: #CABB9D;
  content: " ";
  display: block;
  flex: 1 1 0%;
  height: 1px;
  height: 0.0625rem;
}
.title--divider::before {
  margin-right: 1em;
}
.title--divider::after {
  margin-left: 1em;
}

/* ------------------------------------------------------------------------ *\
 * Blockquote
\* ------------------------------------------------------------------------ */
.blockquote {
  border-left: 2px solid #B33527;
  border-left: 0.125rem solid #B33527;
  margin: 0;
  padding: 0em 0em 0em 0.9375em;
}

/* ------------------------------------------------------------------------ *\
 * User Content
\* ------------------------------------------------------------------------ */
.user-content {
  /* stylelint-disable selector-no-qualifying-type, selector-max-type */
  /* stylelint-enable */
}
.user-content img {
  display: block;
  height: auto !important;
  max-width: 100%;
}

/* light variant */
.user-content--light {
  /* stylelint-disable selector-no-qualifying-type, selector-max-type */
  /* stylelint-enable */
}
.user-content--light .link, .user-content--light .user-content a[href^="tel:"], .user-content .user-content--light a[href^="tel:"],
.user-content--light .title,
.user-content--light .text,
.user-content--light .wp-caption-text {
  color: #FFFFFF;
}

/* ------------------------------------------------------------------------ *\
 * Module
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Accordion - Based on Handorgel - https://www.npmjs.com/package/handorgel
\* ------------------------------------------------------------------------ */
.weblinx-accordion-container {
  display: block;
  width: 100%;
}

.weblinx-accordion__header {
  display: block;
  font-size: 1em;
  margin: 0;
}

.weblinx-accordion__header:not(:first-child),
.wp-block-acf-weblinx-accordion:not(:first-child, :has(.weblinx-accordion-container)) .weblinx-accordion__header {
  margin-top: 12px;
  margin-top: 0.75rem;
}

.weblinx-accordion__button {
  background-color: #ECE8DE;
  border-radius: 0.9375rem;
  color: #B33527;
  display: flex;
  font-family: "calibri", "Helvetica", "Arial", sans-serif;
  font-size: calc(1.125em + 0.1875 * ((100vw - 48em) / 32));
  gap: 1.0952380952em;
  margin: 0;
  padding: 15px 28px;
  padding: 0.9375rem 1.75rem;
  text-align: left;
  text-transform: uppercase;
  width: 100%;
}

@media screen and (min-width: 80em){
  .weblinx-accordion__button{
    font-size: 1.3125em;
  }
}

@media screen and (max-width: 48em){
  .weblinx-accordion__button{
    font-size: 1.125em;
  }
}
.weblinx-accordion__button::before {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 512' fill='%23B33527'%3E%3Cpath d='M224.3 273l-136 136c-9.4 9.4-24.6 9.4-33.9 0l-22.6-22.6c-9.4-9.4-9.4-24.6 0-33.9l96.4-96.4-96.4-96.4c-9.4-9.4-9.4-24.6 0-33.9L54.3 103c9.4-9.4 24.6-9.4 33.9 0l136 136c9.5 9.4 9.5 24.6.1 34z'/%3E%3C/svg%3E %3C!-- Font Awesome Pro 5.5.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) --%3E");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 1.2857142857em;
  transition: transform 0.15s;
  width: 0.619047619em;
}

.weblinx-accordion__header--state-open .weblinx-accordion__button {
  background-color: #ECE8DE;
  border-radius: 0.9375rem 0.9375rem 0rem 0rem;
}
.weblinx-accordion__header--state-open .weblinx-accordion__button::before {
  transform: rotate(90deg);
}

.weblinx-accordion__header--state-focus .weblinx-accordion__button {
  background-color: #ECE8DE;
}

.weblinx-accordion__panel {
  background-color: #ECE8DE;
  border-radius: 0rem 0rem 0.9375rem 0.9375rem;
  display: none;
  height: 0;
  overflow: hidden;
  padding: 0px 28px;
  padding: 0rem 1.75rem;
  transition: height 0.1s ease;
}
.weblinx-accordion__panel--state-open {
  display: block;
  transition: height 0.2s ease;
}
.weblinx-accordion__panel--state-opened {
  overflow: visible;
}

.weblinx-accordion__content {
  opacity: 0;
  padding: 0px 0px 31px;
  padding: 0rem 0rem 1.9375rem;
  transition: opacity 0.1s ease;
}
.weblinx-accordion__content > :last-child {
  margin-bottom: 0 !important;
}

.weblinx-accordion__panel--state-opened .weblinx-accordion__content {
  opacity: 1;
  transition: opacity 0.3s ease;
}

.weblinx-tab-list {
  display: none;
  flex-wrap: wrap;
  gap: 1em;
}
.weblinx-tab-list--state-active {
  display: flex;
}
.weblinx-tab-list--state-active + .weblinx-accordion-container .weblinx-accordion__header {
  display: none;
}

.weblinx-tab-list__button {
  margin: 0;
}
/* ------------------------------------------------------------------------ *\
 * Article
\* ------------------------------------------------------------------------ */
.article__figure {
  margin: 0em 0em 1.875em;
}

.article__image {
  display: block;
  height: auto;
  width: 100%;
}

/* excerpt variant */
.article--excerpt + .article--excerpt {
  border-top: 1px solid #CABB9D;
  border-top: 0.0625rem solid #CABB9D;
  padding-top: 1em;
}
.article--excerpt .article__title {
  font-size: 1.125em;
}
.article--excerpt .article__header > .article__title:not(:last-child) {
  margin-bottom: 0;
}
.article--excerpt .article__header > .article__title:not(:last-child) + * {
  margin-bottom: 0.625em;
}

/* ------------------------------------------------------------------------ *\
 * Attractions Map
\* ------------------------------------------------------------------------ */
.attractions-map {
  margin: 0em 0em 1em;
}

.attractions-map__region {
  fill: transparent;
  stroke: transparent;
  stroke-width: 0.125rem;
  transition: fill 0.15s, stroke 0.15s;
}
.attractions-map__region:focus, .attractions-map__region:hover, .attractions-map__link:focus > .attractions-map__region, .attractions-map__link:hover > .attractions-map__region {
  fill: rgba(179, 53, 39, 0.2);
  stroke: #B33527;
}

/* ------------------------------------------------------------------------ *\
 * Babel Fish
\* ------------------------------------------------------------------------ */
/* stylelint-disable */
.weblinx-babel-fish {
  display: inline-block;
}

.weblinx-babel-fish__button {
  background: none;
  color: #008349;
  display: inline-flex;
  font-family: "calibri", "Helvetica", "Arial", sans-serif;
  font-size: 0.75em;
  font-weight: 700;
  gap: 0.6666666667em;
  margin: 0;
  position: relative;
  text-transform: uppercase;
  z-index: 0;
}
.weblinx-babel-fish__button .icon {
  height: 1.3333333333em;
  width: 0.6666666667em;
}
.weblinx-babel-fish__button .icon--large {
  width: 1.3333333333em;
}
:root:not(:has(#gt-nvframe)) .weblinx-babel-fish__button[onclick], :root:has(#gt-nvframe) .weblinx-babel-fish__button:not([onclick]) {
  display: none;
}

:root:has(#gt-nvframe) .weblinx-babel-fish__submit {
  display: none;
}

.weblinx-babel-fish__input {
  -webkit-appearance: none;
  appearance: none;
  background: inherit;
  border: 0;
  color: inherit;
  cursor: pointer;
  font-family: inherit;
  font-size: 1em;
  font-weight: inherit;
  inset: 0;
  margin: 0;
  opacity: 0;
  padding: inherit;
  position: absolute;
  width: 100%;
  z-index: 1;
}
.weblinx-babel-fish__input:focus {
  opacity: 1;
}

.weblinx-babel-fish--light {
  display: flex;
  width: 100%;
}
.weblinx-babel-fish--light .weblinx-babel-fish__button {
  text-shadow: -0.1333333333em -0.1333333333em 0 #FFFFFF, 0 -0.1333333333em 0 #FFFFFF, 0.1333333333em -0.1333333333em 0 #FFFFFF, 0.1333333333em 0 0 #FFFFFF, 0.1333333333em 0.1333333333em 0 #FFFFFF, 0 0.1333333333em 0 #FFFFFF, -0.1333333333em 0.1333333333em 0 #FFFFFF, -0.1333333333em 0 0 #FFFFFF;
  color: #B33527;
  display: flex;
  font-family: "lithos-pro", "Helvetica", "Arial", sans-serif;
  font-size: 0.9375em;
  justify-content: space-between;
  padding: 0.5em 0.6666666667em;
  width: 100%;
}
.weblinx-babel-fish--light .weblinx-babel-fish__button .icon {
  text-shadow: -0.1333333333em -0.1333333333em 0 #FFFFFF, 0 -0.1333333333em 0 #FFFFFF, 0.1333333333em -0.1333333333em 0 #FFFFFF, 0.1333333333em 0 0 #FFFFFF, 0.1333333333em 0.1333333333em 0 #FFFFFF, 0 0.1333333333em 0 #FFFFFF, -0.1333333333em 0.1333333333em 0 #FFFFFF, -0.1333333333em 0 0 #FFFFFF;
}

/* stylelint-enable */
/* ------------------------------------------------------------------------ *\
 * Callout
\* ------------------------------------------------------------------------ */
.callout {
  background: #008349;
  background: linear-gradient(to bottom, #008349 0%, #006a3b 100%);
  border-radius: 0.625em;
  box-shadow: 0em 0em 0.25em rgba(0, 0, 0, 0.4);
  display: block;
  margin: 0em 0em 0.625em;
  padding: 1.25em;
  text-decoration: none;
}
.callout:focus, .callout:hover {
  background: #009d57;
  background: linear-gradient(to bottom, #009d57 0%, #008349 100%);
}
.callout.callout--secondary {
  background: #B33527;
  background: linear-gradient(to bottom, #B33527 0%, #9e2f22 100%);
}
.callout.callout--secondary:focus, .callout.callout--secondary:hover {
  background: #c83b2c;
  background: linear-gradient(to bottom, #c83b2c 0%, #b33527 100%);
}
.callout.callout--tertiary {
  background: #4886AF;
  background: linear-gradient(to bottom, #4886AF 0%, #41789d 100%);
}
.callout.callout--tertiary:focus, .callout.callout--tertiary:hover {
  background: #5792ba;
  background: linear-gradient(to bottom, #5792ba 0%, #4886af 100%);
}
.callout.callout--quaternary {
  background: #D4621A;
  background: linear-gradient(to bottom, #D4621A 0%, #bd5817 100%);
}
.callout.callout--quaternary:focus, .callout.callout--quaternary:hover {
  background: #e46e23;
  background: linear-gradient(to bottom, #e46e23 0%, #d4621a 100%);
}

.callout__title {
  color: #FFFFFF;
  font-size: 0.75em;
  margin-bottom: 0.3333333333em;
}

.callout__text {
  color: #FFFFFF;
  font-size: 0.875em;
  line-height: 1.2em;
  margin-bottom: 0;
}

/* ------------------------------------------------------------------------ *\
 * iframe
\* ------------------------------------------------------------------------ */
.iframe__container {
  height: 0;
  padding-bottom: 56.25%;
  position: relative;
  width: 100%;
}
.iframe__container > .iframe {
  bottom: 0;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

/* ------------------------------------------------------------------------ *\
 * Logo
\* ------------------------------------------------------------------------ */
.logo {
  display: block;
  text-decoration: none;
  transition: opacity 0.15s;
}
.logo:hover {
  opacity: 0.9;
}

.logo__image {
  display: block;
  width: 100%;
}

/* ------------------------------------------------------------------------ *\
 * Menu List
\* ------------------------------------------------------------------------ */
/* ============================ GLOBAL VARIANTS =========================== */
.menu-list__container:after {
  content: '';
  display: block;
  clear: both;
}

.menu-list {
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
}

.menu-list:after {
  content: '';
  display: block;
  clear: both;
}

.menu-list__item {
  float: left;
  position: relative;
}

.menu-list__link {
  display: block;
}

.menu-list__toggle {
  background: none;
  border: 0;
  cursor: pointer;
  display: block;
  flex: 0 0 auto;
  font-size: 1em;
  margin: 0;
}
.menu-list__toggle > .toggle__icon {
  transition: transform 0.15s;
}
.menu-list__item.is-active > .menu-list__toggle > .toggle__icon {
  transform: rotate(-180deg);
}

/* accordion variant */
.menu-list--accordion .menu-list__item--parent {
  display: flex;
  flex-wrap: wrap;
}
.menu-list--accordion .menu-list__item--parent > .menu-list__link {
  flex: 1 1 0%;
}

/* child variant */
.menu-list--child {
  min-width: 100%;
}
.menu-list--child .menu-list__item {
  float: none;
}

/* child accordion variant */
.menu-list--child.menu-list--accordion {
  height: 0;
  overflow: hidden;
  transition: height 0.15s, visibility 0s 0.15s !important;
  visibility: hidden;
}
.menu-list__item--parent.is-active > .menu-list--child.menu-list--accordion {
  transition: height 0.15s !important;
  visibility: visible;
}

/* child overlay variant */
.menu-list--child.menu-list--overlay {
  left: -999em;
  opacity: 0;
  position: absolute;
  top: -999em;
  transition: left 0s 0.15s, opacity 0.15s, top 0s 0.15s, visibility 0s 0.15s;
  visibility: hidden;
}
.menu-list__item--parent:hover > .menu-list--child.menu-list--overlay, .menu-list__item--parent.is-active > .menu-list--child.menu-list--overlay {
  left: 0;
  opacity: 1;
  top: 100%;
  transition: opacity 0.15s;
  visibility: visible;
}
.no-javascript .menu-list__item--parent:focus-within > .menu-list--child.menu-list--overlay {
  left: 0;
  opacity: 1;
  top: 100%;
  transition: opacity 0.15s;
  visibility: visible;
}

/* child overlay depth 2 variant */
.menu-list__item--parent:hover > .menu-list--child.menu-list--overlay.menu-list--depth-2, .menu-list__item--parent.is-active > .menu-list--child.menu-list--overlay.menu-list--depth-2 {
  left: 100%;
  top: 0;
}
.no-javascript .menu-list__item--parent:focus-within > .menu-list--child.menu-list--overlay.menu-list--depth-2 {
  left: 100%;
  top: 0;
}

/* child overlay reverse variant */
.menu-list--child.menu-list--overlay.menu-list--reverse {
  left: auto;
  right: 999em;
  transition: right 0s 0.15s, opacity 0.15s, top 0s 0.15s, visibility 0s 0.15s;
}
.menu-list__item--parent:hover > .menu-list--child.menu-list--overlay.menu-list--reverse, .menu-list__item--parent.is-active > .menu-list--child.menu-list--overlay.menu-list--reverse {
  left: auto;
  right: 0;
  transition: opacity 0.15s;
}
.no-javascript .menu-list__item--parent:focus-within > .menu-list--child.menu-list--overlay.menu-list--reverse {
  left: auto;
  right: 0;
  transition: opacity 0.15s;
}

/* child overlay reverse depth 2 variant */
.menu-list__item--parent:hover > .menu-list--child.menu-list--overlay.menu-list--reverse.menu-list--depth-2, .menu-list__item--parent.is-active > .menu-list--child.menu-list--overlay.menu-list--reverse.menu-list--depth-2 {
  right: 100%;
  top: 0;
}
.no-javascript .menu-list__item--parent:focus-within > .menu-list--child.menu-list--overlay.menu-list--reverse.menu-list--depth-2 {
  right: 100%;
  top: 0;
}

/* flex variant */
.menu-list--flex {
  display: flex;
}
.menu-list--flex:not(.menu-list--between) {
  text-align: center;
}
.menu-list--flex::after {
  display: none;
}
.menu-list--flex > .menu-list__item {
  flex: 1 1 0%;
}
.menu-list--flex:not(.menu-list--between):not(.menu-list--center) > .menu-list__item {
  min-width: 0;
}

/* flex between variant */
.menu-list--flex.menu-list--between {
  justify-content: space-between;
}
.menu-list--flex.menu-list--between > .menu-list__item {
  flex: 0 0 auto;
}

/* flex center variant */
.menu-list--flex.menu-list--center {
  justify-content: center;
}
.menu-list--flex.menu-list--center > .menu-list__item {
  flex: 0 0 auto;
}

/* flex end variant */
.menu-list--flex.menu-list--end {
  justify-content: flex-end;
}
.menu-list--flex.menu-list--end > .menu-list__item {
  flex: 0 0 auto;
}

/* flex start variant */
.menu-list--flex.menu-list--start {
  justify-content: flex-start;
}
.menu-list--flex.menu-list--start > .menu-list__item {
  flex: 0 0 auto;
}

/* vertical variant */
.menu-list--vertical > .menu-list__item {
  float: none;
}

/* ============================ CUSTOM VARIANTS =========================== */
/* meta variant */
.menu-list--meta {
  color: #756045;
  font-family: "lithos-pro", "Helvetica", "Arial", sans-serif;
  font-size: 0.875em;
  font-weight: 700;
  margin: 0em 0em 1em;
  text-align: left;
  text-transform: uppercase;
}
.menu-list--meta .menu-list__item:not(:last-child) {
  margin-right: 1.4285714286em;
}
.menu-list--meta .menu-list__link {
  color: #756045;
  display: inline-block;
}
.menu-list--meta .menu-list__link:hover {
  color: #756045;
}

/* navigation variant */
.menu-list--navigation {
  /* child */
  /* child depth 2 */
  /* accordions */
}
.menu-list--navigation {
  font-family: "lithos-pro", "Helvetica", "Arial", sans-serif;
  font-size: 0.9375em;
  font-weight: 700;
  text-transform: uppercase;
}
.menu-list--navigation {
  text-shadow: -0.1333333333em -0.1333333333em 0 #FFFFFF, 0 -0.1333333333em 0 #FFFFFF, 0.1333333333em -0.1333333333em 0 #FFFFFF, 0.1333333333em 0 0 #FFFFFF, 0.1333333333em 0.1333333333em 0 #FFFFFF, 0 0.1333333333em 0 #FFFFFF, -0.1333333333em 0.1333333333em 0 #FFFFFF, -0.1333333333em 0 0 #FFFFFF;
}
.menu-list--navigation .menu-list__link,
.menu-list--navigation .menu-list__toggle {
  border-radius: 0.6666666667em;
  color: #B33527;
  padding: 0.5em 0.6666666667em;
  transition: background-color 0.6s, color 0.6s;
}
.menu-list--navigation .menu-list__link:focus, .menu-list--navigation .menu-list__link:hover,
.menu-list--navigation .menu-list__toggle:focus,
.menu-list--navigation .menu-list__toggle:hover {
  color: #D44939;
  transition: background-color 0.3s, color 0.3s;
}
.menu-list--navigation .menu-list__link:active,
.menu-list--navigation .menu-list__toggle:active {
  background-color: rgba(255, 255, 255, 0.2);
  transition: background-color 0.3s, color 0.3s;
}
.menu-list--navigation .menu-list--child {
  background: #B33527;
  border-radius: 0.6666666667em;
  font-size: 1em;
  text-shadow: none;
}
.menu-list--navigation .menu-list--child.menu-list--overlay {
  min-width: 16.6666666667em;
}
.menu-list--navigation .menu-list--child .menu-list__item {
  transition: background-color 0.15s;
}
.menu-list--navigation .menu-list--child .menu-list__item.is-active,
.menu-list--navigation .menu-list--child .menu-list__item:focus-within,
.menu-list--navigation .menu-list--child .menu-list__item:hover {
  background-color: rgba(255, 255, 255, 0.2);
}
.menu-list--navigation .menu-list--child .menu-list__link,
.menu-list--navigation .menu-list--child .menu-list__toggle {
  border-radius: 0;
  color: #FFFFFF;
  padding: 0.6666666667em 1em;
}
.menu-list--navigation .menu-list--child > .menu-list__item:first-child > .menu-list__link,
.menu-list--navigation .menu-list--child > .menu-list__item:first-child > .menu-list__toggle {
  padding-top: 1em;
}
.menu-list--navigation .menu-list--child > .menu-list__item:last-child > .menu-list__link,
.menu-list--navigation .menu-list--child > .menu-list__item:last-child > .menu-list__toggle {
  padding-bottom: 1em;
}
.menu-list--navigation .menu-list--child.menu-list--depth-2 {
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.2) 100%);
  font-size: 1em;
}
.menu-list--navigation .menu-list__item--parent:not(:first-child) > .menu-list--child.menu-list--depth-2.menu-list--overlay {
  transform: translateY(-1em);
}
.menu-list--navigation.menu-list--accordion .menu-list--child {
  font-size: 1em;
}
.menu-list--navigation.menu-list--accordion .menu-list--child::after {
  background: #89291E;
  bottom: 0;
  clear: both;
  content: "";
  height: 1px;
  height: 0.0625rem;
  left: 0;
  position: absolute;
  width: 100%;
}
.menu-list--navigation.menu-list--accordion .menu-list--child .menu-list__link, .menu-list--navigation.menu-list--accordion .menu-list--child .menu-list__toggle {
  padding: 0.4em 0.8em;
}
.menu-list--navigation.menu-list--accordion .menu-list--child > .menu-list__item:first-child > .menu-list__link, .menu-list--navigation.menu-list--accordion .menu-list--child > .menu-list__item:first-child > .menu-list__toggle {
  padding-top: 0.8em;
}
.menu-list--navigation.menu-list--accordion .menu-list--child > .menu-list__item:last-child > .menu-list__link, .menu-list--navigation.menu-list--accordion .menu-list--child > .menu-list__item:last-child > .menu-list__toggle {
  padding-bottom: 0.8em;
}

/* pagination variant */
.menu-list--pagination {
  font-family: "calibri", "Helvetica", "Arial", sans-serif;
  font-size: 0.875em;
  font-weight: 400;
}
.menu-list--pagination .menu-list__item:not(:last-child) {
  margin-right: 0.5714285714em;
}
.menu-list--pagination .menu-list__link--current {
  color: #554632;
  cursor: auto;
}

/* social variant */
.menu-list--social:not(.menu-list--vertical) > .menu-list__item:not(:last-child) {
  margin-right: 1em;
}
.menu-list--social .menu-list__image {
  display: block;
  width: 2.5em;
}

/* submenu variant */
.menu-list--submenu {
  font-family: "lithos-pro", "Helvetica", "Arial", sans-serif;
  font-size: 1em;
  font-weight: 700;
}
.menu-list--submenu {
  text-shadow: -0.1333333333em -0.1333333333em 0 #FFFFFF, 0 -0.1333333333em 0 #FFFFFF, 0.1333333333em -0.1333333333em 0 #FFFFFF, 0.1333333333em 0 0 #FFFFFF, 0.1333333333em 0.1333333333em 0 #FFFFFF, 0 0.1333333333em 0 #FFFFFF, -0.1333333333em 0.1333333333em 0 #FFFFFF, -0.1333333333em 0 0 #FFFFFF;
}
.menu-list--submenu .menu-list__item {
  padding: 0px 0px 8px;
  padding: 0rem 0rem 0.5rem;
}
.menu-list--submenu .menu-list__item:first-child {
  padding-top: 8px;
  padding-top: 0.5rem;
}
.menu-list--submenu .menu-list__item::after,
.menu-list--submenu .menu-list__item:first-child::before {
  background: url("../media/background-divider.png");
  border-radius: 0.25rem;
  content: "";
  display: block;
  height: 8px;
  height: 0.5rem;
  left: 0;
  position: absolute;
  width: 100%;
}
.menu-list--submenu .menu-list__item::after {
  bottom: 0;
}
.menu-list--submenu .menu-list__item:first-child::before {
  top: 0;
}
.menu-list--submenu .menu-list__link {
  padding: 0.25em 1.5em;
}

/* ------------------------------------------------------------------------ *\
 * Ninja Forms
\* ------------------------------------------------------------------------ */
/* stylelint-disable selector-class-pattern */
.nf-form-hp {
  left: -999em;
  position: absolute;
  top: -999em;
}

.nf-field-container .pikaday__container {
  display: block;
}

.nf-field-container .list-checkbox,
.nf-field-container .list-radio {
  font-size: 1em;
  list-style: none;
  margin: 0;
  padding: 0;
}

.nf-field-container.label-above .field-wrap, .nf-field-container.label-right .field-wrap, .nf-field-container.label-below .field-wrap, .nf-field-container.label-left .field-wrap {
  align-items: flex-start;
  display: flex;
}
.nf-field-container.label-right .field-wrap .nf-field-label, .nf-field-container.label-left .field-wrap .nf-field-label {
  flex: none;
}
.nf-field-container.label-above .field-wrap .nf-field-element, .nf-field-container.label-below .field-wrap .nf-field-element {
  width: 100%;
}
.nf-field-container.label-right .field-wrap .nf-field-element, .nf-field-container.label-left .field-wrap .nf-field-element {
  flex: 1 1 auto;
}
.nf-field-container.label-right .checkbox-wrap .nf-field-element, .nf-field-container.label-left .checkbox-wrap .nf-field-element {
  flex: none;
}
.nf-field-container.label-above .field-wrap {
  flex-direction: column;
}
.nf-field-container.label-below .field-wrap {
  flex-direction: column;
}
.nf-field-container.label-below .field-wrap .nf-field-label {
  order: 2;
}
.nf-field-container.label-below .field-wrap .nf-field-element {
  order: 1;
}
.nf-field-container.label-right .field-wrap .nf-field-label {
  order: 2;
}
.nf-field-container.label-right .field-wrap .nf-field-element {
  order: 1;
}
.nf-field-container.label-hidden .field-wrap .nf-field-label {
  left: -999em;
  position: absolute;
  top: -999em;
}

.grecaptcha-badge {
  z-index: 999;
}

.nf-has-columns .nf-row {
  margin: 0 -5px;
}

/* ------------------------------------------------------------------------ *\
 * Opinionated Tweaks
\* ------------------------------------------------------------------------ */
.is-offline .nf-form-cont {
  position: relative;
}
.is-offline .nf-form-cont::before {
  align-items: center;
  background: rgba(236, 232, 222, 0.75);
  content: "Sorry, it looks like you're offline. Please reconnect to the internet to use this form.";
  display: flex;
  font-family: "calibri", "Helvetica", "Arial", sans-serif;
  font-size: 1.25em;
  height: 100%;
  justify-content: center;
  left: 0;
  padding: 1.25em;
  position: absolute;
  text-align: center;
  top: 0;
  width: 100%;
}

.ninja-forms-req-symbol {
  color: #B33527;
}

.ninja-forms-help-symbol {
  cursor: pointer;
  position: relative;
}

.ninja-forms-help-tooltip {
  background: #444444;
  border-radius: 0.4285714286em;
  bottom: 130%;
  font-size: 0.875em;
  left: 50%;
  opacity: 0;
  padding: 0.7142857143em;
  position: absolute;
  text-align: center;
  transform: translateX(-50%) translateY(50%);
  transition: opacity 0.15s, transform 0.15s;
  width: 14.2857142857em;
}
.ninja-forms-help-symbol.is-active .ninja-forms-help-tooltip {
  opacity: 1;
  transform: translateX(-50%);
}
.ninja-forms-help-tooltip::after {
  border-left: 0.375em solid transparent;
  border-right: 0.375em solid transparent;
  border-top: 0.375em solid #444444;
  content: "";
  left: 50%;
  position: absolute;
  top: 100%;
  transform: translateX(-50%);
}
.ninja-forms-help-tooltip .ninja-forms-user-content > :last-child {
  margin-bottom: 0 !important;
}

.nf-field-container .list-checkbox,
.nf-field-container .list-radio {
  font-size: 1em;
  margin-bottom: 0.25em;
}
.nf-field-container .list-checkbox .input--checkbox,
.nf-field-container .list-radio .input--radiobutton {
  margin-bottom: 0.25em;
}
.nf-field-container .list-checkbox .text--label,
.nf-field-container .list-radio .text--label {
  margin-bottom: 0.25em;
}

.nf-field-container .stars {
  margin-bottom: 1.5em;
}

.nf-error-msg {
  color: #D44939;
}

.nf-field-container .g-recaptcha:not([data-size=invisible]) {
  margin-bottom: 1.5em;
}

.nf-field-container .text--label {
  display: inline-block;
}

.nf-field-container.label-above .nf-field-label > .text--label {
  margin-bottom: 0.25em;
}
.nf-field-container.label-below .nf-field-label > .text--label {
  margin-top: 0.25em;
}
.nf-field-container.label-below .nf-field-element .input, .nf-field-container.label-below .nf-field-element .stars, .nf-field-container.label-below .list-checkbox, .nf-field-container.label-below .list-radio {
  margin-bottom: 0;
  order: 1;
}
.nf-field-container.label-left .nf-field-label > .text--label {
  margin-right: 0.625em;
}
.nf-field-container.label-right .nf-field-label > .text--label {
  margin-left: 0.625em;
}
.nf-field-container.listcheckbox-container .input--checkbox, .nf-field-container.listradio-container .input--radiobutton {
  margin-right: 0.375em;
}

/* ------------------------------------------------------------------------ *\
 * Panel Toggle
\* ------------------------------------------------------------------------ */
.panel-toggle {
  background: none;
  border: 0;
  color: #008349;
  cursor: pointer;
  font-size: 1.5em;
  height: 1.6666666667em;
  margin: 0;
  padding: 0;
  position: relative;
  width: 1.6666666667em;
}

/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*
	Styles for basic PhotoSwipe functionality (sliding area, open/close transitions)
*/
/* pswp = photoswipe */
.pswp {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
  z-index: 1500;
  -webkit-text-size-adjust: 100%;
  /* create separate layer, to avoid paint on window.onscroll in webkit/blink */
  -webkit-backface-visibility: hidden;
  outline: none;
}

.pswp * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.pswp img {
  max-width: none;
}

/* style is added when JS option showHideOpacity is set to true */
.pswp--animate_opacity {
  /* 0.001, because opacity:0 doesn't trigger Paint action, which causes lag at start of transition */
  opacity: 0.001;
  will-change: opacity;
  /* for open/close transition */
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp--open {
  display: block;
}

.pswp--zoom-allowed .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in;
}

.pswp--zoomed-in .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grab;
  cursor: -moz-grab;
  cursor: grab;
}

.pswp--dragging .pswp__img {
  /* autoprefixer: off */
  cursor: -webkit-grabbing;
  cursor: -moz-grabbing;
  cursor: grabbing;
}

/*
	Background is added as a separate element.
	As animating opacity is much faster than animating rgba() background-color.
*/
.pswp__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  will-change: opacity;
}

.pswp__scroll-wrap {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.pswp__container,
.pswp__zoom-wrap {
  -ms-touch-action: none;
  touch-action: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

/* Prevent selection and tap highlights */
.pswp__container,
.pswp__img {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.pswp__zoom-wrap {
  position: absolute;
  width: 100%;
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top;
  /* for open/close transition */
  -webkit-transition: -webkit-transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp__bg {
  will-change: opacity;
  /* for open/close transition */
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp--animated-in .pswp__bg,
.pswp--animated-in .pswp__zoom-wrap {
  -webkit-transition: none;
  transition: none;
}

.pswp__container,
.pswp__zoom-wrap {
  -webkit-backface-visibility: hidden;
}

.pswp__item {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow: hidden;
}

.pswp__img {
  position: absolute;
  width: auto;
  height: auto;
  top: 0;
  left: 0;
}

/*
	stretched thumbnail or div placeholder element (see below)
	style is added to avoid flickering in webkit/blink when layers overlap
*/
.pswp__img--placeholder {
  -webkit-backface-visibility: hidden;
}

/*
	div element that matches size of large image
	large image loads on top of it
*/
.pswp__img--placeholder--blank {
  background: #222;
}

.pswp--ie .pswp__img {
  width: 100% !important;
  height: auto !important;
  left: 0;
  top: 0;
}

/*
	Error message appears when image is not loaded
	(JS option errorMsg controls markup)
*/
.pswp__error-msg {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: 14px;
  line-height: 16px;
  margin-top: -8px;
  color: #CCC;
}

.pswp__error-msg a {
  color: #CCC;
  text-decoration: underline;
}

/*! PhotoSwipe Default UI CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*

	Contents:

	1. Buttons
	2. Share modal and links
	3. Index indicator ("1 of X" counter)
	4. Caption
	5. Loading indicator
	6. Additional styles (root element, top bar, idle state, hidden state, etc.)

*/
/*

	1. Buttons

 */
/* <button> css reset */
.pswp__button {
  width: 44px;
  height: 44px;
  position: relative;
  background: none;
  cursor: pointer;
  overflow: visible;
  -webkit-appearance: none;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
  float: right;
  opacity: 0.75;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.pswp__button:focus, .pswp__button:hover {
  opacity: 1;
}

.pswp__button:active {
  outline: none;
  opacity: 0.9;
}

.pswp__button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

/* pswp__ui--over-close class it added when mouse is over element that should close gallery */
.pswp__ui--over-close .pswp__button--close {
  opacity: 1;
}

.pswp__button,
.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  background: url(default-skin.png) 0 0 no-repeat;
  background-size: 264px 88px;
  width: 44px;
  height: 44px;
}

@media (-webkit-min-device-pixel-ratio: 1.1), (-webkit-min-device-pixel-ratio: 1.09375), (min-resolution: 105dpi), (min-resolution: 1.1dppx) {
  /* Serve SVG sprite if browser supports SVG and resolution is more than 105dpi */
  .pswp--svg .pswp__button,
.pswp--svg .pswp__button--arrow--left:before,
.pswp--svg .pswp__button--arrow--right:before {
    background-image: url(default-skin.svg);
  }

  .pswp--svg .pswp__button--arrow--left,
.pswp--svg .pswp__button--arrow--right {
    background: none;
  }
}
.pswp__button--close {
  background-position: 0 -44px;
}

.pswp__button--share {
  background-position: -44px -44px;
}

.pswp__button--fs {
  display: none;
}

.pswp--supports-fs .pswp__button--fs {
  display: block;
}

.pswp--fs .pswp__button--fs {
  background-position: -44px 0;
}

.pswp__button--zoom {
  display: none;
  background-position: -88px 0;
}

.pswp--zoom-allowed .pswp__button--zoom {
  display: block;
}

.pswp--zoomed-in .pswp__button--zoom {
  background-position: -132px 0;
}

/* no arrows on touch screens */
.pswp--touch .pswp__button--arrow--left,
.pswp--touch .pswp__button--arrow--right {
  visibility: hidden;
}

/*
	Arrow buttons hit area
	(icon is added to :before pseudo-element)
*/
.pswp__button--arrow--left,
.pswp__button--arrow--right {
  background: none;
  top: 50%;
  margin-top: -50px;
  width: 70px;
  height: 100px;
  position: absolute;
}

.pswp__button--arrow--left {
  left: 0;
}

.pswp__button--arrow--right {
  right: 0;
}

.pswp__button--arrow--left:before,
.pswp__button--arrow--right:before {
  content: "";
  top: 35px;
  background-color: rgba(0, 0, 0, 0.3);
  height: 30px;
  width: 32px;
  position: absolute;
}

.pswp__button--arrow--left:before {
  left: 6px;
  background-position: -138px -44px;
}

.pswp__button--arrow--right:before {
  right: 6px;
  background-position: -94px -44px;
}

/*

	2. Share modal/popup and links

 */
.pswp__counter,
.pswp__share-modal {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.pswp__share-modal {
  display: block;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  padding: 10px;
  position: absolute;
  z-index: 1600;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
  -webkit-backface-visibility: hidden;
  will-change: opacity;
}

.pswp__share-modal--hidden {
  display: none;
}

.pswp__share-tooltip {
  z-index: 1620;
  position: absolute;
  background: #FFF;
  top: 56px;
  border-radius: 2px;
  display: block;
  width: auto;
  right: 44px;
  -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
  -webkit-transform: translateY(6px);
  -ms-transform: translateY(6px);
  transform: translateY(6px);
  -webkit-transition: -webkit-transform 0.25s;
  transition: transform 0.25s;
  -webkit-backface-visibility: hidden;
  will-change: transform;
}

.pswp__share-tooltip a {
  display: block;
  padding: 8px 12px;
  color: #000;
  text-decoration: none;
  font-size: 14px;
  line-height: 18px;
}

.pswp__share-tooltip a:hover {
  text-decoration: none;
  color: #000;
}

.pswp__share-tooltip a:first-child {
  /* round corners on the first/last list item */
  border-radius: 2px 2px 0 0;
}

.pswp__share-tooltip a:last-child {
  border-radius: 0 0 2px 2px;
}

.pswp__share-modal--fade-in {
  opacity: 1;
}

.pswp__share-modal--fade-in .pswp__share-tooltip {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

/* increase size of share links on touch devices */
.pswp--touch .pswp__share-tooltip a {
  padding: 16px 12px;
}

a.pswp__share--facebook:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  top: -12px;
  right: 15px;
  border: 6px solid transparent;
  border-bottom-color: #FFF;
  -webkit-pointer-events: none;
  -moz-pointer-events: none;
  pointer-events: none;
}

a.pswp__share--facebook:hover {
  background: #3E5C9A;
  color: #FFF;
}

a.pswp__share--facebook:hover:before {
  border-bottom-color: #3E5C9A;
}

a.pswp__share--twitter:hover {
  background: #55ACEE;
  color: #FFF;
}

a.pswp__share--pinterest:hover {
  background: #CCC;
  color: #CE272D;
}

a.pswp__share--download:hover {
  background: #DDD;
}

/*

	3. Index indicator ("1 of X" counter)

 */
.pswp__counter {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  font-size: 13px;
  line-height: 44px;
  color: #FFF;
  opacity: 0.75;
  padding: 0 10px;
}

/*

	4. Caption

 */
.pswp__caption {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  min-height: 44px;
}

.pswp__caption small {
  font-size: 11px;
  color: #BBB;
}

.pswp__caption__center {
  text-align: left;
  max-width: 420px;
  margin: 0 auto;
  font-size: 13px;
  padding: 10px;
  line-height: 20px;
  color: #CCC;
}

.pswp__caption--empty {
  display: none;
}

/* Fake caption element, used to calculate height of next/prev image */
.pswp__caption--fake {
  visibility: hidden;
}

/*

	5. Loading indicator (preloader)

	You can play with it here - http://codepen.io/dimsemenov/pen/yyBWoR

 */
.pswp__preloader {
  width: 44px;
  height: 44px;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -22px;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease-out;
  transition: opacity 0.25s ease-out;
  will-change: opacity;
  direction: ltr;
}

.pswp__preloader__icn {
  width: 20px;
  height: 20px;
  margin: 12px;
}

.pswp__preloader--active {
  opacity: 1;
}

.pswp__preloader--active .pswp__preloader__icn {
  /* We use .gif in browsers that don't support CSS animation */
  background: url(preloader.gif) 0 0 no-repeat;
}

.pswp--css_animation .pswp__preloader--active {
  opacity: 1;
}

.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn {
  -webkit-animation: clockwise 500ms linear infinite;
  animation: clockwise 500ms linear infinite;
}

.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut {
  -webkit-animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite;
  animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite;
}

.pswp--css_animation .pswp__preloader__icn {
  background: none;
  opacity: 0.75;
  width: 14px;
  height: 14px;
  position: absolute;
  left: 15px;
  top: 15px;
  margin: 0;
}

.pswp--css_animation .pswp__preloader__cut {
  /* 
  	The idea of animating inner circle is based on Polymer ("material") loading indicator 
  	 by Keanu Lee https://blog.keanulee.com/2014/10/20/the-tale-of-three-spinners.html
  */
  position: relative;
  width: 7px;
  height: 14px;
  overflow: hidden;
}

.pswp--css_animation .pswp__preloader__donut {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 14px;
  height: 14px;
  border: 2px solid #FFF;
  border-radius: 50%;
  border-left-color: transparent;
  border-bottom-color: transparent;
  position: absolute;
  top: 0;
  left: 0;
  background: none;
  margin: 0;
}

@media screen and (max-width: 1024px) {
  .pswp__preloader {
    position: relative;
    left: auto;
    top: auto;
    margin: 0;
    float: right;
  }
}
@-webkit-keyframes clockwise {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes clockwise {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-webkit-keyframes donut-rotate {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  50% {
    -webkit-transform: rotate(-140deg);
    transform: rotate(-140deg);
  }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
@keyframes donut-rotate {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  50% {
    -webkit-transform: rotate(-140deg);
    transform: rotate(-140deg);
  }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
/*

	6. Additional styles

 */
/* root element of UI */
.pswp__ui {
  -webkit-font-smoothing: auto;
  visibility: visible;
  opacity: 1;
  z-index: 1550;
}

/* top black bar with buttons and "1 of X" indicator */
.pswp__top-bar {
  position: absolute;
  left: 0;
  top: 0;
  height: 44px;
  width: 100%;
}

.pswp__caption,
.pswp__top-bar,
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  -webkit-backface-visibility: hidden;
  will-change: opacity;
  -webkit-transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

/* pswp--has_mouse class is added only when two subsequent mousemove events occur */
.pswp--has_mouse .pswp__button--arrow--left,
.pswp--has_mouse .pswp__button--arrow--right {
  visibility: visible;
}

.pswp__top-bar,
.pswp__caption {
  background-color: rgba(0, 0, 0, 0.5);
}

/* pswp__ui--fit class is added when main image "fits" between top bar and bottom bar (caption) */
.pswp__ui--fit .pswp__top-bar,
.pswp__ui--fit .pswp__caption {
  background-color: rgba(0, 0, 0, 0.3);
}

/* pswp__ui--idle class is added when mouse isn't moving for several seconds (JS option timeToIdle) */
.pswp__ui--idle .pswp__top-bar {
  opacity: 0;
}

.pswp__ui--idle .pswp__button--arrow--left,
.pswp__ui--idle .pswp__button--arrow--right {
  opacity: 0;
}

/*
	pswp__ui--hidden class is added when controls are hidden
	e.g. when user taps to toggle visibility of controls
*/
.pswp__ui--hidden .pswp__top-bar,
.pswp__ui--hidden .pswp__caption,
.pswp__ui--hidden .pswp__button--arrow--left,
.pswp__ui--hidden .pswp__button--arrow--right {
  /* Force paint & create composition layer for controls. */
  opacity: 0.001;
}

/* pswp__ui--one-slide class is added when there is just one item in gallery */
.pswp__ui--one-slide .pswp__button--arrow--left,
.pswp__ui--one-slide .pswp__button--arrow--right,
.pswp__ui--one-slide .pswp__counter {
  display: none;
}

.pswp__element--disabled {
  display: none !important;
}

.pswp--minimal--dark .pswp__top-bar {
  background: none;
}

/* ------------------------------------------------------------------------ *\
 * PhotoSwipe (http://photoswipe.com/)
\* ------------------------------------------------------------------------ */
/* stylelint-disable selector-class-pattern */
.pswp {
  z-index: 100000;
}

.pswp__button,
.pswp__button--arrow--left::before,
.pswp__button--arrow--right::before {
  background-image: url("../media/vendor/photoswipe-default-skin.png");
}

.pswp__button--arrow--left,
.pswp__button--arrow--right {
  background: none;
}

@media (-webkit-min-device-pixel-ratio: 1.1), (-webkit-min-device-pixel-ratio: 1.09375), (min-resolution: 105dpi), (min-resolution: 1.1dppx) {
  .pswp--svg .pswp__button,
.pswp--svg .pswp__button--arrow--left::before,
.pswp--svg .pswp__button--arrow--right::before {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='264' height='88' viewBox='0 0 264 88' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle%3Edefault-skin 2%3C/title%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg%3E%3Cpath d='M67.002 59.5v3.768c-6.307.84-9.184 5.75-10.002 9.732 2.22-2.83 5.564-5.098 10.002-5.098V71.5L73 65.585 67.002 59.5z' id='Shape' fill='%23fff'/%3E%3Cg fill='%23fff'%3E%3Cpath d='M13 29v-5h2v3h3v2h-5zM13 15h5v2h-3v3h-2v-5zM31 15v5h-2v-3h-3v-2h5zM31 29h-5v-2h3v-3h2v5z' id='Shape'/%3E%3C/g%3E%3Cg fill='%23fff'%3E%3Cpath d='M62 24v5h-2v-3h-3v-2h5zM62 20h-5v-2h3v-3h2v5zM70 20v-5h2v3h3v2h-5zM70 24h5v2h-3v3h-2v-5z'/%3E%3C/g%3E%3Cpath d='M20.586 66l-5.656-5.656 1.414-1.414L22 64.586l5.656-5.656 1.414 1.414L23.414 66l5.656 5.656-1.414 1.414L22 67.414l-5.656 5.656-1.414-1.414L20.586 66z' fill='%23fff'/%3E%3Cpath d='M111.785 65.03L110 63.5l3-3.5h-10v-2h10l-3-3.5 1.785-1.468L117 59l-5.215 6.03z' fill='%23fff'/%3E%3Cpath d='M152.215 65.03L154 63.5l-3-3.5h10v-2h-10l3-3.5-1.785-1.468L147 59l5.215 6.03z' fill='%23fff'/%3E%3Cg%3E%3Cpath id='Rectangle-11' fill='%23fff' d='M160.957 28.543l-3.25-3.25-1.413 1.414 3.25 3.25z'/%3E%3Cpath d='M152.5 27c3.038 0 5.5-2.462 5.5-5.5s-2.462-5.5-5.5-5.5-5.5 2.462-5.5 5.5 2.462 5.5 5.5 5.5z' id='Oval-1' stroke='%23fff' stroke-width='1.5'/%3E%3Cpath fill='%23fff' d='M150 21h5v1h-5z'/%3E%3C/g%3E%3Cg%3E%3Cpath d='M116.957 28.543l-1.414 1.414-3.25-3.25 1.414-1.414 3.25 3.25z' fill='%23fff'/%3E%3Cpath d='M108.5 27c3.038 0 5.5-2.462 5.5-5.5s-2.462-5.5-5.5-5.5-5.5 2.462-5.5 5.5 2.462 5.5 5.5 5.5z' stroke='%23fff' stroke-width='1.5'/%3E%3Cpath fill='%23fff' d='M106 21h5v1h-5z'/%3E%3Cpath fill='%23fff' d='M109.043 19.008l-.085 5-1-.017.085-5z'/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  }

  .pswp--svg .pswp__button--arrow--left,
.pswp--svg .pswp__button--arrow--right {
    background: none;
  }
}
.pswp__preloader--active .pswp__preloader__icn {
  background-image: url("../media/vendor/photoswipe-preloader.gif");
}

/* ------------------------------------------------------------------------ *\
 * Popper.js (https://www.npmjs.com/package/@popperjs/core)
\* ------------------------------------------------------------------------ */
.popperjs-tooltip {
  background: #907055;
  box-shadow: 0em 0em 0.375em rgba(0, 0, 0, 0.5);
  display: block;
  margin: 0em 0em 1em !important;
  text-decoration: none;
}
.popperjs-tooltip[data-popper-placement] {
  display: none;
  margin: 0 !important;
}
.popperjs-tooltip[data-popper-placement][data-show] {
  display: block;
}

.popperjs-tooltip__title {
  background: #E7BE7C;
  color: #B33527;
  font-size: 1em;
  margin: 0;
  padding: 0.46875em 0.625em;
}

.popperjs-tooltip__text {
  align-items: center;
  color: #FFFFFF;
  display: flex;
  margin-bottom: 0;
  padding: 0.46875em 0.625em;
}

.popperjs-tooltip__image {
  display: block;
  margin: 0em 0.625em 0em 0em;
  width: 2.1875em;
}

/**
 * PWA Install Prompt 1.0.2
 * Prompt users to add your PWA to their home screen, since Apple won’t.
 * https://github.com/JacobDB/pwa-install-prompt/
 *
 * Copyright 2018 Jacob Bearce
 *
 * Released under the MIT License
 *
 * Released on: November 6, 2018
 */
.pwa-install-prompt__container {
  align-items: center;
  box-sizing: border-box;
  display: flex;
  height: 100%;
  justify-content: center;
  left: -999em;
  padding: 30px;
  position: fixed;
  top: -999em;
  transition: left 0s 0.15s, top 0s 0.15s, visibility 0s 0.15s;
  visibility: hidden;
  width: 100%;
  z-index: 100000;
}

.pwa-install-prompt__container.is-active {
  left: 0;
  top: 0;
  transition: none;
  visibility: visible;
}

.pwa-install-prompt__overlay {
  background: rgba(0, 0, 0, 0.5);
  border: 0;
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  text-indent: -999em;
  top: 0;
  transition: opacity 0.15s;
  width: 100%;
  z-index: 0;
}

.pwa-install-prompt__container.is-active .pwa-install-prompt__overlay {
  opacity: 1;
}

.pwa-install-prompt {
  background: #FFF;
  border-radius: 2px;
  box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.125);
  box-sizing: border-box;
  color: #424242;
  font-family: sans-serif;
  max-width: 320px;
  opacity: 0;
  position: relative;
  text-align: center;
  transform: translateY(25%);
  transition: opacity 0.15s, transform 0.15s ease-in-out;
  z-index: 1;
}

.pwa-install-prompt__container.is-active .pwa-install-prompt {
  opacity: 1;
  transform: translateY(0%);
}

.pwa-install-prompt::before {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 128 128' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23FFFFFF' d='M64.197,50.47C79.696,34.95 95.259,19.502 110.597,3.824C114.411,0.182 114.565,1.022 117.707,1.24C124.299,2.167 127.723,10.687 123.435,16.078C108.453,32.47 92.997,48.399 77.387,64.174C92.571,80.01 107.685,95.917 123.024,111.595C129.195,118.349 120.432,132.527 111.035,124.716C94.992,109.403 79.408,93.611 63.979,77.65C48.485,93.169 32.917,108.618 17.584,124.296C10.837,130.734 -2.411,121.031 4.747,112.042C19.728,95.65 35.179,79.716 50.795,63.945C35.605,48.11 20.491,32.198 5.157,16.525C0.085,10.976 2.912,0.586 12.267,1.24C14.069,1.491 15.723,2.227 17.141,3.404C33.184,18.717 48.768,34.509 64.197,50.47Z' /%3E%3C/svg%3E%0A") center center no-repeat;
  border: 0;
  bottom: 100%;
  content: "";
  display: block;
  height: 16px;
  margin: 0 0 16px;
  pointer-events: none;
  position: absolute;
  right: 0;
  width: 16px;
}

.pwa-install-prompt__icon__container {
  background: url("data:image/svg+xml,%3Csvg viewBox='0 0 70 70' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='%23F0F0F0' d='M65,17C65,10.377 59.623,5 53,5L17,5C10.377,5 5,10.377 5,17L5,53C5,59.623 10.377,65 17,65L53,65C59.623,65 65,59.623 65,53L65,17Z' /%3E%3C/svg%3E%0A") center center/70px 70px repeat-x;
  margin: 40px 0 0;
}

.pwa-install-prompt__icon {
  border-radius: 12px;
  display: block;
  margin: 0 auto;
  width: 60px;
}

.pwa-install-prompt__content {
  padding: 10px 35px;
}

.pwa-install-prompt__title {
  font-size: 24px;
  margin: 0 0 20px;
}

.pwa-install-prompt__text {
  font-size: 16px;
  line-height: 20px;
  margin: 0 0 46px;
}

.pwa-install-prompt__guide {
  align-items: center;
  display: flex;
  font-size: 12px;
  justify-content: center;
  margin: 0;
}

.pwa-install-prompt__guide__icon {
  margin: 0 2px 6px;
  width: 20px;
}

/* ------------------------------------------------------------------------ *\
 * PWA Install Prompt (https://github.com/JacobDB/pwa-install-prompt)
\* ------------------------------------------------------------------------ */
@keyframes scroll-hint-appear {
  0% {
    transform: translateX(40px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50%, 100% {
    transform: translateX(-40px);
    opacity: 0;
  }
}
.scroll-hint.is-right-scrollable {
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-right-scrollable.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0)), linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint-icon {
  position: absolute;
  top: calc(50% - 25px);
  left: calc(50% - 60px);
  box-sizing: border-box;
  width: 120px;
  height: 80px;
  border-radius: 5px;
  transition: opacity 0.3s;
  opacity: 0;
  background: rgba(0, 0, 0, 0.7);
  text-align: center;
  padding: 20px 10px 10px 10px;
}

.scroll-hint-icon-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 100%;
  pointer-events: none;
}

.scroll-hint-text {
  font-size: 10px;
  color: #FFF;
  margin-top: 5px;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  opacity: 0.8;
}

.scroll-hint-icon:before {
  display: inline-block;
  width: 40px;
  height: 40px;
  color: #FFF;
  vertical-align: middle;
  text-align: center;
  content: "";
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon:after {
  content: "";
  width: 34px;
  height: 14px;
  display: block;
  position: absolute;
  top: 10px;
  left: 50%;
  margin-left: -20px;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==);
  opacity: 0;
  transition-delay: 2.4s;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
  opacity: 1;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
  animation: scroll-hint-appear 1.2s linear;
  animation-iteration-count: 2;
}

.scroll-hint-icon-white {
  background-color: #FFF;
  box-shadow: 0 4px 5px rgba(0, 0, 0, 0.4);
}

.scroll-hint-icon-white:before {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon-white:after {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==);
}

.scroll-hint-icon-white .scroll-hint-text {
  color: #000;
}

/* ------------------------------------------------------------------------ *\
 * ScrollHint (https://appleple.github.io/scroll-hint/)
\* ------------------------------------------------------------------------ */
/* stylelint-disable selector-class-pattern */
.scroll-hint-icon-wrap {
  overflow: hidden;
}

/* ------------------------------------------------------------------------ *\
 * Search Form
\* ------------------------------------------------------------------------ */
.search-form__container {
  margin: 0em 0em 0.9375em;
}

.search-form {
  position: relative;
}

.search-form__input {
  font-size: 1em;
  margin: 0;
  padding-right: 3em;
}

.search-form__button {
  background: none;
  bottom: 2px;
  bottom: 0.125rem;
  color: #554632;
  font-size: 1em;
  margin: 0;
  padding: 0em 1em;
  position: absolute;
  right: 2px;
  right: 0.125rem;
  top: 2px;
  top: 0.125rem;
  transition: color 0.15s;
}
.search-form__button:focus, .search-form__button:hover {
  background: none;
  color: #B33527;
}

/* ------------------------------------------------------------------------ *\
 * Skip Links
\* ------------------------------------------------------------------------ */
.skip-links {
  background: #B33527;
  border: 1px solid #89291E;
  border: 0.0625rem solid #89291E;
  border-radius: 0.25rem;
  color: #FFFFFF;
  font-family: "lithos-pro", "Helvetica", "Arial", sans-serif;
  font-size: 1em;
  font-weight: 700;
  left: -999em;
  padding: 0.5em 0.75em;
  position: fixed;
  text-decoration: none;
  top: -999em;
  z-index: 999;
}
.skip-links:focus {
  left: 1.25em;
  top: 1.25em;
  visibility: visible;
}

/* ------------------------------------------------------------------------ *\
 * WP Caption
\* ------------------------------------------------------------------------ */
.wp-caption {
  margin: 0;
  max-width: 100%;
}

.wp-caption-image {
  display: block;
  width: 100%;
}

.wp-caption-text {
  color: #554632;
  font-family: "calibri", "Helvetica", "Arial", sans-serif;
  font-size: 1em;
  font-style: italic;
  line-height: 1.75em;
  margin: 0.875em 0em 1.75em;
}

/* ------------------------------------------------------------------------ *\
 * Layout
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Page
\* ------------------------------------------------------------------------ */
html,
body {
  background: #FBB757;
  min-height: 100vh;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  width: 100%;
}

body {
  overflow-x: hidden;
}

.page__container {
  background: url("../media/background-body.jpg") center top no-repeat #3D95D5;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  position: relative;
  width: 100%;
}
.page__container #content {
  display: flex;
  flex: 1 0 auto;
  flex-direction: column;
}
.page__container .content-block {
  flex: 1 0 auto;
}

/* ------------------------------------------------------------------------ *\
 * Alert
\* ------------------------------------------------------------------------ */
.alert-block {
  position: relative;
}
.alert-block {
  background: #B33527;
  display: none;
}
.alert-block.is-active {
  display: block;
}

.alert__inner {
  margin: 0 auto;
  max-width: 990px;
  max-width: 61.875rem;
}

.alert__button {
  background: none;
  color: #FFFFFF;
  font-size: 2em;
  margin-bottom: 0;
  padding: 0;
}
@media (max-width: 47.9375em) {
  [class*=col-]:nth-last-child(2) .alert__button {
    margin: 1.5625rem;
  }
  [class*=col-]:nth-last-child(3) .alert__button {
    position: absolute;
    right: 1.5625rem;
    top: 1.5625rem;
  }
}
.alert__button:active {
  background: none;
}

.alert__title {
  align-items: center;
  display: flex;
  font-size: 2em;
  margin-bottom: 0;
  padding: 25px;
  padding: 1.5625rem;
}
@media (max-width: 47.9375em) {
  .alert__title {
    border-bottom: 0.0625rem solid #89291E;
    padding-right: 5.0625rem;
  }
}
.alert__title .title__icon {
  font-size: 32px;
  font-size: 2rem;
  margin-right: 0.5em;
}

.alert__user-content {
  padding: 25px;
  padding: 1.5625rem;
}
.alert__user-content > :last-child {
  margin-bottom: 0 !important;
}

/* ------------------------------------------------------------------------ *\
 * Header
\* ------------------------------------------------------------------------ */
.header-block {
  position: relative;
  z-index: 4;
}
.header-block {
  padding: 20px 25px 15px;
  padding: 1.25rem 1.5625rem 0.9375rem;
}

.header__inner {
  margin: 0 auto;
  max-width: 990px;
  max-width: 61.875rem;
}

.header__logo__container {
  height: 5em;
  position: relative;
}
.header__logo__container .header__logo {
  left: 0;
  position: absolute;
  top: 0;
  width: 13.75em;
}

.header__menu-list__container .menu-list--social {
  margin-right: 5em;
}

/* ------------------------------------------------------------------------ *\
 * Navigation
\* ------------------------------------------------------------------------ */
.navigation__inner {
  background: url("../media/background-navigation_desktop.png") center center/contain no-repeat;
  height: 6.375em;
  margin: 0 auto;
  padding: 3.125em 0em 0em 6.25em;
  width: 54.8125em;
}

.navigation__figure {
  margin: 0em 0em 0.5em;
}

.navigation__image {
  display: block;
  height: auto;
  width: 100%;
}

.navigation__menu-list__container {
  position: relative;
  z-index: 5;
}
.navigation__menu-list__container {
  transform: translateX(5%);
}

/* flyout variant */
.navigation-block--flyout {
  background: none;
  height: 100vh;
  height: -webkit-fill-available;
  left: -999em;
  position: fixed;
  top: -999em;
  transition: left 0s 0.25s, top 0s 0.25s, visibility 0s 0.25s;
  visibility: hidden;
  width: 100vw;
  z-index: 100001;
}
.navigation-block--flyout .navigation__inner {
  background: url("../media/background-navigation.jpg") center top/cover no-repeat #008349;
  height: 100%;
  margin: 0;
  overflow: auto;
  overscroll-behavior: contain;
  padding: 0;
  position: relative;
  transform: translateX(-17.5em);
  transition: transform 0.25s;
  width: 17.5em;
  z-index: 2;
}
.navigation-block--flyout .navigation__overlay {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: rgba(0, 0, 0, 0.6);
  border: 0;
  content: "";
  cursor: pointer;
  display: block;
  height: 100%;
  left: -999em;
  margin: 0;
  opacity: 0;
  padding: 0;
  position: absolute;
  top: -999em;
  transition: left 0s 0.25s, top 0s 0.15s, opacity 0.25s, visibility 0s 0.25s;
  visibility: hidden;
  width: 100%;
  z-index: 1;
}
.menu-active .navigation-block--flyout {
  left: 0;
  top: 0;
  transition: none;
  visibility: visible;
}
.menu-active .navigation-block--flyout .navigation__inner {
  transform: translateX(0);
}
.menu-active .navigation-block--flyout .navigation__overlay {
  left: 0;
  opacity: 1;
  top: 0;
  transition: opacity 0.25s;
  visibility: visible;
}
.navigation-block--flyout .navigation__menu-list__container {
  transform: none;
}

/* ------------------------------------------------------------------------ *\
 * Hero
\* ------------------------------------------------------------------------ */
.hero-block {
  position: relative;
  z-index: 3;
}
.hero-block {
  background: url("../media/background-content.jpg") center top repeat-y;
  margin: 45px auto 80px;
  margin: 2.8125rem auto 5rem;
  margin: 100px auto 80px;
  margin: 6.25rem auto 5rem;
  max-width: 994px;
  max-width: 62.125rem;
  padding: 0px 20px;
  padding: 0rem 1.25rem;
  width: 100%;
}
.hero-block::before, .hero-block::after {
  background-position: center top;
  background-repeat: no-repeat;
  content: "";
  display: block;
  height: 16px;
  height: 1rem;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: 1;
}
.hero-block::before {
  background-image: url("../media/background-content_top.jpg");
  bottom: 100%;
}
.hero-block::after {
  background-image: url("../media/background-content_bottom.jpg");
  top: 100%;
}

.hero__inner {
  margin: 0 auto;
  max-width: 990px;
  max-width: 61.875rem;
  position: relative;
  z-index: 2;
}

.hero__video-frame {
  margin: 0 auto;
  max-width: 922px;
  max-width: 57.625rem;
  padding: 26px;
  padding: 1.625rem;
  position: relative;
  transform: translateY(-2.1875rem);
}
.hero__video-frame .video-frame__top {
  background: url("../media/background-video-frame_center-top.png") center top repeat-x;
  height: 26px;
  height: 1.625rem;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
.hero__video-frame .video-frame__top::before, .hero__video-frame .video-frame__top::after {
  background-position: center center;
  background-repeat: no-repeat;
  content: "";
  display: block;
  height: 26px;
  height: 1.625rem;
  position: absolute;
  top: 0;
  width: 26px;
  width: 1.625rem;
}
.hero__video-frame .video-frame__top::before {
  background-image: url("../media/background-video-frame_left-top.png");
  left: 0;
}
.hero__video-frame .video-frame__top::after {
  background-image: url("../media/background-video-frame_right-top.png");
  right: 0;
}
.hero__video-frame .video-frame__center {
  bottom: 26px;
  bottom: 1.625rem;
  left: 0;
  position: absolute;
  top: 26px;
  top: 1.625rem;
  width: 100%;
  z-index: 0;
}
.hero__video-frame .video-frame__center::before, .hero__video-frame .video-frame__center::after {
  background-position: center center;
  background-repeat: repeat-y;
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  width: 26px;
  width: 1.625rem;
}
.hero__video-frame .video-frame__center::before {
  background-image: url("../media/background-video-frame_left-center.png");
  left: 0;
}
.hero__video-frame .video-frame__center::after {
  background-image: url("../media/background-video-frame_right-center.png");
  right: 0;
}
.hero__video-frame .video-frame__bottom {
  background: url("../media/background-video-frame_center-bottom.png") center top repeat-x;
  bottom: 0;
  height: 26px;
  height: 1.625rem;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: 1;
}
.hero__video-frame .video-frame__bottom::before, .hero__video-frame .video-frame__bottom::after {
  background-position: center center;
  background-repeat: no-repeat;
  content: "";
  display: block;
  height: 26px;
  height: 1.625rem;
  position: absolute;
  top: 0;
  width: 26px;
  width: 1.625rem;
}
.hero__video-frame .video-frame__bottom::before {
  background-image: url("../media/background-video-frame_left-bottom.png");
  left: 0;
}
.hero__video-frame .video-frame__bottom::after {
  background-image: url("../media/background-video-frame_right-bottom.png");
  right: 0;
}

/* ------------------------------------------------------------------------ *\
 * Content
\* ------------------------------------------------------------------------ */
.content-block {
  position: relative;
  z-index: 2;
}
.content-block {
  background: url("../media/background-content.jpg") center top repeat-y;
  margin: 100px auto 50px;
  margin: 6.25rem auto 3.125rem;
  max-width: 994px;
  max-width: 62.125rem;
  padding: 35px 0px 100px;
  padding: 2.1875rem 0rem 6.25rem;
  width: 100%;
}
.content-block::before, .content-block::after {
  background-position: center top;
  background-repeat: no-repeat;
  content: "";
  display: block;
  height: 16px;
  height: 1rem;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: 1;
}
.content-block::before {
  background-image: url("../media/background-content_top.jpg");
  bottom: 100%;
}
.content-block::after {
  background-image: url("../media/background-content_bottom.jpg");
  top: 100%;
}

.content__inner {
  background: url("../media/background-content_inner_clean.png") center top repeat-y;
  margin: 0 auto;
  max-width: 990px;
  max-width: 61.875rem;
  position: relative;
  z-index: 2;
}
.content__inner::before, .content__inner::after {
  background-position: center top;
  background-repeat: no-repeat;
  content: "";
  display: block;
  height: 100px;
  height: 6.25rem;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: 3;
}
.content__inner::before {
  background-image: url("../media/background-content_inner-top_clean.png");
  bottom: 100%;
}
.content__inner::after {
  background-image: url("../media/background-content_inner-bottom_solid.png");
  top: 100%;
}

.content__post {
  padding: 0px 25px 25px;
  padding: 0rem 1.5625rem 1.5625rem;
  position: relative;
  z-index: 4;
}

.content__sidebar {
  background: #ECE8DE;
  padding: 25px 25px 0px;
  padding: 1.5625rem 1.5625rem 0rem;
  position: relative;
}
.content__sidebar::before {
  background: url("../media/background-content_sidebar.png") center top repeat-x;
  bottom: 100%;
  content: "";
  display: block;
  height: 5px;
  height: 0.3125rem;
  left: 0;
  position: absolute;
  width: 100%;
}

.content__figure {
  margin: 0;
}
.content__figure .figure__image {
  display: block;
  margin: 0 auto;
  max-width: 100%;
}

/* ------------------------------------------------------------------------ *\
 * Footer
\* ------------------------------------------------------------------------ */
.footer-block {
  position: relative;
  z-index: 1;
}
.footer-block {
  background: url("../media/background-footer.png") center top no-repeat #FBB757;
  padding: 50px 25px;
  padding: 3.125rem 1.5625rem;
}
.footer-block::before {
  background: url("../media/background-footer_top.png") center top no-repeat;
  bottom: 100%;
  content: "";
  display: block;
  height: 20px;
  height: 1.25rem;
  left: 0;
  position: absolute;
  width: 100%;
}

.footer__inner {
  margin: 0 auto;
  max-width: 900.009px;
  max-width: 56.2505625rem;
}

.footer__title {
  color: #4886AF;
  font-size: 1.25em;
}

.footer__text {
  font-family: "lithos-pro", "Helvetica", "Arial", sans-serif;
  font-size: 0.875em;
}
.footer__text.text--table .text__cell {
  border: 0;
  border-bottom: 1px solid rgba(85, 70, 50, 0.2);
  border-bottom: 0.0625rem solid rgba(85, 70, 50, 0.2);
  padding: 0.3571428571em 0.3571428571em 0.3571428571em 0em;
}
.footer__text.text--table .text__cell.text__cell--header {
  color: #FFFFFF;
  text-align: right;
}
.footer__text.text--table .text__row:last-child > .text__cell {
  border-bottom: 0;
}
.footer__text.text--table.text--compact .text__cell {
  border-bottom: 0;
  padding-bottom: 0;
  padding-top: 0;
}

@media (min-width: 30em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
}
@media (min-width: 40em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
}
@media (min-width: 48em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Columns
  \* ------------------------------------------------------------------------ */
  .columns--2 {
    columns: 2;
  }

  .columns--3 {
    columns: 3;
  }

  .columns--4 {
    columns: 4;
  }

  .columns--5 {
    columns: 5;
  }

  .columns--6 {
    columns: 6;
  }

  .columns--7 {
    columns: 7;
  }

  .columns--8 {
    columns: 8;
  }

  .columns--9 {
    columns: 9;
  }

  .columns--10 {
    columns: 10;
  }

  .columns--11 {
    columns: 11;
  }

  .columns--12 {
    columns: 12;
  }

  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Alert
  \* ------------------------------------------------------------------------ */
  .alert-block {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
  }

  .alert__row [data-order="1"] {
    order: 1;
  }
  .alert__row [data-order="2"] {
    order: 2;
  }
  .alert__row [data-order="3"] {
    order: 3;
  }

  .alert__user-content {
    padding-left: 0;
    padding-right: 0;
  }

  .alert__title {
    border-right: 0.0625rem solid #89291E;
    padding-left: 0;
    padding-right: 0.625em;
  }

  /* ------------------------------------------------------------------------ *\
   * Header
  \* ------------------------------------------------------------------------ */
  .header__logo__container .header__logo {
    width: 18.125em;
  }

  /* ------------------------------------------------------------------------ *\
   * Hero
  \* ------------------------------------------------------------------------ */
  .hero-block {
    margin-top: 2.8125rem;
    padding-left: 2.1875rem;
    padding-right: 2.1875rem;
  }

  .hero__callout {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    margin-bottom: 0;
  }

  /* ------------------------------------------------------------------------ *\
   * Footer
  \* ------------------------------------------------------------------------ */
  .footer__row.row--hack {
    flex-wrap: nowrap;
  }
}
@media (min-width: 53.3125em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
}
@media (min-width: 60em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Content
  \* ------------------------------------------------------------------------ */
  .content-block {
    padding-top: 0;
  }

  .content__inner {
    background-image: url("../media/background-content_inner.png");
  }
  .content__inner::before {
    background-image: url("../media/background-content_inner-top.png");
  }
  .content__inner::after {
    background-image: url("../media/background-content_inner-bottom.png");
  }

  .content__post {
    padding: 0rem 1.5625rem 0rem 3.125rem;
  }

  .content__sidebar {
    background: none;
    padding: 0rem 3.125rem 0rem 1.5625rem;
    width: 19.0625em;
  }
  .content__sidebar::before {
    display: none;
  }
}
@media (min-width: 64em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
}
@media (min-width: 80em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
}
@media (min-width: 85.375em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
}
@media (min-width: 90em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1vZGVybi5jc3MiLCJoZWxwZXJzL19oZWxwZXJzLnNjc3MiLCJoZWxwZXJzL19taXhpbnMuc2NzcyIsImhlbHBlcnMvX2Z1bmN0aW9ucy5zY3NzIiwiaGVscGVycy9fdmFyaWFibGVzLnNjc3MiLCJ2aWV3cy9fc2NyZWVuLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbm9ybWFsaXplLmNzcy9ub3JtYWxpemUuY3NzIiwiYmFzZS9ub3JtYWxpemUvX25vcm1hbGl6ZS5zY3NzIiwiYmFzZS9ncmlkL19ncmlkLnNjc3MiLCJiYXNlL3NlbGVjdGlvbi9fc2VsZWN0aW9uLnNjc3MiLCJiYXNlL2xpbmsvX2xpbmsuc2NzcyIsImJhc2UvYnV0dG9uL19idXR0b24uc2NzcyIsImJhc2UvYWxpZ24vX2FsaWduLnNjc3MiLCJiYXNlL2RpdmlkZXIvX2RpdmlkZXIuc2NzcyIsImJhc2UvaW5wdXQvX2lucHV0LnNjc3MiLCJiYXNlL3RleHQvX3RleHQuc2NzcyIsImJhc2UvdGl0bGUvX3RpdGxlLnNjc3MiLCJiYXNlL2Jsb2NrcXVvdGUvX2Jsb2NrcXVvdGUuc2NzcyIsImJhc2UvdXNlci1jb250ZW50L191c2VyLWNvbnRlbnQuc2NzcyIsIm1vZHVsZS9hY2NvcmRpb24vX2FjY29yZGlvbi5zY3NzIiwiPG5vIHNvdXJjZT4iLCJtb2R1bGUvYXJ0aWNsZS9fYXJ0aWNsZS5zY3NzIiwibW9kdWxlL2F0dHJhY3Rpb25zLW1hcC9fYXR0cmFjdGlvbnMtbWFwLnNjc3MiLCJtb2R1bGUvYmFiZWxmaXNoL19iYWJlbGZpc2guc2NzcyIsIm1vZHVsZS9jYWxsb3V0L19jYWxsb3V0LnNjc3MiLCJtb2R1bGUvaWZyYW1lL19pZnJhbWUuc2NzcyIsIm1vZHVsZS9sb2dvL19sb2dvLnNjc3MiLCJtb2R1bGUvbWVudS1saXN0L19tZW51LWxpc3Quc2NzcyIsIm1vZHVsZS9uaW5qYS1mb3Jtcy9fbmluamEtZm9ybXMuc2NzcyIsIm1vZHVsZS9wYW5lbC10b2dnbGUvX3BhbmVsLXRvZ2dsZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bob3Rvc3dpcGUvZGlzdC9waG90b3N3aXBlLmNzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9waG90b3N3aXBlL2Rpc3QvZGVmYXVsdC1za2luL2RlZmF1bHQtc2tpbi5jc3MiLCJtb2R1bGUvcGhvdG9zd2lwZS9fcGhvdG9zd2lwZS5zY3NzIiwibW9kdWxlL3BvcHBlcmpzL19wb3BwZXJqcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3B3YS1pbnN0YWxsLXByb21wdC9zdHlsZS5jc3MiLCJtb2R1bGUvcHdhLWluc3RhbGwtcHJvbXB0L19wd2EtaW5zdGFsbC1wcm9tcHQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9zY3JvbGwtaGludC9zY3NzL3Njcm9sbC1oaW50LnNjc3MiLCJtb2R1bGUvc2Nyb2xsLWhpbnQvX3Njcm9sbC1oaW50LnNjc3MiLCJtb2R1bGUvc2VhcmNoLWZvcm0vX3NlYXJjaC1mb3JtLnNjc3MiLCJtb2R1bGUvc2tpcC1saW5rcy9fc2tpcC1saW5rcy5zY3NzIiwibW9kdWxlL3dwLWNhcHRpb24vX3dwLWNhcHRpb24uc2NzcyIsImxheW91dC9wYWdlL19wYWdlLnNjc3MiLCJsYXlvdXQvYWxlcnQvX2FsZXJ0LnNjc3MiLCJsYXlvdXQvaGVhZGVyL19oZWFkZXIuc2NzcyIsImxheW91dC9uYXZpZ2F0aW9uL19uYXZpZ2F0aW9uLnNjc3MiLCJsYXlvdXQvaGVyby9faGVyby5zY3NzIiwibGF5b3V0L2NvbnRlbnQvX2NvbnRlbnQuc2NzcyIsImxheW91dC9mb290ZXIvX2Zvb3Rlci5zY3NzIiwidmlld3MvX3NjcmVlbl94eHhzLnNjc3MiLCJ2aWV3cy9fc2NyZWVuX3h4cy5zY3NzIiwidmlld3MvX3NjcmVlbl94cy5zY3NzIiwibW9kdWxlL2NvbHVtbnMvX2NvbHVtbnNfeHMuc2NzcyIsImxheW91dC9hbGVydC9fYWxlcnRfeHMuc2NzcyIsImxheW91dC9oZWFkZXIvX2hlYWRlcl94cy5zY3NzIiwibGF5b3V0L2hlcm8vX2hlcm9feHMuc2NzcyIsImxheW91dC9mb290ZXIvX2Zvb3Rlcl94cy5zY3NzIiwidmlld3MvX3NjcmVlbl9zLnNjc3MiLCJ2aWV3cy9fc2NyZWVuX20uc2NzcyIsImxheW91dC9jb250ZW50L19jb250ZW50X20uc2NzcyIsInZpZXdzL19zY3JlZW5fbC5zY3NzIiwidmlld3MvX3NjcmVlbl94bC5zY3NzIiwidmlld3MvX3NjcmVlbl94eGwuc2NzcyIsInZpZXdzL19zY3JlZW5feHh4bC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0VoQjs7NkVBQUE7QUNBQTs7NkVBQUE7QUNBQTs7NkVBQUE7QUFJQTs7Ozs7RUFBQTtBQVlBOzs7O0VBQUE7QUFTQTs7Ozs7O0VBQUE7QUErQkE7Ozs7O0VBQUE7QUFhQTs7Ozs7RUFBQTtBQ3JFQTs7NkVBQUE7QUFxRUE7OzZFQUFBO0FBT0E7OzZFQUFBO0FBUUE7OzZFQUFBO0FBMEJBOzs2RUFBQTtBSGxHQTtFQUNJLHlCQUFBO0FEMENKOztBQ3ZDQTtFQUNJLHlCQUFBO0FEMENKOztBQ3ZDQTtFQUNJLDRCQUFBO0FEMENKOztBQ3ZDQTtFQUNJLDRCQUFBO0FEMENKOztBQ3ZDQTtFQUNJLDJCQUFBO0FEMENKOztBQ3ZDQTtFQUNJLDZCQUFBO0FEMENKOztBQ3ZDQTtFQUNJLDZCQUFBO0FEMENKOztBQ3ZDQTtFQUNJLDJCQUFBO0FEMENKOztBQ3ZDQTtFQUNJLDRCQUFBO0FEMENKOztBQ3ZDQTtFQUNJLDhCQUFBO0FEMENKOztBQ3ZDQTtFQUNJLDRCQUFBO0VBQ0EsNkJBQUE7QUQwQ0o7O0FDdkNBO0VBQ0ksc0JBQUE7QUQwQ0o7O0FDdkNBO0VBQ0ksdUJBQUE7QUQwQ0o7O0FDdkNBO0VBQ0ksb0JBQUE7QUQwQ0o7O0FDdkNBO0VBQ0kscUJBQUE7QUQwQ0o7O0FDdkNBO0VBQ0ksMEJBQUE7QUQwQ0o7O0FDdkNBO0VBQ0ksMkJBQUE7QUQwQ0o7O0FDdkNBO0VBQ0kseUJBQUE7QUQwQ0o7O0FDdkNBO0VBQ0ksd0JBQUE7QUQwQ0o7O0FDdkNBO0VBQ0ksdUJBQUE7RUFDQSw2QkFBQTtFQUNBLHNCQUFBO0FEMENKOztBQ3ZDQTtFQUNJLHlCQUFBO0FEMENKOztBQ3ZDQTtFQUNJLHlCQUFBO0FEMENKOztBQ3ZDQTtFQUNJLHlCQUFBO0FEMENKOztBQ3ZDQSx1QkFBQTtBQUdBO0VBQ0k7SUFDSSx3QkFBQTtFRHdDTjtBQUNGO0FDcENBO0VBQ0k7SUFDSSx3QkFBQTtFRHNDTjtBQUNGO0FDbENBO0VBQ0k7SUFDSSx3QkFBQTtFRG9DTjtBQUNGO0FDaENBO0VBQ0k7SUFDSSx3QkFBQTtFRGtDTjtBQUNGO0FDL0JBLHNCQUFBO0FDN0JJO0VEaUNKO0lBRVEsd0JBQUE7RUQ4Qk47QUFDRjs7QUVsRUk7RUR5Q0o7SUFFUSx3QkFBQTtFRDRCTjtBQUNGOztBRXhFSTtFRGlESjtJQUVRLHdCQUFBO0VEMEJOO0FBQ0Y7O0FFOUVJO0VEeURKO0lBRVEsd0JBQUE7RUR3Qk47QUFDRjs7QUVwRkk7RURpRUo7SUFFUSx3QkFBQTtFRHNCTjtBQUNGOztBQ25CQSw2R0FBQTtBQ3pESTtFRDZESjtJQUVRLHdCQUFBO0VEbUJOO0FBQ0Y7O0FFbkZJO0VEcUVKO0lBRVEsd0JBQUE7RURpQk47QUFDRjs7QUV6Rkk7RUQ2RUo7SUFFUSx3QkFBQTtFRGVOO0FBQ0Y7O0FFL0ZJO0VEcUZKO0lBRVEsd0JBQUE7RURhTjtBQUNGOztBRXJHSTtFRDZGSjtJQUVRLHdCQUFBO0VEV047QUFDRjs7QUtyT0E7OzZFQUFBO0FDRkEsMkVBQUE7QUFFQTsrRUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQ0UsaUJBQUE7RUFBbUIsTUFBQTtFQUNuQiw4QkFBQTtFQUFnQyxNQUFBO0FONE9sQzs7QU16T0E7K0VBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0UsU0FBQTtBTjBPRjs7QU12T0E7O0VBQUE7QUFJQTtFQUNFLGNBQUE7QU55T0Y7O0FNdE9BOzs7RUFBQTtBQUtBO0VBQ0UsY0FBQTtFQUNBLGdCQUFBO0FOd09GOztBTXJPQTsrRUFBQTtBQUdBOzs7RUFBQTtBQUtBO0VBQ0UsdUJBQUE7RUFBeUIsTUFBQTtFQUN6QixTQUFBO0VBQVcsTUFBQTtFQUNYLGlCQUFBO0VBQW1CLE1BQUE7QU55T3JCOztBTXRPQTs7O0VBQUE7QUFLQTtFQUNFLGlDQUFBO0VBQW1DLE1BQUE7RUFDbkMsY0FBQTtFQUFnQixNQUFBO0FOME9sQjs7QU12T0E7K0VBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0UsNkJBQUE7QU53T0Y7O0FNck9BOzs7RUFBQTtBQUtBO0VBQ0UsbUJBQUE7RUFBcUIsTUFBQTtFQUNyQiwwQkFBQTtFQUE0QixNQUFBO0VBQzVCLGlDQUFBO0VBQW1DLE1BQUE7QU4wT3JDOztBTXZPQTs7RUFBQTtBQUlBOztFQUVFLG1CQUFBO0FOeU9GOztBTXRPQTs7O0VBQUE7QUFLQTs7O0VBR0UsaUNBQUE7RUFBbUMsTUFBQTtFQUNuQyxjQUFBO0VBQWdCLE1BQUE7QU4wT2xCOztBTXZPQTs7RUFBQTtBQUlBO0VBQ0UsY0FBQTtBTnlPRjs7QU10T0E7OztFQUFBO0FBS0E7O0VBRUUsY0FBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLHdCQUFBO0FOd09GOztBTXJPQTtFQUNFLGVBQUE7QU53T0Y7O0FNck9BO0VBQ0UsV0FBQTtBTndPRjs7QU1yT0E7K0VBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0Usa0JBQUE7QU5zT0Y7O0FNbk9BOytFQUFBO0FBR0E7OztFQUFBO0FBS0E7Ozs7O0VBS0Usb0JBQUE7RUFBc0IsTUFBQTtFQUN0QixlQUFBO0VBQWlCLE1BQUE7RUFDakIsaUJBQUE7RUFBbUIsTUFBQTtFQUNuQixTQUFBO0VBQVcsTUFBQTtBTndPYjs7QU1yT0E7OztFQUFBO0FBS0E7O0VBQ1EsTUFBQTtFQUNOLGlCQUFBO0FOd09GOztBTXJPQTs7O0VBQUE7QUFLQTs7RUFDUyxNQUFBO0VBQ1Asb0JBQUE7QU53T0Y7O0FNck9BOztFQUFBO0FBSUE7Ozs7RUFJRSwwQkFBQTtBTnVPRjs7QU1wT0E7O0VBQUE7QUFJQTs7OztFQUlFLGtCQUFBO0VBQ0EsVUFBQTtBTnNPRjs7QU1uT0E7O0VBQUE7QUFJQTs7OztFQUlFLDhCQUFBO0FOcU9GOztBTWxPQTs7RUFBQTtBQUlBO0VBQ0UsOEJBQUE7QU5vT0Y7O0FNak9BOzs7OztFQUFBO0FBT0E7RUFDRSxzQkFBQTtFQUF3QixNQUFBO0VBQ3hCLGNBQUE7RUFBZ0IsTUFBQTtFQUNoQixjQUFBO0VBQWdCLE1BQUE7RUFDaEIsZUFBQTtFQUFpQixNQUFBO0VBQ2pCLFVBQUE7RUFBWSxNQUFBO0VBQ1osbUJBQUE7RUFBcUIsTUFBQTtBTnlPdkI7O0FNdE9BOztFQUFBO0FBSUE7RUFDRSx3QkFBQTtBTndPRjs7QU1yT0E7O0VBQUE7QUFJQTtFQUNFLGNBQUE7QU51T0Y7O0FNcE9BOzs7RUFBQTtBQUtBOztFQUVFLHNCQUFBO0VBQXdCLE1BQUE7RUFDeEIsVUFBQTtFQUFZLE1BQUE7QU53T2Q7O0FNck9BOztFQUFBO0FBSUE7O0VBRUUsWUFBQTtBTnVPRjs7QU1wT0E7OztFQUFBO0FBS0E7RUFDRSw2QkFBQTtFQUErQixNQUFBO0VBQy9CLG9CQUFBO0VBQXNCLE1BQUE7QU53T3hCOztBTXJPQTs7RUFBQTtBQUlBO0VBQ0Usd0JBQUE7QU51T0Y7O0FNcE9BOzs7RUFBQTtBQUtBO0VBQ0UsMEJBQUE7RUFBNEIsTUFBQTtFQUM1QixhQUFBO0VBQWUsTUFBQTtBTndPakI7O0FNck9BOytFQUFBO0FBR0E7O0VBQUE7QUFJQTtFQUNFLGNBQUE7QU5zT0Y7O0FNbk9BOztFQUFBO0FBSUE7RUFDRSxrQkFBQTtBTnFPRjs7QU1sT0E7K0VBQUE7QUFHQTs7RUFBQTtBQUlBO0VBQ0UsYUFBQTtBTm1PRjs7QU1oT0E7O0VBQUE7QUFJQTtFQUNFLGFBQUE7QU5rT0Y7O0FPM2pCQTs7NkVBQUE7QUFJQSxnR0FBQTtBQUVBLDJDQUFBO0FBVUE7OztFQUdJLHNCQUFBO0FQbWpCSjs7QU85aUJBOzs7O0VBSUksd0JBQUE7RUFDQSxxQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtBUGlqQko7O0FPNWlCQTtFQUNJLHdCQUFBO0FQK2lCSjs7QU8xaUJBO0VBQ0ksZ0JBQUE7RUFDQSxlQUFBO0FQNmlCSjs7QU94aUJBLDJDQUFBO0FBQ0E7RUFDSSxhQUFBO0FQMmlCSjs7QVEvbEJBOzs2RUFBQTtBQUlBLDZDQUFBO0FBS0k7RUFDSSxhQUFBO0VBQ0EsZUFBQTtBUjZsQlI7QVExbEJJO0VBQ0ksYUFBQTtFQUNBLHNDQUFBO0FSNGxCUjtBUXpsQkk7RUFDSSxzQkFBQTtFQUNBLG1CQUFBO0FSMmxCUjtBUXhsQkk7RUFDSSxZQUFBO0VBQ0EsY0FBQTtFQUNBLFlBQUE7QVIwbEJSO0FRdmxCSTtFQUNJLFlBQUE7QVJ5bEJSO0FRdGxCSTtFQUNJLGNBQUE7QVJ3bEJSO0FRcmxCSTtFQUNJLDBCQUFBO0FSdWxCUjtBUXBsQkk7RUFDSSxxQkFBQTtBUnNsQlI7QVFubEJJO0VBQ0ksMkJBQUE7QVJxbEJSO0FRbGxCSTtFQUNJLHNCQUFBO0FSb2xCUjtBUWpsQkk7RUFDSSwyQkFBQTtBUm1sQlI7QVFobEJJO0VBQ0ksc0JBQUE7QVJrbEJSO0FRL2tCSTtFQUNJLGlCQUFBO0FSaWxCUjtBUTlrQkk7RUFDSSx1QkFBQTtBUmdsQlI7QVE3a0JJO0VBQ0ksbUJBQUE7RUFDQSx1QkFBQTtBUitrQlI7QVE1a0JJO0VBQ0ksdUJBQUE7QVI4a0JSO0FRM2tCSTtFQUNJLG1CQUFBO0FSNmtCUjtBUTFrQkk7RUFDSSx1QkFBQTtBUjRrQlI7QVF6a0JJO0VBQ0kseUJBQUE7QVIya0JSO0FReGtCSTtFQUNJLHFCQUFBO0FSMGtCUjtBUXZrQkk7RUFDSSwyQkFBQTtBUnlrQlI7QVF0a0JJO0VBQ0ksb0JBQUE7QVJ3a0JSO0FRcmtCSTtFQUNJLDZCQUFBO0FSdWtCUjtBUXBrQkk7RUFDSSw4QkFBQTtBUnNrQlI7QVFua0JJO0VBQ0ksMkJBQUE7QVJxa0JSO0FRbGtCSTtFQUNJLHNCQUFBO0FSb2tCUjtBUWprQkk7RUFDSSx1QkFBQTtBUm1rQlI7QVFoa0JJO0VBQ0ksMkJBQUE7QVJra0JSO0FRL2pCSTtFQUNJLHFCQUFBO0FSaWtCUjtBUTlqQkk7RUFDSSx5QkFBQTtBUmdrQlI7QVE3akJJO0VBQ0ksdUJBQUE7QVIrakJSO0FRNWpCSTtFQUNJLG1CQUFBO0FSOGpCUjtBUTNqQkk7RUFDSSw4QkFBQTtBUjZqQlI7O0FReGpCSTtFQUNJLGdCQUFBO0FSMmpCUjs7QVF0akJJO0VBQ0ksY0FBQTtFQUNBLG1CQUFBO0FSeWpCUjs7QVEzakJJO0VBQ0kseUJBQUE7RUFDQSxtQkFBQTtBUjhqQlI7O0FRaGtCSTtFQUNJLDBCQUFBO0VBQ0EsbUJBQUE7QVJta0JSOztBUXJrQkk7RUFDSSxlQUFBO0VBQ0EsbUJBQUE7QVJ3a0JSOztBUTFrQkk7RUFDSSwwQkFBQTtFQUNBLG1CQUFBO0FSNmtCUjs7QVEva0JJO0VBQ0ksMEJBQUE7RUFDQSxtQkFBQTtBUmtsQlI7O0FRcGxCSTtFQUNJLGVBQUE7RUFDQSxtQkFBQTtBUnVsQlI7O0FRemxCSTtFQUNJLDBCQUFBO0VBQ0EsbUJBQUE7QVI0bEJSOztBUTlsQkk7RUFDSSwwQkFBQTtFQUNBLG1CQUFBO0FSaW1CUjs7QVFubUJJO0VBQ0ksZUFBQTtFQUNBLG1CQUFBO0FSc21CUjs7QVF4bUJJO0VBQ0ksMEJBQUE7RUFDQSxvQkFBQTtBUjJtQlI7O0FRN21CSTtFQUNJLDBCQUFBO0VBQ0Esb0JBQUE7QVJnbkJSOztBUWxuQkk7RUFDSSxnQkFBQTtFQUNBLG9CQUFBO0FScW5CUjs7QUV4cEJJO0VNeUNJO0lBQ0ksZ0JBQUE7RVJtbkJWOztFUTltQk07SUFDSSxjQUFBO0lBQ0EsbUJBQUE7RVJpbkJWOztFUW5uQk07SUFDSSx5QkFBQTtJQUNBLG1CQUFBO0VSc25CVjs7RVF4bkJNO0lBQ0ksMEJBQUE7SUFDQSxtQkFBQTtFUjJuQlY7O0VRN25CTTtJQUNJLGVBQUE7SUFDQSxtQkFBQTtFUmdvQlY7O0VRbG9CTTtJQUNJLDBCQUFBO0lBQ0EsbUJBQUE7RVJxb0JWOztFUXZvQk07SUFDSSwwQkFBQTtJQUNBLG1CQUFBO0VSMG9CVjs7RVE1b0JNO0lBQ0ksZUFBQTtJQUNBLG1CQUFBO0VSK29CVjs7RVFqcEJNO0lBQ0ksMEJBQUE7SUFDQSxtQkFBQTtFUm9wQlY7O0VRdHBCTTtJQUNJLDBCQUFBO0lBQ0EsbUJBQUE7RVJ5cEJWOztFUTNwQk07SUFDSSxlQUFBO0lBQ0EsbUJBQUE7RVI4cEJWOztFUWhxQk07SUFDSSwwQkFBQTtJQUNBLG9CQUFBO0VSbXFCVjs7RVFycUJNO0lBQ0ksMEJBQUE7SUFDQSxvQkFBQTtFUndxQlY7O0VRMXFCTTtJQUNJLGdCQUFBO0lBQ0Esb0JBQUE7RVI2cUJWO0FBQ0Y7QUUvdEJJO0VNd0RJO0lBQ0ksZ0JBQUE7RVIwcUJWOztFUXJxQk07SUFDSSxjQUFBO0lBQ0EsbUJBQUE7RVJ3cUJWOztFUTFxQk07SUFDSSx5QkFBQTtJQUNBLG1CQUFBO0VSNnFCVjs7RVEvcUJNO0lBQ0ksMEJBQUE7SUFDQSxtQkFBQTtFUmtyQlY7O0VRcHJCTTtJQUNJLGVBQUE7SUFDQSxtQkFBQTtFUnVyQlY7O0VRenJCTTtJQUNJLDBCQUFBO0lBQ0EsbUJBQUE7RVI0ckJWOztFUTlyQk07SUFDSSwwQkFBQTtJQUNBLG1CQUFBO0VSaXNCVjs7RVFuc0JNO0lBQ0ksZUFBQTtJQUNBLG1CQUFBO0VSc3NCVjs7RVF4c0JNO0lBQ0ksMEJBQUE7SUFDQSxtQkFBQTtFUjJzQlY7O0VRN3NCTTtJQUNJLDBCQUFBO0lBQ0EsbUJBQUE7RVJndEJWOztFUWx0Qk07SUFDSSxlQUFBO0lBQ0EsbUJBQUE7RVJxdEJWOztFUXZ0Qk07SUFDSSwwQkFBQTtJQUNBLG9CQUFBO0VSMHRCVjs7RVE1dEJNO0lBQ0ksMEJBQUE7SUFDQSxvQkFBQTtFUit0QlY7O0VRanVCTTtJQUNJLGdCQUFBO0lBQ0Esb0JBQUE7RVJvdUJWO0FBQ0Y7QUVyeUJJO0VNdUVJO0lBQ0ksZ0JBQUE7RVJpdUJWOztFUTV0Qk07SUFDSSxjQUFBO0lBQ0EsbUJBQUE7RVIrdEJWOztFUWp1Qk07SUFDSSx5QkFBQTtJQUNBLG1CQUFBO0VSb3VCVjs7RVF0dUJNO0lBQ0ksMEJBQUE7SUFDQSxtQkFBQTtFUnl1QlY7O0VRM3VCTTtJQUNJLGVBQUE7SUFDQSxtQkFBQTtFUjh1QlY7O0VRaHZCTTtJQUNJLDBCQUFBO0lBQ0EsbUJBQUE7RVJtdkJWOztFUXJ2Qk07SUFDSSwwQkFBQTtJQUNBLG1CQUFBO0VSd3ZCVjs7RVExdkJNO0lBQ0ksZUFBQTtJQUNBLG1CQUFBO0VSNnZCVjs7RVEvdkJNO0lBQ0ksMEJBQUE7SUFDQSxtQkFBQTtFUmt3QlY7O0VRcHdCTTtJQUNJLDBCQUFBO0lBQ0EsbUJBQUE7RVJ1d0JWOztFUXp3Qk07SUFDSSxlQUFBO0lBQ0EsbUJBQUE7RVI0d0JWOztFUTl3Qk07SUFDSSwwQkFBQTtJQUNBLG9CQUFBO0VSaXhCVjs7RVFueEJNO0lBQ0ksMEJBQUE7SUFDQSxvQkFBQTtFUnN4QlY7O0VReHhCTTtJQUNJLGdCQUFBO0lBQ0Esb0JBQUE7RVIyeEJWO0FBQ0Y7QUUzMkJJO0VNc0ZJO0lBQ0ksZ0JBQUE7RVJ3eEJWOztFUW54Qk07SUFDSSxjQUFBO0lBQ0EsbUJBQUE7RVJzeEJWOztFUXh4Qk07SUFDSSx5QkFBQTtJQUNBLG1CQUFBO0VSMnhCVjs7RVE3eEJNO0lBQ0ksMEJBQUE7SUFDQSxtQkFBQTtFUmd5QlY7O0VRbHlCTTtJQUNJLGVBQUE7SUFDQSxtQkFBQTtFUnF5QlY7O0VRdnlCTTtJQUNJLDBCQUFBO0lBQ0EsbUJBQUE7RVIweUJWOztFUTV5Qk07SUFDSSwwQkFBQTtJQUNBLG1CQUFBO0VSK3lCVjs7RVFqekJNO0lBQ0ksZUFBQTtJQUNBLG1CQUFBO0VSb3pCVjs7RVF0ekJNO0lBQ0ksMEJBQUE7SUFDQSxtQkFBQTtFUnl6QlY7O0VRM3pCTTtJQUNJLDBCQUFBO0lBQ0EsbUJBQUE7RVI4ekJWOztFUWgwQk07SUFDSSxlQUFBO0lBQ0EsbUJBQUE7RVJtMEJWOztFUXIwQk07SUFDSSwwQkFBQTtJQUNBLG9CQUFBO0VSdzBCVjs7RVExMEJNO0lBQ0ksMEJBQUE7SUFDQSxvQkFBQTtFUjYwQlY7O0VRLzBCTTtJQUNJLGdCQUFBO0lBQ0Esb0JBQUE7RVJrMUJWO0FBQ0Y7QUVqN0JJO0VNcUdJO0lBQ0ksZ0JBQUE7RVIrMEJWOztFUTEwQk07SUFDSSxjQUFBO0lBQ0EsbUJBQUE7RVI2MEJWOztFUS8wQk07SUFDSSx5QkFBQTtJQUNBLG1CQUFBO0VSazFCVjs7RVFwMUJNO0lBQ0ksMEJBQUE7SUFDQSxtQkFBQTtFUnUxQlY7O0VRejFCTTtJQUNJLGVBQUE7SUFDQSxtQkFBQTtFUjQxQlY7O0VROTFCTTtJQUNJLDBCQUFBO0lBQ0EsbUJBQUE7RVJpMkJWOztFUW4yQk07SUFDSSwwQkFBQTtJQUNBLG1CQUFBO0VSczJCVjs7RVF4MkJNO0lBQ0ksZUFBQTtJQUNBLG1CQUFBO0VSMjJCVjs7RVE3MkJNO0lBQ0ksMEJBQUE7SUFDQSxtQkFBQTtFUmczQlY7O0VRbDNCTTtJQUNJLDBCQUFBO0lBQ0EsbUJBQUE7RVJxM0JWOztFUXYzQk07SUFDSSxlQUFBO0lBQ0EsbUJBQUE7RVIwM0JWOztFUTUzQk07SUFDSSwwQkFBQTtJQUNBLG9CQUFBO0VSKzNCVjs7RVFqNEJNO0lBQ0ksMEJBQUE7SUFDQSxvQkFBQTtFUm80QlY7O0VRdDRCTTtJQUNJLGdCQUFBO0lBQ0Esb0JBQUE7RVJ5NEJWO0FBQ0Y7QVNqbkNBOzs2RUFBQTtBQUtJO0VBQ0kseUJBQUE7RUFDQSxjQUFBO0FUaW5DUjs7QVV4bkNBOzs2RUFBQTtBQUtJO0VBQ0ksY0FBQTtFQUNBLGVBQUE7RUFDQSxxQkFBQTtFQUNBLHVCQUFBO0FWeW5DUjtBVXRuQ0k7RUFFSSxjQUFBO0FWdW5DUjs7QVVubkNBLG9CQUFBO0FBR0k7RUFDSSxjQUFBO0FWb25DUjtBVWpuQ0k7RUFFSSxjQUFBO0VBQ0EsMEJBQUE7QVZrbkNSOztBVzlvQ0E7OzZFQUFBO0FBS0k7RUFDSSxtQkFBQTtFQUNBLFNBQUE7RUFDQSxzQkFBQTtFQUNBLGNBQUE7RUFDQSxlQUFBO0VBQ0EscUJBQUE7RUFDQSwyRFA2RE87RU81RFAsY0FBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxzQkFBQTtFQUNBLFVBQUE7RUFDQSx5QkFBQTtFQUNBLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxrQ0FBQTtBWCtvQ1I7QVc1b0NJO0VBQ0kseUJBQUE7QVg4b0NSOztBVzFvQ0EscUJBQUE7QUFHSTtFQUNJLG1CQUFBO0VBQ0EsWUFBQTtBWDJvQ1I7O0FZN3FDQTs7NkVBQUE7QUFPSTtFQUNJLFdBQUE7RUFDQSxzQkFBQTtFQUNBLHlCQUFBO0FaNHFDUjs7QVl2cUNJO0VBQ0ksWUFBQTtFQUNBLHFCQUFBO0VBQ0EseUJBQUE7QVowcUNSOztBWXJxQ0k7RUFDSSxjQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtBWndxQ1I7O0FhbHNDQTs7NkVBQUE7QUFLSTtFQUNJLG1CQUFBO0VBQ0EsU0FBQTtFQUNBLFdBQUE7RUFDQSxXQUFBO0VBQUEsZ0JBQUE7RUFDQSxvQkFBQTtFQUNBLFdBQUE7QWJtc0NSOztBYzlzQ0E7OzZFQUFBO0FBYUk7RUFDSSxtQkFBQTtFQUNBLHlCQUFBO0VBQUEsOEJBQUE7RUFDQSxxQkFBQTtFQUNBLGNBQUE7RUFDQSxjQUFBO0VBQ0Esd0RWdURJO0VVdERKLGNBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0Esb0JBQUE7RUFBQSwwQkFBQTtFQUNBLFVBQUE7RUFDQSwwQ0FBQTtFQUNBLHVCQUFBO0VBQ0EsMEZBQUE7RUFDQSxXQUFBO0FkdXNDUjtBY3BzQ0k7RUFFSSxxQkFBQTtBZHFzQ1I7QWNsc0NJO0VBQ0ksY0FBQTtFQUNBLFVBQUE7QWRvc0NSOztBY2hzQ0Esa0JBQUE7QUFHSTtFQUNJLHFCQUFBO0FkaXNDUjs7QWM3ckNBLG9CQUFBO0FBR0k7RUFDSSxxQkFBQTtBZDhyQ1I7O0FjMXJDQSxtQkFBQTtBQUdJO0VBQ0ksZUFBQTtFQUVBLG1CQUFBO0FkMHJDUjtBY3hyQ1E7RUFBZ0IsYUFBQTtBZDJyQ3hCOztBY3RyQ0k7RUFDSSwwZkFBQTtFQUNBLDBDQUFBO0VBQ0EsNEJBQUE7RUFDQSx1QkF0RUk7RUF1RUoscUNBQUE7QWR5ckNSOztBY3JyQ0Esb0NBQUE7QUFJSTs7RUFDSSxpQkFBQTtFQUFBLHVCQUFBO0VBQ0EsZUFBQTtFQUNBLHFCQUFBO0VBQ0EsYUFBQTtFQUNBLGdCQUFBO0VBQ0EsVUFBQTtFQUNBLGtCQUFBO0VBQ0Esc0JBQUE7RUFDQSxZQUFBO0Fkc3JDUjtBY25yQ0k7O0VBQ0ksa0NBQUE7RUFDQSw0QkFBQTtFQUNBLHVCQTlGSTtFQStGSixXQUFBO0VBQ0EsY0FBQTtFQUNBLFlBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxNQUFBO0VBQ0Esa0VBQUE7RUFDQSxXQUFBO0Fkc3JDUjtBY25yQ0k7O0VBQ0ksT0FBQTtFQUNBLG1EQUFBO0Fkc3JDUjtBY25yQ0k7O0VBQ0kscUJBQUE7QWRzckNSOztBY2pyQ0k7RUFDSSx5QkFBQTtFQUNBLHFCQUFBO0Fkb3JDUjtBY2pyQ0k7RUFDSSxza0JBQUE7RUFDQSx3QkFBQTtBZG1yQ1I7QWNockNJO0VBQ0ksb0JBQUE7QWRrckNSOztBYzdxQ0k7RUFDSSxrQkFBQTtBZGdyQ1I7QWM3cUNJO0VBQ0kseVhBQUE7RUFDQSxtQkFBQTtBZCtxQ1I7QWM1cUNJO0VBQ0ksbUJBQUE7QWQ4cUNSOztBYzFxQ0EscUJBQUE7QUFHSTtFQUNJLHlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxZQUFBO0FkMnFDUjs7QWN2cUNBLDRCQUFBO0FBRUEsNkZBQUE7QUFFQSxPQUFBO0FBR0k7O0VBQ0kseURBQUE7QWR1cUNSOztBY2pxQ0k7O0VBQ0ksMkNBQUE7QWRxcUNSOztBY2pxQ0EsWUFBQTtBQUNBO0VBQ0k7SUFDSSwwQ0FBQTtFZG9xQ047O0VjanFDRTtJQUNJLHFDQUFBO0Vkb3FDTjtBQUNGO0FjanFDQSxXQUFBO0FBSUk7OztFQUNJLDBDQUFBO0Fka3FDUjs7QWMzcENJOzs7RUFDSSxxQ0FBQTtBZGdxQ1I7O0FjNXBDQSxTQUFBO0FBQ0E7RUFDSTtJQUNJLDBGQUFBO0VkK3BDTjs7RWM1cENFO0lBQ0ksMkNBQUE7RWQrcENOO0FBQ0Y7QWM1cENBLFlBQUE7QUFDQTtFQUNJO0lBQ0ksa0VBQUE7RWQ4cENOOztFYzNwQ0U7SUFDSSwyQ0FBQTtFZDhwQ047QUFDRjtBYzNwQ0EscUJBQUE7QUN0T0E7OzZFQUFBO0FBS0k7RUFDSSxjQUFBO0VBQ0EsY0FBQTtFQUNBLHdEWGtFSTtFV2pFSixjQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLHdCQUFBO0FmazRDUjtBZS8zQ0k7RUFDSSwyQkFBQTtBZmk0Q1I7O0FlNzNDQSxrQkFBQTtBQUdJO0VBQ0ksZUFBQTtFQUNBLGdCQUFBO0FmODNDUjs7QWUxM0NBLGlCQUFBO0FBR0k7RUFDSSwyQkFBQTtBZjIzQ1I7QWV4M0NJO0VBQ0ksa0JBQUE7QWYwM0NSO0FldjNDSTtFQUNJLHFCQUFBO0FmeTNDUjs7QWVyM0NBLHlCQUFBO0FBR0k7RUFDSSxtQkFBQTtBZnMzQ1I7O0FlbDNDQSwyQkFBQTtBQUdJO0VBQ0ksZ0JBQUE7QWZtM0NSOztBZS8yQ0Esa0JBQUE7QUFHSTtFQUNJLGNBQUE7RUFDQSxXQUFBO0FmZzNDUjs7QWUzMkNJO0VBQ0kseUJBQUE7RUFDQSxjQUFBO0VBQ0EsV0FBQTtBZjgyQ1I7QWUzMkNJO0VBQ0ksMkJBQUE7QWY2MkNSO0FlMTJDSTtFQUNJLHdCQUFBO0FmNDJDUjtBZXoyQ0k7RUFDSSxjQUFBO0VBQ0EsMkJBQUE7RUFDQSxrQkFBQTtBZjIyQ1I7QWV4MkNJO0VBQ0ksa0JBQUE7QWYwMkNSO0FldjJDSTtFQUNJLHlCQUFBO0VBQUEsK0JBQUE7RUFDQSxtQkFBQTtFQUNBLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtBZnkyQ1I7QWV0MkNJOztFQUVJLGdCQUFBO0FmdzJDUjtBZXIyQ0k7RUFDSSxnQkFBQTtBZnUyQ1I7O0FnQnA5Q0E7OzZFQUFBO0FBS0k7RUFDSSxjQUFBO0VBQ0EsMkRaa0VPO0VZakVQLG1CQUFBO0VBQ0EsZ0JBQUE7RUFDQSwyQkFBQTtFQUNBLDhCQUFBO0VBQ0EseUJBQUE7QWhCcTlDUjs7QWdCOThDSTs7O0VBQ0ksaUJBQUE7RUFDQSxrQkFBQTtFQUNBLHFCQUFBO0FoQm05Q1I7O0FnQjk4Q0k7RUFDSSxjQUFBO0FoQmk5Q1I7O0FnQjU4Q0k7RUFDSSxjQUFBO0FoQis4Q1I7O0FnQjE4Q0k7RUFDSSxjQUFBO0FoQjY4Q1I7O0FnQnY4Q0k7O0VBQ0ksY0FBQTtFQUNBLHdEWjBCSTtFWXpCSixnQkFBQTtBaEIyOENSOztBZ0J0OENJO0VBQ0ksa0JBQUE7RUFDQSwyQkFBQTtBaEJ5OENSOztBZ0JwOENJO0VBQ0ksY0FBQTtFQUNBLGtCQUFBO0VBQ0Esb0JBQUE7QWhCdThDUjs7QWdCbjhDQSxvQkFBQTtBQUdJO0VBQ0ksbUJBQUE7RUFDQSxhQUFBO0FoQm84Q1I7QWdCajhDSTtFQUVJLG1CQUFBO0VBQ0EsWUFBQTtFQUNBLGNBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUFBLGlCQUFBO0FoQms4Q1I7QWdCLzdDSTtFQUNJLGlCQUFBO0FoQmk4Q1I7QWdCOTdDSTtFQUNJLGdCQUFBO0FoQmc4Q1I7O0FpQjFoREE7OzZFQUFBO0FBS0k7RUFDSSw4QkFBQTtFQUFBLG1DQUFBO0VBQ0EsU0FBQTtFQUNBLDZCQUFBO0FqQjJoRFI7O0FrQm5pREE7OzZFQUFBO0FBSUE7RUFDSSxxRUFBQTtFQWdCQSxxQkFBQTtBbEJzaERKO0FrQjVoREk7RUFDSSxjQUFBO0VBQ0EsdUJBQUE7RUFDQSxlQUFBO0FsQjhoRFI7O0FrQnhoREEsa0JBQUE7QUFFQTtFQUNJLHFFQUFBO0VBU0EscUJBQUE7QWxCa2hESjtBa0J6aERJOzs7O0VBSUksY0FBQTtBbEIyaERSOztBSzNpREE7OzZFQUFBO0FjbkJBOzs2RUFBQTtBQUtJO0VBQ0ksY0FBQTtFQUNBLFdBQUE7QW5Ca2tEUjs7QW1CN2pESTtFQUNJLGNBQUE7RUFDQSxjQUFBO0VBQ0EsU0FBQTtBbkJna0RSOztBbUIxakRJOztFQUNJLGdCQUFBO0VBQUEsbUJBQUE7QW5COGpEUjs7QW1CempESTtFQUdJLHlCQUFBO0VBQ0Esd0JBQUE7RUFDQSxjQUFBO0VBQ0EsYUFBQTtFQUNBLHdEZjBDSTtFZ0I1RVosMERBQUE7RURxQ1EsbUJBQUE7RUFDQSxTQUFBO0VBQ0Esa0JBQUE7RUFBQSwwQkFBQTtFQUNBLGdCQUFBO0VBQ0EseUJBQUE7RUFDQSxXQUFBO0FuQjBqRFI7O0FvQnBtREE7RUFBQTtJQUFBO0dBQUE7Q0FBQTs7QUFBQTtFQUFBO0lBQUE7R0FBQTtDQUFBO0FENkNJO0VBQ0ksaWZBQUE7RUFDQSxrQ0FBQTtFQUNBLDRCQUFBO0VBQ0Esd0JBQUE7RUFDQSxXQUFBO0VBQ0EsY0FBQTtFQUNBLHNCQUFBO0VBQ0EsMkJBQUE7RUFDQSxvQkFBQTtBbkJ5akRSOztBbUJwakRJO0VBR0kseUJBQUE7RUFDQSw0Q0FBQTtBbkJxakRSO0FtQmxqREk7RUFDSSx3QkFBQTtBbkJvakRSOztBbUIvaURJO0VBR0kseUJBQUE7QW5CZ2pEUjs7QW1CNWlEQTtFQUNJLHlCQUFBO0VBQ0EsNENBQUE7RUFDQSxhQUFBO0VBQ0EsU0FBQTtFQUNBLGdCQUFBO0VBQ0EsaUJBQUE7RUFBQSxxQkFBQTtFQUNBLDRCQUFBO0FuQitpREo7QW1CN2lESTtFQUNJLGNBQUE7RUFDQSw0QkFBQTtBbkIraURSO0FtQjVpREk7RUFDSSxpQkFBQTtBbkI4aURSOztBbUJ6aURJO0VBQ0ksVUFBQTtFQUNBLHFCQUFBO0VBQUEsNEJBQUE7RUFDQSw2QkFBQTtBbkI0aURSO0FtQnppREk7RUFDSSwyQkFBQTtBbkIyaURSOztBbUJ0aURJO0VBQ0ksVUFBQTtFQUNBLDZCQUFBO0FuQnlpRFI7O0FtQnBpREk7RUFDSSxhQUFBO0VBQ0EsZUFBQTtFQUNBLFFBQUE7QW5CdWlEUjtBbUJuaURRO0VBQ0ksYUFBQTtBbkJxaURaO0FtQmxpRFE7RUFDSSxhQUFBO0FuQm9pRFo7O0FtQjloREk7RUFHSSxTQUFBO0FuQitoRFI7QXFCeHFEQTs7NkVBQUE7QUFLSTtFQUNJLHVCQUFBO0FyQndxRFI7O0FxQm5xREk7RUFDSSxjQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7QXJCc3FEUjs7QXFCbHFEQSxvQkFBQTtBQUdJO0VBQ0ksNkJBQUE7RUFBQSxtQ0FBQTtFQUNBLGdCQUFBO0FyQm1xRFI7QXFCaHFESTtFQUNJLGtCQUFBO0FyQmtxRFI7QXFCL3BESTtFQUNJLGdCQUFBO0FyQmlxRFI7QXFCOXBESTtFQUNJLHNCQUFBO0FyQmdxRFI7O0FzQm5zREE7OzZFQUFBO0FBS0k7RUFDSSxtQkFBQTtBdEJvc0RSOztBc0IvckRJO0VBQ0ksaUJBQUE7RUFDQSxtQkFBQTtFQUNBLHNCQUFBO0VBQ0Esb0NBQUE7QXRCa3NEUjtBc0IvckRJO0VBSUksNEJBQUE7RUFDQSxlQUFBO0F0QjhyRFI7O0F1QnZ0REE7OzZFQUFBO0FBSUEsc0JBQUE7QUFHSTtFQUNJLHFCQUFBO0F2QnV0RFI7O0F1Qmx0REk7RUFDSSxnQkFBQTtFQUNBLGNBQUE7RUFDQSxvQkFBQTtFQUNBLHdEbkIyREk7RW1CMURKLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLFNBQUE7RUFDQSxrQkFBQTtFQUNBLHlCQUFBO0VBQ0EsVUFBQTtBdkJxdERSO0F1Qmx0REk7RUFDSSxzQkFBQTtFQUNBLHFCQUFBO0F2Qm90RFI7QXVCanRESTtFQUNJLHFCQUFBO0F2Qm10RFI7QXVCaHRESTtFQUVJLGFBQUE7QXZCaXREUjs7QXVCNXNESTtFQUNJLGFBQUE7QXZCK3NEUjs7QXVCMXNESTtFQUNJLHdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLFNBQUE7RUFDQSxjQUFBO0VBQ0EsZUFBQTtFQUNBLG9CQUFBO0VBQ0EsY0FBQTtFQUNBLG9CQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxVQUFBO0F2QjZzRFI7QXVCMXNESTtFQUNJLFVBQUE7QXZCNHNEUjs7QXVCdnNESTtFQUNJLGFBQUE7RUFDQSxXQUFBO0F2QjBzRFI7QXVCdnNESTtFckJtREEscVNBQUE7RXFCaERJLGNBQUE7RUFDQSxhQUFBO0VBQ0EsMkRuQlRPO0VtQlVQLG1CQUFBO0VBQ0EsOEJBQUE7RUFDQSw2QkFBQTtFQUNBLFdBQUE7QXZCd3NEUjtBdUJyc0RJO0VyQnVDQSxxU0FBQTtBRmlxREo7O0F1Qm5zREEscUJBQUE7QUM5RkE7OzZFQUFBO0FBS0k7RUFDSSxtQkFBQTtFQUNBLGdFQUFBO0VBQ0Esc0JBQUE7RUFDQSw2Q0FBQTtFQUNBLGNBQUE7RUFDQSx1QkFBQTtFQUNBLGVBQUE7RUFDQSxxQkFBQTtBeEJteURSO0F3Qmh5REk7RUFFSSxtQkFBQTtFQUNBLGdFQUFBO0F4Qml5RFI7QXdCOXhESTtFQUNJLG1CQUFBO0VBQ0EsZ0VBQUE7QXhCZ3lEUjtBd0I3eERJO0VBRUksbUJBQUE7RUFDQSxnRUFBQTtBeEI4eERSO0F3QjN4REk7RUFDSSxtQkFBQTtFQUNBLGdFQUFBO0F4QjZ4RFI7QXdCMXhESTtFQUVJLG1CQUFBO0VBQ0EsZ0VBQUE7QXhCMnhEUjtBd0J4eERJO0VBQ0ksbUJBQUE7RUFDQSxnRUFBQTtBeEIweERSO0F3QnZ4REk7RUFFSSxtQkFBQTtFQUNBLGdFQUFBO0F4Qnd4RFI7O0F3Qm54REk7RUFDSSxjQUFBO0VBQ0EsaUJBQUE7RUFDQSw2QkFBQTtBeEJzeERSOztBd0JqeERJO0VBQ0ksY0FBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtBeEJveERSOztBeUJ6MURBOzs2RUFBQTtBQUtJO0VBQ0ksU0FBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0F6QjAxRFI7QXlCdjFESTtFQUNJLFNBQUE7RUFDQSxZQUFBO0VBQ0EsT0FBQTtFQUNBLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLE1BQUE7RUFDQSxXQUFBO0F6QnkxRFI7O0EwQjUyREE7OzZFQUFBO0FBS0k7RUFDSSxjQUFBO0VBQ0EscUJBQUE7RUFDQSx5QkFBQTtBMUI2MkRSO0EwQjEyREk7RUFDSSxZQUFBO0ExQjQyRFI7O0EwQnYyREk7RUFDSSxjQUFBO0VBQ0EsV0FBQTtBMUIwMkRSOztBMkI3M0RBOzs2RUFBQTtBQUlBLDZFQUFBO0FBR0k7RUFDSSxXQUFBO0VBQUEsY0FBQTtFQUFBLFdBQUE7QTNCNjNEUjs7QTJCeDNESTtFQUVJLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSxrQkFBQTtBM0IyM0RSOztBMkJoNERJO0VBQ0ksV0FBQTtFQUFBLGNBQUE7RUFBQSxXQUFBO0EzQiszRFI7O0EyQnQzREk7RUFDSSxXQUFBO0VBQ0Esa0JBQUE7QTNCeTNEUjs7QTJCcDNESTtFQUNJLGNBQUE7QTNCdTNEUjs7QTJCbDNESTtFQUNJLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7RUFDQSxTQUFBO0EzQnEzRFI7QTJCbDNESTtFQUNJLDJCQUFBO0EzQm8zRFI7QTJCajNESTtFQUNJLDBCQUFBO0EzQm0zRFI7O0EyQi8yREEsc0JBQUE7QUFHSTtFQUNJLGFBQUE7RUFDQSxlQUFBO0EzQmczRFI7QTJCNzJESTtFQUNJLFlBQUE7QTNCKzJEUjs7QTJCMzJEQSxrQkFBQTtBQUdJO0VBQ0ksZUFBQTtBM0I0MkRSO0EyQnoyREk7RUFDSSxXQUFBO0EzQjIyRFI7O0EyQnYyREEsNEJBQUE7QUFHSTtFQUNJLFNBQUE7RUFDQSxnQkFBQTtFQUNBLHdEQUFBO0VBQ0Esa0JBQUE7QTNCdzJEUjtBMkJyMkRJO0VBQ0ksbUNBQUE7RUFDQSxtQkFBQTtBM0J1MkRSOztBMkJuMkRBLDBCQUFBO0FBR0k7RUFDSSxZQUFBO0VBQ0EsVUFBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLDJFQUFBO0VBQ0Esa0JBQUE7QTNCbzJEUjtBMkJqMkRJO0VBRUksT0FBQTtFQUNBLFVBQUE7RUFDQSxTQUFBO0VBQ0EseUJBQUE7RUFDQSxtQkFBQTtBM0JrMkRSO0EyQjcxREk7RUFDSSxPQUFBO0VBQ0EsVUFBQTtFQUNBLFNBQUE7RUFDQSx5QkFBQTtFQUNBLG1CQUFBO0EzQisxRFI7O0EyQjMxREEsa0NBQUE7QUFHSTtFQUVJLFVBQUE7RUFDQSxNQUFBO0EzQjIxRFI7QTJCdDFESTtFQUNJLFVBQUE7RUFDQSxNQUFBO0EzQncxRFI7O0EyQnAxREEsa0NBQUE7QUFHSTtFQUNJLFVBQUE7RUFDQSxZQUFBO0VBQ0EsNEVBQUE7QTNCcTFEUjtBMkJsMURJO0VBRUksVUFBQTtFQUNBLFFBQUE7RUFDQSx5QkFBQTtBM0JtMURSO0EyQjkwREk7RUFDSSxVQUFBO0VBQ0EsUUFBQTtFQUNBLHlCQUFBO0EzQmcxRFI7O0EyQjUwREEsMENBQUE7QUFHSTtFQUVJLFdBQUE7RUFDQSxNQUFBO0EzQjQwRFI7QTJCdjBESTtFQUNJLFdBQUE7RUFDQSxNQUFBO0EzQnkwRFI7O0EyQnIwREEsaUJBQUE7QUFHSTtFQUNJLGFBQUE7QTNCczBEUjtBMkJuMERJO0VBQ0ksa0JBQUE7QTNCcTBEUjtBMkJsMERJO0VBQ0ksYUFBQTtBM0JvMERSO0EyQmowREk7RUFDSSxZQUFBO0EzQm0wRFI7QTJCaDBESTtFQUNJLFlBQUE7QTNCazBEUjs7QTJCOXpEQSx5QkFBQTtBQUdJO0VBQ0ksOEJBQUE7QTNCK3pEUjtBMkI1ekRJO0VBQ0ksY0FBQTtBM0I4ekRSOztBMkIxekRBLHdCQUFBO0FBR0k7RUFDSSx1QkFBQTtBM0IyekRSO0EyQnh6REk7RUFDSSxjQUFBO0EzQjB6RFI7O0EyQnR6REEscUJBQUE7QUFHSTtFQUNJLHlCQUFBO0EzQnV6RFI7QTJCcHpESTtFQUNJLGNBQUE7QTNCc3pEUjs7QTJCbHpEQSx1QkFBQTtBQUdJO0VBQ0ksMkJBQUE7QTNCbXpEUjtBMkJoekRJO0VBQ0ksY0FBQTtBM0JrekRSOztBMkI5eURBLHFCQUFBO0FBR0k7RUFDSSxXQUFBO0EzQit5RFI7O0EyQjN5REEsNkVBQUE7QUFFQSxpQkFBQTtBQUdJO0VBQ0ksY0FBQTtFQUNBLDJEdkJ6TU87RXVCME1QLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtFQUNBLGdCQUFBO0VBQ0EseUJBQUE7QTNCMnlEUjtBMkJ4eURJO0VBQ0ksNEJBQUE7QTNCMHlEUjtBMkJ2eURJO0VBQ0ksY0FBQTtFQUNBLHFCQUFBO0EzQnl5RFI7QTJCdHlESTtFQUNJLGNBQUE7QTNCd3lEUjs7QTJCcHlEQSx1QkFBQTtBQUVBO0VBaUNJLFVBQUE7RUF3Q0Esa0JBQUE7RUFZQSxlQUFBO0EzQm90REo7QTJCeHlESTtFQUNJLDJEdkJuT087RXVCb09QLG1CQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5QkFBQTtBM0IweURSO0EyQnZ5REk7RXpCbExBLHFTQUFBO0FGNDlESjtBMkJweURROztFQUNJLDZCQUFBO0VBQ0EsY0FBQTtFQUNBLDZCQUFBO0VBQ0EsNkNBQUE7QTNCdXlEWjtBMkJweURROzs7RUFFSSxjQUFBO0VBQ0EsNkNBQUE7QTNCdXlEWjtBMkJweURROztFQUNJLDBDQUFBO0VBQ0EsNkNBQUE7QTNCdXlEWjtBMkJqeURJO0VBQ0ksbUJBQUE7RUFDQSw2QkFBQTtFQUNBLGNBQUE7RUFDQSxpQkFBQTtBM0JteURSO0EyQmh5REk7RUFDSSwwQkFBQTtBM0JreURSO0EyQi94REk7RUFDSSxrQ0FBQTtBM0JpeURSO0EyQjl4REk7OztFQUdJLDBDQUFBO0EzQmd5RFI7QTJCN3hESTs7RUFFSSxnQkFBQTtFQUNBLGNBQUE7RUFDQSwyQkFBQTtBM0IreERSO0EyQjV4REk7O0VBRUksZ0JBQUE7QTNCOHhEUjtBMkIzeERJOztFQUVJLG1CQUFBO0EzQjZ4RFI7QTJCeHhESTtFQUNJLHVHQUFBO0VBQ0EsY0FBQTtBM0IweERSO0EyQnR4REk7RUFDSSwyQkFBQTtBM0J3eERSO0EyQm54REk7RUFDSSxjQUFBO0EzQnF4RFI7QTJCbHhESTtFQUNJLG1CQUFBO0VBQ0EsU0FBQTtFQUNBLFdBQUE7RUFDQSxXQUFBO0VBQ0EsV0FBQTtFQUFBLGlCQUFBO0VBQ0EsT0FBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtBM0JveERSO0EyQmp4REk7RUFFSSxvQkFBQTtBM0JreERSO0EyQi93REk7RUFFSSxrQkFBQTtBM0JneERSO0EyQjd3REk7RUFFSSxxQkFBQTtBM0I4d0RSOztBMkIxd0RBLHVCQUFBO0FBR0k7RUFDSSx3RHZCMVZJO0V1QjJWSixrQkFBQTtFQUNBLGdCQUFBO0EzQjJ3RFI7QTJCeHdESTtFQUNJLDRCQUFBO0EzQjB3RFI7QTJCdndESTtFQUNJLGNBQUE7RUFDQSxZQUFBO0EzQnl3RFI7O0EyQnJ3REEsbUJBQUE7QUFHSTtFQUNJLGlCQUFBO0EzQnN3RFI7QTJCbndESTtFQUNJLGNBQUE7RUFDQSxZQUFBO0EzQnF3RFI7O0EyQmp3REEsb0JBQUE7QUFHSTtFQUNJLDJEdkIzWE87RXVCNFhQLGNBQUE7RUFDQSxnQkFBQTtBM0Jrd0RSO0EyQi92REk7RXpCelVBLHFTQUFBO0FGMmtFSjtBMkI5dkRJO0VBQ0ksb0JBQUE7RUFBQSx5QkFBQTtBM0Jnd0RSO0EyQjd2REk7RUFDSSxnQkFBQTtFQUFBLG1CQUFBO0EzQit2RFI7QTJCNXZESTs7RUFFSSxrREFBQTtFQUNBLHNCQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7RUFDQSxXQUFBO0VBQUEsY0FBQTtFQUNBLE9BQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7QTNCOHZEUjtBMkIzdkRJO0VBQ0ksU0FBQTtBM0I2dkRSO0EyQjF2REk7RUFDSSxNQUFBO0EzQjR2RFI7QTJCenZESTtFQUNJLHFCQUFBO0EzQjJ2RFI7O0E0QnJ1RUE7OzZFQUFBO0FBSUEsNkNBQUE7QUFLSTtFQUNJLFlBQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7QTVCbXVFUjs7QTRCNXRFSTtFQUNJLGNBQUE7QTVCK3RFUjs7QTRCeHRFSTs7RUFFSSxjQUFBO0VBQ0EsZ0JBQUE7RUFDQSxTQUFBO0VBQ0EsVUFBQTtBNUIydEVSOztBNEJsdEVJO0VBSUksdUJBQUE7RUFDQSxhQUFBO0E1Qmt0RVI7QTRCL3NFSTtFQUVJLFVBQUE7QTVCZ3RFUjtBNEI3c0VJO0VBRUksV0FBQTtBNUI4c0VSO0E0QjNzRUk7RUFFSSxjQUFBO0E1QjRzRVI7QTRCenNFSTtFQUVJLFVBQUE7QTVCMHNFUjtBNEJyc0VJO0VBQ0ksc0JBQUE7QTVCdXNFUjtBNEJsc0VJO0VBQ0ksc0JBQUE7QTVCb3NFUjtBNEJqc0VJO0VBQ0ksUUFBQTtBNUJtc0VSO0E0QmhzRUk7RUFDSSxRQUFBO0E1QmtzRVI7QTRCN3JFSTtFQUNJLFFBQUE7QTVCK3JFUjtBNEI1ckVJO0VBQ0ksUUFBQTtBNUI4ckVSO0E0QnpyRUk7RUFDSSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0E1QjJyRVI7O0E0QnByRUk7RUFDSSxZQUFBO0E1QnVyRVI7O0E0QmhyRUk7RUFDSSxjQUFBO0E1Qm1yRVI7O0E0Qi9xRUE7OzZFQUFBO0FBS0k7RUFDSSxrQkFBQTtBNUJnckVSO0E0QjdxRUk7RUFDSSxtQkFBQTtFQUNBLHFDQUFBO0VBQ0Esa0dBQUE7RUFDQSxhQUFBO0VBQ0Esd0R4QmhFSTtFd0JpRUosaUJBQUE7RUFDQSxZQUFBO0VBQ0EsdUJBQUE7RUFDQSxPQUFBO0VBQ0EsZUFBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxNQUFBO0VBQ0EsV0FBQTtBNUIrcUVSOztBNEJ4cUVJO0VBQ0ksY0FBQTtBNUIycUVSOztBNEJwcUVJO0VBQ0ksZUFBQTtFQUNBLGtCQUFBO0E1QnVxRVI7O0E0QmxxRUk7RUFDSSxtQkFBQTtFQUNBLDZCQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSx1QkFBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSwyQ0FBQTtFQUNBLDBDQUFBO0VBQ0Esc0JBQUE7QTVCcXFFUjtBNEJscUVJO0VBQ0ksVUFBQTtFQUNBLDJCQUFBO0E1Qm9xRVI7QTRCanFFSTtFQUNJLHNDQUFBO0VBQ0EsdUNBQUE7RUFDQSxpQ0FBQTtFQUNBLFdBQUE7RUFDQSxTQUFBO0VBQ0Esa0JBQUE7RUFDQSxTQUFBO0VBQ0EsMkJBQUE7QTVCbXFFUjtBNEJocUVJO0VBQ0ksMkJBQUE7QTVCa3FFUjs7QTRCM3BFSTs7RUFFSSxjQUFBO0VBQ0EscUJBQUE7QTVCOHBFUjtBNEIzcEVJOztFQUVJLHFCQUFBO0E1QjZwRVI7QTRCMXBFSTs7RUFFSSxxQkFBQTtBNUI0cEVSOztBNEJycEVJO0VBQ0ksb0JBQUE7QTVCd3BFUjs7QTRCanBFSTtFQUNJLGNBQUE7QTVCb3BFUjs7QTRCL25FSTtFQUNJLG9CQUFBO0E1QmtvRVI7O0E0QjNuRUk7RUFDSSxxQkFBQTtBNUI4bkVSOztBNEJybkVJO0VBQ0kscUJBQUE7QTVCd25FUjtBNEJubkVJO0VBQ0ksa0JBQUE7QTVCcW5FUjtBNEJsbkVJO0VBSUksZ0JBQUE7RUFDQSxRQUFBO0E1QmluRVI7QTRCNW1FSTtFQUNJLHFCQUFBO0E1QjhtRVI7QTRCem1FSTtFQUNJLG9CQUFBO0E1QjJtRVI7QTRCdG1FSTtFQUVJLHFCQUFBO0E1QnVtRVI7O0E2Qjc1RUE7OzZFQUFBO0FBS0k7RUFDSSxnQkFBQTtFQUNBLFNBQUE7RUFDQSxjQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0VBQ0Esc0JBQUE7RUFDQSxTQUFBO0VBQ0EsVUFBQTtFQUNBLGtCQUFBO0VBQ0EscUJBQUE7QTdCODVFUjs7QThCLzZFQSwwRUFBQTtBQUNBOztDQUFBO0FBR0Esc0JBQUE7QUFDQTtFQUNFLGFBQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsT0FBQTtFQUNBLE1BQUE7RUFDQSxnQkFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7RUFDQSxhQUFBO0VBQ0EsOEJBQUE7RUFDQSw2RUFBQTtFQUNBLG1DQUFBO0VBQ0EsYUFBQTtBOUJrN0VGOztBOEJqN0VFO0VBQ0UsOEJBQUE7RUFDUSxzQkFBQTtBOUJvN0VaOztBOEJuN0VFO0VBQ0UsZUFBQTtBOUJzN0VKOztBOEJwN0VBLGlFQUFBO0FBQ0E7RUFDRSxtR0FBQTtFQUNBLGNBQUE7RUFDQSxvQkFBQTtFQUNBLDhCQUFBO0VBQ0EsK0RBQUE7RUFDUSx1REFBQTtBOUJ1N0VWOztBOEJyN0VBO0VBQ0UsY0FBQTtBOUJ3N0VGOztBOEJ0N0VBO0VBQ0Usc0JBQUE7RUFDQSx1QkFBQTtFQUNBLG9CQUFBO0VBQ0EsZUFBQTtBOUJ5N0VGOztBOEJ2N0VBO0VBQ0Usc0JBQUE7RUFDQSxvQkFBQTtFQUNBLGlCQUFBO0VBQ0EsWUFBQTtBOUIwN0VGOztBOEJ4N0VBO0VBQ0Usc0JBQUE7RUFDQSx3QkFBQTtFQUNBLHFCQUFBO0VBQ0EsZ0JBQUE7QTlCMjdFRjs7QThCejdFQTs7O0NBQUE7QUFJQTtFQUNFLGtCQUFBO0VBQ0EsT0FBQTtFQUNBLE1BQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGdCQUFBO0VBQ0EsVUFBQTtFQUNBLGdDQUFBO0VBQ1Esd0JBQUE7RUFDUixtQ0FBQTtFQUNBLG9CQUFBO0E5QjQ3RUY7O0E4QjE3RUE7RUFDRSxrQkFBQTtFQUNBLE9BQUE7RUFDQSxNQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxnQkFBQTtBOUI2N0VGOztBOEIzN0VBOztFQUVFLHNCQUFBO0VBQ0Esa0JBQUE7RUFDQSxrQkFBQTtFQUNBLE9BQUE7RUFDQSxRQUFBO0VBQ0EsTUFBQTtFQUNBLFNBQUE7QTlCODdFRjs7QThCNTdFQSx5Q0FBQTtBQUNBOztFQUVFLHlCQUFBO0VBQ0Esc0JBQUE7RUFDQSxxQkFBQTtFQUNJLGlCQUFBO0VBQ0osd0NBQUE7RUFDQSwyQkFBQTtBOUIrN0VGOztBOEI3N0VBO0VBQ0Usa0JBQUE7RUFDQSxXQUFBO0VBQ0Esa0NBQUE7RUFDQSw4QkFBQTtFQUNBLDBCQUFBO0VBQ0EsOEJBQUE7RUFDQSx5RUFBQTtFQUNRLHlEQUFBO0E5Qmc4RVY7O0E4Qjk3RUE7RUFDRSxvQkFBQTtFQUNBLDhCQUFBO0VBQ0EsK0RBQUE7RUFDUSx1REFBQTtBOUJpOEVWOztBOEIvN0VBOztFQUVFLHdCQUFBO0VBQ0EsZ0JBQUE7QTlCazhFRjs7QThCaDhFQTs7RUFFRSxtQ0FBQTtBOUJtOEVGOztBOEJqOEVBO0VBQ0Usa0JBQUE7RUFDQSxPQUFBO0VBQ0EsUUFBQTtFQUNBLE1BQUE7RUFDQSxTQUFBO0VBQ0EsZ0JBQUE7QTlCbzhFRjs7QThCbDhFQTtFQUNFLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtBOUJxOEVGOztBOEJuOEVBOzs7Q0FBQTtBQUlBO0VBQ0UsbUNBQUE7QTlCczhFRjs7QThCcDhFQTs7O0NBQUE7QUFJQTtFQUNFLGdCQUFBO0E5QnU4RUY7O0E4QnI4RUE7RUFDRSxzQkFBQTtFQUNBLHVCQUFBO0VBQ0EsT0FBQTtFQUNBLE1BQUE7QTlCdzhFRjs7QThCdDhFQTs7O0NBQUE7QUFJQTtFQUNFLGtCQUFBO0VBQ0EsT0FBQTtFQUNBLFFBQUE7RUFDQSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLFdBQUE7QTlCeThFRjs7QThCdjhFQTtFQUNFLFdBQUE7RUFDQSwwQkFBQTtBOUIwOEVGOztBK0I1bkZBLGdGQUFBO0FBQ0E7Ozs7Ozs7Ozs7O0NBQUE7QUFZQTs7OztFQUFBO0FBS0EsdUJBQUE7QUFDQTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLHdCQUFBO0VBQ0EsY0FBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0VBQ0EsU0FBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0EsZ0NBQUE7RUFDUSx3QkFBQTtFQUNSLHdCQUFBO0VBQ1EsZ0JBQUE7QS9CK25GVjs7QStCOW5GRTtFQUNFLFVBQUE7QS9CaW9GSjs7QStCaG9GRTtFQUNFLGFBQUE7RUFDQSxZQUFBO0EvQm1vRko7O0ErQmxvRkU7RUFDRSxVQUFBO0VBQ0EsU0FBQTtBL0Jxb0ZKOztBK0Jub0ZBLDZGQUFBO0FBQ0E7RUFDRSxVQUFBO0EvQnNvRkY7O0ErQnBvRkE7OztFQUdFLCtDQUFBO0VBQ0EsMkJBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtBL0J1b0ZGOztBK0Jyb0ZBO0VBQ0UsZ0ZBQUE7RUFDQTs7O0lBR0UsdUNBQUE7RS9Cd29GRjs7RStCdm9GQTs7SUFFRSxnQkFBQTtFL0Iwb0ZGO0FBQ0Y7QStCem9GQTtFQUNFLDRCQUFBO0EvQjJvRkY7O0ErQnpvRkE7RUFDRSxnQ0FBQTtBL0I0b0ZGOztBK0Ixb0ZBO0VBQ0UsYUFBQTtBL0I2b0ZGOztBK0Izb0ZBO0VBQ0UsY0FBQTtBL0I4b0ZGOztBK0I1b0ZBO0VBQ0UsNEJBQUE7QS9CK29GRjs7QStCN29GQTtFQUNFLGFBQUE7RUFDQSw0QkFBQTtBL0JncEZGOztBK0I5b0ZBO0VBQ0UsY0FBQTtBL0JpcEZGOztBK0Ivb0ZBO0VBQ0UsNkJBQUE7QS9Ca3BGRjs7QStCaHBGQSwrQkFBQTtBQUNBOztFQUVFLGtCQUFBO0EvQm1wRkY7O0ErQmpwRkE7OztDQUFBO0FBSUE7O0VBRUUsZ0JBQUE7RUFDQSxRQUFBO0VBQ0EsaUJBQUE7RUFDQSxXQUFBO0VBQ0EsYUFBQTtFQUNBLGtCQUFBO0EvQm9wRkY7O0ErQmxwRkE7RUFDRSxPQUFBO0EvQnFwRkY7O0ErQm5wRkE7RUFDRSxRQUFBO0EvQnNwRkY7O0ErQnBwRkE7O0VBRUUsV0FBQTtFQUNBLFNBQUE7RUFDQSxvQ0FBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0VBQ0Esa0JBQUE7QS9CdXBGRjs7QStCcnBGQTtFQUNFLFNBQUE7RUFDQSxpQ0FBQTtBL0J3cEZGOztBK0J0cEZBO0VBQ0UsVUFBQTtFQUNBLGdDQUFBO0EvQnlwRkY7O0ErQnZwRkE7Ozs7RUFBQTtBQUtBOztFQUVFLHlCQUFBO0VBQ0Esc0JBQUE7RUFDQSxxQkFBQTtFQUNJLGlCQUFBO0EvQjBwRk47O0ErQnhwRkE7RUFDRSxjQUFBO0VBQ0EsOEJBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsYUFBQTtFQUNBLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLFVBQUE7RUFDQSwwQ0FBQTtFQUNRLGtDQUFBO0VBQ1IsbUNBQUE7RUFDQSxvQkFBQTtBL0IycEZGOztBK0J6cEZBO0VBQ0UsYUFBQTtBL0I0cEZGOztBK0IxcEZBO0VBQ0UsYUFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxTQUFBO0VBQ0Esa0JBQUE7RUFDQSxjQUFBO0VBQ0EsV0FBQTtFQUNBLFdBQUE7RUFDQSxpREFBQTtFQUNRLHlDQUFBO0VBQ1Isa0NBQUE7RUFDSSw4QkFBQTtFQUNJLDBCQUFBO0VBQ1IsMkNBQUE7RUFDUSwyQkFBQTtFQUNSLG1DQUFBO0VBQ0Esc0JBQUE7QS9CNnBGRjs7QStCNXBGRTtFQUNFLGNBQUE7RUFDQSxpQkFBQTtFQUNBLFdBQUE7RUFDQSxxQkFBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtBL0IrcEZKOztBK0I5cEZJO0VBQ0UscUJBQUE7RUFDQSxXQUFBO0EvQmlxRk47O0ErQmhxRkk7RUFDRSw4Q0FBQTtFQUNBLDBCQUFBO0EvQm1xRk47O0ErQmxxRkk7RUFDRSwwQkFBQTtBL0JxcUZOOztBK0JucUZBO0VBQ0UsVUFBQTtBL0JzcUZGOztBK0JycUZFO0VBQ0UsZ0NBQUE7RUFDSSw0QkFBQTtFQUNJLHdCQUFBO0EvQndxRlo7O0ErQnRxRkEsa0RBQUE7QUFDQTtFQUNFLGtCQUFBO0EvQnlxRkY7O0ErQnZxRkE7RUFDRSxXQUFBO0VBQ0EsY0FBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0Esa0JBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLDZCQUFBO0VBQ0EseUJBQUE7RUFDQSw0QkFBQTtFQUNBLHlCQUFBO0VBQ0Esb0JBQUE7QS9CMHFGRjs7QStCeHFGQTtFQUNFLG1CQUFBO0VBQ0EsV0FBQTtBL0IycUZGOztBK0IxcUZFO0VBQ0UsNEJBQUE7QS9CNnFGSjs7QStCM3FGQTtFQUNFLG1CQUFBO0VBQ0EsV0FBQTtBL0I4cUZGOztBK0I1cUZBO0VBQ0UsZ0JBQUE7RUFDQSxjQUFBO0EvQitxRkY7O0ErQjdxRkE7RUFDRSxnQkFBQTtBL0JnckZGOztBK0I5cUZBOzs7O0VBQUE7QUFLQTtFQUNFLGtCQUFBO0VBQ0EsT0FBQTtFQUNBLE1BQUE7RUFDQSxZQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0EsV0FBQTtFQUNBLGFBQUE7RUFDQSxlQUFBO0EvQmlyRkY7O0ErQi9xRkE7Ozs7RUFBQTtBQUtBO0VBQ0Usa0JBQUE7RUFDQSxPQUFBO0VBQ0EsU0FBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtBL0JrckZGOztBK0JqckZFO0VBQ0UsZUFBQTtFQUNBLFdBQUE7QS9Cb3JGSjs7QStCbHJGQTtFQUNFLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsZUFBQTtFQUNBLGFBQUE7RUFDQSxpQkFBQTtFQUNBLFdBQUE7QS9CcXJGRjs7QStCbnJGQTtFQUNFLGFBQUE7QS9Cc3JGRjs7QStCcHJGQSxzRUFBQTtBQUNBO0VBQ0Usa0JBQUE7QS9CdXJGRjs7QStCcnJGQTs7Ozs7O0VBQUE7QUFPQTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxNQUFBO0VBQ0EsU0FBQTtFQUNBLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLDBDQUFBO0VBQ1Esa0NBQUE7RUFDUixvQkFBQTtFQUNBLGNBQUE7QS9Cd3JGRjs7QStCdHJGQTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtBL0J5ckZGOztBK0J2ckZBO0VBQ0UsVUFBQTtBL0IwckZGOztBK0J6ckZFO0VBQ0UsNkRBQUE7RUFDQSw0Q0FBQTtBL0I0ckZKOztBK0IxckZBO0VBQ0UsVUFBQTtBL0I2ckZGOztBK0I1ckZFO0VBQ0Usa0RBQUE7RUFDUSwwQ0FBQTtBL0IrckZaOztBK0I5ckZFO0VBQ0UsNkVBQUE7RUFDUSxxRUFBQTtBL0Jpc0ZaOztBK0IvckZBO0VBQ0UsZ0JBQUE7RUFDQSxhQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtBL0Jrc0ZGOztBK0Joc0ZBO0VBQ0U7OztHQUFBO0VBSUEsa0JBQUE7RUFDQSxVQUFBO0VBQ0EsWUFBQTtFQUNBLGdCQUFBO0EvQm1zRkY7O0ErQmpzRkE7RUFDRSw4QkFBQTtFQUNRLHNCQUFBO0VBQ1IsV0FBQTtFQUNBLFlBQUE7RUFDQSxzQkFBQTtFQUNBLGtCQUFBO0VBQ0EsOEJBQUE7RUFDQSxnQ0FBQTtFQUNBLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxnQkFBQTtFQUNBLFNBQUE7QS9Cb3NGRjs7QStCbHNGQTtFQUNFO0lBQ0Usa0JBQUE7SUFDQSxVQUFBO0lBQ0EsU0FBQTtJQUNBLFNBQUE7SUFDQSxZQUFBO0UvQnFzRkY7QUFDRjtBK0Jwc0ZBO0VBQ0U7SUFDRSwrQkFBQTtJQUNRLHVCQUFBO0UvQnNzRlY7RStCcnNGQTtJQUNFLGlDQUFBO0lBQ1EseUJBQUE7RS9CdXNGVjtBQUNGO0ErQnRzRkE7RUFDRTtJQUNFLCtCQUFBO0lBQ1EsdUJBQUE7RS9Cd3NGVjtFK0J2c0ZBO0lBQ0UsaUNBQUE7SUFDUSx5QkFBQTtFL0J5c0ZWO0FBQ0Y7QStCeHNGQTtFQUNFO0lBQ0UsNEJBQUE7SUFDUSxvQkFBQTtFL0Iwc0ZWO0UrQnpzRkE7SUFDRSxrQ0FBQTtJQUNRLDBCQUFBO0UvQjJzRlY7RStCMXNGQTtJQUNFLDRCQUFBO0lBQ1Esb0JBQUE7RS9CNHNGVjtBQUNGO0ErQjNzRkE7RUFDRTtJQUNFLDRCQUFBO0lBQ1Esb0JBQUE7RS9CNnNGVjtFK0I1c0ZBO0lBQ0Usa0NBQUE7SUFDUSwwQkFBQTtFL0I4c0ZWO0UrQjdzRkE7SUFDRSw0QkFBQTtJQUNRLG9CQUFBO0UvQitzRlY7QUFDRjtBK0I5c0ZBOzs7O0VBQUE7QUFLQSx1QkFBQTtBQUNBO0VBQ0UsNEJBQUE7RUFDQSxtQkFBQTtFQUNBLFVBQUE7RUFDQSxhQUFBO0EvQmd0RkY7O0ErQjlzRkEsc0RBQUE7QUFDQTtFQUNFLGtCQUFBO0VBQ0EsT0FBQTtFQUNBLE1BQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtBL0JpdEZGOztBK0Ivc0ZBOzs7O0VBSUUsbUNBQUE7RUFDQSxvQkFBQTtFQUNBLCtEQUFBO0VBQ1EsdURBQUE7QS9Ca3RGVjs7QStCaHRGQSxtRkFBQTtBQUNBOztFQUVFLG1CQUFBO0EvQm10RkY7O0ErQmp0RkE7O0VBRUUsb0NBQUE7QS9Cb3RGRjs7QStCbHRGQSxpR0FBQTtBQUNBOztFQUVFLG9DQUFBO0EvQnF0RkY7O0ErQm50RkEscUdBQUE7QUFDQTtFQUNFLFVBQUE7QS9Cc3RGRjs7QStCcHRGQTs7RUFFRSxVQUFBO0EvQnV0RkY7O0ErQnJ0RkE7OztDQUFBO0FBSUE7Ozs7RUFJRSx5REFBQTtFQUNBLGNBQUE7QS9Cd3RGRjs7QStCdHRGQSw4RUFBQTtBQUNBOzs7RUFHRSxhQUFBO0EvQnl0RkY7O0ErQnZ0RkE7RUFDRSx3QkFBQTtBL0IwdEZGOztBK0J4dEZBO0VBQ0UsZ0JBQUE7QS9CMnRGRjs7QWdDMXJHQTs7NkVBQUE7QUFJQSw2Q0FBQTtBQVVJO0VBQ0ksZUFBQTtBaENtckdSOztBZ0M1cUdJOzs7RUFDSSxvRUFBQTtBaENpckdSOztBZ0MzcUdJOztFQUNJLGdCQUFBO0FoQytxR1I7O0FnQzNxR0E7RUFDSTs7O0lBR0ksMHREQUFBO0VoQzhxR047O0VnQzNxR0U7O0lBRUksZ0JBQUE7RWhDOHFHTjtBQUNGO0FnQzFxR0k7RUFDSSxpRUFBQTtBaEM0cUdSOztBaUM3dEdBOzs2RUFBQTtBQUtJO0VBQ0ksbUJBQUE7RUFDQSw4Q0FBQTtFQUNBLGNBQUE7RUFDQSw4QkFBQTtFQUNBLHFCQUFBO0FqQzh0R1I7QWlDM3RHSTtFQUNJLGFBQUE7RUFDQSxvQkFBQTtBakM2dEdSO0FpQzF0R0k7RUFDSSxjQUFBO0FqQzR0R1I7O0FpQ3Z0R0k7RUFDSSxtQkFBQTtFQUNBLGNBQUE7RUFDQSxjQUFBO0VBQ0EsU0FBQTtFQUNBLDBCQUFBO0FqQzB0R1I7O0FpQ3J0R0k7RUFDSSxtQkFBQTtFQUNBLGNBQUE7RUFDQSxhQUFBO0VBQ0EsZ0JBQUE7RUFDQSwwQkFBQTtBakN3dEdSOztBaUNudEdJO0VBQ0ksY0FBQTtFQUNBLDJCQUFBO0VBQ0EsZUFBQTtBakNzdEdSOztBa0N2d0dBOzs7Ozs7Ozs7O0VBQUE7QUFZQTtFQUNJLG1CQUFBO0VBQ0Esc0JBQUE7RUFDQSxhQUFBO0VBQ0EsWUFBQTtFQUNBLHVCQUFBO0VBQ0EsWUFBQTtFQUNBLGFBQUE7RUFDQSxlQUFBO0VBQ0EsV0FBQTtFQUNBLDREQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0VBQ0EsZUFBQTtBbEN5d0dKOztBa0N0d0dBO0VBQ0ksT0FBQTtFQUNBLE1BQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0FsQ3l3R0o7O0FrQ3R3R0E7RUFDSSw4QkFBQTtFQUNBLFNBQUE7RUFDQSxZQUFBO0VBQ0EsT0FBQTtFQUNBLFVBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0VBQ0EsTUFBQTtFQUNBLHlCQUFBO0VBQ0EsV0FBQTtFQUNBLFVBQUE7QWxDeXdHSjs7QWtDdHdHQTtFQUNJLFVBQUE7QWxDeXdHSjs7QWtDdHdHQTtFQUNJLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSw0Q0FBQTtFQUNBLHNCQUFBO0VBQ0EsY0FBQTtFQUNBLHVCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxrQkFBQTtFQUNBLDBCQUFBO0VBQ0Esc0RBQUE7RUFDQSxVQUFBO0FsQ3l3R0o7O0FrQ3R3R0E7RUFDSSxVQUFBO0VBQ0EseUJBQUE7QWxDeXdHSjs7QWtDdHdHQTtFQUNJLHl3QkFBQTtFQUNBLFNBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxvQkFBQTtFQUNBLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLFdBQUE7QWxDeXdHSjs7QWtDdHdHQTtFQUNJLHFUQUFBO0VBQ0EsZ0JBQUE7QWxDeXdHSjs7QWtDdHdHQTtFQUNJLG1CQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7RUFDQSxXQUFBO0FsQ3l3R0o7O0FrQ3R3R0E7RUFDSSxrQkFBQTtBbEN5d0dKOztBa0N0d0dBO0VBQ0ksZUFBQTtFQUNBLGdCQUFBO0FsQ3l3R0o7O0FrQ3R3R0E7RUFDSSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtBbEN5d0dKOztBa0N0d0dBO0VBQ0ksbUJBQUE7RUFDQSxhQUFBO0VBQ0EsZUFBQTtFQUNBLHVCQUFBO0VBQ0EsU0FBQTtBbEN5d0dKOztBa0N0d0dBO0VBQ0ksaUJBQUE7RUFDQSxXQUFBO0FsQ3l3R0o7O0FtQ3A0R0E7OzZFQUFBO0FDRkE7RUFFRTtJQUNJLDJCQUFBO0lBQ0EsVUFBQTtFcEMyNEdKO0VvQ3g0R0E7SUFDRSxVQUFBO0VwQzA0R0Y7RW9DdjRHQTtJQUNFLDRCQUFBO0lBQ0EsVUFBQTtFcEN5NEdGO0FBQ0Y7QW9DdDRHQTtFQUNFLG1HQUFBO0FwQ3c0R0Y7O0FvQ3I0R0E7RUFDRSwyTEFBQTtBcEN3NEdGOztBb0NyNEdBO0VBQ0Usa0dBQUE7QXBDdzRHRjs7QW9DcjRHQTtFQUNFLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxzQkFBQTtFQUNBLHNCQUFBO0VBQ0EsWUFBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtFQUNBLHdCQUFBO0VBQ0EsVUFBQTtFQUNBLDhCQUFBO0VBQ0Esa0JBQUE7RUFDQSw0QkFBQTtBcEN3NEdGOztBb0NyNEdBO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxvQkFBQTtBcEN3NEdGOztBb0NyNEdBO0VBQ0UsZUFBQTtFQUNBLFdBQUE7RUFDQSxlQUFBO0FwQ3c0R0Y7O0FvQ3I0R0E7RUFDSSxZQUFBO0FwQ3c0R0o7O0FvQ3I0R0E7RUFDRSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0VBQ0Esd0JBQUE7RUFDQSxrQ0FBQTtFQUNBLDRCQUFBO0VBQ0QsaTdEQUFBO0FwQ3c0R0Q7O0FvQ3I0R0E7RUFDRSxXQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtFQUNBLGtCQUFBO0VBQ0EsNEJBQUE7RUFDRCxpeENBQUE7RUFDQyxVQUFBO0VBQ0Esc0JBQUE7QXBDdzRHRjs7QW9DcjRHQTtFQUNFLFVBQUE7QXBDdzRHRjs7QW9DcjRHQTtFQUNFLHlDQUFBO0VBQ0EsNEJBQUE7QXBDdzRHRjs7QW9DcjRHQTtFQUNFLHNCQUFBO0VBQ0Esd0NBQUE7QXBDdzRHRjs7QW9DcjRHQTtFQUNDLGk2REFBQTtBcEN3NEdEOztBb0NyNEdBO0VBQ0UsaXJDQUFBO0FwQ3c0R0Y7O0FvQ3I0R0E7RUFDRSxXQUFBO0FwQ3c0R0Y7O0FxQzEvR0E7OzZFQUFBO0FBSUEsNkNBQUE7QUFTSTtFQUNJLGdCQUFBO0FyQ28vR1I7O0FzQ2xnSEE7OzZFQUFBO0FBS0k7RUFDSSx3QkFBQTtBdENtZ0hSOztBc0M5L0dJO0VBQ0ksa0JBQUE7QXRDaWdIUjs7QXNDNS9HSTtFQUNJLGNBQUE7RUFDQSxTQUFBO0VBQ0Esa0JBQUE7QXRDKy9HUjs7QXNDMS9HSTtFQUNJLGdCQUFBO0VBQ0EsV0FBQTtFQUFBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7RUFDQSxTQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLFVBQUE7RUFBQSxlQUFBO0VBQ0EsUUFBQTtFQUFBLGFBQUE7RUFDQSx1QkFBQTtBdEM2L0dSO0FzQzEvR0k7RUFFSSxnQkFBQTtFQUNBLGNBQUE7QXRDMi9HUjs7QXVDcGlIQTs7NkVBQUE7QUFLSTtFQUNJLG1CQUFBO0VBQ0EseUJBQUE7RUFBQSwrQkFBQTtFQUNBLHNCQUFBO0VBQ0EsY0FBQTtFQUNBLDJEbkMrRE87RW1DOURQLGNBQUE7RUFDQSxnQkFBQTtFQUNBLFlBQUE7RUFDQSxxQkFBQTtFQUNBLGVBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0F2Q3FpSFI7QXVDbGlISTtFQUNJLFlBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7QXZDb2lIUjs7QXdDNWpIQTs7NkVBQUE7QUFLSTtFQUNJLFNBQUE7RUFDQSxlQUFBO0F4QzZqSFI7O0F3Q3hqSEk7RUFDSSxjQUFBO0VBQ0EsV0FBQTtBeEMyakhSOztBd0N0akhJO0VBQ0ksY0FBQTtFQUNBLHdEcENxREk7RW9DcERKLGNBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0VBQ0EsMEJBQUE7QXhDeWpIUjs7QUszaUhBOzs2RUFBQTtBb0N2Q0E7OzZFQUFBO0FBTUk7O0VBQ0ksbUJBQUE7RUFDQSxpQkFBQTtFQUNBLHdDQUFBO0VBQ0EsMkJBQUE7RUFDQSxXQUFBO0F6Q3NsSFI7O0F5Q2psSEk7RUFDSSxrQkFBQTtBekNvbEhSOztBeUMva0hJO0VBQ0ksNEVBQUE7RUFDQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSxpQkFBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtBekNrbEhSO0F5Qy9rSEk7RUFDSSxhQUFBO0VBQ0EsY0FBQTtFQUNBLHNCQUFBO0F6Q2lsSFI7QXlDOWtISTtFQUNJLGNBQUE7QXpDZ2xIUjs7QTBDdG5IQTs7NkVBQUE7QUFLSTtFeENnRkEsa0JBQUE7QUZ3aUhKO0EwQ3BuSEk7RUFDSSxtQkFBQTtFQUNBLGFBQUE7QTFDc25IUjtBMENubkhJO0VBQ0ksY0FBQTtBMUNxbkhSOztBMENobkhJO0VBQ0ksY0FBQTtFQUNBLGdCQUFBO0VBQUEsb0JBQUE7QTFDbW5IUjs7QTBDOW1ISTtFQUNJLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUNBLFVBQUE7QTFDaW5IUjtBRXJpSEk7RXdDeEVJO0lBQ0ksaUJBQUE7RTFDZ25IVjtFMEM3bUhNO0lBQ0ksa0JBQUE7SUFDQSxnQkFBQTtJQUNBLGNBQUE7RTFDK21IVjtBQUNGO0EwQzVtSEk7RUFDSSxnQkFBQTtBMUM4bUhSOztBMEN6bUhJO0VBQ0ksbUJBQUE7RUFDQSxhQUFBO0VBQ0EsY0FBQTtFQUNBLGdCQUFBO0VBQ0EsYUFBQTtFQUFBLGtCQUFBO0ExQzRtSFI7QUUxakhJO0V3Q3hESjtJQVVRLHNDQUFBO0lBQ0Esd0JBQUE7RTFDNG1ITjtBQUNGO0EwQzFtSEk7RUFDSSxlQUFBO0VBQUEsZUFBQTtFQUNBLG1CQUFBO0ExQzRtSFI7O0EwQ3ZtSEk7RUFDSSxhQUFBO0VBQUEsa0JBQUE7QTFDMG1IUjtBMEN2bUhJO0VBQ0ksMkJBQUE7QTFDeW1IUjs7QTJDdnJIQTs7NkVBQUE7QUFLSTtFekNnRkEsa0JBQUE7RUFDQSxVQUFBO0FGeW1ISjtBMkN0ckhJO0VBQ0ksdUJBQUE7RUFBQSxvQ0FBQTtBM0N3ckhSOztBMkNuckhJO0VBQ0ksY0FBQTtFQUNBLGdCQUFBO0VBQUEsb0JBQUE7QTNDc3JIUjs7QTJDanJISTtFQUNJLFdBQUE7RUFDQSxrQkFBQTtBM0NvckhSO0EyQ2pySEk7RUFDSSxPQUFBO0VBQ0Esa0JBQUE7RUFDQSxNQUFBO0VBQ0EsY0FBQTtBM0NtckhSOztBMkM5cUhJO0VBQ0ksaUJBQUE7QTNDaXJIUjs7QTRDdHRIQTs7NkVBQUE7QUFPSTtFQUNJLDZGQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7RUFDQSwrQkFBQTtFQUNBLGdCQUFBO0E1Q3F0SFI7O0E0Q2h0SEk7RUFDSSxxQkFBQTtBNUNtdEhSOztBNEM5c0hJO0VBQ0ksY0FBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0E1Q2l0SFI7O0E0QzVzSEk7RTFDc0RBLGtCQUFBO0VBQ0EsVUFBQTtBRjBwSEo7QTRDN3NISTtFQUNJLHlCQUFBO0E1QytzSFI7O0E0QzNzSEEsbUJBQUE7QUFHSTtFQUNJLGdCQUFBO0VBQ0EsYUFBQTtFQUNBLDhCQUFBO0VBQ0EsWUFBQTtFQUNBLGVBQUE7RUFDQSxXQUFBO0VBQ0EsNERBQUE7RUFDQSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxlQUFBO0E1QzRzSFI7QTRDenNISTtFQUNJLHdGQUFBO0VBQ0EsWUFBQTtFQUNBLFNBQUE7RUFDQSxjQUFBO0VBQ0EsNEJBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSw4QkFBQTtFQUNBLDJCQUFBO0VBQ0EsYUFBQTtFQUNBLFVBQUE7QTVDMnNIUjtBNEN4c0hJO0VBQ0ksd0JBQUE7RUFDQSxxQkFBQTtFQUNBLGdCQUFBO0VBQ0EsOEJBQUE7RUFDQSxTQUFBO0VBQ0EsV0FBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0VBQ0EsWUFBQTtFQUNBLFlBQUE7RUFDQSxTQUFBO0VBQ0EsVUFBQTtFQUNBLFVBQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7RUFDQSwyRUFBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLFVBQUE7QTVDMHNIUjtBNEN2c0hJO0VBQ0ksT0FBQTtFQUNBLE1BQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0E1Q3lzSFI7QTRDdHNISTtFQUNJLHdCQUFBO0E1Q3dzSFI7QTRDcnNISTtFQUNJLE9BQUE7RUFDQSxVQUFBO0VBQ0EsTUFBQTtFQUNBLHlCQUFBO0VBQ0EsbUJBQUE7QTVDdXNIUjtBNENwc0hJO0VBQ0ksZUFBQTtBNUNzc0hSOztBNkN0ekhBOzs2RUFBQTtBQUtJO0UzQ2dGQSxrQkFBQTtFQUNBLFVBQUE7QUZ3dUhKO0E2Q3J6SEk7RUFDSSxzRUFBQTtFQUNBLHNCQUFBO0VBQUEsMkJBQUE7RUFDQSx1QkFBQTtFQUFBLHlCQUFBO0VBQ0EsZ0JBQUE7RUFBQSxvQkFBQTtFQUNBLGlCQUFBO0VBQUEscUJBQUE7RUFDQSxXQUFBO0E3Q3V6SFI7QTZDcHpISTtFQUVJLCtCQUFBO0VBQ0EsNEJBQUE7RUFDQSxXQUFBO0VBQ0EsY0FBQTtFQUNBLFlBQUE7RUFBQSxZQUFBO0VBQ0EsT0FBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLFVBQUE7QTdDcXpIUjtBNkNsekhJO0VBQ0ksNERBQUE7RUFDQSxZQUFBO0E3Q296SFI7QTZDanpISTtFQUNJLCtEQUFBO0VBQ0EsU0FBQTtBN0NtekhSOztBNkM5eUhJO0VBQ0ksY0FBQTtFQUNBLGdCQUFBO0VBQUEsb0JBQUE7RUFDQSxrQkFBQTtFQUNBLFVBQUE7QTdDaXpIUjs7QTZDNXlISTtFQUNJLGNBQUE7RUFDQSxnQkFBQTtFQUFBLG9CQUFBO0VBQ0EsYUFBQTtFQUFBLGlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQ0FBQTtBN0MreUhSO0E2QzN5SFE7RUFDSSxxRkFBQTtFQUNBLFlBQUE7RUFBQSxnQkFBQTtFQUNBLE9BQUE7RUFDQSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxXQUFBO0VBQ0EsVUFBQTtBN0M2eUhaO0E2QzF5SFE7RUFFSSxrQ0FBQTtFQUNBLDRCQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7RUFDQSxZQUFBO0VBQUEsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxXQUFBO0VBQUEsZUFBQTtBN0MyeUhaO0E2Q3h5SFE7RUFDSSxxRUFBQTtFQUNBLE9BQUE7QTdDMHlIWjtBNkN2eUhRO0VBQ0ksc0VBQUE7RUFDQSxRQUFBO0E3Q3l5SFo7QTZDcHlIUTtFQUNJLFlBQUE7RUFBQSxnQkFBQTtFQUNBLE9BQUE7RUFDQSxrQkFBQTtFQUNBLFNBQUE7RUFBQSxhQUFBO0VBQ0EsV0FBQTtFQUNBLFVBQUE7QTdDc3lIWjtBNkNueUhRO0VBRUksa0NBQUE7RUFDQSwyQkFBQTtFQUNBLFdBQUE7RUFDQSxjQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLFdBQUE7RUFBQSxlQUFBO0E3Q295SFo7QTZDanlIUTtFQUNJLHdFQUFBO0VBQ0EsT0FBQTtBN0NteUhaO0E2Q2h5SFE7RUFDSSx5RUFBQTtFQUNBLFFBQUE7QTdDa3lIWjtBNkM3eEhRO0VBQ0ksd0ZBQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUFBLGdCQUFBO0VBQ0EsT0FBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLFVBQUE7QTdDK3hIWjtBNkM1eEhRO0VBRUksa0NBQUE7RUFDQSw0QkFBQTtFQUNBLFdBQUE7RUFDQSxjQUFBO0VBQ0EsWUFBQTtFQUFBLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSxNQUFBO0VBQ0EsV0FBQTtFQUFBLGVBQUE7QTdDNnhIWjtBNkMxeEhRO0VBQ0ksd0VBQUE7RUFDQSxPQUFBO0E3QzR4SFo7QTZDenhIUTtFQUNJLHlFQUFBO0VBQ0EsUUFBQTtBN0MyeEhaOztBOEN4N0hBOzs2RUFBQTtBQUtJO0U1Q2dGQSxrQkFBQTtFQUNBLFVBQUE7QUYwMkhKO0E4Q3Y3SEk7RUFDSSxzRUFBQTtFQUNBLHVCQUFBO0VBQUEsNkJBQUE7RUFDQSxnQkFBQTtFQUFBLG9CQUFBO0VBQ0EsdUJBQUE7RUFBQSwrQkFBQTtFQUNBLFdBQUE7QTlDeTdIUjtBOEN0N0hJO0VBRUksK0JBQUE7RUFDQSw0QkFBQTtFQUNBLFdBQUE7RUFDQSxjQUFBO0VBQ0EsWUFBQTtFQUFBLFlBQUE7RUFDQSxPQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0VBQ0EsVUFBQTtBOUN1N0hSO0E4Q3A3SEk7RUFDSSw0REFBQTtFQUNBLFlBQUE7QTlDczdIUjtBOENuN0hJO0VBQ0ksK0RBQUE7RUFDQSxTQUFBO0E5Q3E3SFI7O0E4Q2g3SEk7RUFDSSxrRkFBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUFBLG9CQUFBO0VBQ0Esa0JBQUE7RUFDQSxVQUFBO0E5Q203SFI7QThDaDdISTtFQUVJLCtCQUFBO0VBQ0EsNEJBQUE7RUFDQSxXQUFBO0VBQ0EsY0FBQTtFQUNBLGFBQUE7RUFBQSxlQUFBO0VBQ0EsT0FBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLFVBQUE7QTlDaTdIUjtBOEM5NkhJO0VBQ0ksd0VBQUE7RUFDQSxZQUFBO0E5Q2c3SFI7QThDNzZISTtFQUNJLDJFQUFBO0VBQ0EsU0FBQTtBOUMrNkhSOztBOEMxNkhJO0VBQ0ksc0JBQUE7RUFBQSxpQ0FBQTtFQUNBLGtCQUFBO0VBQ0EsVUFBQTtBOUM2NkhSOztBOEN4NkhJO0VBQ0ksbUJBQUE7RUFDQSxzQkFBQTtFQUFBLGlDQUFBO0VBQ0Esa0JBQUE7QTlDMjZIUjtBOEN4NkhJO0VBQ0ksOEVBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7RUFDQSxXQUFBO0VBQUEsaUJBQUE7RUFDQSxPQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0E5QzA2SFI7O0E4Q3I2SEk7RUFDSSxTQUFBO0E5Q3c2SFI7QThDcjZISTtFQUNJLGNBQUE7RUFDQSxjQUFBO0VBQ0EsZUFBQTtBOUN1NkhSOztBK0NwaElBOzs2RUFBQTtBQUtJO0U3Q2dGQSxrQkFBQTtFQUNBLFVBQUE7QUZzOEhKO0ErQ25oSUk7RUFDSSw4RUFBQTtFQUNBLGtCQUFBO0VBQUEsMkJBQUE7QS9DcWhJUjtBK0NsaElJO0VBQ0ksMEVBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7RUFDQSxZQUFBO0VBQUEsZUFBQTtFQUNBLE9BQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7QS9Db2hJUjs7QStDL2dJSTtFQUNJLGNBQUE7RUFDQSxvQkFBQTtFQUFBLHdCQUFBO0EvQ2toSVI7O0ErQzdnSUk7RUFDSSxjQUFBO0VBQ0EsaUJBQUE7QS9DZ2hJUjs7QStDM2dJSTtFQUNJLDJEM0MrQk87RTJDOUJQLGtCQUFBO0EvQzhnSVI7QStDM2dJSTtFQUNJLFNBQUE7RUFDQSw4Q0FBQTtFQUFBLG9EQUFBO0VBQ0EseURBQUE7QS9DNmdJUjtBK0MxZ0lJO0VBQ0ksY0FBQTtFQUNBLGlCQUFBO0EvQzRnSVI7QStDemdJSTtFQUNJLGdCQUFBO0EvQzJnSVI7QStDeGdJSTtFQUNJLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxjQUFBO0EvQzBnSVI7O0FFaDlISTtFOEMxSEo7OytFQUFBO0VBSUE7OytFQUFBO0FoRCtrSUE7QUV6OUhJO0UrQzFISjs7K0VBQUE7RUFJQTs7K0VBQUE7QWpEdWxJQTtBRWorSEk7RWdEMUhKOzsrRUFBQTtFQ0FBOzsrRUFBQTtFQUtJO0lBQ0ksVUFGSztFbkRpbUlYOztFbURobUlFO0lBQ0ksVUFGSztFbkRxbUlYOztFbURwbUlFO0lBQ0ksVUFGSztFbkR5bUlYOztFbUR4bUlFO0lBQ0ksVUFGSztFbkQ2bUlYOztFbUQ1bUlFO0lBQ0ksVUFGSztFbkRpbklYOztFbURobklFO0lBQ0ksVUFGSztFbkRxbklYOztFbURwbklFO0lBQ0ksVUFGSztFbkR5bklYOztFbUR4bklFO0lBQ0ksVUFGSztFbkQ2bklYOztFbUQ1bklFO0lBQ0ksV0FGSztFbkRpb0lYOztFbURob0lFO0lBQ0ksV0FGSztFbkRxb0lYOztFbURwb0lFO0lBQ0ksV0FGSztFbkR5b0lYOztFa0R2b0lGOzsrRUFBQTtFRU5BOzsrRUFBQTtFQUtJO0lBQ0ksdUJBQUE7SUFDQSx3QkFBQTtFcERpcElOOztFb0Q1b0lFO0lBQ0ksUUFBQTtFcEQrb0lOO0VvRDVvSUU7SUFDSSxRQUFBO0VwRDhvSU47RW9EM29JRTtJQUNJLFFBQUE7RXBENm9JTjs7RW9EeG9JRTtJQUNJLGVBQUE7SUFDQSxnQkFBQTtFcEQyb0lOOztFb0R0b0lFO0lBQ0kscUNBQUE7SUFDQSxlQUFBO0lBQ0Esc0JBQUE7RXBEeW9JTjs7RXFEN3FJRjs7K0VBQUE7RUFLSTtJQUNJLGVBQUE7RXJEOHFJTjs7RXNEcHJJRjs7K0VBQUE7RUFLSTtJQUNJLHFCQUFBO0lBQ0EsdUJBQUE7SUFDQSx3QkFBQTtFdERxcklOOztFc0RocklFO0lBQ0ksNEJBQUE7SUFDQSw2QkFBQTtJQUNBLGdCQUFBO0V0RG1ySU47O0V1RG5zSUY7OytFQUFBO0VBS0k7SUFDSSxpQkFBQTtFdkRvc0lOO0FBQ0Y7QUVqbElJO0VzRDFISjs7K0VBQUE7RUFJQTs7K0VBQUE7QXhEK3NJQTtBRXpsSUk7RXVEMUhKOzsrRUFBQTtFQUlBOzsrRUFBQTtFQ0pBOzsrRUFBQTtFQUtJO0lBQ0ksY0FBQTtFMUQwdElOOztFMERydElFO0lBQ0ksOERBQUE7RTFEd3RJTjtFMERydElFO0lBQ0ksa0VBQUE7RTFEdXRJTjtFMERwdElFO0lBQ0kscUVBQUE7RTFEc3RJTjs7RTBEanRJRTtJQUNJLHFDQUFBO0UxRG90SU47O0UwRC9zSUU7SUFDSSxnQkFBQTtJQUNBLHFDQUFBO0lBQ0EsZ0JBQUE7RTFEa3RJTjtFMEQvc0lFO0lBQ0ksYUFBQTtFMURpdElOO0FBQ0Y7QUU5bklJO0V5RDFISjs7K0VBQUE7RUFJQTs7K0VBQUE7QTNENHZJQTtBRXRvSUk7RTBEMUhKOzsrRUFBQTtFQUlBOzsrRUFBQTtBNURvd0lBO0FFOW9JSTtFMkQxSEo7OytFQUFBO0VBSUE7OytFQUFBO0E3RDR3SUE7QUV0cElJO0U0RDFISjs7K0VBQUE7RUFJQTs7K0VBQUE7QTlEb3hJQSIsImZpbGUiOiJtb2Rlcm4uOTMxZTA1ZjkuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogSGVscGVyc1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTWl4aW5zXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBGdW5jdGlvbnNcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qXG4gKiBSZXRyaWV2ZSBhIGNvbG9yIHZhcmlhYmxlXG4gKlxuICogQHBhcmFtICB7c3RyaW5nfSAgJGNvbG9yIC0gVGhlIG5hbWUgb2YgdGhlIGNvbG9yIGFzIGRlZmluZWQgaW4gX3ZhcmlhYmxlc1xuICogQHBhcmFtICB7c3RyaW5nfSAgJHRvbmUgIC0gVGhlIHZhcmlhbnQgb2YgdGhlIGNvbG9yIChzaGFkZXxiYXNlfHRpbnQpXG4gKi9cbi8qXG4gKiBSZW1vdmUgdGhlIHVuaXQgb2YgYSBsZW5ndGhcbiAqXG4gKiBAcGFyYW0gIHtOdW1iZXJ9ICAkbnVtYmVyXG4gKi9cbi8qXG4gKiBDb252ZXJ0IFBYIHVuaXRzIGluIHRvIEVNIG9yIFJFTSwgcmVsYXRpdmUgdG8gYSBzcGVjaWZpZWQgYmFzZSBzaXplc1xuICpcbiAqIEBwYXJhbSAge051bWJlcn0gICRzaXplIC0gQXJyYXkgb2YgdXAgdG8gZm91ciBzaXplcyBpbiBQWCB1bml0c1xuICogQHBhcmFtICB7TnVtYmVyfSAgJGJhc2UgLSBGb250IHNpemUgdG8gYmFzZSBjYWxjdWxhdGlvbnMgb2ZmIG9mXG4gKiBAcGFyYW0gIHtTdHJpbmd9ICAkdW5pdCAtIEVpdGhlciBcImVtXCIgb3IgXCJyZW1cIlxuICovXG4vKlxuICogQ29udmVydCBQaG90b3Nob3AgbGVhZGluZyB0byBDU1MgbGluZS1oZWlnaHRcbiAqXG4gKiBAcGFyYW0gIHtOdW1iZXJ9ICAkc2l6ZSAtIFZhbHVlIG9mIExlYWRpbmcgaW4gUGhvdG9zaG9wJ3MgQ2hhcmFjdGVyIFBhbmVsXG4gKiBAcGFyYW0gIHtOdW1iZXJ9ICAkYmFzZSAtIFZhbHVlIG9mIEZvbnQgU2l6ZSBpbiBQaG90b3NvaHAncyBDaGFyYWN0ZXIgUGFuZWxcbiAqL1xuLypcbiAqIENvbnZlcnQgUGhvdG9zaG9wIHRyYWNraW5nIHRvIENTUyBsZXR0ZXItc3BhY2luZ1xuICpcbiAqIEBwYXJhbSAge051bWJlcn0gICRzaXplIC0gVmFsdWUgb2YgVHJhY2tpbmcgaW4gUGhvdG9zaG9wJ3MgQ2hhcmFjdGVyIFBhbmVsXG4gKiBAcGFyYW0gIHtOdW1iZXJ9ICAkYmFzZSAtIFZhbHVlIG9mIEZvbnQgU2l6ZSBpbiBQaG90b3NvaHAncyBDaGFyYWN0ZXIgUGFuZWxcbiAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ29sb3JzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBGb250c1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogV2lkdGhzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBCcmVhayBQb2ludHNcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIExheWVyc1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLl9fZGFyayB7XG4gIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG59XG5cbi5fX2xpZ2h0IHtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbn1cblxuLl9fYmlnIHtcbiAgZm9udC1zaXplOiAxLjI1ZW0gIWltcG9ydGFudDtcbn1cblxuLl9fc21hbGwge1xuICBmb250LXNpemU6IDAuNzVlbSAhaW1wb3J0YW50O1xufVxuXG4uX19ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xufVxuXG4uX19pdGFsaWMge1xuICBmb250LXN0eWxlOiBpdGFsaWMgIWltcG9ydGFudDtcbn1cblxuLl9fdGV4dGNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4uX190ZXh0bGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLl9fdGV4dHJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLl9fbm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xufVxuXG4uX19jZW50ZXIge1xuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLl9fbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi5fX3JpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5fX25vbWFyZ2luIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5fX25vcGFkZGluZyB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLl9fbm90cmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLl9fbm90cmFuc2l0aW9uIHtcbiAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uX19ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5fX2ZsZXgge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG59XG5cbi5fX3Zpc3VhbGx5aGlkZGVuIHtcbiAgbGVmdDogLTk5OWVtICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB0b3A6IC05OTllbSAhaW1wb3J0YW50O1xufVxuXG4uX19wcmltYXJ5IHtcbiAgY29sb3I6ICMwMDgzNDkgIWltcG9ydGFudDtcbn1cblxuLl9fYWNjZW50IHtcbiAgY29sb3I6ICNCMzM1MjcgIWltcG9ydGFudDtcbn1cblxuLl9fZXJyb3Ige1xuICBjb2xvcjogI0IzMzUyNyAhaW1wb3J0YW50O1xufVxuXG4vKiB2aXNpYmlsaXR5IGNsYXNzZXMgKi9cbkBtZWRpYSAocG9pbnRlcjogZmluZSkge1xuICAuX190b3VjaCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5Ac3VwcG9ydHMgbm90IChwb2ludGVyOiBmaW5lKSB7XG4gIC5fX3RvdWNoIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAocG9pbnRlcjogY29hcnNlKSB7XG4gIC5fX21vdXNlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBwcmludCB7XG4gIC5fX25vcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLyogXCJ2aXNpYmxlXCIgY2xhc3NlcyAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuX192aXNpYmxlLXhzIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDUzLjI1ZW0pIHtcbiAgLl9fdmlzaWJsZS1zIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU5LjkzNzVlbSkge1xuICAuX192aXNpYmxlLW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5fX3Zpc2libGUtbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3OS45Mzc1ZW0pIHtcbiAgLl9fdmlzaWJsZS14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qIFwiaGlkZGVuXCIgY2xhc3NlcyAtLSBOT1RFOiBJdCBpcyBpbXBvcnRhbnQgdGhhdCBfaGlkZGVuIGNsYXNzZXMgY29tZSBhZnRlciBfdmlzaWJsZSBmb3Igb3ZlcnJpZGUgcHVycG9zZXMgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5fX2hpZGRlbi14cyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA1My4zMTI1ZW0pIHtcbiAgLl9faGlkZGVuLXMge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjBlbSkge1xuICAuX19oaWRkZW4tbSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5fX2hpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLl9faGlkZGVuLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQmFzZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4xIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC8qIDEgKi9cbiAgaGVpZ2h0OiAwO1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG4gKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7XG4gIC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDEgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKiAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICovXG5idXR0b24sXG5pbnB1dCB7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuW3R5cGU9YnV0dG9uXSxcblt0eXBlPXJlc2V0XSxcblt0eXBlPXN1Ym1pdF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1idXR0b25dOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPWJ1dHRvbl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1yZXNldF06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1zdWJtaXRdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuW3R5cGU9Y2hlY2tib3hdLFxuW3R5cGU9cmFkaW9dIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5bdHlwZT1zZWFyY2hdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cbiAqL1xuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG4gKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBOb3JtYWxpemVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXgsIHNlbGVjdG9yLW1heC10eXBlLCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUgKi9cbi8qIFRoZXNlIHN0eWxlcyBhcmUgaW50ZW5kZWQgdG8gYmUgZ2xvYmFsICovXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cblt0eXBlPXNlYXJjaF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbnN2ZyB7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyogUmVtb3ZlIG91dGxpbmUgZm9yIG5vbi1rZXlib2FyZCA6Zm9jdXMgKi9cbio6Zm9jdXM6bm90KC5mb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEdyaWQgKGJhc2VkIGxvb3NlbHkgb24gaHR0cHM6Ly92NC1hbHBoYS5nZXRib290c3RyYXAuY29tL2xheW91dC9ncmlkLylcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWNsYXNzLXBhdHRlcm4gKi9cbi5yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4ucm93LnJvdy0tZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEyLCAxZnIpO1xufVxuLnJvdy5yb3ctLWdyaWQucm93LS1lcXVhbCB7XG4gIGdyaWQtYXV0by1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtYXV0by1yb3dzOiAxZnI7XG59XG4ucm93ID4gW2NsYXNzKj1jb2wtXSB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgZmxleC1zaHJpbms6IDE7XG4gIG1pbi13aWR0aDogMDtcbn1cbi5yb3cgPiBbY2xhc3MqPWNvbC1dLmNvbC0tbm9ncm93IHtcbiAgZmxleC1ncm93OiAwO1xufVxuLnJvdyA+IFtjbGFzcyo9Y29sLV0uY29sLS1ub3NocmluayB7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuLnJvdy5yb3ctLXBhZGRlZCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAxLjI1ZW0pO1xufVxuLnJvdy5yb3ctLXBhZGRlZCA+IFtjbGFzcyo9Y29sLV0ge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjI1ZW07XG59XG4ucm93LnJvdy0tcGFkZGVkLnJvdy0tdGlnaHQge1xuICB3aWR0aDogY2FsYygxMDAlICsgMC42MjVlbSk7XG59XG4ucm93LnJvdy0tcGFkZGVkLnJvdy0tdGlnaHQgPiBbY2xhc3MqPWNvbC1dIHtcbiAgcGFkZGluZy1yaWdodDogMC42MjVlbTtcbn1cbi5yb3cucm93LS1wYWRkZWQucm93LS1sb29zZSB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyAxLjg3NWVtKTtcbn1cbi5yb3cucm93LS1wYWRkZWQucm93LS1sb29zZSA+IFtjbGFzcyo9Y29sLV0ge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjg3NWVtO1xufVxuLnJvdy5yb3ctLW5vd3JhcCB7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xufVxuLnJvdy5yb3ctLXdyYXByZXZlcnNlIHtcbiAgZmxleC13cmFwOiB3cmFwLXJldmVyc2U7XG59XG4ucm93LnJvdy0tY2VudGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ucm93Om5vdCgucm93LS1jb2x1bW4pLnJvdy0taGNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLnJvdzpub3QoLnJvdy0tY29sdW1uKS5yb3ctLXZjZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnJvdzpub3QoLnJvdy0tY29sdW1uKS5yb3ctLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuLnJvdzpub3QoLnJvdy0tY29sdW1uKS5yb3ctLXJpZ2h0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cbi5yb3c6bm90KC5yb3ctLWNvbHVtbikucm93LS1ib3R0b20ge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG4ucm93Om5vdCgucm93LS1jb2x1bW4pLnJvdy0tbGVmdCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5yb3cucm93LS1zdHJldGNoIHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG4ucm93LnJvdy0tYXJvdW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG59XG4ucm93LnJvdy0tYmV0d2VlbiB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi5yb3c6bm90KC5yb3ctLWNvbHVtbikucm93LS1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xufVxuLnJvdy5yb3ctLWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4ucm93LnJvdy0tY29sdW1uLnJvdy0tdmNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLnJvdy5yb3ctLWNvbHVtbi5yb3ctLXRvcCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5yb3cucm93LS1jb2x1bW4ucm93LS1yaWdodCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cbi5yb3cucm93LS1jb2x1bW4ucm93LS1ib3R0b20ge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuLnJvdy5yb3ctLWNvbHVtbi5yb3ctLWxlZnQge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5yb3cucm93LS1jb2x1bW4ucm93LS1oY2VudGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5yb3cucm93LS1jb2x1bW4ucm93LS1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xufVxuXG4uY29sLWF1dG8ge1xuICBmbGV4LWJhc2lzOiBhdXRvO1xufVxuXG4uY29sLTAge1xuICBmbGV4LWJhc2lzOiAwJTtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMDtcbn1cblxuLmNvbC0xIHtcbiAgZmxleC1iYXNpczogOC4zMzMzMzMzMzMzJTtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMTtcbn1cblxuLmNvbC0yIHtcbiAgZmxleC1iYXNpczogMTYuNjY2NjY2NjY2NyU7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDI7XG59XG5cbi5jb2wtMyB7XG4gIGZsZXgtYmFzaXM6IDI1JTtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMztcbn1cblxuLmNvbC00IHtcbiAgZmxleC1iYXNpczogMzMuMzMzMzMzMzMzMyU7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDQ7XG59XG5cbi5jb2wtNSB7XG4gIGZsZXgtYmFzaXM6IDQxLjY2NjY2NjY2NjclO1xuICBncmlkLWNvbHVtbjogc3BhbiA1O1xufVxuXG4uY29sLTYge1xuICBmbGV4LWJhc2lzOiA1MCU7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDY7XG59XG5cbi5jb2wtNyB7XG4gIGZsZXgtYmFzaXM6IDU4LjMzMzMzMzMzMzMlO1xuICBncmlkLWNvbHVtbjogc3BhbiA3O1xufVxuXG4uY29sLTgge1xuICBmbGV4LWJhc2lzOiA2Ni42NjY2NjY2NjY3JTtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gODtcbn1cblxuLmNvbC05IHtcbiAgZmxleC1iYXNpczogNzUlO1xuICBncmlkLWNvbHVtbjogc3BhbiA5O1xufVxuXG4uY29sLTEwIHtcbiAgZmxleC1iYXNpczogODMuMzMzMzMzMzMzMyU7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDEwO1xufVxuXG4uY29sLTExIHtcbiAgZmxleC1iYXNpczogOTEuNjY2NjY2NjY2NyU7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDExO1xufVxuXG4uY29sLTEyIHtcbiAgZmxleC1iYXNpczogMTAwJTtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gMTI7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wteHMtYXV0byB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuXG4gIC5jb2wteHMtMCB7XG4gICAgZmxleC1iYXNpczogMCU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMDtcbiAgfVxuXG4gIC5jb2wteHMtMSB7XG4gICAgZmxleC1iYXNpczogOC4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxO1xuICB9XG5cbiAgLmNvbC14cy0yIHtcbiAgICBmbGV4LWJhc2lzOiAxNi42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICB9XG5cbiAgLmNvbC14cy0zIHtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMztcbiAgfVxuXG4gIC5jb2wteHMtNCB7XG4gICAgZmxleC1iYXNpczogMzMuMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNDtcbiAgfVxuXG4gIC5jb2wteHMtNSB7XG4gICAgZmxleC1iYXNpczogNDEuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNTtcbiAgfVxuXG4gIC5jb2wteHMtNiB7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDY7XG4gIH1cblxuICAuY29sLXhzLTcge1xuICAgIGZsZXgtYmFzaXM6IDU4LjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDc7XG4gIH1cblxuICAuY29sLXhzLTgge1xuICAgIGZsZXgtYmFzaXM6IDY2LjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDg7XG4gIH1cblxuICAuY29sLXhzLTkge1xuICAgIGZsZXgtYmFzaXM6IDc1JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA5O1xuICB9XG5cbiAgLmNvbC14cy0xMCB7XG4gICAgZmxleC1iYXNpczogODMuMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTA7XG4gIH1cblxuICAuY29sLXhzLTExIHtcbiAgICBmbGV4LWJhc2lzOiA5MS42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMTtcbiAgfVxuXG4gIC5jb2wteHMtMTIge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTI7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1My4zMTI1ZW0pIHtcbiAgLmNvbC1zLWF1dG8ge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cblxuICAuY29sLXMtMCB7XG4gICAgZmxleC1iYXNpczogMCU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMDtcbiAgfVxuXG4gIC5jb2wtcy0xIHtcbiAgICBmbGV4LWJhc2lzOiA4LjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDE7XG4gIH1cblxuICAuY29sLXMtMiB7XG4gICAgZmxleC1iYXNpczogMTYuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcbiAgfVxuXG4gIC5jb2wtcy0zIHtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMztcbiAgfVxuXG4gIC5jb2wtcy00IHtcbiAgICBmbGV4LWJhc2lzOiAzMy4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA0O1xuICB9XG5cbiAgLmNvbC1zLTUge1xuICAgIGZsZXgtYmFzaXM6IDQxLjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDU7XG4gIH1cblxuICAuY29sLXMtNiB7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDY7XG4gIH1cblxuICAuY29sLXMtNyB7XG4gICAgZmxleC1iYXNpczogNTguMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNztcbiAgfVxuXG4gIC5jb2wtcy04IHtcbiAgICBmbGV4LWJhc2lzOiA2Ni42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA4O1xuICB9XG5cbiAgLmNvbC1zLTkge1xuICAgIGZsZXgtYmFzaXM6IDc1JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA5O1xuICB9XG5cbiAgLmNvbC1zLTEwIHtcbiAgICBmbGV4LWJhc2lzOiA4My4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMDtcbiAgfVxuXG4gIC5jb2wtcy0xMSB7XG4gICAgZmxleC1iYXNpczogOTEuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTE7XG4gIH1cblxuICAuY29sLXMtMTIge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTI7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtbS1hdXRvIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG5cbiAgLmNvbC1tLTAge1xuICAgIGZsZXgtYmFzaXM6IDAlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDA7XG4gIH1cblxuICAuY29sLW0tMSB7XG4gICAgZmxleC1iYXNpczogOC4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxO1xuICB9XG5cbiAgLmNvbC1tLTIge1xuICAgIGZsZXgtYmFzaXM6IDE2LjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gIH1cblxuICAuY29sLW0tMyB7XG4gICAgZmxleC1iYXNpczogMjUlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDM7XG4gIH1cblxuICAuY29sLW0tNCB7XG4gICAgZmxleC1iYXNpczogMzMuMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNDtcbiAgfVxuXG4gIC5jb2wtbS01IHtcbiAgICBmbGV4LWJhc2lzOiA0MS42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA1O1xuICB9XG5cbiAgLmNvbC1tLTYge1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA2O1xuICB9XG5cbiAgLmNvbC1tLTcge1xuICAgIGZsZXgtYmFzaXM6IDU4LjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDc7XG4gIH1cblxuICAuY29sLW0tOCB7XG4gICAgZmxleC1iYXNpczogNjYuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gODtcbiAgfVxuXG4gIC5jb2wtbS05IHtcbiAgICBmbGV4LWJhc2lzOiA3NSU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gOTtcbiAgfVxuXG4gIC5jb2wtbS0xMCB7XG4gICAgZmxleC1iYXNpczogODMuMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTA7XG4gIH1cblxuICAuY29sLW0tMTEge1xuICAgIGZsZXgtYmFzaXM6IDkxLjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDExO1xuICB9XG5cbiAgLmNvbC1tLTEyIHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDEyO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY29sLWwtYXV0byB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuXG4gIC5jb2wtbC0wIHtcbiAgICBmbGV4LWJhc2lzOiAwJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAwO1xuICB9XG5cbiAgLmNvbC1sLTEge1xuICAgIGZsZXgtYmFzaXM6IDguMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTtcbiAgfVxuXG4gIC5jb2wtbC0yIHtcbiAgICBmbGV4LWJhc2lzOiAxNi42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICB9XG5cbiAgLmNvbC1sLTMge1xuICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAzO1xuICB9XG5cbiAgLmNvbC1sLTQge1xuICAgIGZsZXgtYmFzaXM6IDMzLjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDQ7XG4gIH1cblxuICAuY29sLWwtNSB7XG4gICAgZmxleC1iYXNpczogNDEuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNTtcbiAgfVxuXG4gIC5jb2wtbC02IHtcbiAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNjtcbiAgfVxuXG4gIC5jb2wtbC03IHtcbiAgICBmbGV4LWJhc2lzOiA1OC4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA3O1xuICB9XG5cbiAgLmNvbC1sLTgge1xuICAgIGZsZXgtYmFzaXM6IDY2LjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDg7XG4gIH1cblxuICAuY29sLWwtOSB7XG4gICAgZmxleC1iYXNpczogNzUlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDk7XG4gIH1cblxuICAuY29sLWwtMTAge1xuICAgIGZsZXgtYmFzaXM6IDgzLjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDEwO1xuICB9XG5cbiAgLmNvbC1sLTExIHtcbiAgICBmbGV4LWJhc2lzOiA5MS42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMTtcbiAgfVxuXG4gIC5jb2wtbC0xMiB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMjtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmNvbC14bC1hdXRvIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG5cbiAgLmNvbC14bC0wIHtcbiAgICBmbGV4LWJhc2lzOiAwJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAwO1xuICB9XG5cbiAgLmNvbC14bC0xIHtcbiAgICBmbGV4LWJhc2lzOiA4LjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDE7XG4gIH1cblxuICAuY29sLXhsLTIge1xuICAgIGZsZXgtYmFzaXM6IDE2LjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gIH1cblxuICAuY29sLXhsLTMge1xuICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAzO1xuICB9XG5cbiAgLmNvbC14bC00IHtcbiAgICBmbGV4LWJhc2lzOiAzMy4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA0O1xuICB9XG5cbiAgLmNvbC14bC01IHtcbiAgICBmbGV4LWJhc2lzOiA0MS42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA1O1xuICB9XG5cbiAgLmNvbC14bC02IHtcbiAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNjtcbiAgfVxuXG4gIC5jb2wteGwtNyB7XG4gICAgZmxleC1iYXNpczogNTguMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNztcbiAgfVxuXG4gIC5jb2wteGwtOCB7XG4gICAgZmxleC1iYXNpczogNjYuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gODtcbiAgfVxuXG4gIC5jb2wteGwtOSB7XG4gICAgZmxleC1iYXNpczogNzUlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDk7XG4gIH1cblxuICAuY29sLXhsLTEwIHtcbiAgICBmbGV4LWJhc2lzOiA4My4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMDtcbiAgfVxuXG4gIC5jb2wteGwtMTEge1xuICAgIGZsZXgtYmFzaXM6IDkxLjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDExO1xuICB9XG5cbiAgLmNvbC14bC0xMiB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMjtcbiAgfVxufVxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU2VsZWN0aW9uXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCMzM1Mjc7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBMaW5rXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ubGluaywgLnVzZXItY29udGVudCBhW2hyZWZePVwidGVsOlwiXSB7XG4gIGNvbG9yOiAjQjMzNTI3O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7XG59XG4ubGluazpmb2N1cywgLnVzZXItY29udGVudCBhW2hyZWZePVwidGVsOlwiXTpmb2N1cywgLmxpbms6aG92ZXIsIC51c2VyLWNvbnRlbnQgYVtocmVmXj1cInRlbDpcIl06aG92ZXIge1xuICBjb2xvcjogI0Q0NDkzOTtcbn1cblxuLyogaW5oZXJpdCB2YXJpYW50ICovXG4ubGluay0taW5oZXJpdCB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLmxpbmstLWluaGVyaXQ6Zm9jdXMsIC5saW5rLS1pbmhlcml0OmhvdmVyIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBCdXR0b25cblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5idXR0b24sIC53ZWJsaW54LXRhYi1saXN0X19idXR0b24sIC53ZWJsaW54LWFjY29yZGlvbl9fYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogIzAwODM0OTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwLjM3NWVtO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcImxpdGhvcy1wcm9cIiwgXCJIZWx2ZXRpY2FcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICBtYXJnaW46IDBlbSAwZW0gMS4yNWVtO1xuICBvdXRsaW5lOiAwO1xuICBwYWRkaW5nOiAwLjkzNzVlbSAxLjEyNWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cztcbn1cbi5idXR0b246YWN0aXZlLCAud2VibGlueC10YWItbGlzdF9fYnV0dG9uOmFjdGl2ZSwgLndlYmxpbngtYWNjb3JkaW9uX19idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTAyRDtcbn1cblxuLyogZGlzYWJsZWQgdmFyaWFudCAqL1xuLmJ1dHRvbi0tZGlzYWJsZWQge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBvcGFjaXR5OiAwLjY7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEFsaWdubWVudFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmFsaWdubGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDEuNTYyNWVtO1xuICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xufVxuXG4uYWxpZ25yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDEuNTYyNWVtO1xuICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xufVxuXG4uYWxpZ25jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogRGl2aWRlclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmRpdmlkZXIge1xuICBiYWNrZ3JvdW5kOiAjMDA4MzQ5O1xuICBib3JkZXI6IDA7XG4gIGNsZWFyOiBib3RoO1xuICBoZWlnaHQ6IDAuMTI1cmVtO1xuICBtYXJnaW46IDAuOTM3NWVtIDBlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIElucHV0XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uaW5wdXQge1xuICBiYWNrZ3JvdW5kOiAjRUNFOERFO1xuICBib3JkZXI6IDAuMTI1cmVtIHNvbGlkICNDQUJCOUQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVlbTtcbiAgY29sb3I6ICM1NTQ2MzI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogXCJjYWxpYnJpXCIsIFwiSGVsdmV0aWNhXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgbWFyZ2luOiAwcmVtIDByZW0gMC42MjVyZW07XG4gIG91dGxpbmU6IDA7XG4gIHBhZGRpbmc6IDAuNjI1ZW0gMC45Mzc1ZW0gMC42MjVlbSAwLjkzNzVlbTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMsIGJhY2tncm91bmQtc2l6ZSAwLjE1cywgYm9yZGVyLWNvbG9yIDAuMTVzLCBjb2xvciAwLjE1cztcbiAgd2lkdGg6IDEwMCU7XG59XG4uaW5wdXQ6bm90KC5pbnB1dC0tZGlzYWJsZWQpOmFjdGl2ZSwgLmlucHV0Om5vdCguaW5wdXQtLWRpc2FibGVkKTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI0IzMzUyNztcbn1cbi5pbnB1dDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzc1NjA0NTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyogZXJyb3IgdmFyaWFudCAqL1xuLmlucHV0LS1lcnJvciwgLm5mLWVycm9yIC5pbnB1dCB7XG4gIGJvcmRlci1jb2xvcjogI0IzMzUyNztcbn1cblxuLyogc3VjY2VzcyB2YXJpYW50ICovXG4uaW5wdXQtLXN1Y2Nlc3MsIC5uZi1wYXNzIC5pbnB1dCB7XG4gIGJvcmRlci1jb2xvcjogIzAwODM0OTtcbn1cblxuLyogc2VsZWN0IHZhcmlhbnQgKi9cbi5pbnB1dC0tc2VsZWN0IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWluZGVudDogMC4wMXB4O1xufVxuLmlucHV0LS1zZWxlY3Q6Oi1tcy1leHBhbmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaW5wdXQtLWFycm93IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogc3ZnLWxvYWQoXCIuLi9tZWRpYS92ZW5kb3IvZmFzLXNvcnQuc3ZnXCIsIGZpbGw9IzU1NDYzMik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCAwLjkzNzVlbTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAwLjc1ZW07XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMC43NWVtICsgMS44NzVlbSk7XG59XG5cbi8qIGNoZWNrYm94ICYgcmFkaW9idXR0b24gdmFyaWFudHMgKi9cbi5pbnB1dC0tY2hlY2tib3gsXG4uaW5wdXQtLXJhZGlvYnV0dG9uIHtcbiAgYm9yZGVyLXdpZHRoOiAwLjA2MjVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDEuNWVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAxLjVlbTtcbn1cbi5pbnB1dC0tY2hlY2tib3g6OmFmdGVyLFxuLmlucHV0LS1yYWRpb2J1dHRvbjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDAuNzVlbTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogLTk5OWVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cywgbGVmdCAwcyAwLjE1cywgdHJhbnNmb3JtIDAuMTVzO1xuICB3aWR0aDogMTAwJTtcbn1cbi5pbnB1dC0tY2hlY2tib3g6Y2hlY2tlZDo6YWZ0ZXIsXG4uaW5wdXQtLXJhZGlvYnV0dG9uOmNoZWNrZWQ6OmFmdGVyIHtcbiAgbGVmdDogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cywgdHJhbnNmb3JtIDAuMTVzO1xufVxuLmlucHV0LS1jaGVja2JveCArIC50ZXh0LS1sYWJlbCxcbi5pbnB1dC0tcmFkaW9idXR0b24gKyAudGV4dC0tbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5pbnB1dC0tY2hlY2tib3g6Y2hlY2tlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCMzM1Mjc7XG4gIGJvcmRlci1jb2xvcjogI0IzMzUyNztcbn1cbi5pbnB1dC0tY2hlY2tib3g6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogc3ZnLWxvYWQoXCIuLi9tZWRpYS92ZW5kb3IvZmFzLWNoZWNrLnN2Z1wiLCBmaWxsPSNGRkZGRkYpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG4uaW5wdXQtLWNoZWNrYm94OmNoZWNrZWQ6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG59XG5cbi5pbnB1dC0tcmFkaW9idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG4uaW5wdXQtLXJhZGlvYnV0dG9uOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHN2Zy1sb2FkKFwiLi4vbWVkaWEvdmVuZG9yL2Zhcy1jaXJjbGUuc3ZnXCIsIGZpbGw9I0IzMzUyNyk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG59XG4uaW5wdXQtLXJhZGlvYnV0dG9uOmNoZWNrZWQ6OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cblxuLyogZGlzYWJsZWQgdmFyaWFudCAqL1xuLmlucHV0LS1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYmQyYmU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIG9wYWNpdHk6IDAuNjtcbn1cblxuLyogc2VsZWN0IGJyb3dzZXIgdmFyaWFudHMgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC10eXBlLCBzZWxlY3Rvci1uby12ZW5kb3ItcHJlZml4LCBzZWxlY3Rvci10eXBlLW5vLXVua25vd24gKi9cbi8qIElFICovXG5fOi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbjpyb290IC5pbnB1dC0tc2VsZWN0IHtcbiAgcGFkZGluZzogMC42MjVlbSBjYWxjKDAuOTM3NWVtIC0gM3B4KSBjYWxjKDAuNjI1ZW0gLSAycHgpO1xufVxuXG5fOi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbjpyb290IC5pbnB1dC0tYXJyb3cge1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDAuNzVlbSArIDEuODc1ZW0gLSAzcHgpO1xufVxuXG4vKiBDaHJvbWUgICovXG5Ac3VwcG9ydHMgKC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZSkgYW5kIChmb250LXN0cmV0Y2g6IG5vcm1hbCkgYW5kIChub3QgKC1tcy1hY2NlbGVyYXRvcjogdHJ1ZSkpIHtcbiAgLmlucHV0LS1zZWxlY3Qge1xuICAgIHBhZGRpbmc6IDAuNjI1ZW0gMC45Mzc1ZW0gMC42MjVlbSAwLjkzNzVlbTtcbiAgfVxuXG4gIC5pbnB1dC0tYXJyb3cge1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoMC43NWVtICsgMS44NzVlbSk7XG4gIH1cbn1cbi8qIFNhZmFyaSAqL1xuXzo6LXdlYmtpdC1mdWxsLXBhZ2UtbWVkaWEsXG5fOmZ1dHVyZSxcbjpyb290IC5pbnB1dC0tc2VsZWN0IHtcbiAgcGFkZGluZzogMC42MjVlbSAwLjkzNzVlbSAwLjYyNWVtIDAuOTM3NWVtO1xufVxuXG5fOjotd2Via2l0LWZ1bGwtcGFnZS1tZWRpYSxcbl86ZnV0dXJlLFxuOnJvb3QgLmlucHV0LS1hcnJvdyB7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMC43NWVtICsgMS44NzVlbSk7XG59XG5cbi8qIEVkZ2UgKi9cbkBzdXBwb3J0cyAoLW1zLWltZS1hbGlnbjogYXV0bykge1xuICAuaW5wdXQtLXNlbGVjdCB7XG4gICAgcGFkZGluZzogY2FsYygwLjYyNWVtIC0gMXB4KSBjYWxjKDAuOTM3NWVtIC0gMnB4KSBjYWxjKDAuNjI1ZW0gLSAxcHgpIGNhbGMoMC45Mzc1ZW0gLSAycHgpO1xuICB9XG5cbiAgLmlucHV0LS1hcnJvdyB7XG4gICAgcGFkZGluZy1yaWdodDogY2FsYygwLjc1ZW0gKyAxLjg3NWVtIC0gMnB4KTtcbiAgfVxufVxuLyogRmlyZWZveCAqL1xuQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeChcIlwiKSB7XG4gIC5pbnB1dC0tc2VsZWN0IHtcbiAgICBwYWRkaW5nOiAwLjYyNWVtIGNhbGMoMC45Mzc1ZW0gLSA0cHgpIDAuNjI1ZW0gY2FsYygwLjkzNzVlbSAtIDRweCk7XG4gIH1cblxuICAuaW5wdXQtLWFycm93IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDAuNzVlbSArIDEuODc1ZW0gLSA0cHgpO1xuICB9XG59XG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBUZXh0XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4udGV4dCB7XG4gIGNvbG9yOiAjNTU0NjMyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiY2FsaWJyaVwiLCBcIkhlbHZldGljYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIG1hcmdpbjogMGVtIDBlbSAwLjgxMjVlbTtcbn1cbi50ZXh0ID4gLmJ1dHRvbjpsYXN0LWNoaWxkLCAudGV4dCA+IC53ZWJsaW54LXRhYi1saXN0X19idXR0b246bGFzdC1jaGlsZCwgLnRleHQgPiAud2VibGlueC1hY2NvcmRpb25fX2J1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4vKiBsYWJlbCB2YXJpYW50ICovXG4udGV4dC0tbGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi8qIGxpc3QgdmFyaWFudCAqL1xuLnRleHQtLWxpc3Qge1xuICBwYWRkaW5nOiAwZW0gMGVtIDBlbSAxLjI1ZW07XG59XG4udGV4dC0tbGlzdCAudGV4dF9fbGlzdC1pdGVtIHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuLnRleHQtLWxpc3QgLnRleHRfX2xpc3QtaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNWVtO1xufVxuXG4vKiBsaXN0IG9yZGVyZWQgdmFyaWFudCAqL1xuLnRleHQtLW9yZGVyZWQge1xuICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xufVxuXG4vKiBsaXN0IHVub3JkZXJlZCB2YXJpYW50ICovXG4udGV4dC0tdW5vcmRlcmVkIHtcbiAgbGlzdC1zdHlsZTogZGlzYztcbn1cblxuLyogdGFibGUgdmFyaWFudCAqL1xuLnRleHRfX3RhYmxlX19jb250YWluZXIge1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi50ZXh0LS10YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbn1cbi50ZXh0LS10YWJsZSAudGV4dF9faGVhZGVyIHtcbiAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xufVxuLnRleHQtLXRhYmxlIC50ZXh0X19ib2R5IHtcbiAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwO1xufVxuLnRleHQtLXRhYmxlIC50ZXh0X19mb290ZXIge1xuICBjb2xvcjogIzc1NjA0NTtcbiAgZGlzcGxheTogdGFibGUtZm9vdGVyLWdyb3VwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4udGV4dC0tdGFibGUgLnRleHRfX3JvdyB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdztcbn1cbi50ZXh0LS10YWJsZSAudGV4dF9fY2VsbCB7XG4gIGJvcmRlcjogMC4wNjI1cmVtIHNvbGlkICM1NTQ2MzI7XG4gIG1pbi13aWR0aDogNy44MTI1ZW07XG4gIHBhZGRpbmc6IDAuNjI1ZW0gMC45Mzc1ZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4udGV4dC0tdGFibGUgLnRleHRfX2hlYWRlciAudGV4dF9fY2VsbCxcbi50ZXh0LS10YWJsZSAudGV4dF9fYm9keSAudGV4dF9fY2VsbC0taGVhZGVyIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi50ZXh0LS10YWJsZSAudGV4dF9fYm9keSAudGV4dF9fY2VsbC0taGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogVGl0bGVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi50aXRsZSB7XG4gIGNvbG9yOiAjMDA4MzQ5O1xuICBmb250LWZhbWlseTogXCJsaXRob3MtcHJvXCIsIFwiSGVsdmV0aWNhXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjgxMjVlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDAuODI3NTg2MjA2OWVtO1xuICBtYXJnaW46IDBlbSAwZW0gMC4zNDQ4Mjc1ODYyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi50aXRsZS0taDIsXG4udGl0bGUtLWgzLFxuLnRpdGxlLS1oNCB7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBsaW5lLWhlaWdodDogMS4zZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMjVlbTtcbn1cblxuLnRpdGxlLS1oMiB7XG4gIGNvbG9yOiAjNDg4NkFGO1xufVxuXG4udGl0bGUtLWgzIHtcbiAgY29sb3I6ICNCMzM1Mjc7XG59XG5cbi50aXRsZS0taDQge1xuICBjb2xvcjogI0Q0NjIxQTtcbn1cblxuLnRpdGxlLS1oNSxcbi50aXRsZS0taDYge1xuICBjb2xvcjogIzU1NDYzMjtcbiAgZm9udC1mYW1pbHk6IFwiY2FsaWJyaVwiLCBcIkhlbHZldGljYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi50aXRsZS0taDUge1xuICBmb250LXNpemU6IDEuMTI1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjExMTExMTExMTFlbTtcbn1cblxuLnRpdGxlLS1oNiB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogMS42ZW07XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKiBkaXZpZGVyIHZhcmlhbnQgKi9cbi50aXRsZS0tZGl2aWRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4udGl0bGUtLWRpdmlkZXI6OmJlZm9yZSwgLnRpdGxlLS1kaXZpZGVyOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNDQUJCOUQ7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMSAxIDAlO1xuICBoZWlnaHQ6IDAuMDYyNXJlbTtcbn1cbi50aXRsZS0tZGl2aWRlcjo6YmVmb3JlIHtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG59XG4udGl0bGUtLWRpdmlkZXI6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQmxvY2txdW90ZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmJsb2NrcXVvdGUge1xuICBib3JkZXItbGVmdDogMC4xMjVyZW0gc29saWQgI0IzMzUyNztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwZW0gMGVtIDBlbSAwLjkzNzVlbTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogVXNlciBDb250ZW50XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4udXNlci1jb250ZW50IHtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBzZWxlY3Rvci1tYXgtdHlwZSAqL1xuICAvKiBzdHlsZWxpbnQtZW5hYmxlICovXG59XG4udXNlci1jb250ZW50IGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vKiBsaWdodCB2YXJpYW50ICovXG4udXNlci1jb250ZW50LS1saWdodCB7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgc2VsZWN0b3ItbWF4LXR5cGUgKi9cbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xufVxuLnVzZXItY29udGVudC0tbGlnaHQgLmxpbmssIC51c2VyLWNvbnRlbnQtLWxpZ2h0IC51c2VyLWNvbnRlbnQgYVtocmVmXj1cInRlbDpcIl0sIC51c2VyLWNvbnRlbnQgLnVzZXItY29udGVudC0tbGlnaHQgYVtocmVmXj1cInRlbDpcIl0sXG4udXNlci1jb250ZW50LS1saWdodCAudGl0bGUsXG4udXNlci1jb250ZW50LS1saWdodCAudGV4dCxcbi51c2VyLWNvbnRlbnQtLWxpZ2h0IC53cC1jYXB0aW9uLXRleHQge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTW9kdWxlXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBBY2NvcmRpb24gLSBCYXNlZCBvbiBIYW5kb3JnZWwgLSBodHRwczovL3d3dy5ucG1qcy5jb20vcGFja2FnZS9oYW5kb3JnZWxcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi53ZWJsaW54LWFjY29yZGlvbi1jb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi53ZWJsaW54LWFjY29yZGlvbl9faGVhZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBtYXJnaW46IDA7XG59XG5cbi53ZWJsaW54LWFjY29yZGlvbl9faGVhZGVyOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLndwLWJsb2NrLWFjZi13ZWJsaW54LWFjY29yZGlvbjpub3QoOmZpcnN0LWNoaWxkLCA6aGFzKC53ZWJsaW54LWFjY29yZGlvbi1jb250YWluZXIpKSAud2VibGlueC1hY2NvcmRpb25fX2hlYWRlciB7XG4gIG1hcmdpbi10b3A6IDAuNzVyZW07XG59XG5cbi53ZWJsaW54LWFjY29yZGlvbl9fYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VDRThERTtcbiAgYm9yZGVyLXJhZGl1czogMC45Mzc1cmVtO1xuICBjb2xvcjogI0IzMzUyNztcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1mYW1pbHk6IFwiY2FsaWJyaVwiLCBcIkhlbHZldGljYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtcmFuZ2U6IDQ4ZW0gODBlbTtcbiAgZm9udC1zaXplOiByZXNwb25zaXZlIDEuMTI1ZW0gMS4zMTI1ZW07XG4gIGdhcDogMS4wOTUyMzgwOTUyZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC45Mzc1cmVtIDEuNzVyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHdpZHRoOiAxMDAlO1xufVxuLndlYmxpbngtYWNjb3JkaW9uX19idXR0b246OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHN2Zy1sb2FkKFwiLi4vbWVkaWEvdmVuZG9yL2Zhcy1hbmdsZS1yaWdodC5zdmdcIiwgZmlsbD0jQjMzNTI3KTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxLjI4NTcxNDI4NTdlbTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzO1xuICB3aWR0aDogMC42MTkwNDc2MTllbTtcbn1cblxuLndlYmxpbngtYWNjb3JkaW9uX19oZWFkZXItLXN0YXRlLW9wZW4gLndlYmxpbngtYWNjb3JkaW9uX19idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUNFOERFO1xuICBib3JkZXItcmFkaXVzOiAwLjkzNzVyZW0gMC45Mzc1cmVtIDByZW0gMHJlbTtcbn1cbi53ZWJsaW54LWFjY29yZGlvbl9faGVhZGVyLS1zdGF0ZS1vcGVuIC53ZWJsaW54LWFjY29yZGlvbl9fYnV0dG9uOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG5cbi53ZWJsaW54LWFjY29yZGlvbl9faGVhZGVyLS1zdGF0ZS1mb2N1cyAud2VibGlueC1hY2NvcmRpb25fX2J1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFQ0U4REU7XG59XG5cbi53ZWJsaW54LWFjY29yZGlvbl9fcGFuZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUNFOERFO1xuICBib3JkZXItcmFkaXVzOiAwcmVtIDByZW0gMC45Mzc1cmVtIDAuOTM3NXJlbTtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwcmVtIDEuNzVyZW07XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjFzIGVhc2U7XG59XG4ud2VibGlueC1hY2NvcmRpb25fX3BhbmVsLS1zdGF0ZS1vcGVuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjJzIGVhc2U7XG59XG4ud2VibGlueC1hY2NvcmRpb25fX3BhbmVsLS1zdGF0ZS1vcGVuZWQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLndlYmxpbngtYWNjb3JkaW9uX19jb250ZW50IHtcbiAgb3BhY2l0eTogMDtcbiAgcGFkZGluZzogMHJlbSAwcmVtIDEuOTM3NXJlbTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2U7XG59XG4ud2VibGlueC1hY2NvcmRpb25fX2NvbnRlbnQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLndlYmxpbngtYWNjb3JkaW9uX19wYW5lbC0tc3RhdGUtb3BlbmVkIC53ZWJsaW54LWFjY29yZGlvbl9fY29udGVudCB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xufVxuXG4ud2VibGlueC10YWItbGlzdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiAxZW07XG59XG4ud2VibGlueC10YWItbGlzdC0tc3RhdGUtYWN0aXZlIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi53ZWJsaW54LXRhYi1saXN0LS1zdGF0ZS1hY3RpdmUgKyAud2VibGlueC1hY2NvcmRpb24tY29udGFpbmVyIC53ZWJsaW54LWFjY29yZGlvbl9faGVhZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLndlYmxpbngtdGFiLWxpc3RfX2J1dHRvbiB7XG4gIG1hcmdpbjogMDtcbn1cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEFydGljbGVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5hcnRpY2xlX19maWd1cmUge1xuICBtYXJnaW46IDBlbSAwZW0gMS44NzVlbTtcbn1cblxuLmFydGljbGVfX2ltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIGV4Y2VycHQgdmFyaWFudCAqL1xuLmFydGljbGUtLWV4Y2VycHQgKyAuYXJ0aWNsZS0tZXhjZXJwdCB7XG4gIGJvcmRlci10b3A6IDAuMDYyNXJlbSBzb2xpZCAjQ0FCQjlEO1xuICBwYWRkaW5nLXRvcDogMWVtO1xufVxuLmFydGljbGUtLWV4Y2VycHQgLmFydGljbGVfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xufVxuLmFydGljbGUtLWV4Y2VycHQgLmFydGljbGVfX2hlYWRlciA+IC5hcnRpY2xlX190aXRsZTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5hcnRpY2xlLS1leGNlcnB0IC5hcnRpY2xlX19oZWFkZXIgPiAuYXJ0aWNsZV9fdGl0bGU6bm90KDpsYXN0LWNoaWxkKSArICoge1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNWVtO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBBdHRyYWN0aW9ucyBNYXBcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5hdHRyYWN0aW9ucy1tYXAge1xuICBtYXJnaW46IDBlbSAwZW0gMWVtO1xufVxuXG4uYXR0cmFjdGlvbnMtbWFwX19yZWdpb24ge1xuICBmaWxsOiB0cmFuc3BhcmVudDtcbiAgc3Ryb2tlOiB0cmFuc3BhcmVudDtcbiAgc3Ryb2tlLXdpZHRoOiAwLjEyNXJlbTtcbiAgdHJhbnNpdGlvbjogZmlsbCAwLjE1cywgc3Ryb2tlIDAuMTVzO1xufVxuLmF0dHJhY3Rpb25zLW1hcF9fcmVnaW9uOmZvY3VzLCAuYXR0cmFjdGlvbnMtbWFwX19yZWdpb246aG92ZXIsIC5hdHRyYWN0aW9ucy1tYXBfX2xpbms6Zm9jdXMgPiAuYXR0cmFjdGlvbnMtbWFwX19yZWdpb24sIC5hdHRyYWN0aW9ucy1tYXBfX2xpbms6aG92ZXIgPiAuYXR0cmFjdGlvbnMtbWFwX19yZWdpb24ge1xuICBmaWxsOiByZ2JhKDE3OSwgNTMsIDM5LCAwLjIpO1xuICBzdHJva2U6ICNCMzM1Mjc7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEJhYmVsIEZpc2hcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG4ud2VibGlueC1iYWJlbC1maXNoIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ud2VibGlueC1iYWJlbC1maXNoX19idXR0b24ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogIzAwODM0OTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGZvbnQtZmFtaWx5OiBcImNhbGlicmlcIiwgXCJIZWx2ZXRpY2FcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuNzVlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZ2FwOiAwLjY2NjY2NjY2NjdlbTtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHotaW5kZXg6IDA7XG59XG4ud2VibGlueC1iYWJlbC1maXNoX19idXR0b24gLmljb24ge1xuICBoZWlnaHQ6IDEuMzMzMzMzMzMzM2VtO1xuICB3aWR0aDogMC42NjY2NjY2NjY3ZW07XG59XG4ud2VibGlueC1iYWJlbC1maXNoX19idXR0b24gLmljb24tLWxhcmdlIHtcbiAgd2lkdGg6IDEuMzMzMzMzMzMzM2VtO1xufVxuOnJvb3Q6bm90KDpoYXMoI2d0LW52ZnJhbWUpKSAud2VibGlueC1iYWJlbC1maXNoX19idXR0b25bb25jbGlja10sIDpyb290OmhhcygjZ3QtbnZmcmFtZSkgLndlYmxpbngtYmFiZWwtZmlzaF9fYnV0dG9uOm5vdChbb25jbGlja10pIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuOnJvb3Q6aGFzKCNndC1udmZyYW1lKSAud2VibGlueC1iYWJlbC1maXNoX19zdWJtaXQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ud2VibGlueC1iYWJlbC1maXNoX19pbnB1dCB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgYm9yZGVyOiAwO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBpbnNldDogMDtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiBpbmhlcml0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxO1xufVxuLndlYmxpbngtYmFiZWwtZmlzaF9faW5wdXQ6Zm9jdXMge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ud2VibGlueC1iYWJlbC1maXNoLS1saWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xufVxuLndlYmxpbngtYmFiZWwtZmlzaC0tbGlnaHQgLndlYmxpbngtYmFiZWwtZmlzaF9fYnV0dG9uIHtcbiAgdGV4dC1zaGFkb3c6IC0wLjEzMzMzMzMzMzNlbSAtMC4xMzMzMzMzMzMzZW0gMCAjRkZGRkZGLCAwIC0wLjEzMzMzMzMzMzNlbSAwICNGRkZGRkYsIDAuMTMzMzMzMzMzM2VtIC0wLjEzMzMzMzMzMzNlbSAwICNGRkZGRkYsIDAuMTMzMzMzMzMzM2VtIDAgMCAjRkZGRkZGLCAwLjEzMzMzMzMzMzNlbSAwLjEzMzMzMzMzMzNlbSAwICNGRkZGRkYsIDAgMC4xMzMzMzMzMzMzZW0gMCAjRkZGRkZGLCAtMC4xMzMzMzMzMzMzZW0gMC4xMzMzMzMzMzMzZW0gMCAjRkZGRkZGLCAtMC4xMzMzMzMzMzMzZW0gMCAwICNGRkZGRkY7XG4gIGNvbG9yOiAjQjMzNTI3O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LWZhbWlseTogXCJsaXRob3MtcHJvXCIsIFwiSGVsdmV0aWNhXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjkzNzVlbTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwLjVlbSAwLjY2NjY2NjY2NjdlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG4ud2VibGlueC1iYWJlbC1maXNoLS1saWdodCAud2VibGlueC1iYWJlbC1maXNoX19idXR0b24gLmljb24ge1xuICB0ZXh0LXNoYWRvdzogLTAuMTMzMzMzMzMzM2VtIC0wLjEzMzMzMzMzMzNlbSAwICNGRkZGRkYsIDAgLTAuMTMzMzMzMzMzM2VtIDAgI0ZGRkZGRiwgMC4xMzMzMzMzMzMzZW0gLTAuMTMzMzMzMzMzM2VtIDAgI0ZGRkZGRiwgMC4xMzMzMzMzMzMzZW0gMCAwICNGRkZGRkYsIDAuMTMzMzMzMzMzM2VtIDAuMTMzMzMzMzMzM2VtIDAgI0ZGRkZGRiwgMCAwLjEzMzMzMzMzMzNlbSAwICNGRkZGRkYsIC0wLjEzMzMzMzMzMzNlbSAwLjEzMzMzMzMzMzNlbSAwICNGRkZGRkYsIC0wLjEzMzMzMzMzMzNlbSAwIDAgI0ZGRkZGRjtcbn1cblxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ2FsbG91dFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNhbGxvdXQge1xuICBiYWNrZ3JvdW5kOiAjMDA4MzQ5O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMDA4MzQ5IDAlLCAjMDA2YTNiIDEwMCUpO1xuICBib3JkZXItcmFkaXVzOiAwLjYyNWVtO1xuICBib3gtc2hhZG93OiAwZW0gMGVtIDAuMjVlbSByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDBlbSAwZW0gMC42MjVlbTtcbiAgcGFkZGluZzogMS4yNWVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uY2FsbG91dDpmb2N1cywgLmNhbGxvdXQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjMDA5ZDU3O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMDA5ZDU3IDAlLCAjMDA4MzQ5IDEwMCUpO1xufVxuLmNhbGxvdXQuY2FsbG91dC0tc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogI0IzMzUyNztcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI0IzMzUyNyAwJSwgIzllMmYyMiAxMDAlKTtcbn1cbi5jYWxsb3V0LmNhbGxvdXQtLXNlY29uZGFyeTpmb2N1cywgLmNhbGxvdXQuY2FsbG91dC0tc2Vjb25kYXJ5OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2M4M2IyYztcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI2M4M2IyYyAwJSwgI2IzMzUyNyAxMDAlKTtcbn1cbi5jYWxsb3V0LmNhbGxvdXQtLXRlcnRpYXJ5IHtcbiAgYmFja2dyb3VuZDogIzQ4ODZBRjtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzQ4ODZBRiAwJSwgIzQxNzg5ZCAxMDAlKTtcbn1cbi5jYWxsb3V0LmNhbGxvdXQtLXRlcnRpYXJ5OmZvY3VzLCAuY2FsbG91dC5jYWxsb3V0LS10ZXJ0aWFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICM1NzkyYmE7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICM1NzkyYmEgMCUsICM0ODg2YWYgMTAwJSk7XG59XG4uY2FsbG91dC5jYWxsb3V0LS1xdWF0ZXJuYXJ5IHtcbiAgYmFja2dyb3VuZDogI0Q0NjIxQTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgI0Q0NjIxQSAwJSwgI2JkNTgxNyAxMDAlKTtcbn1cbi5jYWxsb3V0LmNhbGxvdXQtLXF1YXRlcm5hcnk6Zm9jdXMsIC5jYWxsb3V0LmNhbGxvdXQtLXF1YXRlcm5hcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZTQ2ZTIzO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZTQ2ZTIzIDAlLCAjZDQ2MjFhIDEwMCUpO1xufVxuXG4uY2FsbG91dF9fdGl0bGUge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMzMzMzMzMzMzM2VtO1xufVxuXG4uY2FsbG91dF9fdGV4dCB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogaWZyYW1lXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uaWZyYW1lX19jb250YWluZXIge1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaWZyYW1lX19jb250YWluZXIgPiAuaWZyYW1lIHtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIExvZ29cblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5sb2dvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cztcbn1cbi5sb2dvOmhvdmVyIHtcbiAgb3BhY2l0eTogMC45O1xufVxuXG4ubG9nb19faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1lbnUgTGlzdFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PSBHTE9CQUwgVkFSSUFOVFMgPT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ubWVudS1saXN0X19jb250YWluZXIge1xuICBjbGVhcjogZml4O1xufVxuXG4ubWVudS1saXN0IHtcbiAgY2xlYXI6IGZpeDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5tZW51LWxpc3RfX2l0ZW0ge1xuICBmbG9hdDogbGVmdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubWVudS1saXN0X19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5tZW51LWxpc3RfX3RvZ2dsZSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMCAwIGF1dG87XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBtYXJnaW46IDA7XG59XG4ubWVudS1saXN0X190b2dnbGUgPiAudG9nZ2xlX19pY29uIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzO1xufVxuLm1lbnUtbGlzdF9faXRlbS5pcy1hY3RpdmUgPiAubWVudS1saXN0X190b2dnbGUgPiAudG9nZ2xlX19pY29uIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG59XG5cbi8qIGFjY29yZGlvbiB2YXJpYW50ICovXG4ubWVudS1saXN0LS1hY2NvcmRpb24gLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLm1lbnUtbGlzdC0tYWNjb3JkaW9uIC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudCA+IC5tZW51LWxpc3RfX2xpbmsge1xuICBmbGV4OiAxIDEgMCU7XG59XG5cbi8qIGNoaWxkIHZhcmlhbnQgKi9cbi5tZW51LWxpc3QtLWNoaWxkIHtcbiAgbWluLXdpZHRoOiAxMDAlO1xufVxuLm1lbnUtbGlzdC0tY2hpbGQgLm1lbnUtbGlzdF9faXRlbSB7XG4gIGZsb2F0OiBub25lO1xufVxuXG4vKiBjaGlsZCBhY2NvcmRpb24gdmFyaWFudCAqL1xuLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1hY2NvcmRpb24ge1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjE1cywgdmlzaWJpbGl0eSAwcyAwLjE1cyAhaW1wb3J0YW50O1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4ubWVudS1saXN0X19pdGVtLS1wYXJlbnQuaXMtYWN0aXZlID4gLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1hY2NvcmRpb24ge1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4xNXMgIWltcG9ydGFudDtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLyogY2hpbGQgb3ZlcmxheSB2YXJpYW50ICovXG4ubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLW92ZXJsYXkge1xuICBsZWZ0OiAtOTk5ZW07XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5ZW07XG4gIHRyYW5zaXRpb246IGxlZnQgMHMgMC4xNXMsIG9wYWNpdHkgMC4xNXMsIHRvcCAwcyAwLjE1cywgdmlzaWJpbGl0eSAwcyAwLjE1cztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50OmhvdmVyID4gLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1vdmVybGF5LCAubWVudS1saXN0X19pdGVtLS1wYXJlbnQuaXMtYWN0aXZlID4gLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1vdmVybGF5IHtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMTtcbiAgdG9wOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLm5vLWphdmFzY3JpcHQgLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50OmZvY3VzLXdpdGhpbiA+IC5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tb3ZlcmxheSB7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDE7XG4gIHRvcDogMTAwJTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLyogY2hpbGQgb3ZlcmxheSBkZXB0aCAyIHZhcmlhbnQgKi9cbi5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudDpob3ZlciA+IC5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tb3ZlcmxheS5tZW51LWxpc3QtLWRlcHRoLTIsIC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudC5pcy1hY3RpdmUgPiAubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLW92ZXJsYXkubWVudS1saXN0LS1kZXB0aC0yIHtcbiAgbGVmdDogMTAwJTtcbiAgdG9wOiAwO1xufVxuLm5vLWphdmFzY3JpcHQgLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50OmZvY3VzLXdpdGhpbiA+IC5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tb3ZlcmxheS5tZW51LWxpc3QtLWRlcHRoLTIge1xuICBsZWZ0OiAxMDAlO1xuICB0b3A6IDA7XG59XG5cbi8qIGNoaWxkIG92ZXJsYXkgcmV2ZXJzZSB2YXJpYW50ICovXG4ubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLW92ZXJsYXkubWVudS1saXN0LS1yZXZlcnNlIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDk5OWVtO1xuICB0cmFuc2l0aW9uOiByaWdodCAwcyAwLjE1cywgb3BhY2l0eSAwLjE1cywgdG9wIDBzIDAuMTVzLCB2aXNpYmlsaXR5IDBzIDAuMTVzO1xufVxuLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50OmhvdmVyID4gLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1vdmVybGF5Lm1lbnUtbGlzdC0tcmV2ZXJzZSwgLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50LmlzLWFjdGl2ZSA+IC5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tb3ZlcmxheS5tZW51LWxpc3QtLXJldmVyc2Uge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cztcbn1cbi5uby1qYXZhc2NyaXB0IC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudDpmb2N1cy13aXRoaW4gPiAubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLW92ZXJsYXkubWVudS1saXN0LS1yZXZlcnNlIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXM7XG59XG5cbi8qIGNoaWxkIG92ZXJsYXkgcmV2ZXJzZSBkZXB0aCAyIHZhcmlhbnQgKi9cbi5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudDpob3ZlciA+IC5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tb3ZlcmxheS5tZW51LWxpc3QtLXJldmVyc2UubWVudS1saXN0LS1kZXB0aC0yLCAubWVudS1saXN0X19pdGVtLS1wYXJlbnQuaXMtYWN0aXZlID4gLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1vdmVybGF5Lm1lbnUtbGlzdC0tcmV2ZXJzZS5tZW51LWxpc3QtLWRlcHRoLTIge1xuICByaWdodDogMTAwJTtcbiAgdG9wOiAwO1xufVxuLm5vLWphdmFzY3JpcHQgLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50OmZvY3VzLXdpdGhpbiA+IC5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tb3ZlcmxheS5tZW51LWxpc3QtLXJldmVyc2UubWVudS1saXN0LS1kZXB0aC0yIHtcbiAgcmlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbn1cblxuLyogZmxleCB2YXJpYW50ICovXG4ubWVudS1saXN0LS1mbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5tZW51LWxpc3QtLWZsZXg6bm90KC5tZW51LWxpc3QtLWJldHdlZW4pIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm1lbnUtbGlzdC0tZmxleDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm1lbnUtbGlzdC0tZmxleCA+IC5tZW51LWxpc3RfX2l0ZW0ge1xuICBmbGV4OiAxIDEgMCU7XG59XG4ubWVudS1saXN0LS1mbGV4Om5vdCgubWVudS1saXN0LS1iZXR3ZWVuKTpub3QoLm1lbnUtbGlzdC0tY2VudGVyKSA+IC5tZW51LWxpc3RfX2l0ZW0ge1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi8qIGZsZXggYmV0d2VlbiB2YXJpYW50ICovXG4ubWVudS1saXN0LS1mbGV4Lm1lbnUtbGlzdC0tYmV0d2VlbiB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi5tZW51LWxpc3QtLWZsZXgubWVudS1saXN0LS1iZXR3ZWVuID4gLm1lbnUtbGlzdF9faXRlbSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuXG4vKiBmbGV4IGNlbnRlciB2YXJpYW50ICovXG4ubWVudS1saXN0LS1mbGV4Lm1lbnUtbGlzdC0tY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ubWVudS1saXN0LS1mbGV4Lm1lbnUtbGlzdC0tY2VudGVyID4gLm1lbnUtbGlzdF9faXRlbSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuXG4vKiBmbGV4IGVuZCB2YXJpYW50ICovXG4ubWVudS1saXN0LS1mbGV4Lm1lbnUtbGlzdC0tZW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cbi5tZW51LWxpc3QtLWZsZXgubWVudS1saXN0LS1lbmQgPiAubWVudS1saXN0X19pdGVtIHtcbiAgZmxleDogMCAwIGF1dG87XG59XG5cbi8qIGZsZXggc3RhcnQgdmFyaWFudCAqL1xuLm1lbnUtbGlzdC0tZmxleC5tZW51LWxpc3QtLXN0YXJ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuLm1lbnUtbGlzdC0tZmxleC5tZW51LWxpc3QtLXN0YXJ0ID4gLm1lbnUtbGlzdF9faXRlbSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuXG4vKiB2ZXJ0aWNhbCB2YXJpYW50ICovXG4ubWVudS1saXN0LS12ZXJ0aWNhbCA+IC5tZW51LWxpc3RfX2l0ZW0ge1xuICBmbG9hdDogbm9uZTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PSBDVVNUT00gVkFSSUFOVFMgPT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBtZXRhIHZhcmlhbnQgKi9cbi5tZW51LWxpc3QtLW1ldGEge1xuICBjb2xvcjogIzc1NjA0NTtcbiAgZm9udC1mYW1pbHk6IFwibGl0aG9zLXByb1wiLCBcIkhlbHZldGljYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luOiAwZW0gMGVtIDFlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5tZW51LWxpc3QtLW1ldGEgLm1lbnUtbGlzdF9faXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjQyODU3MTQyODZlbTtcbn1cbi5tZW51LWxpc3QtLW1ldGEgLm1lbnUtbGlzdF9fbGluayB7XG4gIGNvbG9yOiAjNzU2MDQ1O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ubWVudS1saXN0LS1tZXRhIC5tZW51LWxpc3RfX2xpbms6aG92ZXIge1xuICBjb2xvcjogIzc1NjA0NTtcbn1cblxuLyogbmF2aWdhdGlvbiB2YXJpYW50ICovXG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIHtcbiAgLyogY2hpbGQgKi9cbiAgLyogY2hpbGQgZGVwdGggMiAqL1xuICAvKiBhY2NvcmRpb25zICovXG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIHtcbiAgZm9udC1mYW1pbHk6IFwibGl0aG9zLXByb1wiLCBcIkhlbHZldGljYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC45Mzc1ZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIHtcbiAgdGV4dC1zaGFkb3c6IC0wLjEzMzMzMzMzMzNlbSAtMC4xMzMzMzMzMzMzZW0gMCAjRkZGRkZGLCAwIC0wLjEzMzMzMzMzMzNlbSAwICNGRkZGRkYsIDAuMTMzMzMzMzMzM2VtIC0wLjEzMzMzMzMzMzNlbSAwICNGRkZGRkYsIDAuMTMzMzMzMzMzM2VtIDAgMCAjRkZGRkZGLCAwLjEzMzMzMzMzMzNlbSAwLjEzMzMzMzMzMzNlbSAwICNGRkZGRkYsIDAgMC4xMzMzMzMzMzMzZW0gMCAjRkZGRkZGLCAtMC4xMzMzMzMzMzMzZW0gMC4xMzMzMzMzMzMzZW0gMCAjRkZGRkZGLCAtMC4xMzMzMzMzMzMzZW0gMCAwICNGRkZGRkY7XG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3RfX2xpbmssXG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3RfX3RvZ2dsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuNjY2NjY2NjY2N2VtO1xuICBjb2xvcjogI0IzMzUyNztcbiAgcGFkZGluZzogMC41ZW0gMC42NjY2NjY2NjY3ZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC42cywgY29sb3IgMC42cztcbn1cbi5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdF9fbGluazpmb2N1cywgLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0X19saW5rOmhvdmVyLFxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0X190b2dnbGU6Zm9jdXMsXG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3RfX3RvZ2dsZTpob3ZlciB7XG4gIGNvbG9yOiAjRDQ0OTM5O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MsIGNvbG9yIDAuM3M7XG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3RfX2xpbms6YWN0aXZlLFxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0X190b2dnbGU6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MsIGNvbG9yIDAuM3M7XG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3QtLWNoaWxkIHtcbiAgYmFja2dyb3VuZDogI0IzMzUyNztcbiAgYm9yZGVyLXJhZGl1czogMC42NjY2NjY2NjY3ZW07XG4gIGZvbnQtc2l6ZTogMWVtO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cbi5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1vdmVybGF5IHtcbiAgbWluLXdpZHRoOiAxNi42NjY2NjY2NjY3ZW07XG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2l0ZW0ge1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzO1xufVxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0LS1jaGlsZCAubWVudS1saXN0X19pdGVtLmlzLWFjdGl2ZSxcbi5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdC0tY2hpbGQgLm1lbnUtbGlzdF9faXRlbTpmb2N1cy13aXRoaW4sXG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2l0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2xpbmssXG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX3RvZ2dsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBwYWRkaW5nOiAwLjY2NjY2NjY2NjdlbSAxZW07XG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3QtLWNoaWxkID4gLm1lbnUtbGlzdF9faXRlbTpmaXJzdC1jaGlsZCA+IC5tZW51LWxpc3RfX2xpbmssXG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3QtLWNoaWxkID4gLm1lbnUtbGlzdF9faXRlbTpmaXJzdC1jaGlsZCA+IC5tZW51LWxpc3RfX3RvZ2dsZSB7XG4gIHBhZGRpbmctdG9wOiAxZW07XG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3QtLWNoaWxkID4gLm1lbnUtbGlzdF9faXRlbTpsYXN0LWNoaWxkID4gLm1lbnUtbGlzdF9fbGluayxcbi5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdC0tY2hpbGQgPiAubWVudS1saXN0X19pdGVtOmxhc3QtY2hpbGQgPiAubWVudS1saXN0X190b2dnbGUge1xuICBwYWRkaW5nLWJvdHRvbTogMWVtO1xufVxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLWRlcHRoLTIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpIDEwMCUpO1xuICBmb250LXNpemU6IDFlbTtcbn1cbi5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50Om5vdCg6Zmlyc3QtY2hpbGQpID4gLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1kZXB0aC0yLm1lbnUtbGlzdC0tb3ZlcmxheSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMWVtKTtcbn1cbi5tZW51LWxpc3QtLW5hdmlnYXRpb24ubWVudS1saXN0LS1hY2NvcmRpb24gLm1lbnUtbGlzdC0tY2hpbGQge1xuICBmb250LXNpemU6IDFlbTtcbn1cbi5tZW51LWxpc3QtLW5hdmlnYXRpb24ubWVudS1saXN0LS1hY2NvcmRpb24gLm1lbnUtbGlzdC0tY2hpbGQ6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogIzg5MjkxRTtcbiAgYm90dG9tOiAwO1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAwLjA2MjVyZW07XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uLm1lbnUtbGlzdC0tYWNjb3JkaW9uIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2xpbmssIC5tZW51LWxpc3QtLW5hdmlnYXRpb24ubWVudS1saXN0LS1hY2NvcmRpb24gLm1lbnUtbGlzdC0tY2hpbGQgLm1lbnUtbGlzdF9fdG9nZ2xlIHtcbiAgcGFkZGluZzogMC40ZW0gMC44ZW07XG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uLm1lbnUtbGlzdC0tYWNjb3JkaW9uIC5tZW51LWxpc3QtLWNoaWxkID4gLm1lbnUtbGlzdF9faXRlbTpmaXJzdC1jaGlsZCA+IC5tZW51LWxpc3RfX2xpbmssIC5tZW51LWxpc3QtLW5hdmlnYXRpb24ubWVudS1saXN0LS1hY2NvcmRpb24gLm1lbnUtbGlzdC0tY2hpbGQgPiAubWVudS1saXN0X19pdGVtOmZpcnN0LWNoaWxkID4gLm1lbnUtbGlzdF9fdG9nZ2xlIHtcbiAgcGFkZGluZy10b3A6IDAuOGVtO1xufVxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbi5tZW51LWxpc3QtLWFjY29yZGlvbiAubWVudS1saXN0LS1jaGlsZCA+IC5tZW51LWxpc3RfX2l0ZW06bGFzdC1jaGlsZCA+IC5tZW51LWxpc3RfX2xpbmssIC5tZW51LWxpc3QtLW5hdmlnYXRpb24ubWVudS1saXN0LS1hY2NvcmRpb24gLm1lbnUtbGlzdC0tY2hpbGQgPiAubWVudS1saXN0X19pdGVtOmxhc3QtY2hpbGQgPiAubWVudS1saXN0X190b2dnbGUge1xuICBwYWRkaW5nLWJvdHRvbTogMC44ZW07XG59XG5cbi8qIHBhZ2luYXRpb24gdmFyaWFudCAqL1xuLm1lbnUtbGlzdC0tcGFnaW5hdGlvbiB7XG4gIGZvbnQtZmFtaWx5OiBcImNhbGlicmlcIiwgXCJIZWx2ZXRpY2FcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4ubWVudS1saXN0LS1wYWdpbmF0aW9uIC5tZW51LWxpc3RfX2l0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1yaWdodDogMC41NzE0Mjg1NzE0ZW07XG59XG4ubWVudS1saXN0LS1wYWdpbmF0aW9uIC5tZW51LWxpc3RfX2xpbmstLWN1cnJlbnQge1xuICBjb2xvcjogIzU1NDYzMjtcbiAgY3Vyc29yOiBhdXRvO1xufVxuXG4vKiBzb2NpYWwgdmFyaWFudCAqL1xuLm1lbnUtbGlzdC0tc29jaWFsOm5vdCgubWVudS1saXN0LS12ZXJ0aWNhbCkgPiAubWVudS1saXN0X19pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbn1cbi5tZW51LWxpc3QtLXNvY2lhbCAubWVudS1saXN0X19pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMi41ZW07XG59XG5cbi8qIHN1Ym1lbnUgdmFyaWFudCAqL1xuLm1lbnUtbGlzdC0tc3VibWVudSB7XG4gIGZvbnQtZmFtaWx5OiBcImxpdGhvcy1wcm9cIiwgXCJIZWx2ZXRpY2FcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5tZW51LWxpc3QtLXN1Ym1lbnUge1xuICB0ZXh0LXNoYWRvdzogLTAuMTMzMzMzMzMzM2VtIC0wLjEzMzMzMzMzMzNlbSAwICNGRkZGRkYsIDAgLTAuMTMzMzMzMzMzM2VtIDAgI0ZGRkZGRiwgMC4xMzMzMzMzMzMzZW0gLTAuMTMzMzMzMzMzM2VtIDAgI0ZGRkZGRiwgMC4xMzMzMzMzMzMzZW0gMCAwICNGRkZGRkYsIDAuMTMzMzMzMzMzM2VtIDAuMTMzMzMzMzMzM2VtIDAgI0ZGRkZGRiwgMCAwLjEzMzMzMzMzMzNlbSAwICNGRkZGRkYsIC0wLjEzMzMzMzMzMzNlbSAwLjEzMzMzMzMzMzNlbSAwICNGRkZGRkYsIC0wLjEzMzMzMzMzMzNlbSAwIDAgI0ZGRkZGRjtcbn1cbi5tZW51LWxpc3QtLXN1Ym1lbnUgLm1lbnUtbGlzdF9faXRlbSB7XG4gIHBhZGRpbmc6IDByZW0gMHJlbSAwLjVyZW07XG59XG4ubWVudS1saXN0LS1zdWJtZW51IC5tZW51LWxpc3RfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xufVxuLm1lbnUtbGlzdC0tc3VibWVudSAubWVudS1saXN0X19pdGVtOjphZnRlcixcbi5tZW51LWxpc3QtLXN1Ym1lbnUgLm1lbnUtbGlzdF9faXRlbTpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1kaXZpZGVyLnBuZ1wiKTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMC41cmVtO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm1lbnUtbGlzdC0tc3VibWVudSAubWVudS1saXN0X19pdGVtOjphZnRlciB7XG4gIGJvdHRvbTogMDtcbn1cbi5tZW51LWxpc3QtLXN1Ym1lbnUgLm1lbnUtbGlzdF9faXRlbTpmaXJzdC1jaGlsZDo6YmVmb3JlIHtcbiAgdG9wOiAwO1xufVxuLm1lbnUtbGlzdC0tc3VibWVudSAubWVudS1saXN0X19saW5rIHtcbiAgcGFkZGluZzogMC4yNWVtIDEuNWVtO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBOaW5qYSBGb3Jtc1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItY2xhc3MtcGF0dGVybiAqL1xuLm5mLWZvcm0taHAge1xuICBsZWZ0OiAtOTk5ZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5ZW07XG59XG5cbi5uZi1maWVsZC1jb250YWluZXIgLnBpa2FkYXlfX2NvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubmYtZmllbGQtY29udGFpbmVyIC5saXN0LWNoZWNrYm94LFxuLm5mLWZpZWxkLWNvbnRhaW5lciAubGlzdC1yYWRpbyB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5uZi1maWVsZC1jb250YWluZXIubGFiZWwtYWJvdmUgLmZpZWxkLXdyYXAsIC5uZi1maWVsZC1jb250YWluZXIubGFiZWwtcmlnaHQgLmZpZWxkLXdyYXAsIC5uZi1maWVsZC1jb250YWluZXIubGFiZWwtYmVsb3cgLmZpZWxkLXdyYXAsIC5uZi1maWVsZC1jb250YWluZXIubGFiZWwtbGVmdCAuZmllbGQtd3JhcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1yaWdodCAuZmllbGQtd3JhcCAubmYtZmllbGQtbGFiZWwsIC5uZi1maWVsZC1jb250YWluZXIubGFiZWwtbGVmdCAuZmllbGQtd3JhcCAubmYtZmllbGQtbGFiZWwge1xuICBmbGV4OiBub25lO1xufVxuLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1hYm92ZSAuZmllbGQtd3JhcCAubmYtZmllbGQtZWxlbWVudCwgLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAuZmllbGQtd3JhcCAubmYtZmllbGQtZWxlbWVudCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1yaWdodCAuZmllbGQtd3JhcCAubmYtZmllbGQtZWxlbWVudCwgLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1sZWZ0IC5maWVsZC13cmFwIC5uZi1maWVsZC1lbGVtZW50IHtcbiAgZmxleDogMSAxIGF1dG87XG59XG4ubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLXJpZ2h0IC5jaGVja2JveC13cmFwIC5uZi1maWVsZC1lbGVtZW50LCAubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWxlZnQgLmNoZWNrYm94LXdyYXAgLm5mLWZpZWxkLWVsZW1lbnQge1xuICBmbGV4OiBub25lO1xufVxuLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1hYm92ZSAuZmllbGQtd3JhcCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4ubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWJlbG93IC5maWVsZC13cmFwIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5uZi1maWVsZC1jb250YWluZXIubGFiZWwtYmVsb3cgLmZpZWxkLXdyYXAgLm5mLWZpZWxkLWxhYmVsIHtcbiAgb3JkZXI6IDI7XG59XG4ubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWJlbG93IC5maWVsZC13cmFwIC5uZi1maWVsZC1lbGVtZW50IHtcbiAgb3JkZXI6IDE7XG59XG4ubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLXJpZ2h0IC5maWVsZC13cmFwIC5uZi1maWVsZC1sYWJlbCB7XG4gIG9yZGVyOiAyO1xufVxuLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1yaWdodCAuZmllbGQtd3JhcCAubmYtZmllbGQtZWxlbWVudCB7XG4gIG9yZGVyOiAxO1xufVxuLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1oaWRkZW4gLmZpZWxkLXdyYXAgLm5mLWZpZWxkLWxhYmVsIHtcbiAgbGVmdDogLTk5OWVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OWVtO1xufVxuXG4uZ3JlY2FwdGNoYS1iYWRnZSB7XG4gIHotaW5kZXg6IDk5OTtcbn1cblxuLm5mLWhhcy1jb2x1bW5zIC5uZi1yb3cge1xuICBtYXJnaW46IDAgLTVweDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogT3BpbmlvbmF0ZWQgVHdlYWtzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uaXMtb2ZmbGluZSAubmYtZm9ybS1jb250IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmlzLW9mZmxpbmUgLm5mLWZvcm0tY29udDo6YmVmb3JlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogcmdiYSgyMzYsIDIzMiwgMjIyLCAwLjc1KTtcbiAgY29udGVudDogXCJTb3JyeSwgaXQgbG9va3MgbGlrZSB5b3UncmUgb2ZmbGluZS4gUGxlYXNlIHJlY29ubmVjdCB0byB0aGUgaW50ZXJuZXQgdG8gdXNlIHRoaXMgZm9ybS5cIjtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1mYW1pbHk6IFwiY2FsaWJyaVwiLCBcIkhlbHZldGljYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAxLjI1ZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubmluamEtZm9ybXMtcmVxLXN5bWJvbCB7XG4gIGNvbG9yOiAjQjMzNTI3O1xufVxuXG4ubmluamEtZm9ybXMtaGVscC1zeW1ib2wge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm5pbmphLWZvcm1zLWhlbHAtdG9vbHRpcCB7XG4gIGJhY2tncm91bmQ6ICM0NDQ0NDQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuNDI4NTcxNDI4NmVtO1xuICBib3R0b206IDEzMCU7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgbGVmdDogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwLjcxNDI4NTcxNDNlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDUwJSk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMsIHRyYW5zZm9ybSAwLjE1cztcbiAgd2lkdGg6IDE0LjI4NTcxNDI4NTdlbTtcbn1cbi5uaW5qYS1mb3Jtcy1oZWxwLXN5bWJvbC5pcy1hY3RpdmUgLm5pbmphLWZvcm1zLWhlbHAtdG9vbHRpcCB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cbi5uaW5qYS1mb3Jtcy1oZWxwLXRvb2x0aXA6OmFmdGVyIHtcbiAgYm9yZGVyLWxlZnQ6IDAuMzc1ZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMC4zNzVlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogMC4zNzVlbSBzb2xpZCAjNDQ0NDQ0O1xuICBjb250ZW50OiBcIlwiO1xuICBsZWZ0OiA1MCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG4ubmluamEtZm9ybXMtaGVscC10b29sdGlwIC5uaW5qYS1mb3Jtcy11c2VyLWNvbnRlbnQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLm5mLWZpZWxkLWNvbnRhaW5lciAubGlzdC1jaGVja2JveCxcbi5uZi1maWVsZC1jb250YWluZXIgLmxpc3QtcmFkaW8ge1xuICBmb250LXNpemU6IDFlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNWVtO1xufVxuLm5mLWZpZWxkLWNvbnRhaW5lciAubGlzdC1jaGVja2JveCAuaW5wdXQtLWNoZWNrYm94LFxuLm5mLWZpZWxkLWNvbnRhaW5lciAubGlzdC1yYWRpbyAuaW5wdXQtLXJhZGlvYnV0dG9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNWVtO1xufVxuLm5mLWZpZWxkLWNvbnRhaW5lciAubGlzdC1jaGVja2JveCAudGV4dC0tbGFiZWwsXG4ubmYtZmllbGQtY29udGFpbmVyIC5saXN0LXJhZGlvIC50ZXh0LS1sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVlbTtcbn1cblxuLm5mLWZpZWxkLWNvbnRhaW5lciAuc3RhcnMge1xuICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbn1cblxuLm5mLWVycm9yLW1zZyB7XG4gIGNvbG9yOiAjRDQ0OTM5O1xufVxuXG4ubmYtZmllbGQtY29udGFpbmVyIC5nLXJlY2FwdGNoYTpub3QoW2RhdGEtc2l6ZT1pbnZpc2libGVdKSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xufVxuXG4ubmYtZmllbGQtY29udGFpbmVyIC50ZXh0LS1sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1hYm92ZSAubmYtZmllbGQtbGFiZWwgPiAudGV4dC0tbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwLjI1ZW07XG59XG4ubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWJlbG93IC5uZi1maWVsZC1sYWJlbCA+IC50ZXh0LS1sYWJlbCB7XG4gIG1hcmdpbi10b3A6IDAuMjVlbTtcbn1cbi5uZi1maWVsZC1jb250YWluZXIubGFiZWwtYmVsb3cgLm5mLWZpZWxkLWVsZW1lbnQgLmlucHV0LCAubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWJlbG93IC5uZi1maWVsZC1lbGVtZW50IC5zdGFycywgLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAubGlzdC1jaGVja2JveCwgLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAubGlzdC1yYWRpbyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG9yZGVyOiAxO1xufVxuLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1sZWZ0IC5uZi1maWVsZC1sYWJlbCA+IC50ZXh0LS1sYWJlbCB7XG4gIG1hcmdpbi1yaWdodDogMC42MjVlbTtcbn1cbi5uZi1maWVsZC1jb250YWluZXIubGFiZWwtcmlnaHQgLm5mLWZpZWxkLWxhYmVsID4gLnRleHQtLWxhYmVsIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1ZW07XG59XG4ubmYtZmllbGQtY29udGFpbmVyLmxpc3RjaGVja2JveC1jb250YWluZXIgLmlucHV0LS1jaGVja2JveCwgLm5mLWZpZWxkLWNvbnRhaW5lci5saXN0cmFkaW8tY29udGFpbmVyIC5pbnB1dC0tcmFkaW9idXR0b24ge1xuICBtYXJnaW4tcmlnaHQ6IDAuMzc1ZW07XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFBhbmVsIFRvZ2dsZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnBhbmVsLXRvZ2dsZSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6ICMwMDgzNDk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjY2NjY2NjY2NjdlbTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxLjY2NjY2NjY2NjdlbTtcbn1cblxuLyohIFBob3RvU3dpcGUgbWFpbiBDU1MgYnkgRG1pdHJ5IFNlbWVub3YgfCBwaG90b3N3aXBlLmNvbSB8IE1JVCBsaWNlbnNlICovXG4vKlxuXHRTdHlsZXMgZm9yIGJhc2ljIFBob3RvU3dpcGUgZnVuY3Rpb25hbGl0eSAoc2xpZGluZyBhcmVhLCBvcGVuL2Nsb3NlIHRyYW5zaXRpb25zKVxuKi9cbi8qIHBzd3AgPSBwaG90b3N3aXBlICovXG4ucHN3cCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG4gIHotaW5kZXg6IDE1MDA7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogY3JlYXRlIHNlcGFyYXRlIGxheWVyLCB0byBhdm9pZCBwYWludCBvbiB3aW5kb3cub25zY3JvbGwgaW4gd2Via2l0L2JsaW5rICovXG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4ucHN3cCAqIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ucHN3cCBpbWcge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbi8qIHN0eWxlIGlzIGFkZGVkIHdoZW4gSlMgb3B0aW9uIHNob3dIaWRlT3BhY2l0eSBpcyBzZXQgdG8gdHJ1ZSAqL1xuLnBzd3AtLWFuaW1hdGVfb3BhY2l0eSB7XG4gIC8qIDAuMDAxLCBiZWNhdXNlIG9wYWNpdHk6MCBkb2Vzbid0IHRyaWdnZXIgUGFpbnQgYWN0aW9uLCB3aGljaCBjYXVzZXMgbGFnIGF0IHN0YXJ0IG9mIHRyYW5zaXRpb24gKi9cbiAgb3BhY2l0eTogMC4wMDE7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICAvKiBmb3Igb3Blbi9jbG9zZSB0cmFuc2l0aW9uICovXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcbn1cblxuLnBzd3AtLW9wZW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnBzd3AtLXpvb20tYWxsb3dlZCAucHN3cF9faW1nIHtcbiAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cbiAgY3Vyc29yOiAtd2Via2l0LXpvb20taW47XG4gIGN1cnNvcjogLW1vei16b29tLWluO1xuICBjdXJzb3I6IHpvb20taW47XG59XG5cbi5wc3dwLS16b29tZWQtaW4gLnBzd3BfX2ltZyB7XG4gIC8qIGF1dG9wcmVmaXhlcjogb2ZmICovXG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xuICBjdXJzb3I6IC1tb3otZ3JhYjtcbiAgY3Vyc29yOiBncmFiO1xufVxuXG4ucHN3cC0tZHJhZ2dpbmcgLnBzd3BfX2ltZyB7XG4gIC8qIGF1dG9wcmVmaXhlcjogb2ZmICovXG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgY3Vyc29yOiAtbW96LWdyYWJiaW5nO1xuICBjdXJzb3I6IGdyYWJiaW5nO1xufVxuXG4vKlxuXHRCYWNrZ3JvdW5kIGlzIGFkZGVkIGFzIGEgc2VwYXJhdGUgZWxlbWVudC5cblx0QXMgYW5pbWF0aW5nIG9wYWNpdHkgaXMgbXVjaCBmYXN0ZXIgdGhhbiBhbmltYXRpbmcgcmdiYSgpIGJhY2tncm91bmQtY29sb3IuXG4qL1xuLnBzd3BfX2JnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbn1cblxuLnBzd3BfX3Njcm9sbC13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wc3dwX19jb250YWluZXIsXG4ucHN3cF9fem9vbS13cmFwIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbn1cblxuLyogUHJldmVudCBzZWxlY3Rpb24gYW5kIHRhcCBoaWdobGlnaHRzICovXG4ucHN3cF9fY29udGFpbmVyLFxuLnBzd3BfX2ltZyB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbn1cblxuLnBzd3BfX3pvb20td3JhcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIC8qIGZvciBvcGVuL2Nsb3NlIHRyYW5zaXRpb24gKi9cbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpO1xufVxuXG4ucHN3cF9fYmcge1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgLyogZm9yIG9wZW4vY2xvc2UgdHJhbnNpdGlvbiAqL1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7XG59XG5cbi5wc3dwLS1hbmltYXRlZC1pbiAucHN3cF9fYmcsXG4ucHN3cC0tYW5pbWF0ZWQtaW4gLnBzd3BfX3pvb20td3JhcCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLnBzd3BfX2NvbnRhaW5lcixcbi5wc3dwX196b29tLXdyYXAge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnBzd3BfX2l0ZW0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBzd3BfX2ltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xufVxuXG4vKlxuXHRzdHJldGNoZWQgdGh1bWJuYWlsIG9yIGRpdiBwbGFjZWhvbGRlciBlbGVtZW50IChzZWUgYmVsb3cpXG5cdHN0eWxlIGlzIGFkZGVkIHRvIGF2b2lkIGZsaWNrZXJpbmcgaW4gd2Via2l0L2JsaW5rIHdoZW4gbGF5ZXJzIG92ZXJsYXBcbiovXG4ucHN3cF9faW1nLS1wbGFjZWhvbGRlciB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKlxuXHRkaXYgZWxlbWVudCB0aGF0IG1hdGNoZXMgc2l6ZSBvZiBsYXJnZSBpbWFnZVxuXHRsYXJnZSBpbWFnZSBsb2FkcyBvbiB0b3Agb2YgaXRcbiovXG4ucHN3cF9faW1nLS1wbGFjZWhvbGRlci0tYmxhbmsge1xuICBiYWNrZ3JvdW5kOiAjMjIyO1xufVxuXG4ucHN3cC0taWUgLnBzd3BfX2ltZyB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG5cbi8qXG5cdEVycm9yIG1lc3NhZ2UgYXBwZWFycyB3aGVuIGltYWdlIGlzIG5vdCBsb2FkZWRcblx0KEpTIG9wdGlvbiBlcnJvck1zZyBjb250cm9scyBtYXJrdXApXG4qL1xuLnBzd3BfX2Vycm9yLW1zZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIG1hcmdpbi10b3A6IC04cHg7XG4gIGNvbG9yOiAjQ0NDO1xufVxuXG4ucHN3cF9fZXJyb3ItbXNnIGEge1xuICBjb2xvcjogI0NDQztcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi8qISBQaG90b1N3aXBlIERlZmF1bHQgVUkgQ1NTIGJ5IERtaXRyeSBTZW1lbm92IHwgcGhvdG9zd2lwZS5jb20gfCBNSVQgbGljZW5zZSAqL1xuLypcblxuXHRDb250ZW50czpcblxuXHQxLiBCdXR0b25zXG5cdDIuIFNoYXJlIG1vZGFsIGFuZCBsaW5rc1xuXHQzLiBJbmRleCBpbmRpY2F0b3IgKFwiMSBvZiBYXCIgY291bnRlcilcblx0NC4gQ2FwdGlvblxuXHQ1LiBMb2FkaW5nIGluZGljYXRvclxuXHQ2LiBBZGRpdGlvbmFsIHN0eWxlcyAocm9vdCBlbGVtZW50LCB0b3AgYmFyLCBpZGxlIHN0YXRlLCBoaWRkZW4gc3RhdGUsIGV0Yy4pXG5cbiovXG4vKlxuXG5cdDEuIEJ1dHRvbnNcblxuICovXG4vKiA8YnV0dG9uPiBjc3MgcmVzZXQgKi9cbi5wc3dwX19idXR0b24ge1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBmbG9hdDogcmlnaHQ7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnBzd3BfX2J1dHRvbjpmb2N1cywgLnBzd3BfX2J1dHRvbjpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5wc3dwX19idXR0b246YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgb3BhY2l0eTogMC45O1xufVxuXG4ucHN3cF9fYnV0dG9uOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vKiBwc3dwX191aS0tb3Zlci1jbG9zZSBjbGFzcyBpdCBhZGRlZCB3aGVuIG1vdXNlIGlzIG92ZXIgZWxlbWVudCB0aGF0IHNob3VsZCBjbG9zZSBnYWxsZXJ5ICovXG4ucHN3cF9fdWktLW92ZXItY2xvc2UgLnBzd3BfX2J1dHRvbi0tY2xvc2Uge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ucHN3cF9fYnV0dG9uLFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQ6YmVmb3JlLFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IHVybChkZWZhdWx0LXNraW4ucG5nKSAwIDAgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDI2NHB4IDg4cHg7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG59XG5cbkBtZWRpYSAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjEpLCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjA5Mzc1KSwgKG1pbi1yZXNvbHV0aW9uOiAxMDVkcGkpLCAobWluLXJlc29sdXRpb246IDEuMWRwcHgpIHtcbiAgLyogU2VydmUgU1ZHIHNwcml0ZSBpZiBicm93c2VyIHN1cHBvcnRzIFNWRyBhbmQgcmVzb2x1dGlvbiBpcyBtb3JlIHRoYW4gMTA1ZHBpICovXG4gIC5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbixcbi5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQ6YmVmb3JlLFxuLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGVmYXVsdC1za2luLnN2Zyk7XG4gIH1cblxuICAucHN3cC0tc3ZnIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cbn1cbi5wc3dwX19idXR0b24tLWNsb3NlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDRweDtcbn1cblxuLnBzd3BfX2J1dHRvbi0tc2hhcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDRweCAtNDRweDtcbn1cblxuLnBzd3BfX2J1dHRvbi0tZnMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucHN3cC0tc3VwcG9ydHMtZnMgLnBzd3BfX2J1dHRvbi0tZnMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnBzd3AtLWZzIC5wc3dwX19idXR0b24tLWZzIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0cHggMDtcbn1cblxuLnBzd3BfX2J1dHRvbi0tem9vbSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04OHB4IDA7XG59XG5cbi5wc3dwLS16b29tLWFsbG93ZWQgLnBzd3BfX2J1dHRvbi0tem9vbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucHN3cC0tem9vbWVkLWluIC5wc3dwX19idXR0b24tLXpvb20ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTMycHggMDtcbn1cblxuLyogbm8gYXJyb3dzIG9uIHRvdWNoIHNjcmVlbnMgKi9cbi5wc3dwLS10b3VjaCAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwLS10b3VjaCAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qXG5cdEFycm93IGJ1dHRvbnMgaGl0IGFyZWFcblx0KGljb24gaXMgYWRkZWQgdG8gOmJlZm9yZSBwc2V1ZG8tZWxlbWVudClcbiovXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtNTBweDtcbiAgd2lkdGg6IDcwcHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQge1xuICBsZWZ0OiAwO1xufVxuXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICByaWdodDogMDtcbn1cblxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQ6YmVmb3JlLFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHRvcDogMzVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBoZWlnaHQ6IDMwcHg7XG4gIHdpZHRoOiAzMnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0OmJlZm9yZSB7XG4gIGxlZnQ6IDZweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEzOHB4IC00NHB4O1xufVxuXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQ6YmVmb3JlIHtcbiAgcmlnaHQ6IDZweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk0cHggLTQ0cHg7XG59XG5cbi8qXG5cblx0Mi4gU2hhcmUgbW9kYWwvcG9wdXAgYW5kIGxpbmtzXG5cbiAqL1xuLnBzd3BfX2NvdW50ZXIsXG4ucHN3cF9fc2hhcmUtbW9kYWwge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4ucHN3cF9fc2hhcmUtbW9kYWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTYwMDtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2Utb3V0O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG59XG5cbi5wc3dwX19zaGFyZS1tb2RhbC0taGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnBzd3BfX3NoYXJlLXRvb2x0aXAge1xuICB6LWluZGV4OiAxNjIwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIHRvcDogNTZweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIHJpZ2h0OiA0NHB4O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBib3gtc2hhZG93OiAwIDJweCA1cHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNnB4KTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAwLjI1cztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbn1cblxuLnBzd3BfX3NoYXJlLXRvb2x0aXAgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA4cHggMTJweDtcbiAgY29sb3I6ICMwMDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbn1cblxuLnBzd3BfX3NoYXJlLXRvb2x0aXAgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi5wc3dwX19zaGFyZS10b29sdGlwIGE6Zmlyc3QtY2hpbGQge1xuICAvKiByb3VuZCBjb3JuZXJzIG9uIHRoZSBmaXJzdC9sYXN0IGxpc3QgaXRlbSAqL1xuICBib3JkZXItcmFkaXVzOiAycHggMnB4IDAgMDtcbn1cblxuLnBzd3BfX3NoYXJlLXRvb2x0aXAgYTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDJweCAycHg7XG59XG5cbi5wc3dwX19zaGFyZS1tb2RhbC0tZmFkZS1pbiB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5wc3dwX19zaGFyZS1tb2RhbC0tZmFkZS1pbiAucHN3cF9fc2hhcmUtdG9vbHRpcCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi8qIGluY3JlYXNlIHNpemUgb2Ygc2hhcmUgbGlua3Mgb24gdG91Y2ggZGV2aWNlcyAqL1xuLnBzd3AtLXRvdWNoIC5wc3dwX19zaGFyZS10b29sdGlwIGEge1xuICBwYWRkaW5nOiAxNnB4IDEycHg7XG59XG5cbmEucHN3cF9fc2hhcmUtLWZhY2Vib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTEycHg7XG4gIHJpZ2h0OiAxNXB4O1xuICBib3JkZXI6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI0ZGRjtcbiAgLXdlYmtpdC1wb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLW1vei1wb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbmEucHN3cF9fc2hhcmUtLWZhY2Vib29rOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzNFNUM5QTtcbiAgY29sb3I6ICNGRkY7XG59XG5cbmEucHN3cF9fc2hhcmUtLWZhY2Vib29rOmhvdmVyOmJlZm9yZSB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICMzRTVDOUE7XG59XG5cbmEucHN3cF9fc2hhcmUtLXR3aXR0ZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjNTVBQ0VFO1xuICBjb2xvcjogI0ZGRjtcbn1cblxuYS5wc3dwX19zaGFyZS0tcGludGVyZXN0OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0NDQztcbiAgY29sb3I6ICNDRTI3MkQ7XG59XG5cbmEucHN3cF9fc2hhcmUtLWRvd25sb2FkOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0RERDtcbn1cblxuLypcblxuXHQzLiBJbmRleCBpbmRpY2F0b3IgKFwiMSBvZiBYXCIgY291bnRlcilcblxuICovXG4ucHN3cF9fY291bnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gIGNvbG9yOiAjRkZGO1xuICBvcGFjaXR5OiAwLjc1O1xuICBwYWRkaW5nOiAwIDEwcHg7XG59XG5cbi8qXG5cblx0NC4gQ2FwdGlvblxuXG4gKi9cbi5wc3dwX19jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiA0NHB4O1xufVxuXG4ucHN3cF9fY2FwdGlvbiBzbWFsbCB7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgY29sb3I6ICNCQkI7XG59XG5cbi5wc3dwX19jYXB0aW9uX19jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXgtd2lkdGg6IDQyMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgZm9udC1zaXplOiAxM3B4O1xuICBwYWRkaW5nOiAxMHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgY29sb3I6ICNDQ0M7XG59XG5cbi5wc3dwX19jYXB0aW9uLS1lbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEZha2UgY2FwdGlvbiBlbGVtZW50LCB1c2VkIHRvIGNhbGN1bGF0ZSBoZWlnaHQgb2YgbmV4dC9wcmV2IGltYWdlICovXG4ucHN3cF9fY2FwdGlvbi0tZmFrZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLypcblxuXHQ1LiBMb2FkaW5nIGluZGljYXRvciAocHJlbG9hZGVyKVxuXG5cdFlvdSBjYW4gcGxheSB3aXRoIGl0IGhlcmUgLSBodHRwOi8vY29kZXBlbi5pby9kaW1zZW1lbm92L3Blbi95eUJXb1JcblxuICovXG4ucHN3cF9fcHJlbG9hZGVyIHtcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogNDRweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMnB4O1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1vdXQ7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICBkaXJlY3Rpb246IGx0cjtcbn1cblxuLnBzd3BfX3ByZWxvYWRlcl9faWNuIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgbWFyZ2luOiAxMnB4O1xufVxuXG4ucHN3cF9fcHJlbG9hZGVyLS1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ucHN3cF9fcHJlbG9hZGVyLS1hY3RpdmUgLnBzd3BfX3ByZWxvYWRlcl9faWNuIHtcbiAgLyogV2UgdXNlIC5naWYgaW4gYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IENTUyBhbmltYXRpb24gKi9cbiAgYmFja2dyb3VuZDogdXJsKHByZWxvYWRlci5naWYpIDAgMCBuby1yZXBlYXQ7XG59XG5cbi5wc3dwLS1jc3NfYW5pbWF0aW9uIC5wc3dwX19wcmVsb2FkZXItLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5wc3dwLS1jc3NfYW5pbWF0aW9uIC5wc3dwX19wcmVsb2FkZXItLWFjdGl2ZSAucHN3cF9fcHJlbG9hZGVyX19pY24ge1xuICAtd2Via2l0LWFuaW1hdGlvbjogY2xvY2t3aXNlIDUwMG1zIGxpbmVhciBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBjbG9ja3dpc2UgNTAwbXMgbGluZWFyIGluZmluaXRlO1xufVxuXG4ucHN3cC0tY3NzX2FuaW1hdGlvbiAucHN3cF9fcHJlbG9hZGVyLS1hY3RpdmUgLnBzd3BfX3ByZWxvYWRlcl9fZG9udXQge1xuICAtd2Via2l0LWFuaW1hdGlvbjogZG9udXQtcm90YXRlIDEwMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKSBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBkb251dC1yb3RhdGUgMTAwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpIGluZmluaXRlO1xufVxuXG4ucHN3cC0tY3NzX2FuaW1hdGlvbiAucHN3cF9fcHJlbG9hZGVyX19pY24ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBvcGFjaXR5OiAwLjc1O1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDE1cHg7XG4gIHRvcDogMTVweDtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucHN3cC0tY3NzX2FuaW1hdGlvbiAucHN3cF9fcHJlbG9hZGVyX19jdXQge1xuICAvKiBcbiAgXHRUaGUgaWRlYSBvZiBhbmltYXRpbmcgaW5uZXIgY2lyY2xlIGlzIGJhc2VkIG9uIFBvbHltZXIgKFwibWF0ZXJpYWxcIikgbG9hZGluZyBpbmRpY2F0b3IgXG4gIFx0IGJ5IEtlYW51IExlZSBodHRwczovL2Jsb2cua2VhbnVsZWUuY29tLzIwMTQvMTAvMjAvdGhlLXRhbGUtb2YtdGhyZWUtc3Bpbm5lcnMuaHRtbFxuICAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA3cHg7XG4gIGhlaWdodDogMTRweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBzd3AtLWNzc19hbmltYXRpb24gLnBzd3BfX3ByZWxvYWRlcl9fZG9udXQge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5wc3dwX19wcmVsb2FkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHRvcDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgY2xvY2t3aXNlIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgY2xvY2t3aXNlIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBkb251dC1yb3RhdGUge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTE0MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTE0MGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBkb251dC1yb3RhdGUge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTE0MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTE0MGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxufVxuLypcblxuXHQ2LiBBZGRpdGlvbmFsIHN0eWxlc1xuXG4gKi9cbi8qIHJvb3QgZWxlbWVudCBvZiBVSSAqL1xuLnBzd3BfX3VpIHtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYXV0bztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbiAgei1pbmRleDogMTU1MDtcbn1cblxuLyogdG9wIGJsYWNrIGJhciB3aXRoIGJ1dHRvbnMgYW5kIFwiMSBvZiBYXCIgaW5kaWNhdG9yICovXG4ucHN3cF9fdG9wLWJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDQ0cHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucHN3cF9fY2FwdGlvbixcbi5wc3dwX190b3AtYmFyLFxuLnBzd3AtLWhhc19tb3VzZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwLS1oYXNfbW91c2UgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7XG59XG5cbi8qIHBzd3AtLWhhc19tb3VzZSBjbGFzcyBpcyBhZGRlZCBvbmx5IHdoZW4gdHdvIHN1YnNlcXVlbnQgbW91c2Vtb3ZlIGV2ZW50cyBvY2N1ciAqL1xuLnBzd3AtLWhhc19tb3VzZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwLS1oYXNfbW91c2UgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLnBzd3BfX3RvcC1iYXIsXG4ucHN3cF9fY2FwdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLyogcHN3cF9fdWktLWZpdCBjbGFzcyBpcyBhZGRlZCB3aGVuIG1haW4gaW1hZ2UgXCJmaXRzXCIgYmV0d2VlbiB0b3AgYmFyIGFuZCBib3R0b20gYmFyIChjYXB0aW9uKSAqL1xuLnBzd3BfX3VpLS1maXQgLnBzd3BfX3RvcC1iYXIsXG4ucHN3cF9fdWktLWZpdCAucHN3cF9fY2FwdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cblxuLyogcHN3cF9fdWktLWlkbGUgY2xhc3MgaXMgYWRkZWQgd2hlbiBtb3VzZSBpc24ndCBtb3ZpbmcgZm9yIHNldmVyYWwgc2Vjb25kcyAoSlMgb3B0aW9uIHRpbWVUb0lkbGUpICovXG4ucHN3cF9fdWktLWlkbGUgLnBzd3BfX3RvcC1iYXIge1xuICBvcGFjaXR5OiAwO1xufVxuXG4ucHN3cF9fdWktLWlkbGUgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4ucHN3cF9fdWktLWlkbGUgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLypcblx0cHN3cF9fdWktLWhpZGRlbiBjbGFzcyBpcyBhZGRlZCB3aGVuIGNvbnRyb2xzIGFyZSBoaWRkZW5cblx0ZS5nLiB3aGVuIHVzZXIgdGFwcyB0byB0b2dnbGUgdmlzaWJpbGl0eSBvZiBjb250cm9sc1xuKi9cbi5wc3dwX191aS0taGlkZGVuIC5wc3dwX190b3AtYmFyLFxuLnBzd3BfX3VpLS1oaWRkZW4gLnBzd3BfX2NhcHRpb24sXG4ucHN3cF9fdWktLWhpZGRlbiAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwX191aS0taGlkZGVuIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gIC8qIEZvcmNlIHBhaW50ICYgY3JlYXRlIGNvbXBvc2l0aW9uIGxheWVyIGZvciBjb250cm9scy4gKi9cbiAgb3BhY2l0eTogMC4wMDE7XG59XG5cbi8qIHBzd3BfX3VpLS1vbmUtc2xpZGUgY2xhc3MgaXMgYWRkZWQgd2hlbiB0aGVyZSBpcyBqdXN0IG9uZSBpdGVtIGluIGdhbGxlcnkgKi9cbi5wc3dwX191aS0tb25lLXNsaWRlIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3BfX3VpLS1vbmUtc2xpZGUgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0LFxuLnBzd3BfX3VpLS1vbmUtc2xpZGUgLnBzd3BfX2NvdW50ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucHN3cF9fZWxlbWVudC0tZGlzYWJsZWQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5wc3dwLS1taW5pbWFsLS1kYXJrIC5wc3dwX190b3AtYmFyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogUGhvdG9Td2lwZSAoaHR0cDovL3Bob3Rvc3dpcGUuY29tLylcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWNsYXNzLXBhdHRlcm4gKi9cbi5wc3dwIHtcbiAgei1pbmRleDogMTAwMDAwO1xufVxuXG4ucHN3cF9fYnV0dG9uLFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQ6OmJlZm9yZSxcbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvdmVuZG9yL3Bob3Rvc3dpcGUtZGVmYXVsdC1za2luLnBuZ1wiKTtcbn1cblxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG5AbWVkaWEgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS4xKSwgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS4wOTM3NSksIChtaW4tcmVzb2x1dGlvbjogMTA1ZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAxLjFkcHB4KSB7XG4gIC5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbixcbi5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQ6OmJlZm9yZSxcbi5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0OjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2Zy1sb2FkKFwiLi4vbWVkaWEvdmVuZG9yL3Bob3Rvc3dpcGUtZGVmYXVsdC1za2luLnN2Z1wiKTtcbiAgfVxuXG4gIC5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4ucHN3cC0tc3ZnIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgfVxufVxuLnBzd3BfX3ByZWxvYWRlci0tYWN0aXZlIC5wc3dwX19wcmVsb2FkZXJfX2ljbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL3ZlbmRvci9waG90b3N3aXBlLXByZWxvYWRlci5naWZcIik7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFBvcHBlci5qcyAoaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvQHBvcHBlcmpzL2NvcmUpXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucG9wcGVyanMtdG9vbHRpcCB7XG4gIGJhY2tncm91bmQ6ICM5MDcwNTU7XG4gIGJveC1zaGFkb3c6IDBlbSAwZW0gMC4zNzVlbSByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDBlbSAwZW0gMWVtICFpbXBvcnRhbnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5wb3BwZXJqcy10b29sdGlwW2RhdGEtcG9wcGVyLXBsYWNlbWVudF0ge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cbi5wb3BwZXJqcy10b29sdGlwW2RhdGEtcG9wcGVyLXBsYWNlbWVudF1bZGF0YS1zaG93XSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucG9wcGVyanMtdG9vbHRpcF9fdGl0bGUge1xuICBiYWNrZ3JvdW5kOiAjRTdCRTdDO1xuICBjb2xvcjogI0IzMzUyNztcbiAgZm9udC1zaXplOiAxZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC40Njg3NWVtIDAuNjI1ZW07XG59XG5cbi5wb3BwZXJqcy10b29sdGlwX190ZXh0IHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDAuNDY4NzVlbSAwLjYyNWVtO1xufVxuXG4ucG9wcGVyanMtdG9vbHRpcF9faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwZW0gMC42MjVlbSAwZW0gMGVtO1xuICB3aWR0aDogMi4xODc1ZW07XG59XG5cbi8qKlxuICogUFdBIEluc3RhbGwgUHJvbXB0IDEuMC4yXG4gKiBQcm9tcHQgdXNlcnMgdG8gYWRkIHlvdXIgUFdBIHRvIHRoZWlyIGhvbWUgc2NyZWVuLCBzaW5jZSBBcHBsZSB3b27igJl0LlxuICogaHR0cHM6Ly9naXRodWIuY29tL0phY29iREIvcHdhLWluc3RhbGwtcHJvbXB0L1xuICpcbiAqIENvcHlyaWdodCAyMDE4IEphY29iIEJlYXJjZVxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZVxuICpcbiAqIFJlbGVhc2VkIG9uOiBOb3ZlbWJlciA2LCAyMDE4XG4gKi9cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX2NvbnRhaW5lciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTAwJTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGxlZnQ6IC05OTllbTtcbiAgcGFkZGluZzogMzBweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IC05OTllbTtcbiAgdHJhbnNpdGlvbjogbGVmdCAwcyAwLjE1cywgdG9wIDBzIDAuMTVzLCB2aXNpYmlsaXR5IDBzIDAuMTVzO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDAwMDA7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX2NvbnRhaW5lci5pcy1hY3RpdmUge1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX292ZXJsYXkge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGJvcmRlcjogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtaW5kZW50OiAtOTk5ZW07XG4gIHRvcDogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cztcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDA7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX2NvbnRhaW5lci5pcy1hY3RpdmUgLnB3YS1pbnN0YWxsLXByb21wdF9fb3ZlcmxheSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHQge1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJveC1zaGFkb3c6IDBweCA0cHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogIzQyNDI0MjtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIG1heC13aWR0aDogMzIwcHg7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUlKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cywgdHJhbnNmb3JtIDAuMTVzIGVhc2UtaW4tb3V0O1xuICB6LWluZGV4OiAxO1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0X19jb250YWluZXIuaXMtYWN0aXZlIC5wd2EtaW5zdGFsbC1wcm9tcHQge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0OjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHZpZXdCb3g9JzAgMCAxMjggMTI4JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBmaWxsPSclMjNGRkZGRkYnIGQ9J002NC4xOTcsNTAuNDdDNzkuNjk2LDM0Ljk1IDk1LjI1OSwxOS41MDIgMTEwLjU5NywzLjgyNEMxMTQuNDExLDAuMTgyIDExNC41NjUsMS4wMjIgMTE3LjcwNywxLjI0QzEyNC4yOTksMi4xNjcgMTI3LjcyMywxMC42ODcgMTIzLjQzNSwxNi4wNzhDMTA4LjQ1MywzMi40NyA5Mi45OTcsNDguMzk5IDc3LjM4Nyw2NC4xNzRDOTIuNTcxLDgwLjAxIDEwNy42ODUsOTUuOTE3IDEyMy4wMjQsMTExLjU5NUMxMjkuMTk1LDExOC4zNDkgMTIwLjQzMiwxMzIuNTI3IDExMS4wMzUsMTI0LjcxNkM5NC45OTIsMTA5LjQwMyA3OS40MDgsOTMuNjExIDYzLjk3OSw3Ny42NUM0OC40ODUsOTMuMTY5IDMyLjkxNywxMDguNjE4IDE3LjU4NCwxMjQuMjk2QzEwLjgzNywxMzAuNzM0IC0yLjQxMSwxMjEuMDMxIDQuNzQ3LDExMi4wNDJDMTkuNzI4LDk1LjY1IDM1LjE3OSw3OS43MTYgNTAuNzk1LDYzLjk0NUMzNS42MDUsNDguMTEgMjAuNDkxLDMyLjE5OCA1LjE1NywxNi41MjVDMC4wODUsMTAuOTc2IDIuOTEyLDAuNTg2IDEyLjI2NywxLjI0QzE0LjA2OSwxLjQ5MSAxNS43MjMsMi4yMjcgMTcuMTQxLDMuNDA0QzMzLjE4NCwxOC43MTcgNDguNzY4LDM0LjUwOSA2NC4xOTcsNTAuNDdaJyAvJTNFJTNDL3N2ZyUzRSUwQVwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgYm9yZGVyOiAwO1xuICBib3R0b206IDEwMCU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDE2cHg7XG4gIG1hcmdpbjogMCAwIDE2cHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMTZweDtcbn1cblxuLnB3YS1pbnN0YWxsLXByb21wdF9faWNvbl9fY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB2aWV3Qm94PScwIDAgNzAgNzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGZpbGw9JyUyM0YwRjBGMCcgZD0nTTY1LDE3QzY1LDEwLjM3NyA1OS42MjMsNSA1Myw1TDE3LDVDMTAuMzc3LDUgNSwxMC4zNzcgNSwxN0w1LDUzQzUsNTkuNjIzIDEwLjM3Nyw2NSAxNyw2NUw1Myw2NUM1OS42MjMsNjUgNjUsNTkuNjIzIDY1LDUzTDY1LDE3WicgLyUzRSUzQy9zdmclM0UlMEFcIikgY2VudGVyIGNlbnRlci83MHB4IDcwcHggcmVwZWF0LXg7XG4gIG1hcmdpbjogNDBweCAwIDA7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX2ljb24ge1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiA2MHB4O1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0X19jb250ZW50IHtcbiAgcGFkZGluZzogMTBweCAzNXB4O1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0X190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgbWFyZ2luOiAwIDAgMjBweDtcbn1cblxuLnB3YS1pbnN0YWxsLXByb21wdF9fdGV4dCB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIG1hcmdpbjogMCAwIDQ2cHg7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX2d1aWRlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0X19ndWlkZV9faWNvbiB7XG4gIG1hcmdpbjogMCAycHggNnB4O1xuICB3aWR0aDogMjBweDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogUFdBIEluc3RhbGwgUHJvbXB0IChodHRwczovL2dpdGh1Yi5jb20vSmFjb2JEQi9wd2EtaW5zdGFsbC1wcm9tcHQpXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5Aa2V5ZnJhbWVzIHNjcm9sbC1oaW50LWFwcGVhciB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgNTAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbi5zY3JvbGwtaGludC5pcy1yaWdodC1zY3JvbGxhYmxlIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgwLCAwLCAwLCAwLjE1KSAwLCByZ2JhKDAsIDAsIDAsIDApIDE2cHgsIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuXG4uc2Nyb2xsLWhpbnQuaXMtcmlnaHQtc2Nyb2xsYWJsZS5pcy1sZWZ0LXNjcm9sbGFibGUge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMCwgMCwgMCwgMC4xNSkgMCwgcmdiYSgwLCAwLCAwLCAwKSAxNnB4LCByZ2JhKDAsIDAsIDAsIDApKSwgbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgwLCAwLCAwLCAwLjE1KSAwLCByZ2JhKDAsIDAsIDAsIDApIDE2cHgsIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuXG4uc2Nyb2xsLWhpbnQuaXMtbGVmdC1zY3JvbGxhYmxlIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDAsIDAsIDAsIDAuMTUpIDAsIHJnYmEoMCwgMCwgMCwgMCkgMTZweCwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG5cbi5zY3JvbGwtaGludC1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoNTAlIC0gMjVweCk7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gNjBweCk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMjBweDtcbiAgaGVpZ2h0OiA4MHB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbiAgb3BhY2l0eTogMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIwcHggMTBweCAxMHB4IDEwcHg7XG59XG5cbi5zY3JvbGwtaGludC1pY29uLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5zY3JvbGwtaGludC10ZXh0IHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBjb2xvcjogI0ZGRjtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4uc2Nyb2xsLWhpbnQtaWNvbi13cmFwLmlzLWFjdGl2ZSAuc2Nyb2xsLWhpbnQtaWNvbiB7XG4gIG9wYWNpdHk6IDAuODtcbn1cblxuLnNjcm9sbC1oaW50LWljb246YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBjb2xvcjogI0ZGRjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXlOUzQzTnlJZ2FHVnBaMmgwUFNJek1DNDFNaUlnZG1sbGQwSnZlRDBpTUNBd0lESTFMamMzSURNd0xqVXlJajQ4ZEdsMGJHVSs0NEtpNDRLNzQ0T0Q0NE9JSURNOEwzUnBkR3hsUGp4bklHbGtQU0xqZzZ6amdxVGpnNlRqZzd4Zk1pSWdaR0YwWVMxdVlXMWxQU0xqZzZ6amdxVGpnNlRqZzd3Z01pSStQR2NnYVdROUl1T0RyT09DcE9PRHBPT0R2Rjh4TFRJaUlHUmhkR0V0Ym1GdFpUMGk0NE9zNDRLazQ0T2s0NE84SURFaVBqeHdZWFJvSUdROUlrMHlNUzR6TXl3ek1DNDFNa2czTGpnMVFURXVOVFVzTVM0MU5Td3dMREFzTVN3MkxqTXNNamxoTVRJdU5EWXNNVEl1TkRZc01Dd3dMREF0TGpZekxUUXVORElzTWpVdU1UWXNNalV1TVRZc01Dd3dMREF0TkM0eU5TMDFiQzB1TURZdExqQTJRVFVzTlN3d0xEQXNNU3d3TERFMUxqZzJZVE11TmpRc015NDJOQ3d3TERBc01Td3hMakUzTFRJdU5qSXNNeTQyTXl3ekxqWXpMREFzTUN3eExEVXVNVFF1TURkV015NDNOMkV6TGpjM0xETXVOemNzTUN3eExERXNOeTQxTkN3d1ZqZ3VNek5oTXk0ek5Td3pMak0xTERBc01Dd3hMREV1TWpZc01Dd3pMRE1zTUN3d0xERXNNaXd4TGpJeUxETXVOU3d6TGpVc01Dd3dMREVzTWkwdU1EWXNNeTR5TVN3ekxqSXhMREFzTUN3eExESXNNUzQxTkN3ekxqYzBMRE11TnpRc01Dd3dMREVzTXl3dU5EZEJOQzR5TVN3MExqSXhMREFzTUN3eExESTFMamMwTERFMVl6QXNMakV4TERBc0xqSTNMREFzTGpRMllURTVMakkyTERFNUxqSTJMREFzTUN3eExTNDROQ3czWXkwdU1UUXVNemd0TGpNMkxqZ3hMUzQxTml3eExqSXliQzB1TVRFdU1qSmpNQ3d1TURjdExqQTVMakUwTFM0eE5DNHlNV0UzTGpFekxEY3VNVE1zTUN3d0xEQXRNUzR4Tnl3eUxqRTNZeTB1TURZdU5UWXRMakEyTERJdU1UVXRMakExTERJdU56RkJNUzQxTlN3eExqVTFMREFzTUN3eExESXhMak16TERNd0xqVXlXazA0TGpZeExESTRMakl4YURFeVl6QXRMamN4TERBdE1TNDNNUzR3TnkweUxqSXpZVGd1TnpRc09DNDNOQ3d3TERBc01Td3hMalU1TFRNdU1qVnNMakEyTFM0eE1tRXhNQ3d4TUN3d0xEQXNNQ3d1TkRZdE1Td3hOaTQ0TERFMkxqZ3NNQ3d3TERBc0xqY3ROaTR4TW1Nd0xTNHlNeXd3TFM0ME1Td3dMUzQxTkdnd1lUSXNNaXd3TERBc01DMHVOalF0TVM0MU1pd3hMak16TERFdU16TXNNQ3d3TERBdE1TNDFOUzR3T0N3eExqRXpMREV1TVRNc01Dd3dMREV0TVM0eE9DNHlPQ3d4TGpFMUxERXVNVFVzTUN3d0xERXRMamM0TFM0NU5Dd3hMakkyTERFdU1qWXNNQ3d3TERBdExqYzFMVEV1TVRFc01Td3hMREFzTUN3d0xURXVNVEV1TWpoc0xTNHhMakZoTVM0eE5Td3hMakUxTERBc01Dd3hMVEV1TVRrdU1qa3NNUzR4Tml3eExqRTJMREFzTUN3eExTNDNPQzB1T1RWakxTNHdPUzB1TmpndExqSXhMUzQzTnkwdU55MHVPRGRoTGpneUxqZ3lMREFzTUN3d0xURXNMalE0TERFdU1UWXNNUzR4Tml3d0xEQXNNUzB5TGpFMkxTNDFPRll6TGpjM1lURXVORFlzTVM0ME5pd3dMREVzTUMweUxqa3lMREIyTnk0NE5Xd3dMRFF1TXpOaE1TNHhOeXd4TGpFM0xEQXNNQ3d4TFM0NE15d3hMakV4TERFdU1UVXNNUzR4TlN3d0xEQXNNUzB4TGpJdExqTTFiQzB4TFM0NU1XTXRMalEzTFM0ME1pMHVOek10TGpZMkxTNDROQzB1TnpkaE1TNHpOU3d4TGpNMUxEQXNNQ3d3TFRJdExqRXlUREl1Tnl3eE5XRXhMak15TERFdU16SXNNQ3d3TERBdExqTTVMREZCTWk0MU55d3lMalUzTERBc01Dd3dMRE1zTVRjdU9EVnNNQ3d3WVRJM0xqSTBMREkzTGpJMExEQXNNQ3d4TERRdU55dzFMall5UVRFeUxqWXpMREV5TGpZekxEQXNNQ3d4TERndU5qRXNNamd1TWpGYVRUSXpMaklzTWpNdU16VmFUVFl1TlRFc01UWXVOVGxhSWlCbWFXeHNQU0lqWm1abUlpOCtQQzluUGp3dlp6NDhMM04yWno0PSk7XG59XG5cbi5zY3JvbGwtaGludC1pY29uOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDM0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJek15NHlPU0lnYUdWcFoyaDBQU0l4TWk0d01pSWdkbWxsZDBKdmVEMGlNQ0F3SURNekxqSTVJREV5TGpBeUlqNDhkR2wwYkdVKzQ0S2k0NEs3NDRPRDQ0T0lJREU4TDNScGRHeGxQanhuSUdsa1BTTGpnNnpqZ3FUamc2VGpnN3hmTWlJZ1pHRjBZUzF1WVcxbFBTTGpnNnpqZ3FUamc2VGpnN3dnTWlJK1BHY2dhV1E5SXVPRHJPT0NwT09EcE9PRHZGOHhMVElpSUdSaGRHRXRibUZ0WlQwaTQ0T3M0NEtrNDRPazQ0TzhJREVpUGp4c2FXNWxJSGd4UFNJeExqZzFJaUI1TVQwaU5pNHdNU0lnZURJOUlqRXdMalFpSUhreVBTSTJMakF4SWlCbWFXeHNQU0lqWm1abUlpOCtQSEJoZEdnZ1pEMGlUVEV3TGpRc055NHhOMGd4TGpnMVlURXVNVFlzTVM0eE5pd3dMREVzTVN3d0xUSXVNekZJTVRBdU5HRXhMakUyTERFdU1UWXNNQ3d4TERFc01Dd3lMak14V2lJZ1ptbHNiRDBpSTJabVppSXZQanh3WVhSb0lHUTlJazAzTGpRc01USmhNUzR4TlN3eExqRTFMREFzTUN3eExTNDNNaTB1TWpWc0xUWXVNalV0TlVFeExqSXNNUzR5TERBc01Dd3hMREFzTlM0NE55d3hMakUwTERFdU1UUXNNQ3d3TERFc0xqUTJMRFZNTmk0M0xqSXpRVEV1TVRZc01TNHhOaXd3TERBc01TdzRMakVzTWk0d09Fd3pMRFV1T1RFc09DNHhNaXd4TUVFeExqRTJMREV1TVRZc01Dd3dMREVzTnk0MExERXlXaUlnWm1sc2JEMGlJMlptWmlJdlBqeHNhVzVsSUhneFBTSXpNUzQwTlNJZ2VURTlJall1TURFaUlIZ3lQU0l5TWk0NE9TSWdlVEk5SWpZdU1ERWlJR1pwYkd3OUlpTm1abVlpTHo0OGNHRjBhQ0JrUFNKTk16RXVORFVzTnk0eE4wZ3lNaTQ0T1dFeExqRTJMREV1TVRZc01Dd3hMREVzTUMweUxqTXhhRGd1TlRaaE1TNHhOaXd4TGpFMkxEQXNNQ3d4TERBc01pNHpNVm9pSUdacGJHdzlJaU5tWm1ZaUx6NDhjR0YwYUNCa1BTSk5NalV1T1N3eE1tRXhMakU0TERFdU1UZ3NNQ3d3TERFdExqa3hMUzQwTTBFeExqRTNMREV1TVRjc01Dd3dMREVzTWpVdU1UY3NNVEJzTlM0d09TMDBMakExVERJMUxqSXNNaTR3T0VFeExqRTJMREV1TVRZc01Dd3dMREVzTWpZdU5Ua3VNak5NTXpJdU9EUXNOV0V4TGpFMkxERXVNVFlzTUN3d0xERXNMalExTGpreExERXVNVFFzTVM0eE5Dd3dMREFzTVMwdU5ETXVPVEpzTFRZdU1qUXNOVUV4TGpFM0xERXVNVGNzTUN3d0xERXNNalV1T1N3eE1sb2lJR1pwYkd3OUlpTm1abVlpTHo0OEwyYytQQzluUGp3dmMzWm5QZz09KTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1kZWxheTogMi40cztcbn1cblxuLnNjcm9sbC1oaW50LWljb24td3JhcC5pcy1hY3RpdmUgLnNjcm9sbC1oaW50LWljb246YWZ0ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2Nyb2xsLWhpbnQtaWNvbi13cmFwLmlzLWFjdGl2ZSAuc2Nyb2xsLWhpbnQtaWNvbjpiZWZvcmUge1xuICBhbmltYXRpb246IHNjcm9sbC1oaW50LWFwcGVhciAxLjJzIGxpbmVhcjtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMjtcbn1cblxuLnNjcm9sbC1oaW50LWljb24td2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICBib3gtc2hhZG93OiAwIDRweCA1cHggcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuXG4uc2Nyb2xsLWhpbnQtaWNvbi13aGl0ZTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhkcFpIUm9QU0l5TlM0M055SWdhR1ZwWjJoMFBTSXpNQzQxTWlJZ2RtbGxkMEp2ZUQwaU1DQXdJREkxTGpjM0lETXdMalV5SWo0OGRHbDBiR1UrNDRLaTQ0Szc0NE9ENDRPSUlEUThMM1JwZEd4bFBqeG5JR2xrUFNMamc2empncVRqZzZUamc3eGZNaUlnWkdGMFlTMXVZVzFsUFNMamc2empncVRqZzZUamc3d2dNaUkrUEdjZ2FXUTlJdU9Eck9PQ3BPT0RwT09EdkY4eExUSWlJR1JoZEdFdGJtRnRaVDBpNDRPczQ0S2s0NE9rNDRPOElERWlQanh3WVhSb0lHUTlJazB5TVM0ek15d3pNQzQxTWtnM0xqZzFRVEV1TlRVc01TNDFOU3d3TERBc01TdzJMak1zTWpsaE1USXVORFlzTVRJdU5EWXNNQ3d3TERBdExqWXpMVFF1TkRJc01qVXVNVFlzTWpVdU1UWXNNQ3d3TERBdE5DNHlOUzAxYkMwdU1EWXRMakEyUVRVc05Td3dMREFzTVN3d0xERTFMamcyWVRNdU5qUXNNeTQyTkN3d0xEQXNNU3d4TGpFM0xUSXVOaklzTXk0Mk15d3pMall6TERBc01Dd3hMRFV1TVRRdU1EZFdNeTQzTjJFekxqYzNMRE11Tnpjc01Dd3hMREVzTnk0MU5Dd3dWamd1TXpOaE15NHpOU3d6TGpNMUxEQXNNQ3d4TERFdU1qWXNNQ3d6TERNc01Dd3dMREVzTWl3eExqSXlMRE11TlN3ekxqVXNNQ3d3TERFc01pMHVNRFlzTXk0eU1Td3pMakl4TERBc01Dd3hMRElzTVM0MU5Dd3pMamMwTERNdU56UXNNQ3d3TERFc015d3VORGRCTkM0eU1TdzBMakl4TERBc01Dd3hMREkxTGpjMExERTFZekFzTGpFeExEQXNMakkzTERBc0xqUTJZVEU1TGpJMkxERTVMakkyTERBc01Dd3hMUzQ0TkN3M1l5MHVNVFF1TXpndExqTTJMamd4TFM0MU5pd3hMakl5YkMwdU1URXVNakpqTUN3dU1EY3RMakE1TGpFMExTNHhOQzR5TVdFM0xqRXpMRGN1TVRNc01Dd3dMREF0TVM0eE55d3lMakUzWXkwdU1EWXVOVFl0TGpBMkxESXVNVFV0TGpBMUxESXVOekZCTVM0MU5Td3hMalUxTERBc01Dd3hMREl4TGpNekxETXdMalV5V2swNExqWXhMREk0TGpJeGFERXlZekF0TGpjeExEQXRNUzQzTVM0d055MHlMakl6WVRndU56UXNPQzQzTkN3d0xEQXNNU3d4TGpVNUxUTXVNalZzTGpBMkxTNHhNbUV4TUN3eE1Dd3dMREFzTUN3dU5EWXRNU3d4Tmk0NExERTJMamdzTUN3d0xEQXNMamN0Tmk0eE1tTXdMUzR5TXl3d0xTNDBNU3d3TFM0MU5HZ3dZVElzTWl3d0xEQXNNQzB1TmpRdE1TNDFNaXd4TGpNekxERXVNek1zTUN3d0xEQXRNUzQxTlM0d09Dd3hMakV6TERFdU1UTXNNQ3d3TERFdE1TNHhPQzR5T0N3eExqRTFMREV1TVRVc01Dd3dMREV0TGpjNExTNDVOQ3d4TGpJMkxERXVNallzTUN3d0xEQXRMamMxTFRFdU1URXNNU3d4TERBc01Dd3dMVEV1TVRFdU1qaHNMUzR4TGpGaE1TNHhOU3d4TGpFMUxEQXNNQ3d4TFRFdU1Ua3VNamtzTVM0eE5pd3hMakUyTERBc01Dd3hMUzQzT0MwdU9UVmpMUzR3T1MwdU5qZ3RMakl4TFM0M055MHVOeTB1T0RkaExqZ3lMamd5TERBc01Dd3dMVEVzTGpRNExERXVNVFlzTVM0eE5pd3dMREFzTVMweUxqRTJMUzQxT0ZZekxqYzNZVEV1TkRZc01TNDBOaXd3TERFc01DMHlMamt5TERCMk55NDROV3d3TERRdU16TmhNUzR4Tnl3eExqRTNMREFzTUN3eExTNDRNeXd4TGpFeExERXVNVFVzTVM0eE5Td3dMREFzTVMweExqSXRMak0xYkMweExTNDVNV010TGpRM0xTNDBNaTB1TnpNdExqWTJMUzQ0TkMwdU56ZGhNUzR6TlN3eExqTTFMREFzTUN3d0xUSXRMakV5VERJdU55d3hOV0V4TGpNeUxERXVNeklzTUN3d0xEQXRMak01TERGQk1pNDFOeXd5TGpVM0xEQXNNQ3d3TERNc01UY3VPRFZzTUN3d1lUSTNMakkwTERJM0xqSTBMREFzTUN3eExEUXVOeXcxTGpZeVFURXlMall6TERFeUxqWXpMREFzTUN3eExEZ3VOakVzTWpndU1qRmFUVEl6TGpJc01qTXVNelZhVFRZdU5URXNNVFl1TlRsYUlpOCtQQzluUGp3dlp6NDhMM04yWno0PSk7XG59XG5cbi5zY3JvbGwtaGludC1pY29uLXdoaXRlOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJek15NHlPU0lnYUdWcFoyaDBQU0l4TWk0d01pSWdkbWxsZDBKdmVEMGlNQ0F3SURNekxqSTVJREV5TGpBeUlqNDhkR2wwYkdVKzQ0S2k0NEs3NDRPRDQ0T0lJREk4TDNScGRHeGxQanhuSUdsa1BTTGpnNnpqZ3FUamc2VGpnN3hmTWlJZ1pHRjBZUzF1WVcxbFBTTGpnNnpqZ3FUamc2VGpnN3dnTWlJK1BHY2dhV1E5SXVPRHJPT0NwT09EcE9PRHZGOHhMVElpSUdSaGRHRXRibUZ0WlQwaTQ0T3M0NEtrNDRPazQ0TzhJREVpUGp4c2FXNWxJSGd4UFNJeExqZzFJaUI1TVQwaU5pNHdNU0lnZURJOUlqRXdMalFpSUhreVBTSTJMakF4SWk4K1BIQmhkR2dnWkQwaVRURXdMalFzTnk0eE4wZ3hMamcxWVRFdU1UWXNNUzR4Tml3d0xERXNNU3d3TFRJdU16RklNVEF1TkdFeExqRTJMREV1TVRZc01Dd3hMREVzTUN3eUxqTXhXaUl2UGp4d1lYUm9JR1E5SWswM0xqUXNNVEpoTVM0eE5Td3hMakUxTERBc01Dd3hMUzQzTWkwdU1qVnNMVFl1TWpVdE5VRXhMaklzTVM0eUxEQXNNQ3d4TERBc05TNDROeXd4TGpFMExERXVNVFFzTUN3d0xERXNMalEyTERWTU5pNDNMakl6UVRFdU1UWXNNUzR4Tml3d0xEQXNNU3c0TGpFc01pNHdPRXd6TERVdU9URXNPQzR4TWl3eE1FRXhMakUyTERFdU1UWXNNQ3d3TERFc055NDBMREV5V2lJdlBqeHNhVzVsSUhneFBTSXpNUzQwTlNJZ2VURTlJall1TURFaUlIZ3lQU0l5TWk0NE9TSWdlVEk5SWpZdU1ERWlMejQ4Y0dGMGFDQmtQU0pOTXpFdU5EVXNOeTR4TjBneU1pNDRPV0V4TGpFMkxERXVNVFlzTUN3eExERXNNQzB5TGpNeGFEZ3VOVFpoTVM0eE5pd3hMakUyTERBc01Dd3hMREFzTWk0ek1Wb2lMejQ4Y0dGMGFDQmtQU0pOTWpVdU9Td3hNbUV4TGpFNExERXVNVGdzTUN3d0xERXRMamt4TFM0ME0wRXhMakUzTERFdU1UY3NNQ3d3TERFc01qVXVNVGNzTVRCc05TNHdPUzAwTGpBMVRESTFMaklzTWk0d09FRXhMakUyTERFdU1UWXNNQ3d3TERFc01qWXVOVGt1TWpOTU16SXVPRFFzTldFeExqRTJMREV1TVRZc01Dd3dMREVzTGpRMUxqa3hMREV1TVRRc01TNHhOQ3d3TERBc01TMHVORE11T1RKc0xUWXVNalFzTlVFeExqRTNMREV1TVRjc01Dd3dMREVzTWpVdU9Td3hNbG9pTHo0OEwyYytQQzluUGp3dmMzWm5QZz09KTtcbn1cblxuLnNjcm9sbC1oaW50LWljb24td2hpdGUgLnNjcm9sbC1oaW50LXRleHQge1xuICBjb2xvcjogIzAwMDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU2Nyb2xsSGludCAoaHR0cHM6Ly9hcHBsZXBsZS5naXRodWIuaW8vc2Nyb2xsLWhpbnQvKVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItY2xhc3MtcGF0dGVybiAqL1xuLnNjcm9sbC1oaW50LWljb24td3JhcCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFNlYXJjaCBGb3JtXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc2VhcmNoLWZvcm1fX2NvbnRhaW5lciB7XG4gIG1hcmdpbjogMGVtIDBlbSAwLjkzNzVlbTtcbn1cblxuLnNlYXJjaC1mb3JtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc2VhcmNoLWZvcm1fX2lucHV0IHtcbiAgZm9udC1zaXplOiAxZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1yaWdodDogM2VtO1xufVxuXG4uc2VhcmNoLWZvcm1fX2J1dHRvbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvdHRvbTogMC4xMjVyZW07XG4gIGNvbG9yOiAjNTU0NjMyO1xuICBmb250LXNpemU6IDFlbTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwZW0gMWVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwLjEyNXJlbTtcbiAgdG9wOiAwLjEyNXJlbTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7XG59XG4uc2VhcmNoLWZvcm1fX2J1dHRvbjpmb2N1cywgLnNlYXJjaC1mb3JtX19idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogI0IzMzUyNztcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU2tpcCBMaW5rc1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNraXAtbGlua3Mge1xuICBiYWNrZ3JvdW5kOiAjQjMzNTI3O1xuICBib3JkZXI6IDAuMDYyNXJlbSBzb2xpZCAjODkyOTFFO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1mYW1pbHk6IFwibGl0aG9zLXByb1wiLCBcIkhlbHZldGljYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZWZ0OiAtOTk5ZW07XG4gIHBhZGRpbmc6IDAuNWVtIDAuNzVlbTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRvcDogLTk5OWVtO1xuICB6LWluZGV4OiA5OTk7XG59XG4uc2tpcC1saW5rczpmb2N1cyB7XG4gIGxlZnQ6IDEuMjVlbTtcbiAgdG9wOiAxLjI1ZW07XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFdQIENhcHRpb25cblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi53cC1jYXB0aW9uIHtcbiAgbWFyZ2luOiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi53cC1jYXB0aW9uLWltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ud3AtY2FwdGlvbi10ZXh0IHtcbiAgY29sb3I6ICM1NTQ2MzI7XG4gIGZvbnQtZmFtaWx5OiBcImNhbGlicmlcIiwgXCJIZWx2ZXRpY2FcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsaW5lLWhlaWdodDogMS43NWVtO1xuICBtYXJnaW46IDAuODc1ZW0gMGVtIDEuNzVlbTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTGF5b3V0XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBQYWdlXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5odG1sLFxuYm9keSB7XG4gIGJhY2tncm91bmQ6ICNGQkI3NTc7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5ib2R5IHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG4ucGFnZV9fY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1ib2R5LmpwZ1wiKSBjZW50ZXIgdG9wIG5vLXJlcGVhdCAjM0Q5NUQ1O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbn1cbi5wYWdlX19jb250YWluZXIgI2NvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxIDAgYXV0bztcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5wYWdlX19jb250YWluZXIgLmNvbnRlbnQtYmxvY2sge1xuICBmbGV4OiAxIDAgYXV0bztcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQWxlcnRcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5hbGVydC1ibG9jayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5hbGVydC1ibG9jayB7XG4gIGJhY2tncm91bmQ6ICNCMzM1Mjc7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYWxlcnQtYmxvY2suaXMtYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5hbGVydF9faW5uZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiA2MS44NzVyZW07XG59XG5cbi5hbGVydF9fYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICBbY2xhc3MqPWNvbC1dOm50aC1sYXN0LWNoaWxkKDIpIC5hbGVydF9fYnV0dG9uIHtcbiAgICBtYXJnaW46IDEuNTYyNXJlbTtcbiAgfVxuICBbY2xhc3MqPWNvbC1dOm50aC1sYXN0LWNoaWxkKDMpIC5hbGVydF9fYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEuNTYyNXJlbTtcbiAgICB0b3A6IDEuNTYyNXJlbTtcbiAgfVxufVxuLmFsZXJ0X19idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLmFsZXJ0X190aXRsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAxLjU2MjVyZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5hbGVydF9fdGl0bGUge1xuICAgIGJvcmRlci1ib3R0b206IDAuMDYyNXJlbSBzb2xpZCAjODkyOTFFO1xuICAgIHBhZGRpbmctcmlnaHQ6IDUuMDYyNXJlbTtcbiAgfVxufVxuLmFsZXJ0X190aXRsZSAudGl0bGVfX2ljb24ge1xuICBmb250LXNpemU6IDJyZW07XG4gIG1hcmdpbi1yaWdodDogMC41ZW07XG59XG5cbi5hbGVydF9fdXNlci1jb250ZW50IHtcbiAgcGFkZGluZzogMS41NjI1cmVtO1xufVxuLmFsZXJ0X191c2VyLWNvbnRlbnQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogSGVhZGVyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uaGVhZGVyLWJsb2NrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA0O1xufVxuLmhlYWRlci1ibG9jayB7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMS41NjI1cmVtIDAuOTM3NXJlbTtcbn1cblxuLmhlYWRlcl9faW5uZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiA2MS44NzVyZW07XG59XG5cbi5oZWFkZXJfX2xvZ29fX2NvbnRhaW5lciB7XG4gIGhlaWdodDogNWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaGVhZGVyX19sb2dvX19jb250YWluZXIgLmhlYWRlcl9fbG9nbyB7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTMuNzVlbTtcbn1cblxuLmhlYWRlcl9fbWVudS1saXN0X19jb250YWluZXIgLm1lbnUtbGlzdC0tc29jaWFsIHtcbiAgbWFyZ2luLXJpZ2h0OiA1ZW07XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE5hdmlnYXRpb25cblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5uYXZpZ2F0aW9uX19pbm5lciB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtbmF2aWdhdGlvbl9kZXNrdG9wLnBuZ1wiKSBjZW50ZXIgY2VudGVyL2NvbnRhaW4gbm8tcmVwZWF0O1xuICBoZWlnaHQ6IDYuMzc1ZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAzLjEyNWVtIDBlbSAwZW0gNi4yNWVtO1xuICB3aWR0aDogNTQuODEyNWVtO1xufVxuXG4ubmF2aWdhdGlvbl9fZmlndXJlIHtcbiAgbWFyZ2luOiAwZW0gMGVtIDAuNWVtO1xufVxuXG4ubmF2aWdhdGlvbl9faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm5hdmlnYXRpb25fX21lbnUtbGlzdF9fY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA1O1xufVxuLm5hdmlnYXRpb25fX21lbnUtbGlzdF9fY29udGFpbmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUlKTtcbn1cblxuLyogZmx5b3V0IHZhcmlhbnQgKi9cbi5uYXZpZ2F0aW9uLWJsb2NrLS1mbHlvdXQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBoZWlnaHQ6IC13ZWJraXQtZmlsbC1hdmFpbGFibGU7XG4gIGxlZnQ6IC05OTllbTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IC05OTllbTtcbiAgdHJhbnNpdGlvbjogbGVmdCAwcyAwLjI1cywgdG9wIDBzIDAuMjVzLCB2aXNpYmlsaXR5IDBzIDAuMjVzO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAxMDB2dztcbiAgei1pbmRleDogMTAwMDAxO1xufVxuLm5hdmlnYXRpb24tYmxvY2stLWZseW91dCAubmF2aWdhdGlvbl9faW5uZXIge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLW5hdmlnYXRpb24uanBnXCIpIGNlbnRlciB0b3AvY292ZXIgbm8tcmVwZWF0ICMwMDgzNDk7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogYXV0bztcbiAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogY29udGFpbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE3LjVlbSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cztcbiAgd2lkdGg6IDE3LjVlbTtcbiAgei1pbmRleDogMjtcbn1cbi5uYXZpZ2F0aW9uLWJsb2NrLS1mbHlvdXQgLm5hdmlnYXRpb25fX292ZXJsYXkge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBib3JkZXI6IDA7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogLTk5OWVtO1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5ZW07XG4gIHRyYW5zaXRpb246IGxlZnQgMHMgMC4yNXMsIHRvcCAwcyAwLjE1cywgb3BhY2l0eSAwLjI1cywgdmlzaWJpbGl0eSAwcyAwLjI1cztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTtcbn1cbi5tZW51LWFjdGl2ZSAubmF2aWdhdGlvbi1ibG9jay0tZmx5b3V0IHtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiBub25lO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLm1lbnUtYWN0aXZlIC5uYXZpZ2F0aW9uLWJsb2NrLS1mbHlvdXQgLm5hdmlnYXRpb25fX2lubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xufVxuLm1lbnUtYWN0aXZlIC5uYXZpZ2F0aW9uLWJsb2NrLS1mbHlvdXQgLm5hdmlnYXRpb25fX292ZXJsYXkge1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAxO1xuICB0b3A6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXM7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4ubmF2aWdhdGlvbi1ibG9jay0tZmx5b3V0IC5uYXZpZ2F0aW9uX19tZW51LWxpc3RfX2NvbnRhaW5lciB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogSGVyb1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmhlcm8tYmxvY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDM7XG59XG4uaGVyby1ibG9jayB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtY29udGVudC5qcGdcIikgY2VudGVyIHRvcCByZXBlYXQteTtcbiAgbWFyZ2luOiAyLjgxMjVyZW0gYXV0byA1cmVtO1xuICBtYXJnaW46IDYuMjVyZW0gYXV0byA1cmVtO1xuICBtYXgtd2lkdGg6IDYyLjEyNXJlbTtcbiAgcGFkZGluZzogMHJlbSAxLjI1cmVtO1xuICB3aWR0aDogMTAwJTtcbn1cbi5oZXJvLWJsb2NrOjpiZWZvcmUsIC5oZXJvLWJsb2NrOjphZnRlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDFyZW07XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG59XG4uaGVyby1ibG9jazo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1jb250ZW50X3RvcC5qcGdcIik7XG4gIGJvdHRvbTogMTAwJTtcbn1cbi5oZXJvLWJsb2NrOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtY29udGVudF9ib3R0b20uanBnXCIpO1xuICB0b3A6IDEwMCU7XG59XG5cbi5oZXJvX19pbm5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDYxLjg3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuXG4uaGVyb19fdmlkZW8tZnJhbWUge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiA1Ny42MjVyZW07XG4gIHBhZGRpbmc6IDEuNjI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMi4xODc1cmVtKTtcbn1cbi5oZXJvX192aWRlby1mcmFtZSAudmlkZW8tZnJhbWVfX3RvcCB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtdmlkZW8tZnJhbWVfY2VudGVyLXRvcC5wbmdcIikgY2VudGVyIHRvcCByZXBlYXQteDtcbiAgaGVpZ2h0OiAxLjYyNXJlbTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxO1xufVxuLmhlcm9fX3ZpZGVvLWZyYW1lIC52aWRlby1mcmFtZV9fdG9wOjpiZWZvcmUsIC5oZXJvX192aWRlby1mcmFtZSAudmlkZW8tZnJhbWVfX3RvcDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxLjYyNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxLjYyNXJlbTtcbn1cbi5oZXJvX192aWRlby1mcmFtZSAudmlkZW8tZnJhbWVfX3RvcDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC12aWRlby1mcmFtZV9sZWZ0LXRvcC5wbmdcIik7XG4gIGxlZnQ6IDA7XG59XG4uaGVyb19fdmlkZW8tZnJhbWUgLnZpZGVvLWZyYW1lX190b3A6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC12aWRlby1mcmFtZV9yaWdodC10b3AucG5nXCIpO1xuICByaWdodDogMDtcbn1cbi5oZXJvX192aWRlby1mcmFtZSAudmlkZW8tZnJhbWVfX2NlbnRlciB7XG4gIGJvdHRvbTogMS42MjVyZW07XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxLjYyNXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDA7XG59XG4uaGVyb19fdmlkZW8tZnJhbWUgLnZpZGVvLWZyYW1lX19jZW50ZXI6OmJlZm9yZSwgLmhlcm9fX3ZpZGVvLWZyYW1lIC52aWRlby1mcmFtZV9fY2VudGVyOjphZnRlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxLjYyNXJlbTtcbn1cbi5oZXJvX192aWRlby1mcmFtZSAudmlkZW8tZnJhbWVfX2NlbnRlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC12aWRlby1mcmFtZV9sZWZ0LWNlbnRlci5wbmdcIik7XG4gIGxlZnQ6IDA7XG59XG4uaGVyb19fdmlkZW8tZnJhbWUgLnZpZGVvLWZyYW1lX19jZW50ZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC12aWRlby1mcmFtZV9yaWdodC1jZW50ZXIucG5nXCIpO1xuICByaWdodDogMDtcbn1cbi5oZXJvX192aWRlby1mcmFtZSAudmlkZW8tZnJhbWVfX2JvdHRvbSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtdmlkZW8tZnJhbWVfY2VudGVyLWJvdHRvbS5wbmdcIikgY2VudGVyIHRvcCByZXBlYXQteDtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDEuNjI1cmVtO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxO1xufVxuLmhlcm9fX3ZpZGVvLWZyYW1lIC52aWRlby1mcmFtZV9fYm90dG9tOjpiZWZvcmUsIC5oZXJvX192aWRlby1mcmFtZSAudmlkZW8tZnJhbWVfX2JvdHRvbTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxLjYyNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxLjYyNXJlbTtcbn1cbi5oZXJvX192aWRlby1mcmFtZSAudmlkZW8tZnJhbWVfX2JvdHRvbTo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC12aWRlby1mcmFtZV9sZWZ0LWJvdHRvbS5wbmdcIik7XG4gIGxlZnQ6IDA7XG59XG4uaGVyb19fdmlkZW8tZnJhbWUgLnZpZGVvLWZyYW1lX19ib3R0b206OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC12aWRlby1mcmFtZV9yaWdodC1ib3R0b20ucG5nXCIpO1xuICByaWdodDogMDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ29udGVudFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNvbnRlbnQtYmxvY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG4uY29udGVudC1ibG9jayB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtY29udGVudC5qcGdcIikgY2VudGVyIHRvcCByZXBlYXQteTtcbiAgbWFyZ2luOiA2LjI1cmVtIGF1dG8gMy4xMjVyZW07XG4gIG1heC13aWR0aDogNjIuMTI1cmVtO1xuICBwYWRkaW5nOiAyLjE4NzVyZW0gMHJlbSA2LjI1cmVtO1xuICB3aWR0aDogMTAwJTtcbn1cbi5jb250ZW50LWJsb2NrOjpiZWZvcmUsIC5jb250ZW50LWJsb2NrOjphZnRlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDFyZW07XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG59XG4uY29udGVudC1ibG9jazo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1jb250ZW50X3RvcC5qcGdcIik7XG4gIGJvdHRvbTogMTAwJTtcbn1cbi5jb250ZW50LWJsb2NrOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtY29udGVudF9ib3R0b20uanBnXCIpO1xuICB0b3A6IDEwMCU7XG59XG5cbi5jb250ZW50X19pbm5lciB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtY29udGVudF9pbm5lcl9jbGVhbi5wbmdcIikgY2VudGVyIHRvcCByZXBlYXQteTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogNjEuODc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG4uY29udGVudF9faW5uZXI6OmJlZm9yZSwgLmNvbnRlbnRfX2lubmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDYuMjVyZW07XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDM7XG59XG4uY29udGVudF9faW5uZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtY29udGVudF9pbm5lci10b3BfY2xlYW4ucG5nXCIpO1xuICBib3R0b206IDEwMCU7XG59XG4uY29udGVudF9faW5uZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1jb250ZW50X2lubmVyLWJvdHRvbV9zb2xpZC5wbmdcIik7XG4gIHRvcDogMTAwJTtcbn1cblxuLmNvbnRlbnRfX3Bvc3Qge1xuICBwYWRkaW5nOiAwcmVtIDEuNTYyNXJlbSAxLjU2MjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogNDtcbn1cblxuLmNvbnRlbnRfX3NpZGViYXIge1xuICBiYWNrZ3JvdW5kOiAjRUNFOERFO1xuICBwYWRkaW5nOiAxLjU2MjVyZW0gMS41NjI1cmVtIDByZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5jb250ZW50X19zaWRlYmFyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWNvbnRlbnRfc2lkZWJhci5wbmdcIikgY2VudGVyIHRvcCByZXBlYXQteDtcbiAgYm90dG9tOiAxMDAlO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwLjMxMjVyZW07XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jb250ZW50X19maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG4uY29udGVudF9fZmlndXJlIC5maWd1cmVfX2ltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEZvb3RlclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmZvb3Rlci1ibG9jayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cbi5mb290ZXItYmxvY2sge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWZvb3Rlci5wbmdcIikgY2VudGVyIHRvcCBuby1yZXBlYXQgI0ZCQjc1NztcbiAgcGFkZGluZzogMy4xMjVyZW0gMS41NjI1cmVtO1xufVxuLmZvb3Rlci1ibG9jazo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1mb290ZXJfdG9wLnBuZ1wiKSBjZW50ZXIgdG9wIG5vLXJlcGVhdDtcbiAgYm90dG9tOiAxMDAlO1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxLjI1cmVtO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZm9vdGVyX19pbm5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDU2LjI1MDU2MjVyZW07XG59XG5cbi5mb290ZXJfX3RpdGxlIHtcbiAgY29sb3I6ICM0ODg2QUY7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xufVxuXG4uZm9vdGVyX190ZXh0IHtcbiAgZm9udC1mYW1pbHk6IFwibGl0aG9zLXByb1wiLCBcIkhlbHZldGljYVwiLCBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbn1cbi5mb290ZXJfX3RleHQudGV4dC0tdGFibGUgLnRleHRfX2NlbGwge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1ib3R0b206IDAuMDYyNXJlbSBzb2xpZCByZ2JhKDg1LCA3MCwgNTAsIDAuMik7XG4gIHBhZGRpbmc6IDAuMzU3MTQyODU3MWVtIDAuMzU3MTQyODU3MWVtIDAuMzU3MTQyODU3MWVtIDBlbTtcbn1cbi5mb290ZXJfX3RleHQudGV4dC0tdGFibGUgLnRleHRfX2NlbGwudGV4dF9fY2VsbC0taGVhZGVyIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmZvb3Rlcl9fdGV4dC50ZXh0LS10YWJsZSAudGV4dF9fcm93Omxhc3QtY2hpbGQgPiAudGV4dF9fY2VsbCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG4uZm9vdGVyX190ZXh0LnRleHQtLXRhYmxlLnRleHQtLWNvbXBhY3QgLnRleHRfX2NlbGwge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogTW9kdWxlXG4gIFxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICAgKiBMYXlvdXRcbiAgXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICAgKiBNb2R1bGVcbiAgXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIExheW91dFxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIE1vZHVsZVxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogQ29sdW1uc1xuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5jb2x1bW5zLS0yIHtcbiAgICBjb2x1bW5zOiAyO1xuICB9XG5cbiAgLmNvbHVtbnMtLTMge1xuICAgIGNvbHVtbnM6IDM7XG4gIH1cblxuICAuY29sdW1ucy0tNCB7XG4gICAgY29sdW1uczogNDtcbiAgfVxuXG4gIC5jb2x1bW5zLS01IHtcbiAgICBjb2x1bW5zOiA1O1xuICB9XG5cbiAgLmNvbHVtbnMtLTYge1xuICAgIGNvbHVtbnM6IDY7XG4gIH1cblxuICAuY29sdW1ucy0tNyB7XG4gICAgY29sdW1uczogNztcbiAgfVxuXG4gIC5jb2x1bW5zLS04IHtcbiAgICBjb2x1bW5zOiA4O1xuICB9XG5cbiAgLmNvbHVtbnMtLTkge1xuICAgIGNvbHVtbnM6IDk7XG4gIH1cblxuICAuY29sdW1ucy0tMTAge1xuICAgIGNvbHVtbnM6IDEwO1xuICB9XG5cbiAgLmNvbHVtbnMtLTExIHtcbiAgICBjb2x1bW5zOiAxMTtcbiAgfVxuXG4gIC5jb2x1bW5zLS0xMiB7XG4gICAgY29sdW1uczogMTI7XG4gIH1cblxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIExheW91dFxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogQWxlcnRcbiAgXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAuYWxlcnQtYmxvY2sge1xuICAgIHBhZGRpbmctbGVmdDogMS41NjI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNTYyNXJlbTtcbiAgfVxuXG4gIC5hbGVydF9fcm93IFtkYXRhLW9yZGVyPVwiMVwiXSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgLmFsZXJ0X19yb3cgW2RhdGEtb3JkZXI9XCIyXCJdIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuICAuYWxlcnRfX3JvdyBbZGF0YS1vcmRlcj1cIjNcIl0ge1xuICAgIG9yZGVyOiAzO1xuICB9XG5cbiAgLmFsZXJ0X191c2VyLWNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG5cbiAgLmFsZXJ0X190aXRsZSB7XG4gICAgYm9yZGVyLXJpZ2h0OiAwLjA2MjVyZW0gc29saWQgIzg5MjkxRTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMC42MjVlbTtcbiAgfVxuXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogSGVhZGVyXG4gIFxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLmhlYWRlcl9fbG9nb19fY29udGFpbmVyIC5oZWFkZXJfX2xvZ28ge1xuICAgIHdpZHRoOiAxOC4xMjVlbTtcbiAgfVxuXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogSGVyb1xuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5oZXJvLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAyLjgxMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAyLjE4NzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMi4xODc1cmVtO1xuICB9XG5cbiAgLmhlcm9fX2NhbGxvdXQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogRm9vdGVyXG4gIFxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLmZvb3Rlcl9fcm93LnJvdy0taGFjayB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1My4zMTI1ZW0pIHtcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICAgKiBNb2R1bGVcbiAgXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIExheW91dFxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG59XG5AbWVkaWEgKG1pbi13aWR0aDogNjBlbSkge1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIE1vZHVsZVxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogTGF5b3V0XG4gIFxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICAgKiBDb250ZW50XG4gIFxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLmNvbnRlbnQtYmxvY2sge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG5cbiAgLmNvbnRlbnRfX2lubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWNvbnRlbnRfaW5uZXIucG5nXCIpO1xuICB9XG4gIC5jb250ZW50X19pbm5lcjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWNvbnRlbnRfaW5uZXItdG9wLnBuZ1wiKTtcbiAgfVxuICAuY29udGVudF9faW5uZXI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWNvbnRlbnRfaW5uZXItYm90dG9tLnBuZ1wiKTtcbiAgfVxuXG4gIC5jb250ZW50X19wb3N0IHtcbiAgICBwYWRkaW5nOiAwcmVtIDEuNTYyNXJlbSAwcmVtIDMuMTI1cmVtO1xuICB9XG5cbiAgLmNvbnRlbnRfX3NpZGViYXIge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgcGFkZGluZzogMHJlbSAzLjEyNXJlbSAwcmVtIDEuNTYyNXJlbTtcbiAgICB3aWR0aDogMTkuMDYyNWVtO1xuICB9XG4gIC5jb250ZW50X19zaWRlYmFyOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogTW9kdWxlXG4gIFxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICAgKiBMYXlvdXRcbiAgXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICAgKiBNb2R1bGVcbiAgXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIExheW91dFxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG59XG5AbWVkaWEgKG1pbi13aWR0aDogODUuMzc1ZW0pIHtcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICAgKiBNb2R1bGVcbiAgXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIExheW91dFxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTBlbSkge1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIE1vZHVsZVxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogTGF5b3V0XG4gIFxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbn0iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEhlbHBlcnNcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gaW1wb3J0c1xuXG5AaW1wb3J0IFwiX21peGluc1wiO1xuQGltcG9ydCBcIl9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJfdmFyaWFibGVzXCI7XG5cbi8vIGdlbmVyaWMgaGVscGVyc1xuXG4uX19kYXJrIHtcbiAgICBjb2xvcjogY29sb3IoXCJkYXJrXCIpICFpbXBvcnRhbnQ7XG59XG5cbi5fX2xpZ2h0IHtcbiAgICBjb2xvcjogY29sb3IoXCJsaWdodFwiKSAhaW1wb3J0YW50O1xufVxuXG4uX19iaWcge1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtICFpbXBvcnRhbnQ7XG59XG5cbi5fX3NtYWxsIHtcbiAgICBmb250LXNpemU6IDAuNzVlbSAhaW1wb3J0YW50O1xufVxuXG4uX19ib2xkIHtcbiAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG59XG5cbi5fX2l0YWxpYyB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQ7XG59XG5cbi5fX3RleHRjZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4uX190ZXh0bGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4uX190ZXh0cmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5fX25vd3JhcCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xufVxuXG4uX19jZW50ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5fX2xlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi5fX3JpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLl9fbm9tYXJnaW4ge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuXG4uX19ub3BhZGRpbmcge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLl9fbm90cmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uX19ub3RyYW5zaXRpb24ge1xuICAgIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLl9fYmxvY2sge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5fX2ZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbn1cblxuLl9fdmlzdWFsbHloaWRkZW4ge1xuICAgIGxlZnQ6IC05OTllbSAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHRvcDogLTk5OWVtICFpbXBvcnRhbnQ7XG59XG5cbi5fX3ByaW1hcnkge1xuICAgIGNvbG9yOiBjb2xvcihcInByaW1hcnlcIikgIWltcG9ydGFudDtcbn1cblxuLl9fYWNjZW50IHtcbiAgICBjb2xvcjogY29sb3IoXCJhY2NlbnRcIikgIWltcG9ydGFudDtcbn1cblxuLl9fZXJyb3Ige1xuICAgIGNvbG9yOiBjb2xvcihcImVycm9yXCIpICFpbXBvcnRhbnQ7XG59XG5cbi8qIHZpc2liaWxpdHkgY2xhc3NlcyAqL1xuXG4vLyB3aGVuIHBvaW50ZXIgaXMgcHJlY2lzZSAobW91c2UpXG5AbWVkaWEgKHBvaW50ZXI6IGZpbmUpIHtcbiAgICAuX190b3VjaCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8vIHdoZW4gcG9pbnRlcjogZmluZSBpcyBub3Qgc3VwcG9ydGVkXG5Ac3VwcG9ydHMgbm90IChwb2ludGVyOiBmaW5lKSB7XG4gICAgLl9fdG91Y2gge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vLyB3aGVuIHBvaW50ZXIgaXMgaW5wcmVjaXNlICh0b3VjaClcbkBtZWRpYSAocG9pbnRlcjogY29hcnNlKSB7XG4gICAgLl9fbW91c2Uge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vLyB3aGVuIHByaW50aW5nXG5AbWVkaWEgcHJpbnQge1xuICAgIC5fX25vcHJpbnQge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vKiBcInZpc2libGVcIiBjbGFzc2VzICovXG5cbi8vICR4cy1icmVha1xuXG4uX192aXNpYmxlLXhzIHtcbiAgICBAaW5jbHVkZSBzbWFsbGVyLXRoYW4oeHMpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLy8gJHMtYnJlYWtcblxuLl9fdmlzaWJsZS1zIHtcbiAgICBAaW5jbHVkZSBzbWFsbGVyLXRoYW4ocykge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vLyAkbS1icmVha1xuXG4uX192aXNpYmxlLW0ge1xuICAgIEBpbmNsdWRlIHNtYWxsZXItdGhhbihtKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8vICRsLWJyZWFrXG5cbi5fX3Zpc2libGUtbCB7XG4gICAgQGluY2x1ZGUgc21hbGxlci10aGFuKGwpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLy8gJHhsLWJyZWFrXG5cbi5fX3Zpc2libGUteGwge1xuICAgIEBpbmNsdWRlIHNtYWxsZXItdGhhbih4bCkge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4vKiBcImhpZGRlblwiIGNsYXNzZXMgLS0gTk9URTogSXQgaXMgaW1wb3J0YW50IHRoYXQgX2hpZGRlbiBjbGFzc2VzIGNvbWUgYWZ0ZXIgX3Zpc2libGUgZm9yIG92ZXJyaWRlIHB1cnBvc2VzICovXG5cbi8vICR4cy1icmVha1xuXG4uX19oaWRkZW4teHMge1xuICAgIEBpbmNsdWRlIGxhcmdlci10aGFuKHhzKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8vICRzLWJyZWFrXG5cbi5fX2hpZGRlbi1zIHtcbiAgICBAaW5jbHVkZSBsYXJnZXItdGhhbihzKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8vICRtLWJyZWFrXG5cbi5fX2hpZGRlbi1tIHtcbiAgICBAaW5jbHVkZSBsYXJnZXItdGhhbihtKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8vICRsLWJyZWFrXG5cbi5fX2hpZGRlbi1sIHtcbiAgICBAaW5jbHVkZSBsYXJnZXItdGhhbihsKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8vICR4bC1icmVha1xuXG4uX19oaWRkZW4teGwge1xuICAgIEBpbmNsdWRlIGxhcmdlci10aGFuKHhsKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1peGluc1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vLyBudGgtY2hpbGQ6IGh0dHBzOi8vcGF1bHVuZC5jby51ay9udGgtY2hpbGQtc2Fzcy1taXhpbnNcblxuQHVzZSBcInNhc3M6bWF0aFwiO1xuXG5AbWl4aW4gZmlyc3QtY2hpbGQoKSB7XG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5AbWl4aW4gbGFzdC1jaGlsZCgpIHtcbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIGV2ZW4oKSB7XG4gICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBvZGQoKSB7XG4gICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIGZpcnN0KCRudW0pIHtcbiAgICBAaWYgJG51bSA9PSAxIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBlbHNlIHtcbiAgICAgICAgJjpudGgtY2hpbGQoLW4gKyAjeyRudW19KSB7XG4gICAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1peGluIGxhc3QoJG51bSkge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoLW4gKyAjeyRudW19KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIGFmdGVyKCRudW0pIHtcbiAgICAmOm50aC1jaGlsZChuKyN7JG51bSArIDF9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIGZyb20tZW5kKCRudW0pIHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JG51bX0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5AbWl4aW4gYmV0d2VlbigkZmlyc3QsJGxhc3QpIHtcbiAgICAmOm50aC1jaGlsZChuKyN7JGZpcnN0fSk6bnRoLWNoaWxkKC1uKyN7JGxhc3R9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIGFsbC1idXQoJG51bSkge1xuICAgICY6bm90KDpudGgtY2hpbGQoI3skbnVtfSkpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5AbWl4aW4gZWFjaCgkbnVtKSB7XG4gICAgJjpudGgtY2hpbGQoI3skbnVtfW4pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG4vLyBsYXllcnNcblxuQG1peGluIGxheWVyKCRsYXllci1uYW1lKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IG1hcC1nZXQoJGxheWVycywgJGxheWVyLW5hbWUpO1xufVxuXG4vLyBTY2FsZSBkeW5haW1jYWxseSB1bnRpbCBhIGdpdmVuIHZpZXdwb3J0XG5cbkBtaXhpbiB2aWV3cG9ydC1zY2FsZSgkc2l6ZTogMTYsICRiYXNlOiAxMDI0LCAkbWluLXdpZHRoOiAwLCAkbWF4LXdpZHRoOiBudWxsKSB7XG4gICAgJG1heC13aWR0aDogaWYoJG1heC13aWR0aCA9PSBudWxsLCAkYmFzZSwgJG1heC13aWR0aCk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiByZW1pZnkoJG1pbi13aWR0aCwgMTYpKSBhbmQgKG1heC13aWR0aDogcmVtaWZ5KCRtYXgtd2lkdGgsIDE2KSkge1xuICAgICAgICBmb250LXNpemU6IG1hdGguZGl2KCRzaXplLCAkYmFzZSkgKiAxMDB2dztcbiAgICB9XG59XG5cbi8vIENyZWF0ZSBhIG1lZGlhIHF1ZXJ5IHJlbGF0aWUgdG8gYSBicmVhayBwb2ludCB2YXJpYWJsZVxuXG5AbWl4aW4gc21hbGxlci10aGFuKCRwb2ludC1uYW1lLCAkaW5jbHVzaXZlOiBmYWxzZSkge1xuICAgICR3aWR0aDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRwb2ludC1uYW1lKTtcblxuICAgIEBpZiAkaW5jbHVzaXZlID09IGZhbHNlIHtcbiAgICAgICAgJHdpZHRoOiAkd2lkdGggLSBtYXRoLmRpdigxLCAxNik7XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICR3aWR0aCkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbi8vIENyZWF0ZSBhIG1lZGlhIHF1ZXJ5IHJlbGF0aWUgdG8gYSBicmVhayBwb2ludCB2YXJpYWJsZVxuXG5AbWl4aW4gbGFyZ2VyLXRoYW4oJHBvaW50LW5hbWUsICRpbmNsdXNpdmU6IHRydWUpIHtcbiAgICAkd2lkdGg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkcG9pbnQtbmFtZSk7XG5cbiAgICBAaWYgJGluY2x1c2l2ZSA9PSBmYWxzZSB7XG4gICAgICAgICR3aWR0aDogJHdpZHRoICsgbWF0aC5kaXYoMSwgMTYpO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkd2lkdGgpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5AbWl4aW4gdGV4dC1zdHJva2UoJGNvbG9yOiAjMDAwLCAkc2l6ZTogMXB4KSB7XG4gICAgdGV4dC1zaGFkb3c6IC0jeyRzaXplfSAtI3skc2l6ZX0gMCAkY29sb3IsIDAgLSN7JHNpemV9IDAgJGNvbG9yLCAjeyRzaXplfSAtI3skc2l6ZX0gMCAkY29sb3IsICN7JHNpemV9IDAgMCAkY29sb3IsICN7JHNpemV9ICN7JHNpemV9IDAgJGNvbG9yLCAwICN7JHNpemV9IDAgJGNvbG9yLCAtI3skc2l6ZX0gI3skc2l6ZX0gMCAkY29sb3IsIC0jeyRzaXplfSAwIDAgJGNvbG9yO1xufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBGdW5jdGlvbnNcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLypcbiAqIFJldHJpZXZlIGEgY29sb3IgdmFyaWFibGVcbiAqXG4gKiBAcGFyYW0gIHtzdHJpbmd9ICAkY29sb3IgLSBUaGUgbmFtZSBvZiB0aGUgY29sb3IgYXMgZGVmaW5lZCBpbiBfdmFyaWFibGVzXG4gKiBAcGFyYW0gIHtzdHJpbmd9ICAkdG9uZSAgLSBUaGUgdmFyaWFudCBvZiB0aGUgY29sb3IgKHNoYWRlfGJhc2V8dGludClcbiAqL1xuQHVzZSBcInNhc3M6bWF0aFwiO1xuXG5AZnVuY3Rpb24gY29sb3IoJGNvbG9yLCAkdG9uZTogYmFzZSkge1xuICAgIEByZXR1cm4gbWFwLWdldChtYXAtZ2V0KCRjb2xvcnMsICRjb2xvciksICR0b25lKTtcbn1cblxuLypcbiAqIFJlbW92ZSB0aGUgdW5pdCBvZiBhIGxlbmd0aFxuICpcbiAqIEBwYXJhbSAge051bWJlcn0gICRudW1iZXJcbiAqL1xuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bWJlcikge1xuICAgIEByZXR1cm4gaWYodHlwZS1vZigkbnVtYmVyKSA9PSBcIm51bWJlclwiIGFuZCBub3QgdW5pdGxlc3MoJG51bWJlciksIG1hdGguZGl2KCRudW1iZXIsICRudW1iZXIgKiAwICsxKSwgJG51bWJlcik7XG59XG5cbi8qXG4gKiBDb252ZXJ0IFBYIHVuaXRzIGluIHRvIEVNIG9yIFJFTSwgcmVsYXRpdmUgdG8gYSBzcGVjaWZpZWQgYmFzZSBzaXplc1xuICpcbiAqIEBwYXJhbSAge051bWJlcn0gICRzaXplIC0gQXJyYXkgb2YgdXAgdG8gZm91ciBzaXplcyBpbiBQWCB1bml0c1xuICogQHBhcmFtICB7TnVtYmVyfSAgJGJhc2UgLSBGb250IHNpemUgdG8gYmFzZSBjYWxjdWxhdGlvbnMgb2ZmIG9mXG4gKiBAcGFyYW0gIHtTdHJpbmd9ICAkdW5pdCAtIEVpdGhlciBcImVtXCIgb3IgXCJyZW1cIlxuICovXG5AZnVuY3Rpb24gcmVtaWZ5KCRzaXplczogKCRzaXplMSwgJHNpemUyLCAkc2l6ZTMsICRzaXplNCksICRiYXNlOiBudWxsLCAkdW5pdDogbnVsbCkge1xuICAgICR1bml0OiBpZigkdW5pdCA9PSBudWxsLCBpZigkYmFzZSA9PSBudWxsLCByZW0sIGVtKSwgJHVuaXQpO1xuICAgICRiYXNlOiBpZigkYmFzZSA9PSBudWxsLCAxNiwgc3RyaXAtdW5pdCgkYmFzZSkpO1xuICAgICRvdXRwdXQ6IFwiXCI7XG5cbiAgICBAZWFjaCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAkc2l6ZTogc3RyaXAtdW5pdCgkc2l6ZSk7XG5cbiAgICAgICAgQGlmIHR5cGUtb2YoJHNpemUpID09IFwibnVtYmVyXCIge1xuICAgICAgICAgICAgLy8gYWRkIGFzIHNwYWNlIGlmICRvdXRwdXQgYWxyZWFkeSBoYXMgYSB2YWx1ZVxuICAgICAgICAgICAgJG91dHB1dDogaWYoJG91dHB1dCA9PSBcIlwiLCBcIlwiLCAkb3V0cHV0ICsgXCIgXCIpO1xuICAgICAgICAgICAgLy8gY2FsY3VsYXRlLCBhcHBlbmQgdmFsdWUgdG8gJG91dHB1dFxuICAgICAgICAgICAgJG91dHB1dDogJG91dHB1dCArIChtYXRoLmRpdihzdHJpcC11bml0KCRzaXplKSwgc3RyaXAtdW5pdCgkYmFzZSkpICsgJHVuaXQpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgLy8gcGFzcyB0aGUgdmFsdWUgdGhyb3VnaCB1bmNoYWduZWQgaWYgJHNpemUgaXMgbm90IGEgbnVtYmVyXG4gICAgICAgICAgICAkb3V0cHV0OiAkb3V0cHV0ICsgXCIgXCIgKyAkc2l6ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gaWYodHlwZS1vZigkb3V0cHV0KSA9PSBcInN0cmluZ1wiLCB1bnF1b3RlKCRvdXRwdXQpLCAkb3V0cHV0KTtcbn1cblxuLypcbiAqIENvbnZlcnQgUGhvdG9zaG9wIGxlYWRpbmcgdG8gQ1NTIGxpbmUtaGVpZ2h0XG4gKlxuICogQHBhcmFtICB7TnVtYmVyfSAgJHNpemUgLSBWYWx1ZSBvZiBMZWFkaW5nIGluIFBob3Rvc2hvcCdzIENoYXJhY3RlciBQYW5lbFxuICogQHBhcmFtICB7TnVtYmVyfSAgJGJhc2UgLSBWYWx1ZSBvZiBGb250IFNpemUgaW4gUGhvdG9zb2hwJ3MgQ2hhcmFjdGVyIFBhbmVsXG4gKi9cbkBmdW5jdGlvbiBsZWFkaW5nKCRzaXplLCAkYmFzZTogbnVsbCkge1xuICAgICRiYXNlOiBpZigkYmFzZSA9PSBudWxsLCAxNiwgc3RyaXAtdW5pdCgkYmFzZSkpO1xuICAgICRvdXRwdXQ6ICRiYXNlICsgKHN0cmlwLXVuaXQoJHNpemUpICogMC41KTtcblxuICAgIEByZXR1cm4gJG91dHB1dDtcbn1cblxuLypcbiAqIENvbnZlcnQgUGhvdG9zaG9wIHRyYWNraW5nIHRvIENTUyBsZXR0ZXItc3BhY2luZ1xuICpcbiAqIEBwYXJhbSAge051bWJlcn0gICRzaXplIC0gVmFsdWUgb2YgVHJhY2tpbmcgaW4gUGhvdG9zaG9wJ3MgQ2hhcmFjdGVyIFBhbmVsXG4gKiBAcGFyYW0gIHtOdW1iZXJ9ICAkYmFzZSAtIFZhbHVlIG9mIEZvbnQgU2l6ZSBpbiBQaG90b3NvaHAncyBDaGFyYWN0ZXIgUGFuZWxcbiAqL1xuQGZ1bmN0aW9uIHRyYWNraW5nKCRzaXplLCAkYmFzZTogbnVsbCkge1xuICAgICRiYXNlOiBpZigkYmFzZSA9PSBudWxsLCAxNiwgc3RyaXAtdW5pdCgkYmFzZSkpO1xuICAgICRvdXRwdXQ6ICgkc2l6ZSAqIDAuMDAxKSAqIHN0cmlwLXVuaXQoJGJhc2UpO1xuXG4gICAgQHJldHVybiAkb3V0cHV0O1xufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBDb2xvcnNcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4kY29sb3JzOiAoXG4gICAgXCJwcmltYXJ5XCI6IChcbiAgICAgICAgdGludDogICMwMEI2NjUsXG4gICAgICAgIGJhc2U6ICAjMDA4MzQ5LFxuICAgICAgICBzaGFkZTogIzAwNTAyRCxcbiAgICApLFxuICAgIFwic2Vjb25kYXJ5XCI6IChcbiAgICAgICAgdGludDogICNENDQ5MzksXG4gICAgICAgIGJhc2U6ICAjQjMzNTI3LFxuICAgICAgICBzaGFkZTogIzg5MjkxRSxcbiAgICApLFxuICAgIFwidGVydGlhcnlcIjogKFxuICAgICAgICB0aW50OiAgIzY5OUVDMSxcbiAgICAgICAgYmFzZTogICM0ODg2QUYsXG4gICAgICAgIHNoYWRlOiAjMzk2QThCLFxuICAgICksXG4gICAgXCJxdWF0ZXJuYXJ5XCI6IChcbiAgICAgICAgdGludDogICNFNzdEM0EsXG4gICAgICAgIGJhc2U6ICAjRDQ2MjFBLFxuICAgICAgICBzaGFkZTogI0E3NEQxNCxcbiAgICApLFxuICAgIFwiYWNjZW50XCI6IChcbiAgICAgICAgdGludDogICNENDQ5MzksXG4gICAgICAgIGJhc2U6ICAjQjMzNTI3LFxuICAgICAgICBzaGFkZTogIzg5MjkxRSxcbiAgICApLFxuICAgIFwiZXJyb3JcIjogKFxuICAgICAgICB0aW50OiAgI0Q0NDkzOSxcbiAgICAgICAgYmFzZTogICNCMzM1MjcsXG4gICAgICAgIHNoYWRlOiAjODkyOTFFLFxuICAgICksXG4gICAgXCJzdWNjZXNzXCI6IChcbiAgICAgICAgdGludDogICMwMEI2NjUsXG4gICAgICAgIGJhc2U6ICAjMDA4MzQ5LFxuICAgICAgICBzaGFkZTogIzAwNTAyRCxcbiAgICApLFxuICAgIFwiZm9yZWdyb3VuZFwiOiAoXG4gICAgICAgIHRpbnQ6ICAjNzU2MDQ1LFxuICAgICAgICBiYXNlOiAgIzU1NDYzMixcbiAgICAgICAgc2hhZGU6ICMyQjJCMkIsXG4gICAgKSxcbiAgICBcImJhY2tncm91bmRcIjogKFxuICAgICAgICB0aW50OiAgI0ZGRkZGRixcbiAgICAgICAgYmFzZTogICNFQ0U4REUsXG4gICAgICAgIHNoYWRlOiAjQ0FCQjlELFxuICAgICksXG4gICAgXCJwYWdlLWJhY2tncm91bmRcIjogKFxuICAgICAgICB0aW50OiAgI0ZDQ0M4OSxcbiAgICAgICAgYmFzZTogICNGQkI3NTcsXG4gICAgICAgIHNoYWRlOiAjRjM0NDA0LFxuICAgICksXG4gICAgXCJsaWdodFwiOiAoXG4gICAgICAgIHRpbnQ6ICAjRkZGRkZGLFxuICAgICAgICBiYXNlOiAgI0ZGRkZGRixcbiAgICAgICAgc2hhZGU6ICNCQkJCQkIsXG4gICAgKSxcbiAgICBcImRhcmtcIjogKFxuICAgICAgICB0aW50OiAgIzQ0NDQ0NCxcbiAgICAgICAgYmFzZTogICMwMDAwMDAsXG4gICAgICAgIHNoYWRlOiAjMDAwMDAwLFxuICAgICksXG4pO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBGb250c1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4kaGVhZGluZy1mb250OiBcImxpdGhvcy1wcm9cIiwgXCJIZWx2ZXRpY2FcIiwgXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuJGJvZHktZm9udDogXCJjYWxpYnJpXCIsIFwiSGVsdmV0aWNhXCIsIFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogV2lkdGhzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbiRzaXRlLXdpZHRoOiA5OTA7XG4kY29sdW1uLWdhcDogMjA7XG4kY29udGVudC1wYWRkaW5nOiAyNTtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQnJlYWsgUG9pbnRzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbiR4eHhsLWJyZWFrOiBtYXRoLmRpdigxNDQwZW0sIDE2KTtcbiR4eGwtYnJlYWs6ICBtYXRoLmRpdigxMzY2ZW0sIDE2KTtcbiR4bC1icmVhazogICBtYXRoLmRpdigxMjgwZW0sIDE2KTtcbiRsLWJyZWFrOiAgICBtYXRoLmRpdigxMDI0ZW0sIDE2KTtcbiRtLWJyZWFrOiAgICBtYXRoLmRpdig5NjBlbSwgMTYpO1xuJHMtYnJlYWs6ICAgIG1hdGguZGl2KDg1M2VtLCAxNik7XG4keHMtYnJlYWs6ICAgbWF0aC5kaXYoNzY4ZW0sIDE2KTtcbiR4eHMtYnJlYWs6ICBtYXRoLmRpdig2NDBlbSwgMTYpO1xuJHh4eHMtYnJlYWs6IG1hdGguZGl2KDQ4MGVtLCAxNik7XG5cbiRicmVha3BvaW50czogKFxuICAgIHh4eGw6ICR4eHhsLWJyZWFrLFxuICAgIHh4bDogICR4eGwtYnJlYWssXG4gICAgeGw6ICAgJHhsLWJyZWFrLFxuICAgIGw6ICAgICRsLWJyZWFrLFxuICAgIG06ICAgICRtLWJyZWFrLFxuICAgIHM6ICAgICRzLWJyZWFrLFxuICAgIHhzOiAgICR4cy1icmVhayxcbiAgICB4eHM6ICAkeHhzLWJyZWFrLFxuICAgIHh4eHM6ICR4eHhzLWJyZWFrLFxuKTtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTGF5ZXJzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbiRsYXllcnM6IChcbiAgICBoZWFkZXI6IDQsXG4gICAgbmF2aWdhdGlvbjogNSxcbiAgICBoZXJvOiAzLFxuICAgIGNvbnRlbnQ6IDIsXG4gICAgZm9vdGVyOiAxLFxuKTtcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQmFzZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AaW1wb3J0IFwiLi4vYmFzZS9ub3JtYWxpemUvX25vcm1hbGl6ZVwiO1xuQGltcG9ydCBcIi4uL2Jhc2UvZ3JpZC9fZ3JpZFwiO1xuQGltcG9ydCBcIi4uL2Jhc2Uvc2VsZWN0aW9uL19zZWxlY3Rpb25cIjtcbkBpbXBvcnQgXCIuLi9iYXNlL2xpbmsvX2xpbmtcIjtcbkBpbXBvcnQgXCIuLi9iYXNlL2J1dHRvbi9fYnV0dG9uXCI7XG5AaW1wb3J0IFwiLi4vYmFzZS9hbGlnbi9fYWxpZ25cIjtcbkBpbXBvcnQgXCIuLi9iYXNlL2RpdmlkZXIvX2RpdmlkZXJcIjtcbkBpbXBvcnQgXCIuLi9iYXNlL2lucHV0L19pbnB1dFwiO1xuQGltcG9ydCBcIi4uL2Jhc2UvdGV4dC9fdGV4dFwiO1xuQGltcG9ydCBcIi4uL2Jhc2UvdGl0bGUvX3RpdGxlXCI7XG5AaW1wb3J0IFwiLi4vYmFzZS9ibG9ja3F1b3RlL19ibG9ja3F1b3RlXCI7XG5AaW1wb3J0IFwiLi4vYmFzZS91c2VyLWNvbnRlbnQvX3VzZXItY29udGVudFwiO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNb2R1bGVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGltcG9ydCBcIi4uL21vZHVsZS9hY2NvcmRpb24vX2FjY29yZGlvblwiO1xuQGltcG9ydCBcIi4uL21vZHVsZS9hcnRpY2xlL19hcnRpY2xlXCI7XG5AaW1wb3J0IFwiLi4vbW9kdWxlL2F0dHJhY3Rpb25zLW1hcC9fYXR0cmFjdGlvbnMtbWFwXCI7XG5AaW1wb3J0IFwiLi4vbW9kdWxlL2JhYmVsZmlzaC9fYmFiZWxmaXNoXCI7XG5AaW1wb3J0IFwiLi4vbW9kdWxlL2NhbGxvdXQvX2NhbGxvdXRcIjtcbkBpbXBvcnQgXCIuLi9tb2R1bGUvaWZyYW1lL19pZnJhbWVcIjtcbkBpbXBvcnQgXCIuLi9tb2R1bGUvbG9nby9fbG9nb1wiO1xuQGltcG9ydCBcIi4uL21vZHVsZS9tZW51LWxpc3QvX21lbnUtbGlzdFwiO1xuQGltcG9ydCBcIi4uL21vZHVsZS9uaW5qYS1mb3Jtcy9fbmluamEtZm9ybXNcIjtcbkBpbXBvcnQgXCIuLi9tb2R1bGUvcGFuZWwtdG9nZ2xlL19wYW5lbC10b2dnbGVcIjtcbkBpbXBvcnQgXCIuLi9tb2R1bGUvcGhvdG9zd2lwZS9fcGhvdG9zd2lwZVwiO1xuQGltcG9ydCBcIi4uL21vZHVsZS9wb3BwZXJqcy9fcG9wcGVyanNcIjtcbkBpbXBvcnQgXCIuLi9tb2R1bGUvcHdhLWluc3RhbGwtcHJvbXB0L19wd2EtaW5zdGFsbC1wcm9tcHRcIjtcbkBpbXBvcnQgXCIuLi9tb2R1bGUvc2Nyb2xsLWhpbnQvX3Njcm9sbC1oaW50XCI7XG5AaW1wb3J0IFwiLi4vbW9kdWxlL3NlYXJjaC1mb3JtL19zZWFyY2gtZm9ybVwiO1xuQGltcG9ydCBcIi4uL21vZHVsZS9za2lwLWxpbmtzL19za2lwLWxpbmtzXCI7XG5AaW1wb3J0IFwiLi4vbW9kdWxlL3dwLWNhcHRpb24vX3dwLWNhcHRpb25cIjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTGF5b3V0XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkBpbXBvcnQgXCIuLi9sYXlvdXQvcGFnZS9fcGFnZVwiO1xuQGltcG9ydCBcIi4uL2xheW91dC9hbGVydC9fYWxlcnRcIjtcbkBpbXBvcnQgXCIuLi9sYXlvdXQvaGVhZGVyL19oZWFkZXJcIjtcbkBpbXBvcnQgXCIuLi9sYXlvdXQvbmF2aWdhdGlvbi9fbmF2aWdhdGlvblwiO1xuQGltcG9ydCBcIi4uL2xheW91dC9oZXJvL19oZXJvXCI7XG5AaW1wb3J0IFwiLi4vbGF5b3V0L2NvbnRlbnQvX2NvbnRlbnRcIjtcbkBpbXBvcnQgXCIuLi9sYXlvdXQvZm9vdGVyL19mb290ZXJcIjtcbiIsIi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xuXG5tYWluIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIG1hcmdpbjogMDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCB7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uLFxuc2VsZWN0IHsgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICovXG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cbiAqL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE5vcm1hbGl6ZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4LCBzZWxlY3Rvci1tYXgtdHlwZSwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlICovXG5cbi8qIFRoZXNlIHN0eWxlcyBhcmUgaW50ZW5kZWQgdG8gYmUgZ2xvYmFsICovXG5cbi8vIFZlbmRvclxuXG5AdXNlIFwibm9ybWFsaXplLmNzcy9ub3JtYWxpemVcIjtcblxuLy8gQ3VzdG9tXG5cbi8vICBDaGFuZ2UgdGhlIGJveC1zaXppbmcgb2YgYWxsIGVsZW1lbnRzXG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLy8gcmVtb3ZlIG9waW5pb25hdGVkIGRlZmF1bHQgc3R5bGVzIG9uIGJ1dHRvbnMsIGlucHV0cywgYW5kIHNlbGVjdHNcblxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLy8gYmUgZXh0cmEgc3BlY2lmaWMgZm9yIHNlYXJjaCBmaWVsZHMsIGFzIG5vcm1hbGl6ZSByZXNldHMgdGhlbVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyBTZXQgbWF4LWhlaWdodCBhbmQgbWF4LXdpZHRoIHRvIDEwMCUgb24gU1ZHcyB0byBmaXggYSBidWcgaW4gU2FmYXJpIChodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8xMjYzMTMyNi82NTQ0ODApXG5cbnN2ZyB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8vIEhpZGUgb3V0bGluZSBvbiBmb2N1c1xuXG4vKiBSZW1vdmUgb3V0bGluZSBmb3Igbm9uLWtleWJvYXJkIDpmb2N1cyAqL1xuKjpmb2N1czpub3QoLmZvY3VzLXZpc2libGUpIHtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBHcmlkIChiYXNlZCBsb29zZWx5IG9uIGh0dHBzOi8vdjQtYWxwaGEuZ2V0Ym9vdHN0cmFwLmNvbS9sYXlvdXQvZ3JpZC8pXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWNsYXNzLXBhdHRlcm4gKi9cblxuQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4ucm93IHtcbiAgICAmIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cblxuICAgICYucm93LS1ncmlkIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTIsIDFmcik7XG4gICAgfVxuXG4gICAgJi5yb3ctLWdyaWQucm93LS1lcXVhbCB7XG4gICAgICAgIGdyaWQtYXV0by1jb2x1bW5zOiAxZnI7XG4gICAgICAgIGdyaWQtYXV0by1yb3dzOiAxZnI7XG4gICAgfVxuXG4gICAgJiA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBmbGV4LXNocmluazogMTtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cblxuICAgICYgPiBbY2xhc3MqPVwiY29sLVwiXS5jb2wtLW5vZ3JvdyB7XG4gICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICB9XG5cbiAgICAmID4gW2NsYXNzKj1cImNvbC1cIl0uY29sLS1ub3NocmluayB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIH1cblxuICAgICYucm93LS1wYWRkZWQge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgI3tyZW1pZnkoJGNvbHVtbi1nYXAsIDE2KX0pO1xuICAgIH1cblxuICAgICYucm93LS1wYWRkZWQgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbWlmeSgkY29sdW1uLWdhcCwgMTYpO1xuICAgIH1cblxuICAgICYucm93LS1wYWRkZWQucm93LS10aWdodCB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgKyAje3JlbWlmeSgkY29sdW1uLWdhcCAqIDAuNSwgMTYpfSk7XG4gICAgfVxuXG4gICAgJi5yb3ctLXBhZGRlZC5yb3ctLXRpZ2h0ID4gW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW1pZnkoJGNvbHVtbi1nYXAgKiAwLjUsIDE2KTtcbiAgICB9XG5cbiAgICAmLnJvdy0tcGFkZGVkLnJvdy0tbG9vc2Uge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgI3tyZW1pZnkoJGNvbHVtbi1nYXAgKiAxLjUsIDE2KX0pO1xuICAgIH1cblxuICAgICYucm93LS1wYWRkZWQucm93LS1sb29zZSA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtaWZ5KCRjb2x1bW4tZ2FwICogMS41LCAxNik7XG4gICAgfVxuXG4gICAgJi5yb3ctLW5vd3JhcCB7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIH1cblxuICAgICYucm93LS13cmFwcmV2ZXJzZSB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlO1xuICAgIH1cblxuICAgICYucm93LS1jZW50ZXIge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmOm5vdCgucm93LS1jb2x1bW4pLnJvdy0taGNlbnRlciB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgICY6bm90KC5yb3ctLWNvbHVtbikucm93LS12Y2VudGVyIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmOm5vdCgucm93LS1jb2x1bW4pLnJvdy0tdG9wIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgJjpub3QoLnJvdy0tY29sdW1uKS5yb3ctLXJpZ2h0IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG5cbiAgICAmOm5vdCgucm93LS1jb2x1bW4pLnJvdy0tYm90dG9tIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIH1cblxuICAgICY6bm90KC5yb3ctLWNvbHVtbikucm93LS1sZWZ0IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgICYucm93LS1zdHJldGNoIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgJi5yb3ctLWFyb3VuZCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIH1cblxuICAgICYucm93LS1iZXR3ZWVuIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cblxuICAgICY6bm90KC5yb3ctLWNvbHVtbikucm93LS1yZXZlcnNlIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIH1cblxuICAgICYucm93LS1jb2x1bW4ge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cblxuICAgICYucm93LS1jb2x1bW4ucm93LS12Y2VudGVyIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJi5yb3ctLWNvbHVtbi5yb3ctLXRvcCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG5cbiAgICAmLnJvdy0tY29sdW1uLnJvdy0tcmlnaHQge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgfVxuXG4gICAgJi5yb3ctLWNvbHVtbi5yb3ctLWJvdHRvbSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgfVxuXG4gICAgJi5yb3ctLWNvbHVtbi5yb3ctLWxlZnQge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB9XG5cbiAgICAmLnJvdy0tY29sdW1uLnJvdy0taGNlbnRlciB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJi5yb3ctLWNvbHVtbi5yb3ctLXJldmVyc2Uge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgfVxufVxuXG4uY29sLWF1dG8ge1xuICAgICYge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgIH1cbn1cblxuQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAxMiB7XG4gICAgLmNvbC0jeyRpfSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IG1hdGguZGl2KCRpLCAxMikgKiAxMDAlO1xuICAgICAgICBncmlkLWNvbHVtbjogc3BhbiAkaTtcbiAgICB9XG59XG5cbkBpbmNsdWRlIGxhcmdlci10aGFuKHhzKSB7XG4gICAgLmNvbC14cy1hdXRvIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAxMiB7XG4gICAgICAgIC5jb2wteHMtI3skaX0ge1xuICAgICAgICAgICAgZmxleC1iYXNpczogbWF0aC5kaXYoJGksIDEyKSAqIDEwMCU7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogc3BhbiAkaTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGluY2x1ZGUgbGFyZ2VyLXRoYW4ocykge1xuICAgIC5jb2wtcy1hdXRvIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAxMiB7XG4gICAgICAgIC5jb2wtcy0jeyRpfSB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiBtYXRoLmRpdigkaSwgMTIpICogMTAwJTtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBzcGFuICRpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AaW5jbHVkZSBsYXJnZXItdGhhbihtKSB7XG4gICAgLmNvbC1tLWF1dG8ge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoIDEyIHtcbiAgICAgICAgLmNvbC1tLSN7JGl9IHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IG1hdGguZGl2KCRpLCAxMikgKiAxMDAlO1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IHNwYW4gJGk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBpbmNsdWRlIGxhcmdlci10aGFuKGwpIHtcbiAgICAuY29sLWwtYXV0byB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggMTIge1xuICAgICAgICAuY29sLWwtI3skaX0ge1xuICAgICAgICAgICAgZmxleC1iYXNpczogbWF0aC5kaXYoJGksIDEyKSAqIDEwMCU7XG4gICAgICAgICAgICBncmlkLWNvbHVtbjogc3BhbiAkaTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGluY2x1ZGUgbGFyZ2VyLXRoYW4oeGwpIHtcbiAgICAuY29sLXhsLWF1dG8ge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoIDEyIHtcbiAgICAgICAgLmNvbC14bC0jeyRpfSB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiBtYXRoLmRpdigkaSwgMTIpICogMTAwJTtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBzcGFuICRpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBTZWxlY3Rpb25cblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuOjpzZWxlY3Rpb24ge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihcImFjY2VudFwiKTtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwibGlnaHRcIik7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBMaW5rXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5saW5rIHtcbiAgICAmIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwiYWNjZW50XCIpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwiYWNjZW50XCIsIFwidGludFwiKTtcbiAgICB9XG59XG5cbi8qIGluaGVyaXQgdmFyaWFudCAqL1xuXG4ubGluay0taW5oZXJpdCB7XG4gICAgJiB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEJ1dHRvblxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uYnV0dG9uIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbWlmeSg2LCAxNik7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImxpZ2h0XCIpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2LCAxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW1pZnkoMTkuMiwgMTYpO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMjAsIDE2KTtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDE1IDE4LCAxNik7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzO1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJwcmltYXJ5XCIsIFwic2hhZGVcIik7XG4gICAgfVxufVxuXG4vKiBkaXNhYmxlZCB2YXJpYW50ICovXG5cbi5idXR0b24tLWRpc2FibGVkIHtcbiAgICAmIHtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQWxpZ25tZW50XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuLmFsaWdubGVmdCB7XG4gICAgJiB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbWlmeSgyNSwgMTYpO1xuICAgICAgICBtYXgtd2lkdGg6IG1hdGguZGl2KDEwMCUsIDMpO1xuICAgIH1cbn1cblxuLmFsaWducmlnaHQge1xuICAgICYge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW1pZnkoMjUsIDE2KTtcbiAgICAgICAgbWF4LXdpZHRoOiBtYXRoLmRpdigxMDAlLCAzKTtcbiAgICB9XG59XG5cbi5hbGlnbmNlbnRlciB7XG4gICAgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogRGl2aWRlclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uZGl2aWRlciB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKFwicHJpbWFyeVwiKTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgaGVpZ2h0OiByZW1pZnkoMik7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDE1IDAsIDE2KTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBJbnB1dFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4kZm9udC1zaXplOiAxNjtcbiRpY29uLXNpemU6IDAuNzVlbTtcblxuJHBhZGRpbmctYm90dG9tOiAxMDtcbiRwYWRkaW5nLWxlZnQ6ICAgMTU7XG4kcGFkZGluZy1yaWdodDogIDE1O1xuJHBhZGRpbmctdG9wOiAgICAxMDtcblxuLmlucHV0IHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogY29sb3IoXCJiYWNrZ3JvdW5kXCIpO1xuICAgICAgICBib3JkZXI6IHJlbWlmeSgyKSBzb2xpZCBjb2xvcihcImJhY2tncm91bmRcIiwgXCJzaGFkZVwiKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4yNWVtO1xuICAgICAgICBjb2xvcjogY29sb3IoXCJmb3JlZ3JvdW5kXCIpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KCRmb250LXNpemUsIDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMTApO1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoJHBhZGRpbmctdG9wICRwYWRkaW5nLXJpZ2h0ICRwYWRkaW5nLWJvdHRvbSAkcGFkZGluZy1sZWZ0LCAkZm9udC1zaXplKTtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMsIGJhY2tncm91bmQtc2l6ZSAwLjE1cywgYm9yZGVyLWNvbG9yIDAuMTVzLCBjb2xvciAwLjE1cztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJjpub3QoLmlucHV0LS1kaXNhYmxlZCk6YWN0aXZlLFxuICAgICY6bm90KC5pbnB1dC0tZGlzYWJsZWQpOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcihcImFjY2VudFwiKTtcbiAgICB9XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImZvcmVncm91bmRcIiwgXCJ0aW50XCIpO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuLyogZXJyb3IgdmFyaWFudCAqL1xuXG4uaW5wdXQtLWVycm9yIHtcbiAgICAmIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcihcImVycm9yXCIpO1xuICAgIH1cbn1cblxuLyogc3VjY2VzcyB2YXJpYW50ICovXG5cbi5pbnB1dC0tc3VjY2VzcyB7XG4gICAgJiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogY29sb3IoXCJzdWNjZXNzXCIpO1xuICAgIH1cbn1cblxuLyogc2VsZWN0IHZhcmlhbnQgKi9cblxuLmlucHV0LS1zZWxlY3Qge1xuICAgICYge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIC8vIHJlbW92ZSBGaXJlZm94IGRlZmF1bHQgc3R5bGVzICYgYXJyb3dcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDAuMDFweDtcbiAgICAgICAgLy8gcmVtb3ZlIElFIGRlZmF1bHQgc3R5bGVzICYgYXJyb3dcbiAgICAgICAgJjo6LW1zLWV4cGFuZCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICB9XG59XG5cbi5pbnB1dC0tYXJyb3cge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmctbG9hZChcIi4uL21lZGlhL3ZlbmRvci9mYXMtc29ydC5zdmdcIiwgZmlsbD0je2NvbG9yKFwiZm9yZWdyb3VuZFwiKX0pO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQgcmVtaWZ5KCRwYWRkaW5nLXJpZ2h0LCAkZm9udC1zaXplKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaWNvbi1zaXplO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCN7JGljb24tc2l6ZX0gKyAje3JlbWlmeSgkcGFkZGluZy1yaWdodCAqIDIsICRmb250LXNpemUpfSk7XG4gICAgfVxufVxuXG4vKiBjaGVja2JveCAmIHJhZGlvYnV0dG9uIHZhcmlhbnRzICovXG5cbi5pbnB1dC0tY2hlY2tib3gsXG4uaW5wdXQtLXJhZGlvYnV0dG9uIHtcbiAgICAmIHtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiByZW1pZnkoMSk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBoZWlnaHQ6ICRpY29uLXNpemUgKiAyO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHdpZHRoOiAkaWNvbi1zaXplICogMjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGljb24tc2l6ZTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogLTk5OWVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cywgbGVmdCAwcyAwLjE1cywgdHJhbnNmb3JtIDAuMTVzO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmOmNoZWNrZWQ6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cywgdHJhbnNmb3JtIDAuMTVzO1xuICAgIH1cblxuICAgICYgKyAudGV4dC0tbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxufVxuXG4uaW5wdXQtLWNoZWNrYm94IHtcbiAgICAmOmNoZWNrZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihcImFjY2VudFwiKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcihcImFjY2VudFwiKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2Zy1sb2FkKFwiLi4vbWVkaWEvdmVuZG9yL2Zhcy1jaGVjay5zdmdcIiwgZmlsbD0je2NvbG9yKFwibGlnaHRcIil9KTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIH1cblxuICAgICY6Y2hlY2tlZDo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICB9XG59XG5cbi5pbnB1dC0tcmFkaW9idXR0b24ge1xuICAgICYge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmctbG9hZChcIi4uL21lZGlhL3ZlbmRvci9mYXMtY2lyY2xlLnN2Z1wiLCBmaWxsPSN7Y29sb3IoXCJhY2NlbnRcIil9KTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB9XG5cbiAgICAmOmNoZWNrZWQ6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG59XG5cbi8qIGRpc2FibGVkIHZhcmlhbnQgKi9cblxuLmlucHV0LS1kaXNhYmxlZCB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1peChjb2xvcihcImJhY2tncm91bmRcIiksIGNvbG9yKFwiYmFja2dyb3VuZFwiLCBcInNoYWRlXCIpKTtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgIH1cbn1cblxuLyogc2VsZWN0IGJyb3dzZXIgdmFyaWFudHMgKi9cblxuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGUsIHNlbGVjdG9yLW5vLXZlbmRvci1wcmVmaXgsIHNlbGVjdG9yLXR5cGUtbm8tdW5rbm93biAqL1xuXG4vKiBJRSAqL1xuXzotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG46cm9vdCAuaW5wdXQtLXNlbGVjdCB7XG4gICAgJiB7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgkcGFkZGluZy1ib3R0b20sICRmb250LXNpemUpIGNhbGMoI3tyZW1pZnkoJHBhZGRpbmctbGVmdCwgJGZvbnQtc2l6ZSl9IC0gM3B4KSBjYWxjKCN7cmVtaWZ5KCRwYWRkaW5nLWJvdHRvbSwgJGZvbnQtc2l6ZSl9IC0gMnB4KTtcbiAgICB9XG59XG5cbl86LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuOnJvb3QgLmlucHV0LS1hcnJvdyB7XG4gICAgJiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoI3skaWNvbi1zaXplfSArICN7cmVtaWZ5KCRwYWRkaW5nLXJpZ2h0ICogMiwgJGZvbnQtc2l6ZSl9IC0gM3B4KTtcbiAgICB9XG59XG5cbi8qIENocm9tZSAgKi9cbkBzdXBwb3J0cyAoLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lKSBhbmQgKGZvbnQtc3RyZXRjaDogbm9ybWFsKSBhbmQgKG5vdCgtbXMtYWNjZWxlcmF0b3I6IHRydWUpKSB7XG4gICAgLmlucHV0LS1zZWxlY3Qge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoJHBhZGRpbmctdG9wLCAkZm9udC1zaXplKSByZW1pZnkoJHBhZGRpbmctcmlnaHQsICRmb250LXNpemUpIHJlbWlmeSgkcGFkZGluZy1ib3R0b20sICRmb250LXNpemUpIHJlbWlmeSgkcGFkZGluZy1sZWZ0LCAkZm9udC1zaXplKTtcbiAgICB9XG5cbiAgICAuaW5wdXQtLWFycm93IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygjeyRpY29uLXNpemV9ICsgI3tyZW1pZnkoJHBhZGRpbmctcmlnaHQgKiAyLCAkZm9udC1zaXplKX0pO1xuICAgIH1cbn1cblxuLyogU2FmYXJpICovXG5fOjotd2Via2l0LWZ1bGwtcGFnZS1tZWRpYSxcbl86ZnV0dXJlLFxuOnJvb3QgLmlucHV0LS1zZWxlY3Qge1xuICAgICYge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoJHBhZGRpbmctdG9wLCAkZm9udC1zaXplKSByZW1pZnkoJHBhZGRpbmctcmlnaHQsICRmb250LXNpemUpIHJlbWlmeSgkcGFkZGluZy1ib3R0b20sICRmb250LXNpemUpIHJlbWlmeSgkcGFkZGluZy1sZWZ0LCAkZm9udC1zaXplKTtcbiAgICB9XG59XG5cbl86Oi13ZWJraXQtZnVsbC1wYWdlLW1lZGlhLFxuXzpmdXR1cmUsXG46cm9vdCAuaW5wdXQtLWFycm93IHtcbiAgICAmIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygjeyRpY29uLXNpemV9ICsgI3tyZW1pZnkoJHBhZGRpbmctcmlnaHQgKiAyLCAkZm9udC1zaXplKX0pO1xuICAgIH1cbn1cblxuLyogRWRnZSAqL1xuQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gICAgLmlucHV0LS1zZWxlY3Qge1xuICAgICAgICBwYWRkaW5nOiBjYWxjKCN7cmVtaWZ5KCRwYWRkaW5nLXRvcCwgJGZvbnQtc2l6ZSl9IC0gMXB4KSBjYWxjKCN7cmVtaWZ5KCRwYWRkaW5nLXJpZ2h0LCAkZm9udC1zaXplKX0gLSAycHgpIGNhbGMoI3tyZW1pZnkoJHBhZGRpbmctYm90dG9tLCAkZm9udC1zaXplKX0gLSAxcHgpIGNhbGMoI3tyZW1pZnkoJHBhZGRpbmctbGVmdCwgJGZvbnQtc2l6ZSl9IC0gMnB4KTtcbiAgICB9XG5cbiAgICAuaW5wdXQtLWFycm93IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygjeyRpY29uLXNpemV9ICsgI3tyZW1pZnkoJHBhZGRpbmctcmlnaHQgKiAyLCAkZm9udC1zaXplKX0gLSAycHgpO1xuICAgIH1cbn1cblxuLyogRmlyZWZveCAqL1xuQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeChcIlwiKSB7XG4gICAgLmlucHV0LS1zZWxlY3Qge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoJHBhZGRpbmctdG9wLCAkZm9udC1zaXplKSBjYWxjKCN7cmVtaWZ5KCRwYWRkaW5nLXJpZ2h0LCAkZm9udC1zaXplKX0gLSA0cHgpIHJlbWlmeSgkcGFkZGluZy1ib3R0b20sICRmb250LXNpemUpIGNhbGMoI3tyZW1pZnkoJHBhZGRpbmctbGVmdCwgJGZvbnQtc2l6ZSl9IC0gNHB4KTtcbiAgICB9XG5cbiAgICAuaW5wdXQtLWFycm93IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygjeyRpY29uLXNpemV9ICsgI3tyZW1pZnkoJHBhZGRpbmctcmlnaHQgKiAyLCAkZm9udC1zaXplKX0gLSA0cHgpO1xuICAgIH1cbn1cblxuLyogc3R5bGVsaW50LWVuYWJsZSAqL1xuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBUZXh0XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi50ZXh0IHtcbiAgICAmIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwiZm9yZWdyb3VuZFwiKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtaWZ5KDI0LCAxNik7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMCAxMywgMTYpO1xuICAgIH1cblxuICAgID4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLyogbGFiZWwgdmFyaWFudCAqL1xuXG4udGV4dC0tbGFiZWwge1xuICAgICYge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxufVxuXG4vKiBsaXN0IHZhcmlhbnQgKi9cblxuLnRleHQtLWxpc3Qge1xuICAgICYge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAwIDAgMjAsIDE2KTtcbiAgICB9XG5cbiAgICAudGV4dF9fbGlzdC1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgIH1cblxuICAgIC50ZXh0X19saXN0LWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSg0LCAxNik7XG4gICAgfVxufVxuXG4vKiBsaXN0IG9yZGVyZWQgdmFyaWFudCAqL1xuXG4udGV4dC0tb3JkZXJlZCB7XG4gICAgJiB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IGRlY2ltYWw7XG4gICAgfVxufVxuXG4vKiBsaXN0IHVub3JkZXJlZCB2YXJpYW50ICovXG5cbi50ZXh0LS11bm9yZGVyZWQge1xuICAgICYge1xuICAgICAgICBsaXN0LXN0eWxlOiBkaXNjO1xuICAgIH1cbn1cblxuLyogdGFibGUgdmFyaWFudCAqL1xuXG4udGV4dF9fdGFibGVfX2NvbnRhaW5lciB7XG4gICAgJiB7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi50ZXh0LS10YWJsZSB7XG4gICAgJiB7XG4gICAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAudGV4dF9faGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIH1cblxuICAgIC50ZXh0X19ib2R5IHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwO1xuICAgIH1cblxuICAgIC50ZXh0X19mb290ZXIge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJmb3JlZ3JvdW5kXCIsIFwidGludFwiKTtcbiAgICAgICAgZGlzcGxheTogdGFibGUtZm9vdGVyLWdyb3VwO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgLnRleHRfX3JvdyB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgICB9XG5cbiAgICAudGV4dF9fY2VsbCB7XG4gICAgICAgIGJvcmRlcjogcmVtaWZ5KDEpIHNvbGlkIGNvbG9yKFwiZm9yZWdyb3VuZFwiKTtcbiAgICAgICAgbWluLXdpZHRoOiByZW1pZnkoMTI1LCAxNik7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgxMCAxNSwgMTYpO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIH1cblxuICAgIC50ZXh0X19oZWFkZXIgLnRleHRfX2NlbGwsXG4gICAgLnRleHRfX2JvZHkgLnRleHRfX2NlbGwtLWhlYWRlciB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuXG4gICAgLnRleHRfX2JvZHkgLnRleHRfX2NlbGwtLWhlYWRlciB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBUaXRsZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4udGl0bGUge1xuICAgICYge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjksIDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbWlmeSgyNCwgMjkpO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMTAsIDI5KTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG59XG5cbi50aXRsZS0taDIsXG4udGl0bGUtLWgzLFxuLnRpdGxlLS1oNCB7XG4gICAgJiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDIwLCAxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW1pZnkoMjYsIDIwKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDUsIDIwKTtcbiAgICB9XG59XG5cbi50aXRsZS0taDIge1xuICAgICYge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJ0ZXJ0aWFyeVwiKTtcbiAgICB9XG59XG5cbi50aXRsZS0taDMge1xuICAgICYge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJzZWNvbmRhcnlcIik7XG4gICAgfVxufVxuXG4udGl0bGUtLWg0IHtcbiAgICAmIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwicXVhdGVybmFyeVwiKTtcbiAgICB9XG59XG5cbi50aXRsZS0taDUsXG4udGl0bGUtLWg2IHtcbiAgICAmIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwiZm9yZWdyb3VuZFwiKTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4udGl0bGUtLWg1IHtcbiAgICAmIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTgsIDE2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbWlmeSgyMCwgMTgpO1xuICAgIH1cbn1cblxuLnRpdGxlLS1oNiB7XG4gICAgJiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2LCAxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW1pZnkoMjQsIDE1KTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxufVxuXG4vKiBkaXZpZGVyIHZhcmlhbnQgKi9cblxuLnRpdGxlLS1kaXZpZGVyIHtcbiAgICAmIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcihcImJhY2tncm91bmRcIiwgXCJzaGFkZVwiKTtcbiAgICAgICAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsZXg6IDEgMSAwJTtcbiAgICAgICAgaGVpZ2h0OiByZW1pZnkoMSk7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW1pZnkoMTYsIDE2KTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW1pZnkoMTYsIDE2KTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEJsb2NrcXVvdGVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmJsb2NrcXVvdGUge1xuICAgICYge1xuICAgICAgICBib3JkZXItbGVmdDogcmVtaWZ5KDIpIHNvbGlkIGNvbG9yKFwiYWNjZW50XCIpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwIDAgMCAxNSwgMTYpO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogVXNlciBDb250ZW50XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi51c2VyLWNvbnRlbnQge1xuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgc2VsZWN0b3ItbWF4LXR5cGUgKi9cblxuICAgIC8vIHRlbCBsaW5rc1xuXG4gICAgYVtocmVmXj1cInRlbDpcIl0ge1xuICAgICAgICBAZXh0ZW5kIC5saW5rO1xuICAgIH1cblxuICAgIC8vIGltYWdlc1xuXG4gICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xufVxuXG4vKiBsaWdodCB2YXJpYW50ICovXG5cbi51c2VyLWNvbnRlbnQtLWxpZ2h0IHtcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHNlbGVjdG9yLW1heC10eXBlICovXG5cbiAgICAubGluayxcbiAgICAudGl0bGUsXG4gICAgLnRleHQsXG4gICAgLndwLWNhcHRpb24tdGV4dCB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImxpZ2h0XCIpO1xuICAgIH1cblxuICAgIC8qIHN0eWxlbGludC1lbmFibGUgKi9cbn1cbiIsIi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEFjY29yZGlvbiAtIEJhc2VkIG9uIEhhbmRvcmdlbCAtIGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL2hhbmRvcmdlbFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ud2VibGlueC1hY2NvcmRpb24tY29udGFpbmVyIHtcbiAgICAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLndlYmxpbngtYWNjb3JkaW9uX19oZWFkZXIge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG59XG5cbi53ZWJsaW54LWFjY29yZGlvbl9faGVhZGVyOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLndwLWJsb2NrLWFjZi13ZWJsaW54LWFjY29yZGlvbjpub3QoOmZpcnN0LWNoaWxkLCA6aGFzKC53ZWJsaW54LWFjY29yZGlvbi1jb250YWluZXIpKSAud2VibGlueC1hY2NvcmRpb25fX2hlYWRlciB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbWlmeSgxMik7XG4gICAgfVxufVxuXG4ud2VibGlueC1hY2NvcmRpb25fX2J1dHRvbiB7XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgLmJ1dHRvbiAhb3B0aW9uYWw7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJiYWNrZ3JvdW5kXCIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiByZW1pZnkoMTUpO1xuICAgICAgICBjb2xvcjogY29sb3IoXCJzZWNvbmRhcnlcIik7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICBmb250LXJhbmdlOiAkeHMtYnJlYWsgJHhsLWJyZWFrO1xuICAgICAgICBmb250LXNpemU6IHJlc3BvbnNpdmUgcmVtaWZ5KDE4LCAxNikgcmVtaWZ5KDIxLCAxNik7XG4gICAgICAgIGdhcDogcmVtaWZ5KDIzLCAyMSk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDE1IDI4KTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnLWxvYWQoXCIuLi9tZWRpYS92ZW5kb3IvZmFzLWFuZ2xlLXJpZ2h0LnN2Z1wiLCBmaWxsPSN7Y29sb3IoXCJzZWNvbmRhcnlcIil9KTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiByZW1pZnkoMjcsIDIxKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDEzLCAyMSk7XG4gICAgfVxufVxuXG4ud2VibGlueC1hY2NvcmRpb25fX2hlYWRlci0tc3RhdGUtb3BlbiAud2VibGlueC1hY2NvcmRpb25fX2J1dHRvbiB7XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgLmJ1dHRvbi0tc3RhdGUtaG92ZXIgIW9wdGlvbmFsO1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKFwiYmFja2dyb3VuZFwiKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtaWZ5KDE1IDE1IDAgMCk7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIH1cbn1cblxuLndlYmxpbngtYWNjb3JkaW9uX19oZWFkZXItLXN0YXRlLWZvY3VzIC53ZWJsaW54LWFjY29yZGlvbl9fYnV0dG9uIHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAuYnV0dG9uLS1zdGF0ZS1mb2N1cyAhb3B0aW9uYWw7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJiYWNrZ3JvdW5kXCIpO1xuICAgIH1cbn1cblxuLndlYmxpbngtYWNjb3JkaW9uX19wYW5lbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJiYWNrZ3JvdW5kXCIpO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbWlmeSgwIDAgMTUgMTUpO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogcmVtaWZ5KDAgMjgpO1xuICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjFzIGVhc2U7XG5cbiAgICAmLS1zdGF0ZS1vcGVuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjJzIGVhc2U7XG4gICAgfVxuXG4gICAgJi0tc3RhdGUtb3BlbmVkIHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxufVxuXG4ud2VibGlueC1hY2NvcmRpb25fX2NvbnRlbnQge1xuICAgICYge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAwIDMxKTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2U7XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi53ZWJsaW54LWFjY29yZGlvbl9fcGFuZWwtLXN0YXRlLW9wZW5lZCAud2VibGlueC1hY2NvcmRpb25fX2NvbnRlbnQge1xuICAgICYge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZTtcbiAgICB9XG59XG5cbi53ZWJsaW54LXRhYi1saXN0IHtcbiAgICAmIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBnYXA6IDFlbTtcbiAgICB9XG5cbiAgICAmLS1zdGF0ZS1hY3RpdmUge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIH1cblxuICAgICAgICArIC53ZWJsaW54LWFjY29yZGlvbi1jb250YWluZXIgLndlYmxpbngtYWNjb3JkaW9uX19oZWFkZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLndlYmxpbngtdGFiLWxpc3RfX2J1dHRvbiB7XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgLmJ1dHRvbiAhb3B0aW9uYWw7XG5cbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgICZbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0ge1xuICAgICAgICBAZXh0ZW5kIC5idXR0b24tLXN0YXRlLWhvdmVyICFvcHRpb25hbDtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgQGV4dGVuZCAuYnV0dG9uLS1zdGF0ZS1mb2N1cyAhb3B0aW9uYWw7XG4gICAgfVxufVxuIixudWxsLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEFydGljbGVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmFydGljbGVfX2ZpZ3VyZSB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMCAzMCwgMTYpO1xuICAgIH1cbn1cblxuLmFydGljbGVfX2ltYWdlIHtcbiAgICAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4vKiBleGNlcnB0IHZhcmlhbnQgKi9cblxuLmFydGljbGUtLWV4Y2VycHQge1xuICAgICYgKyAmIHtcbiAgICAgICAgYm9yZGVyLXRvcDogcmVtaWZ5KDEpIHNvbGlkIGNvbG9yKFwiYmFja2dyb3VuZFwiLCBcInNoYWRlXCIpO1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtaWZ5KDE2LCAxNik7XG4gICAgfVxuXG4gICAgLmFydGljbGVfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTgsIDE2KTtcbiAgICB9XG5cbiAgICAuYXJ0aWNsZV9faGVhZGVyID4gLmFydGljbGVfX3RpdGxlOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5hcnRpY2xlX19oZWFkZXIgPiAuYXJ0aWNsZV9fdGl0bGU6bm90KDpsYXN0LWNoaWxkKSArICoge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoMTAsIDE2KTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEF0dHJhY3Rpb25zIE1hcFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uYXR0cmFjdGlvbnMtbWFwIHtcbiAgICAmIHtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDE2LCAxNik7XG4gICAgfVxufVxuXG4uYXR0cmFjdGlvbnMtbWFwX19yZWdpb24ge1xuICAgICYge1xuICAgICAgICBmaWxsOiB0cmFuc3BhcmVudDtcbiAgICAgICAgc3Ryb2tlOiB0cmFuc3BhcmVudDtcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiByZW1pZnkoMik7XG4gICAgICAgIHRyYW5zaXRpb246IGZpbGwgMC4xNXMsIHN0cm9rZSAwLjE1cztcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIsXG4gICAgLmF0dHJhY3Rpb25zLW1hcF9fbGluazpmb2N1cyA+ICYsXG4gICAgLmF0dHJhY3Rpb25zLW1hcF9fbGluazpob3ZlciA+ICYge1xuICAgICAgICBmaWxsOiB0cmFuc3BhcmVudGl6ZShjb2xvcihcImFjY2VudFwiKSwgMC44KTtcbiAgICAgICAgc3Ryb2tlOiBjb2xvcihcImFjY2VudFwiKTtcbiAgICB9XG59XG4iLCIvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBCYWJlbCBGaXNoXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIHN0eWxlbGludC1kaXNhYmxlICovXG5cbi53ZWJsaW54LWJhYmVsLWZpc2gge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxufVxuXG4ud2VibGlueC1iYWJlbC1maXNoX19idXR0b24ge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBjb2xvcjogY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDEyLCAxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGdhcDogcmVtaWZ5KDgsIDEyKTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgfVxuXG4gICAgLmljb24ge1xuICAgICAgICBoZWlnaHQ6IHJlbWlmeSgxNiwgMTIpO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDgsIDEyKTtcbiAgICB9XG5cbiAgICAuaWNvbi0tbGFyZ2Uge1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDE2LCAxMik7XG4gICAgfVxuXG4gICAgOnJvb3Q6bm90KDpoYXMoI2d0LW52ZnJhbWUpKSAmW29uY2xpY2tdLFxuICAgIDpyb290OmhhcygjZ3QtbnZmcmFtZSkgJjpub3QoW29uY2xpY2tdKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4ud2VibGlueC1iYWJlbC1maXNoX19zdWJtaXQge1xuICAgIDpyb290OmhhcygjZ3QtbnZmcmFtZSkgJiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4ud2VibGlueC1iYWJlbC1maXNoX19pbnB1dCB7XG4gICAgJiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgICAgICBpbnNldDogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwYWRkaW5nOiBpbmhlcml0O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuLndlYmxpbngtYmFiZWwtZmlzaC0tbGlnaHQge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAud2VibGlueC1iYWJlbC1maXNoX19idXR0b24ge1xuICAgICAgICBAaW5jbHVkZSB0ZXh0LXN0cm9rZShjb2xvcihcImxpZ2h0XCIpLCByZW1pZnkoMiwgMTUpKTtcblxuICAgICAgICBjb2xvcjogY29sb3IoXCJzZWNvbmRhcnlcIik7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNSwgMTYpO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSg3LjUgMTAsIDE1KTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLndlYmxpbngtYmFiZWwtZmlzaF9fYnV0dG9uIC5pY29uIHtcbiAgICAgICAgQGluY2x1ZGUgdGV4dC1zdHJva2UoY29sb3IoXCJsaWdodFwiKSwgcmVtaWZ5KDIsIDE1KSk7XG4gICAgfVxufVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIENhbGxvdXRcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNhbGxvdXQge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcihcInByaW1hcnlcIik7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIGNvbG9yKFwicHJpbWFyeVwiKSAwJSwgZGFya2VuKGNvbG9yKFwicHJpbWFyeVwiKSwgNSkgMTAwJSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbWlmeSgxMCwgMTYpO1xuICAgICAgICBib3gtc2hhZG93OiByZW1pZnkoMCAwIDQsIDE2KSB0cmFuc3BhcmVudGl6ZShjb2xvcihcImRhcmtcIiksIDAuNik7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMTAsIDE2KTtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDIwLCAxNik7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKGNvbG9yKFwicHJpbWFyeVwiKSwgNSk7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIGxpZ2h0ZW4oY29sb3IoXCJwcmltYXJ5XCIpLCA1KSAwJSwgbGlnaHRlbihkYXJrZW4oY29sb3IoXCJwcmltYXJ5XCIpLCA1KSwgNSkgMTAwJSk7XG4gICAgfVxuXG4gICAgJi5jYWxsb3V0LS1zZWNvbmRhcnkge1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcihcInNlY29uZGFyeVwiKTtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgY29sb3IoXCJzZWNvbmRhcnlcIikgMCUsIGRhcmtlbihjb2xvcihcInNlY29uZGFyeVwiKSwgNSkgMTAwJSk7XG4gICAgfVxuXG4gICAgJi5jYWxsb3V0LS1zZWNvbmRhcnk6Zm9jdXMsXG4gICAgJi5jYWxsb3V0LS1zZWNvbmRhcnk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKGNvbG9yKFwic2Vjb25kYXJ5XCIpLCA1KTtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgbGlnaHRlbihjb2xvcihcInNlY29uZGFyeVwiKSwgNSkgMCUsIGxpZ2h0ZW4oZGFya2VuKGNvbG9yKFwic2Vjb25kYXJ5XCIpLCA1KSwgNSkgMTAwJSk7XG4gICAgfVxuXG4gICAgJi5jYWxsb3V0LS10ZXJ0aWFyeSB7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKFwidGVydGlhcnlcIik7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIGNvbG9yKFwidGVydGlhcnlcIikgMCUsIGRhcmtlbihjb2xvcihcInRlcnRpYXJ5XCIpLCA1KSAxMDAlKTtcbiAgICB9XG5cbiAgICAmLmNhbGxvdXQtLXRlcnRpYXJ5OmZvY3VzLFxuICAgICYuY2FsbG91dC0tdGVydGlhcnk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKGNvbG9yKFwidGVydGlhcnlcIiksIDUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCBsaWdodGVuKGNvbG9yKFwidGVydGlhcnlcIiksIDUpIDAlLCBsaWdodGVuKGRhcmtlbihjb2xvcihcInRlcnRpYXJ5XCIpLCA1KSwgNSkgMTAwJSk7XG4gICAgfVxuXG4gICAgJi5jYWxsb3V0LS1xdWF0ZXJuYXJ5IHtcbiAgICAgICAgYmFja2dyb3VuZDogY29sb3IoXCJxdWF0ZXJuYXJ5XCIpO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCBjb2xvcihcInF1YXRlcm5hcnlcIikgMCUsIGRhcmtlbihjb2xvcihcInF1YXRlcm5hcnlcIiksIDUpIDEwMCUpO1xuICAgIH1cblxuICAgICYuY2FsbG91dC0tcXVhdGVybmFyeTpmb2N1cyxcbiAgICAmLmNhbGxvdXQtLXF1YXRlcm5hcnk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKGNvbG9yKFwicXVhdGVybmFyeVwiKSwgNSk7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIGxpZ2h0ZW4oY29sb3IoXCJxdWF0ZXJuYXJ5XCIpLCA1KSAwJSwgbGlnaHRlbihkYXJrZW4oY29sb3IoXCJxdWF0ZXJuYXJ5XCIpLCA1KSwgNSkgMTAwJSk7XG4gICAgfVxufVxuXG4uY2FsbG91dF9fdGl0bGUge1xuICAgICYge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJsaWdodFwiKTtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTIsIDE2KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDQsIDEyKTtcbiAgICB9XG59XG5cbi5jYWxsb3V0X190ZXh0IHtcbiAgICAmIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwibGlnaHRcIik7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE0LCAxNik7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW1pZnkoMTYuOCwgMTQpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogaWZyYW1lXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5pZnJhbWVfX2NvbnRhaW5lciB7XG4gICAgJiB7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICA+IC5pZnJhbWUge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIExvZ29cblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmxvZ28ge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgfVxufVxuXG4ubG9nb19faW1hZ2Uge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNZW51IExpc3RcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PSBHTE9CQUwgVkFSSUFOVFMgPT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5tZW51LWxpc3RfX2NvbnRhaW5lciB7XG4gICAgJiB7XG4gICAgICAgIGNsZWFyOiBmaXg7XG4gICAgfVxufVxuXG4ubWVudS1saXN0IHtcbiAgICAmIHtcbiAgICAgICAgY2xlYXI6IGZpeDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxufVxuXG4ubWVudS1saXN0X19pdGVtIHtcbiAgICAmIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG59XG5cbi5tZW51LWxpc3RfX2xpbmsge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5tZW51LWxpc3RfX3RvZ2dsZSB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgPiAudG9nZ2xlX19pY29uIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW0uaXMtYWN0aXZlID4gJiA+IC50b2dnbGVfX2ljb24ge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICB9XG59XG5cbi8qIGFjY29yZGlvbiB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QtLWFjY29yZGlvbiB7XG4gICAgLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudCA+IC5tZW51LWxpc3RfX2xpbmsge1xuICAgICAgICBmbGV4OiAxIDEgMCU7XG4gICAgfVxufVxuXG4vKiBjaGlsZCB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QtLWNoaWxkIHtcbiAgICAmIHtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW0ge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG59XG5cbi8qIGNoaWxkIGFjY29yZGlvbiB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tYWNjb3JkaW9uIHtcbiAgICAmIHtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4xNXMsIHZpc2liaWxpdHkgMHMgMC4xNXMgIWltcG9ydGFudDsgLy8gQE5PVEUgIWltcG9ydGFudCByZXF1aXJlZCB0byBvdmVycmlkZSB0cmFuc2l0aW9uLXRvLWZyb20tYXV0byBpbmxpbmUgc3R5bGVcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudC5pcy1hY3RpdmUgPiAmIHtcbiAgICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuMTVzICFpbXBvcnRhbnQ7IC8vIEBOT1RFICFpbXBvcnRhbnQgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgdHJhbnNpdGlvbi10by1mcm9tLWF1dG8gaW5saW5lIHN0eWxlXG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxufVxuXG4vKiBjaGlsZCBvdmVybGF5IHZhcmlhbnQgKi9cblxuLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1vdmVybGF5IHtcbiAgICAmIHtcbiAgICAgICAgbGVmdDogLTk5OWVtO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTk5OWVtO1xuICAgICAgICB0cmFuc2l0aW9uOiBsZWZ0IDBzIDAuMTVzLCBvcGFjaXR5IDAuMTVzLCB0b3AgMHMgMC4xNXMsIHZpc2liaWxpdHkgMHMgMC4xNXM7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAubWVudS1saXN0X19pdGVtLS1wYXJlbnQ6aG92ZXIgPiAmLFxuICAgIC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudC5pcy1hY3RpdmUgPiAmIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8vIG11c3QgYmUgc2VwYXJhdGUgZnJvbSB0aGUgYWJvdmUgcnVsZXNldCBmb3IgZmFsbGJhY2sgcmVhc29uc1xuXG4gICAgLm5vLWphdmFzY3JpcHQgLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50OmZvY3VzLXdpdGhpbiA+ICYge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXM7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxufVxuXG4vKiBjaGlsZCBvdmVybGF5IGRlcHRoIDIgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLW92ZXJsYXkubWVudS1saXN0LS1kZXB0aC0yIHtcbiAgICAubWVudS1saXN0X19pdGVtLS1wYXJlbnQ6aG92ZXIgPiAmLFxuICAgIC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudC5pcy1hY3RpdmUgPiAmIHtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgIC8vIG11c3QgYmUgc2VwYXJhdGUgZnJvbSB0aGUgYWJvdmUgcnVsZXNldCBmb3IgZmFsbGJhY2sgcmVhc29uc1xuXG4gICAgLm5vLWphdmFzY3JpcHQgLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50OmZvY3VzLXdpdGhpbiA+ICYge1xuICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxufVxuXG4vKiBjaGlsZCBvdmVybGF5IHJldmVyc2UgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLW92ZXJsYXkubWVudS1saXN0LS1yZXZlcnNlIHtcbiAgICAmIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IDk5OWVtO1xuICAgICAgICB0cmFuc2l0aW9uOiByaWdodCAwcyAwLjE1cywgb3BhY2l0eSAwLjE1cywgdG9wIDBzIDAuMTVzLCB2aXNpYmlsaXR5IDBzIDAuMTVzO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudDpob3ZlciA+ICYsXG4gICAgLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50LmlzLWFjdGl2ZSA+ICYge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cztcbiAgICB9XG5cbiAgICAvLyBtdXN0IGJlIHNlcGFyYXRlIGZyb20gdGhlIGFib3ZlIHJ1bGVzZXQgZm9yIGZhbGxiYWNrIHJlYXNvbnNcblxuICAgIC5uby1qYXZhc2NyaXB0IC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudDpmb2N1cy13aXRoaW4gPiAmIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXM7XG4gICAgfVxufVxuXG4vKiBjaGlsZCBvdmVybGF5IHJldmVyc2UgZGVwdGggMiB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tb3ZlcmxheS5tZW51LWxpc3QtLXJldmVyc2UubWVudS1saXN0LS1kZXB0aC0yIHtcbiAgICAubWVudS1saXN0X19pdGVtLS1wYXJlbnQ6aG92ZXIgPiAmLFxuICAgIC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudC5pcy1hY3RpdmUgPiAmIHtcbiAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAvLyBtdXN0IGJlIHNlcGFyYXRlIGZyb20gdGhlIGFib3ZlIHJ1bGVzZXQgZm9yIGZhbGxiYWNrIHJlYXNvbnNcblxuICAgIC5uby1qYXZhc2NyaXB0IC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudDpmb2N1cy13aXRoaW4gPiAmIHtcbiAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG59XG5cbi8qIGZsZXggdmFyaWFudCAqL1xuXG4ubWVudS1saXN0LS1mbGV4IHtcbiAgICAmIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAmOm5vdCgubWVudS1saXN0LS1iZXR3ZWVuKSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgPiAubWVudS1saXN0X19pdGVtIHtcbiAgICAgICAgZmxleDogMSAxIDAlO1xuICAgIH1cblxuICAgICY6bm90KC5tZW51LWxpc3QtLWJldHdlZW4pOm5vdCgubWVudS1saXN0LS1jZW50ZXIpID4gLm1lbnUtbGlzdF9faXRlbSB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG59XG5cbi8qIGZsZXggYmV0d2VlbiB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QtLWZsZXgubWVudS1saXN0LS1iZXR3ZWVuIHtcbiAgICAmIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cblxuICAgID4gLm1lbnUtbGlzdF9faXRlbSB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbn1cblxuLyogZmxleCBjZW50ZXIgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0LS1mbGV4Lm1lbnUtbGlzdC0tY2VudGVyIHtcbiAgICAmIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgPiAubWVudS1saXN0X19pdGVtIHtcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxufVxuXG4vKiBmbGV4IGVuZCB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QtLWZsZXgubWVudS1saXN0LS1lbmQge1xuICAgICYge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cblxuICAgID4gLm1lbnUtbGlzdF9faXRlbSB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbn1cblxuLyogZmxleCBzdGFydCB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QtLWZsZXgubWVudS1saXN0LS1zdGFydCB7XG4gICAgJiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG5cbiAgICA+IC5tZW51LWxpc3RfX2l0ZW0ge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG59XG5cbi8qIHZlcnRpY2FsIHZhcmlhbnQgKi9cblxuLm1lbnUtbGlzdC0tdmVydGljYWwge1xuICAgID4gLm1lbnUtbGlzdF9faXRlbSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PSBDVVNUT00gVkFSSUFOVFMgPT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIG1ldGEgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0LS1tZXRhIHtcbiAgICAmIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwiZm9yZWdyb3VuZFwiLCBcInRpbnRcIik7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNCwgMTYpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMTQsIDE0KTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICAubWVudS1saXN0X19pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbWlmeSgyMCwgMTQpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2xpbmsge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJmb3JlZ3JvdW5kXCIsIFwidGludFwiKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2xpbms6aG92ZXIge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJmb3JlZ3JvdW5kXCIsIFwidGludFwiKTtcbiAgICB9XG59XG5cbi8qIG5hdmlnYXRpb24gdmFyaWFudCAqL1xuXG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIHtcbiAgICAmIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE1LCAxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgJiB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQtc3Ryb2tlKGNvbG9yKFwibGlnaHRcIiksIHJlbWlmeSgyLCAxNSkpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2xpbmssXG4gICAgLm1lbnUtbGlzdF9fdG9nZ2xlIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiByZW1pZnkoMTAsIDE1KTtcbiAgICAgICAgICAgIGNvbG9yOiBjb2xvcihcImFjY2VudFwiKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbWlmeSg3LjUgMTAsIDE1KTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC42cywgY29sb3IgMC42cztcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IGNvbG9yKFwiYWNjZW50XCIsIFwidGludFwiKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcywgY29sb3IgMC4zcztcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50aXplKGNvbG9yKFwibGlnaHRcIiksIDAuOCk7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MsIGNvbG9yIDAuM3M7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBjaGlsZCAqL1xuXG4gICAgLm1lbnUtbGlzdC0tY2hpbGQge1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcihcImFjY2VudFwiKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtaWZ5KDEwLCAxNSk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE1LCAxNSk7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tb3ZlcmxheSB7XG4gICAgICAgIG1pbi13aWR0aDogcmVtaWZ5KDI1MCwgMTUpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2l0ZW0ge1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2l0ZW0uaXMtYWN0aXZlLFxuICAgIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2l0ZW06Zm9jdXMtd2l0aGluLFxuICAgIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2l0ZW06aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudGl6ZShjb2xvcihcImxpZ2h0XCIpLCAwLjgpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2xpbmssXG4gICAgLm1lbnUtbGlzdC0tY2hpbGQgLm1lbnUtbGlzdF9fdG9nZ2xlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwibGlnaHRcIik7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgxMCAxNSwgMTUpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3QtLWNoaWxkID4gLm1lbnUtbGlzdF9faXRlbTpmaXJzdC1jaGlsZCA+IC5tZW51LWxpc3RfX2xpbmssXG4gICAgLm1lbnUtbGlzdC0tY2hpbGQgPiAubWVudS1saXN0X19pdGVtOmZpcnN0LWNoaWxkID4gLm1lbnUtbGlzdF9fdG9nZ2xlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbWlmeSgxNSwgMTUpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3QtLWNoaWxkID4gLm1lbnUtbGlzdF9faXRlbTpsYXN0LWNoaWxkID4gLm1lbnUtbGlzdF9fbGluayxcbiAgICAubWVudS1saXN0LS1jaGlsZCA+IC5tZW51LWxpc3RfX2l0ZW06bGFzdC1jaGlsZCA+IC5tZW51LWxpc3RfX3RvZ2dsZSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW1pZnkoMTUsIDE1KTtcbiAgICB9XG5cbiAgICAvKiBjaGlsZCBkZXB0aCAyICovXG5cbiAgICAubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLWRlcHRoLTIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHRyYW5zcGFyZW50aXplKGNvbG9yKFwibGlnaHRcIiksIDAuOCkgMCUsIHRyYW5zcGFyZW50aXplKGNvbG9yKFwibGlnaHRcIiksIDAuOCkgMTAwJSk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE1LCAxNSk7XG4gICAgfVxuXG4gICAgLy8gbGluZSB1cCB0aGUgZmx5b3V0IHdpdGggaXRzIHBhcmVudFxuICAgIC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudDpub3QoOmZpcnN0LWNoaWxkKSA+IC5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tZGVwdGgtMi5tZW51LWxpc3QtLW92ZXJsYXkge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoI3tyZW1pZnkoLTE1LCAxNSl9KTtcbiAgICB9XG5cbiAgICAvKiBhY2NvcmRpb25zICovXG5cbiAgICAmLm1lbnUtbGlzdC0tYWNjb3JkaW9uIC5tZW51LWxpc3QtLWNoaWxkIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTUsIDE1KTtcbiAgICB9XG5cbiAgICAmLm1lbnUtbGlzdC0tYWNjb3JkaW9uIC5tZW51LWxpc3QtLWNoaWxkOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKFwiYWNjZW50XCIsIFwic2hhZGVcIik7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDEpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYubWVudS1saXN0LS1hY2NvcmRpb24gLm1lbnUtbGlzdC0tY2hpbGQgLm1lbnUtbGlzdF9fbGluayxcbiAgICAmLm1lbnUtbGlzdC0tYWNjb3JkaW9uIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX3RvZ2dsZSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSg4IDE2LCAyMCk7XG4gICAgfVxuXG4gICAgJi5tZW51LWxpc3QtLWFjY29yZGlvbiAubWVudS1saXN0LS1jaGlsZCA+IC5tZW51LWxpc3RfX2l0ZW06Zmlyc3QtY2hpbGQgPiAubWVudS1saXN0X19saW5rLFxuICAgICYubWVudS1saXN0LS1hY2NvcmRpb24gLm1lbnUtbGlzdC0tY2hpbGQgPiAubWVudS1saXN0X19pdGVtOmZpcnN0LWNoaWxkID4gLm1lbnUtbGlzdF9fdG9nZ2xlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbWlmeSgxNiwgMjApO1xuICAgIH1cblxuICAgICYubWVudS1saXN0LS1hY2NvcmRpb24gLm1lbnUtbGlzdC0tY2hpbGQgPiAubWVudS1saXN0X19pdGVtOmxhc3QtY2hpbGQgPiAubWVudS1saXN0X19saW5rLFxuICAgICYubWVudS1saXN0LS1hY2NvcmRpb24gLm1lbnUtbGlzdC0tY2hpbGQgPiAubWVudS1saXN0X19pdGVtOmxhc3QtY2hpbGQgPiAubWVudS1saXN0X190b2dnbGUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtaWZ5KDE2LCAyMCk7XG4gICAgfVxufVxuXG4vKiBwYWdpbmF0aW9uIHZhcmlhbnQgKi9cblxuLm1lbnUtbGlzdC0tcGFnaW5hdGlvbiB7XG4gICAgJiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNCwgMTYpO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtaWZ5KDgsIDE0KTtcbiAgICB9XG5cbiAgICAubWVudS1saXN0X19saW5rLS1jdXJyZW50IHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwiZm9yZWdyb3VuZFwiKTtcbiAgICAgICAgY3Vyc29yOiBhdXRvO1xuICAgIH1cbn1cblxuLyogc29jaWFsIHZhcmlhbnQgKi9cblxuLm1lbnUtbGlzdC0tc29jaWFsIHtcbiAgICAmOm5vdCgubWVudS1saXN0LS12ZXJ0aWNhbCkgPiAubWVudS1saXN0X19pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbWlmeSgxNiwgMTYpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2ltYWdlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiByZW1pZnkoNDAsIDE2KTtcbiAgICB9XG59XG5cbi8qIHN1Ym1lbnUgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0LS1zdWJtZW51IHtcbiAgICAmIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2LCAxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuXG4gICAgJiB7XG4gICAgICAgIEBpbmNsdWRlIHRleHQtc3Ryb2tlKGNvbG9yKFwibGlnaHRcIiksIHJlbWlmeSgyLCAxNSkpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW0ge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAwIDgpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtaWZ5KDgpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW06OmFmdGVyLFxuICAgIC5tZW51LWxpc3RfX2l0ZW06Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtZGl2aWRlci5wbmdcIik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbWlmeSg0KTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDgpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW06OmFmdGVyIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW06Zmlyc3QtY2hpbGQ6OmJlZm9yZSB7XG4gICAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAubWVudS1saXN0X19saW5rIHtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDQgMjQsIDE2KTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE5pbmphIEZvcm1zXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWNsYXNzLXBhdHRlcm4gKi9cblxuLy8gaG9uZXlwb3QgZmllbGQgZml4XG5cbi5uZi1mb3JtLWhwIHtcbiAgICAmIHtcbiAgICAgICAgbGVmdDogLTk5OWVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTk5OWVtO1xuICAgIH1cbn1cblxuLy8gZGF0ZSBmaWVsZCBmaXhcblxuLm5mLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgLnBpa2FkYXlfX2NvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cblxuLy8gbGlzdCBmaWVsZCBmaXhcblxuLm5mLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgLmxpc3QtY2hlY2tib3gsXG4gICAgLmxpc3QtcmFkaW8ge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxufVxuXG4vLyBsYWJlbCBhbGlnbm1lbnRcblxuLm5mLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgLy8gY29tYmluZWRcblxuICAgICYubGFiZWwtYWJvdmUgLmZpZWxkLXdyYXAsXG4gICAgJi5sYWJlbC1yaWdodCAuZmllbGQtd3JhcCxcbiAgICAmLmxhYmVsLWJlbG93IC5maWVsZC13cmFwLFxuICAgICYubGFiZWwtbGVmdCAuZmllbGQtd3JhcCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgICYubGFiZWwtcmlnaHQgLmZpZWxkLXdyYXAgLm5mLWZpZWxkLWxhYmVsLFxuICAgICYubGFiZWwtbGVmdCAuZmllbGQtd3JhcCAubmYtZmllbGQtbGFiZWwge1xuICAgICAgICBmbGV4OiBub25lO1xuICAgIH1cblxuICAgICYubGFiZWwtYWJvdmUgLmZpZWxkLXdyYXAgLm5mLWZpZWxkLWVsZW1lbnQsXG4gICAgJi5sYWJlbC1iZWxvdyAuZmllbGQtd3JhcCAubmYtZmllbGQtZWxlbWVudCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYubGFiZWwtcmlnaHQgLmZpZWxkLXdyYXAgLm5mLWZpZWxkLWVsZW1lbnQsXG4gICAgJi5sYWJlbC1sZWZ0IC5maWVsZC13cmFwIC5uZi1maWVsZC1lbGVtZW50IHtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgfVxuXG4gICAgJi5sYWJlbC1yaWdodCAuY2hlY2tib3gtd3JhcCAubmYtZmllbGQtZWxlbWVudCxcbiAgICAmLmxhYmVsLWxlZnQgLmNoZWNrYm94LXdyYXAgLm5mLWZpZWxkLWVsZW1lbnQge1xuICAgICAgICBmbGV4OiBub25lO1xuICAgIH1cblxuICAgIC8vIGFib3ZlXG5cbiAgICAmLmxhYmVsLWFib3ZlIC5maWVsZC13cmFwIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAvLyBiZWxvd1xuXG4gICAgJi5sYWJlbC1iZWxvdyAuZmllbGQtd3JhcCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuXG4gICAgJi5sYWJlbC1iZWxvdyAuZmllbGQtd3JhcCAubmYtZmllbGQtbGFiZWwge1xuICAgICAgICBvcmRlcjogMjtcbiAgICB9XG5cbiAgICAmLmxhYmVsLWJlbG93IC5maWVsZC13cmFwIC5uZi1maWVsZC1lbGVtZW50IHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgfVxuXG4gICAgLy8gcmlnaHRcblxuICAgICYubGFiZWwtcmlnaHQgLmZpZWxkLXdyYXAgLm5mLWZpZWxkLWxhYmVsIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgfVxuXG4gICAgJi5sYWJlbC1yaWdodCAuZmllbGQtd3JhcCAubmYtZmllbGQtZWxlbWVudCB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgIH1cblxuICAgIC8vIGhpZGRlblxuXG4gICAgJi5sYWJlbC1oaWRkZW4gLmZpZWxkLXdyYXAgLm5mLWZpZWxkLWxhYmVsIHtcbiAgICAgICAgbGVmdDogLTk5OWVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTk5OWVtO1xuICAgIH1cbn1cblxuLy8gcmVDQVBUQ0hBIGxheWVyaW5nIGZpeFxuXG4uZ3JlY2FwdGNoYS1iYWRnZSB7XG4gICAgJiB7XG4gICAgICAgIHotaW5kZXg6IDk5OTtcbiAgICB9XG59XG5cbi8vIGNvbHVtbiBlZGdlIGFsaWdubWVudCBmaXhcblxuLm5mLXJvdyB7XG4gICAgLm5mLWhhcy1jb2x1bW5zICYge1xuICAgICAgICBtYXJnaW46IDAgLTVweDtcbiAgICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE9waW5pb25hdGVkIFR3ZWFrc1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ubmYtZm9ybS1jb250IHtcbiAgICAuaXMtb2ZmbGluZSAmIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIC5pcy1vZmZsaW5lICY6OmJlZm9yZSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50aXplKGNvbG9yKFwiYmFja2dyb3VuZFwiKSwgMC4yNSk7XG4gICAgICAgIGNvbnRlbnQ6IFwiU29ycnksIGl0IGxvb2tzIGxpa2UgeW91XFwncmUgb2ZmbGluZS4gUGxlYXNlIHJlY29ubmVjdCB0byB0aGUgaW50ZXJuZXQgdG8gdXNlIHRoaXMgZm9ybS5cIjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDIwLCAxNik7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgkY29udGVudC1wYWRkaW5nLCAyMCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLy8gcmVxdWlyZWQgaW5kaWNhdG9yIGZpeFxuXG4ubmluamEtZm9ybXMtcmVxLXN5bWJvbCB7XG4gICAgJiB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImVycm9yXCIpO1xuICAgIH1cbn1cblxuLy8gaGVscCB0b29sdGlwIGZpeFxuXG4ubmluamEtZm9ybXMtaGVscC1zeW1ib2wge1xuICAgICYge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG59XG5cbi5uaW5qYS1mb3Jtcy1oZWxwLXRvb2x0aXAge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcihcImRhcmtcIiwgXCJ0aW50XCIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiByZW1pZnkoNiwgMTQpO1xuICAgICAgICBib3R0b206IDEzMCU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE0LCAxNik7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDEwLCAxNCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSg1MCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzLCB0cmFuc2Zvcm0gMC4xNXM7XG4gICAgICAgIHdpZHRoOiByZW1pZnkoMjAwLCAxNCk7XG4gICAgfVxuXG4gICAgLm5pbmphLWZvcm1zLWhlbHAtc3ltYm9sLmlzLWFjdGl2ZSAmIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IHJlbWlmeSg2LCAxNikgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yaWdodDogcmVtaWZ5KDYsIDE2KSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXRvcDogcmVtaWZ5KDYsIDE2KSBzb2xpZCBjb2xvcihcImRhcmtcIiwgXCJ0aW50XCIpO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuXG4gICAgLm5pbmphLWZvcm1zLXVzZXItY29udGVudCA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLy8gbGlzdCBmaWVsZCBmaXhcblxuLm5mLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgLmxpc3QtY2hlY2tib3gsXG4gICAgLmxpc3QtcmFkaW8ge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoNCwgMTYpO1xuICAgIH1cblxuICAgIC5saXN0LWNoZWNrYm94IC5pbnB1dC0tY2hlY2tib3gsXG4gICAgLmxpc3QtcmFkaW8gLmlucHV0LS1yYWRpb2J1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSg0LCAxNik7XG4gICAgfVxuXG4gICAgLmxpc3QtY2hlY2tib3ggLnRleHQtLWxhYmVsLFxuICAgIC5saXN0LXJhZGlvIC50ZXh0LS1sYWJlbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSg0LCAxNik7XG4gICAgfVxufVxuXG4vLyBzdGFycyBmaWVsZCBmaXhcblxuLm5mLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgLnN0YXJzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDI0LCAxNik7XG4gICAgfVxufVxuXG4vLyBlcnJvciBmaXhcblxuLm5mLWVycm9yLW1zZyB7XG4gICAgJiB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImVycm9yXCIsIFwidGludFwiKTtcbiAgICB9XG59XG5cbi5uZi1lcnJvciAuaW5wdXQge1xuICAgICYge1xuICAgICAgICBAZXh0ZW5kIC5pbnB1dC0tZXJyb3IgIW9wdGlvbmFsO1xuICAgIH1cbn1cblxuLy8gc3VjY2VzcyBmaXhcblxuLm5mLXBhc3MgLmlucHV0IHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAuaW5wdXQtLXN1Y2Nlc3MgIW9wdGlvbmFsO1xuICAgIH1cbn1cblxuLy8gcmVDQVBUQ0hBIGZpeFxuXG4ubmYtZmllbGQtY29udGFpbmVyIHtcbiAgICAuZy1yZWNhcHRjaGE6bm90KFtkYXRhLXNpemU9XCJpbnZpc2libGVcIl0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDI0LCAxNik7XG4gICAgfVxufVxuXG4vLyBsYWJlbCBkaXNwbGF5XG5cbi5uZi1maWVsZC1jb250YWluZXIge1xuICAgIC50ZXh0LS1sYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG59XG5cbi8vIGxhYmVsIGFsaWdubWVudFxuXG4ubmYtZmllbGQtY29udGFpbmVyIHtcbiAgICAvLyBhYm92ZVxuXG4gICAgJi5sYWJlbC1hYm92ZSAubmYtZmllbGQtbGFiZWwgPiAudGV4dC0tbGFiZWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoNCwgMTYpO1xuICAgIH1cblxuICAgIC8vIGJlbG93XG5cbiAgICAmLmxhYmVsLWJlbG93IC5uZi1maWVsZC1sYWJlbCA+IC50ZXh0LS1sYWJlbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbWlmeSg0LCAxNik7XG4gICAgfVxuXG4gICAgJi5sYWJlbC1iZWxvdyAubmYtZmllbGQtZWxlbWVudCAuaW5wdXQsXG4gICAgJi5sYWJlbC1iZWxvdyAubmYtZmllbGQtZWxlbWVudCAuc3RhcnMsXG4gICAgJi5sYWJlbC1iZWxvdyAubGlzdC1jaGVja2JveCxcbiAgICAmLmxhYmVsLWJlbG93IC5saXN0LXJhZGlvIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgfVxuXG4gICAgLy8gbGVmdFxuXG4gICAgJi5sYWJlbC1sZWZ0IC5uZi1maWVsZC1sYWJlbCA+IC50ZXh0LS1sYWJlbCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtaWZ5KDEwLCAxNik7XG4gICAgfVxuXG4gICAgLy8gcmlnaHRcblxuICAgICYubGFiZWwtcmlnaHQgLm5mLWZpZWxkLWxhYmVsID4gLnRleHQtLWxhYmVsIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbWlmeSgxMCwgMTYpO1xuICAgIH1cblxuICAgIC8vIGNoZWNrYm94L3JhZGlvIGxpc3RzXG5cbiAgICAmLmxpc3RjaGVja2JveC1jb250YWluZXIgLmlucHV0LS1jaGVja2JveCxcbiAgICAmLmxpc3RyYWRpby1jb250YWluZXIgLmlucHV0LS1yYWRpb2J1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtaWZ5KDYsIDE2KTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFBhbmVsIFRvZ2dsZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucGFuZWwtdG9nZ2xlIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjb2xvcjogY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDI0LCAxNik7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDQwLCAyNCk7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDQwLCAyNCk7XG4gICAgfVxufVxuIiwiLyohIFBob3RvU3dpcGUgbWFpbiBDU1MgYnkgRG1pdHJ5IFNlbWVub3YgfCBwaG90b3N3aXBlLmNvbSB8IE1JVCBsaWNlbnNlICovXG4vKlxuXHRTdHlsZXMgZm9yIGJhc2ljIFBob3RvU3dpcGUgZnVuY3Rpb25hbGl0eSAoc2xpZGluZyBhcmVhLCBvcGVuL2Nsb3NlIHRyYW5zaXRpb25zKVxuKi9cbi8qIHBzd3AgPSBwaG90b3N3aXBlICovXG4ucHN3cCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG4gIHotaW5kZXg6IDE1MDA7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogY3JlYXRlIHNlcGFyYXRlIGxheWVyLCB0byBhdm9pZCBwYWludCBvbiB3aW5kb3cub25zY3JvbGwgaW4gd2Via2l0L2JsaW5rICovXG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdXRsaW5lOiBub25lOyB9XG4gIC5wc3dwICoge1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbiAgLnBzd3AgaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cblxuLyogc3R5bGUgaXMgYWRkZWQgd2hlbiBKUyBvcHRpb24gc2hvd0hpZGVPcGFjaXR5IGlzIHNldCB0byB0cnVlICovXG4ucHN3cC0tYW5pbWF0ZV9vcGFjaXR5IHtcbiAgLyogMC4wMDEsIGJlY2F1c2Ugb3BhY2l0eTowIGRvZXNuJ3QgdHJpZ2dlciBQYWludCBhY3Rpb24sIHdoaWNoIGNhdXNlcyBsYWcgYXQgc3RhcnQgb2YgdHJhbnNpdGlvbiAqL1xuICBvcGFjaXR5OiAwLjAwMTtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG4gIC8qIGZvciBvcGVuL2Nsb3NlIHRyYW5zaXRpb24gKi9cbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpO1xuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7IH1cblxuLnBzd3AtLW9wZW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucHN3cC0tem9vbS1hbGxvd2VkIC5wc3dwX19pbWcge1xuICAvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcbiAgY3Vyc29yOiAtbW96LXpvb20taW47XG4gIGN1cnNvcjogem9vbS1pbjsgfVxuXG4ucHN3cC0tem9vbWVkLWluIC5wc3dwX19pbWcge1xuICAvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgY3Vyc29yOiAtbW96LWdyYWI7XG4gIGN1cnNvcjogZ3JhYjsgfVxuXG4ucHN3cC0tZHJhZ2dpbmcgLnBzd3BfX2ltZyB7XG4gIC8qIGF1dG9wcmVmaXhlcjogb2ZmICovXG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiYmluZztcbiAgY3Vyc29yOiAtbW96LWdyYWJiaW5nO1xuICBjdXJzb3I6IGdyYWJiaW5nOyB9XG5cbi8qXG5cdEJhY2tncm91bmQgaXMgYWRkZWQgYXMgYSBzZXBhcmF0ZSBlbGVtZW50LlxuXHRBcyBhbmltYXRpbmcgb3BhY2l0eSBpcyBtdWNoIGZhc3RlciB0aGFuIGFuaW1hdGluZyByZ2JhKCkgYmFja2dyb3VuZC1jb2xvci5cbiovXG4ucHN3cF9fYmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7IH1cblxuLnBzd3BfX3Njcm9sbC13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnBzd3BfX2NvbnRhaW5lcixcbi5wc3dwX196b29tLXdyYXAge1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwOyB9XG5cbi8qIFByZXZlbnQgc2VsZWN0aW9uIGFuZCB0YXAgaGlnaGxpZ2h0cyAqL1xuLnBzd3BfX2NvbnRhaW5lcixcbi5wc3dwX19pbWcge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lOyB9XG5cbi5wc3dwX196b29tLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICAvKiBmb3Igb3Blbi9jbG9zZSB0cmFuc2l0aW9uICovXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpOyB9XG5cbi5wc3dwX19iZyB7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICAvKiBmb3Igb3Blbi9jbG9zZSB0cmFuc2l0aW9uICovXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpOyB9XG5cbi5wc3dwLS1hbmltYXRlZC1pbiAucHN3cF9fYmcsXG4ucHN3cC0tYW5pbWF0ZWQtaW4gLnBzd3BfX3pvb20td3JhcCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTsgfVxuXG4ucHN3cF9fY29udGFpbmVyLFxuLnBzd3BfX3pvb20td3JhcCB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5wc3dwX19pdGVtIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnBzd3BfX2ltZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgdG9wOiAwO1xuICBsZWZ0OiAwOyB9XG5cbi8qXG5cdHN0cmV0Y2hlZCB0aHVtYm5haWwgb3IgZGl2IHBsYWNlaG9sZGVyIGVsZW1lbnQgKHNlZSBiZWxvdylcblx0c3R5bGUgaXMgYWRkZWQgdG8gYXZvaWQgZmxpY2tlcmluZyBpbiB3ZWJraXQvYmxpbmsgd2hlbiBsYXllcnMgb3ZlcmxhcFxuKi9cbi5wc3dwX19pbWctLXBsYWNlaG9sZGVyIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLypcblx0ZGl2IGVsZW1lbnQgdGhhdCBtYXRjaGVzIHNpemUgb2YgbGFyZ2UgaW1hZ2Vcblx0bGFyZ2UgaW1hZ2UgbG9hZHMgb24gdG9wIG9mIGl0XG4qL1xuLnBzd3BfX2ltZy0tcGxhY2Vob2xkZXItLWJsYW5rIHtcbiAgYmFja2dyb3VuZDogIzIyMjsgfVxuXG4ucHN3cC0taWUgLnBzd3BfX2ltZyB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7IH1cblxuLypcblx0RXJyb3IgbWVzc2FnZSBhcHBlYXJzIHdoZW4gaW1hZ2UgaXMgbm90IGxvYWRlZFxuXHQoSlMgb3B0aW9uIGVycm9yTXNnIGNvbnRyb2xzIG1hcmt1cClcbiovXG4ucHN3cF9fZXJyb3ItbXNnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgbWFyZ2luLXRvcDogLThweDtcbiAgY29sb3I6ICNDQ0M7IH1cblxuLnBzd3BfX2Vycm9yLW1zZyBhIHtcbiAgY29sb3I6ICNDQ0M7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4iLCIvKiEgUGhvdG9Td2lwZSBEZWZhdWx0IFVJIENTUyBieSBEbWl0cnkgU2VtZW5vdiB8IHBob3Rvc3dpcGUuY29tIHwgTUlUIGxpY2Vuc2UgKi9cbi8qXG5cblx0Q29udGVudHM6XG5cblx0MS4gQnV0dG9uc1xuXHQyLiBTaGFyZSBtb2RhbCBhbmQgbGlua3Ncblx0My4gSW5kZXggaW5kaWNhdG9yIChcIjEgb2YgWFwiIGNvdW50ZXIpXG5cdDQuIENhcHRpb25cblx0NS4gTG9hZGluZyBpbmRpY2F0b3Jcblx0Ni4gQWRkaXRpb25hbCBzdHlsZXMgKHJvb3QgZWxlbWVudCwgdG9wIGJhciwgaWRsZSBzdGF0ZSwgaGlkZGVuIHN0YXRlLCBldGMuKVxuXG4qL1xuLypcblx0XG5cdDEuIEJ1dHRvbnNcblxuICovXG4vKiA8YnV0dG9uPiBjc3MgcmVzZXQgKi9cbi5wc3dwX19idXR0b24ge1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBmbG9hdDogcmlnaHQ7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgLnBzd3BfX2J1dHRvbjpmb2N1cywgLnBzd3BfX2J1dHRvbjpob3ZlciB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAucHN3cF9fYnV0dG9uOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBvcGFjaXR5OiAwLjk7IH1cbiAgLnBzd3BfX2J1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7IH1cblxuLyogcHN3cF9fdWktLW92ZXItY2xvc2UgY2xhc3MgaXQgYWRkZWQgd2hlbiBtb3VzZSBpcyBvdmVyIGVsZW1lbnQgdGhhdCBzaG91bGQgY2xvc2UgZ2FsbGVyeSAqL1xuLnBzd3BfX3VpLS1vdmVyLWNsb3NlIC5wc3dwX19idXR0b24tLWNsb3NlIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4ucHN3cF9fYnV0dG9uLFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQ6YmVmb3JlLFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IHVybChkZWZhdWx0LXNraW4ucG5nKSAwIDAgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDI2NHB4IDg4cHg7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7IH1cblxuQG1lZGlhICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMSksICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMDkzNzUpLCAobWluLXJlc29sdXRpb246IDEwNWRwaSksIChtaW4tcmVzb2x1dGlvbjogMS4xZHBweCkge1xuICAvKiBTZXJ2ZSBTVkcgc3ByaXRlIGlmIGJyb3dzZXIgc3VwcG9ydHMgU1ZHIGFuZCByZXNvbHV0aW9uIGlzIG1vcmUgdGhhbiAxMDVkcGkgKi9cbiAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLFxuICAucHN3cC0tc3ZnIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0OmJlZm9yZSxcbiAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQ6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGVmYXVsdC1za2luLnN2Zyk7IH1cbiAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbiAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IH0gfVxuXG4ucHN3cF9fYnV0dG9uLS1jbG9zZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQ0cHg7IH1cblxuLnBzd3BfX2J1dHRvbi0tc2hhcmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDRweCAtNDRweDsgfVxuXG4ucHN3cF9fYnV0dG9uLS1mcyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnBzd3AtLXN1cHBvcnRzLWZzIC5wc3dwX19idXR0b24tLWZzIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnBzd3AtLWZzIC5wc3dwX19idXR0b24tLWZzIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0cHggMDsgfVxuXG4ucHN3cF9fYnV0dG9uLS16b29tIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTg4cHggMDsgfVxuXG4ucHN3cC0tem9vbS1hbGxvd2VkIC5wc3dwX19idXR0b24tLXpvb20ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucHN3cC0tem9vbWVkLWluIC5wc3dwX19idXR0b24tLXpvb20ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTMycHggMDsgfVxuXG4vKiBubyBhcnJvd3Mgb24gdG91Y2ggc2NyZWVucyAqL1xuLnBzd3AtLXRvdWNoIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3AtLXRvdWNoIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4vKlxuXHRBcnJvdyBidXR0b25zIGhpdCBhcmVhXG5cdChpY29uIGlzIGFkZGVkIHRvIDpiZWZvcmUgcHNldWRvLWVsZW1lbnQpXG4qL1xuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTUwcHg7XG4gIHdpZHRoOiA3MHB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQge1xuICBsZWZ0OiAwOyB9XG5cbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gIHJpZ2h0OiAwOyB9XG5cbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0OmJlZm9yZSxcbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgdG9wOiAzNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGhlaWdodDogMzBweDtcbiAgd2lkdGg6IDMycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdDpiZWZvcmUge1xuICBsZWZ0OiA2cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMzhweCAtNDRweDsgfVxuXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQ6YmVmb3JlIHtcbiAgcmlnaHQ6IDZweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk0cHggLTQ0cHg7IH1cblxuLypcblxuXHQyLiBTaGFyZSBtb2RhbC9wb3B1cCBhbmQgbGlua3NcblxuICovXG4ucHN3cF9fY291bnRlcixcbi5wc3dwX19zaGFyZS1tb2RhbCB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi5wc3dwX19zaGFyZS1tb2RhbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMTBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxNjAwO1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1vdXQ7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLW91dDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5OyB9XG5cbi5wc3dwX19zaGFyZS1tb2RhbC0taGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ucHN3cF9fc2hhcmUtdG9vbHRpcCB7XG4gIHotaW5kZXg6IDE2MjA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbiAgdG9wOiA1NnB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgcmlnaHQ6IDQ0cHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4yNXM7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTsgfVxuICAucHN3cF9fc2hhcmUtdG9vbHRpcCBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA4cHggMTJweDtcbiAgICBjb2xvcjogIzAwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4OyB9XG4gICAgLnBzd3BfX3NoYXJlLXRvb2x0aXAgYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBjb2xvcjogIzAwMDsgfVxuICAgIC5wc3dwX19zaGFyZS10b29sdGlwIGE6Zmlyc3QtY2hpbGQge1xuICAgICAgLyogcm91bmQgY29ybmVycyBvbiB0aGUgZmlyc3QvbGFzdCBsaXN0IGl0ZW0gKi9cbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweCAycHggMCAwOyB9XG4gICAgLnBzd3BfX3NoYXJlLXRvb2x0aXAgYTpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAycHggMnB4OyB9XG5cbi5wc3dwX19zaGFyZS1tb2RhbC0tZmFkZS1pbiB7XG4gIG9wYWNpdHk6IDE7IH1cbiAgLnBzd3BfX3NoYXJlLW1vZGFsLS1mYWRlLWluIC5wc3dwX19zaGFyZS10b29sdGlwIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4vKiBpbmNyZWFzZSBzaXplIG9mIHNoYXJlIGxpbmtzIG9uIHRvdWNoIGRldmljZXMgKi9cbi5wc3dwLS10b3VjaCAucHN3cF9fc2hhcmUtdG9vbHRpcCBhIHtcbiAgcGFkZGluZzogMTZweCAxMnB4OyB9XG5cbmEucHN3cF9fc2hhcmUtLWZhY2Vib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xMnB4O1xuICByaWdodDogMTVweDtcbiAgYm9yZGVyOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6ICNGRkY7XG4gIC13ZWJraXQtcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC1tb3otcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbmEucHN3cF9fc2hhcmUtLWZhY2Vib29rOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzNFNUM5QTtcbiAgY29sb3I6ICNGRkY7IH1cbiAgYS5wc3dwX19zaGFyZS0tZmFjZWJvb2s6aG92ZXI6YmVmb3JlIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjM0U1QzlBOyB9XG5cbmEucHN3cF9fc2hhcmUtLXR3aXR0ZXI6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjNTVBQ0VFO1xuICBjb2xvcjogI0ZGRjsgfVxuXG5hLnBzd3BfX3NoYXJlLS1waW50ZXJlc3Q6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjQ0NDO1xuICBjb2xvcjogI0NFMjcyRDsgfVxuXG5hLnBzd3BfX3NoYXJlLS1kb3dubG9hZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNEREQ7IH1cblxuLypcblxuXHQzLiBJbmRleCBpbmRpY2F0b3IgKFwiMSBvZiBYXCIgY291bnRlcilcblxuICovXG4ucHN3cF9fY291bnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDQ0cHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XG4gIGNvbG9yOiAjRkZGO1xuICBvcGFjaXR5OiAwLjc1O1xuICBwYWRkaW5nOiAwIDEwcHg7IH1cblxuLypcblx0XG5cdDQuIENhcHRpb25cblxuICovXG4ucHN3cF9fY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogNDRweDsgfVxuICAucHN3cF9fY2FwdGlvbiBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGNvbG9yOiAjQkJCOyB9XG5cbi5wc3dwX19jYXB0aW9uX19jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXgtd2lkdGg6IDQyMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgZm9udC1zaXplOiAxM3B4O1xuICBwYWRkaW5nOiAxMHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgY29sb3I6ICNDQ0M7IH1cblxuLnBzd3BfX2NhcHRpb24tLWVtcHR5IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBGYWtlIGNhcHRpb24gZWxlbWVudCwgdXNlZCB0byBjYWxjdWxhdGUgaGVpZ2h0IG9mIG5leHQvcHJldiBpbWFnZSAqL1xuLnBzd3BfX2NhcHRpb24tLWZha2Uge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLypcblxuXHQ1LiBMb2FkaW5nIGluZGljYXRvciAocHJlbG9hZGVyKVxuXG5cdFlvdSBjYW4gcGxheSB3aXRoIGl0IGhlcmUgLSBodHRwOi8vY29kZXBlbi5pby9kaW1zZW1lbm92L3Blbi95eUJXb1JcblxuICovXG4ucHN3cF9fcHJlbG9hZGVyIHtcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogNDRweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMnB4O1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1vdXQ7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLW91dDtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG4gIGRpcmVjdGlvbjogbHRyOyB9XG5cbi5wc3dwX19wcmVsb2FkZXJfX2ljbiB7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIG1hcmdpbjogMTJweDsgfVxuXG4ucHN3cF9fcHJlbG9hZGVyLS1hY3RpdmUge1xuICBvcGFjaXR5OiAxOyB9XG4gIC5wc3dwX19wcmVsb2FkZXItLWFjdGl2ZSAucHN3cF9fcHJlbG9hZGVyX19pY24ge1xuICAgIC8qIFdlIHVzZSAuZ2lmIGluIGJyb3dzZXJzIHRoYXQgZG9uJ3Qgc3VwcG9ydCBDU1MgYW5pbWF0aW9uICovXG4gICAgYmFja2dyb3VuZDogdXJsKHByZWxvYWRlci5naWYpIDAgMCBuby1yZXBlYXQ7IH1cblxuLnBzd3AtLWNzc19hbmltYXRpb24gLnBzd3BfX3ByZWxvYWRlci0tYWN0aXZlIHtcbiAgb3BhY2l0eTogMTsgfVxuICAucHN3cC0tY3NzX2FuaW1hdGlvbiAucHN3cF9fcHJlbG9hZGVyLS1hY3RpdmUgLnBzd3BfX3ByZWxvYWRlcl9faWNuIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogY2xvY2t3aXNlIDUwMG1zIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogY2xvY2t3aXNlIDUwMG1zIGxpbmVhciBpbmZpbml0ZTsgfVxuICAucHN3cC0tY3NzX2FuaW1hdGlvbiAucHN3cF9fcHJlbG9hZGVyLS1hY3RpdmUgLnBzd3BfX3ByZWxvYWRlcl9fZG9udXQge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBkb251dC1yb3RhdGUgMTAwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpIGluZmluaXRlO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBkb251dC1yb3RhdGUgMTAwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpIGluZmluaXRlOyB9XG5cbi5wc3dwLS1jc3NfYW5pbWF0aW9uIC5wc3dwX19wcmVsb2FkZXJfX2ljbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMTVweDtcbiAgdG9wOiAxNXB4O1xuICBtYXJnaW46IDA7IH1cblxuLnBzd3AtLWNzc19hbmltYXRpb24gLnBzd3BfX3ByZWxvYWRlcl9fY3V0IHtcbiAgLyogXG5cdFx0XHRUaGUgaWRlYSBvZiBhbmltYXRpbmcgaW5uZXIgY2lyY2xlIGlzIGJhc2VkIG9uIFBvbHltZXIgKFwibWF0ZXJpYWxcIikgbG9hZGluZyBpbmRpY2F0b3IgXG5cdFx0XHQgYnkgS2VhbnUgTGVlIGh0dHBzOi8vYmxvZy5rZWFudWxlZS5jb20vMjAxNC8xMC8yMC90aGUtdGFsZS1vZi10aHJlZS1zcGlubmVycy5odG1sXG5cdFx0Ki9cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogN3B4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLnBzd3AtLWNzc19hbmltYXRpb24gLnBzd3BfX3ByZWxvYWRlcl9fZG9udXQge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgYm9yZGVyOiAycHggc29saWQgI0ZGRjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgbWFyZ2luOiAwOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAucHN3cF9fcHJlbG9hZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogYXV0bztcbiAgICB0b3A6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBjbG9ja3dpc2Uge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGNsb2Nrd2lzZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBkb251dC1yb3RhdGUge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTQwZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xNDBkZWcpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfSB9XG5cbkBrZXlmcmFtZXMgZG9udXQtcm90YXRlIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTE0MGRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTQwZGVnKTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH0gfVxuXG4vKlxuXHRcblx0Ni4gQWRkaXRpb25hbCBzdHlsZXNcblxuICovXG4vKiByb290IGVsZW1lbnQgb2YgVUkgKi9cbi5wc3dwX191aSB7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGF1dG87XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6IDE1NTA7IH1cblxuLyogdG9wIGJsYWNrIGJhciB3aXRoIGJ1dHRvbnMgYW5kIFwiMSBvZiBYXCIgaW5kaWNhdG9yICovXG4ucHN3cF9fdG9wLWJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDQ0cHg7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5wc3dwX19jYXB0aW9uLFxuLnBzd3BfX3RvcC1iYXIsXG4ucHN3cC0taGFzX21vdXNlIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3AtLWhhc19tb3VzZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpOyB9XG5cbi8qIHBzd3AtLWhhc19tb3VzZSBjbGFzcyBpcyBhZGRlZCBvbmx5IHdoZW4gdHdvIHN1YnNlcXVlbnQgbW91c2Vtb3ZlIGV2ZW50cyBvY2N1ciAqL1xuLnBzd3AtLWhhc19tb3VzZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwLS1oYXNfbW91c2UgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG4ucHN3cF9fdG9wLWJhcixcbi5wc3dwX19jYXB0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpOyB9XG5cbi8qIHBzd3BfX3VpLS1maXQgY2xhc3MgaXMgYWRkZWQgd2hlbiBtYWluIGltYWdlIFwiZml0c1wiIGJldHdlZW4gdG9wIGJhciBhbmQgYm90dG9tIGJhciAoY2FwdGlvbikgKi9cbi5wc3dwX191aS0tZml0IC5wc3dwX190b3AtYmFyLFxuLnBzd3BfX3VpLS1maXQgLnBzd3BfX2NhcHRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7IH1cblxuLyogcHN3cF9fdWktLWlkbGUgY2xhc3MgaXMgYWRkZWQgd2hlbiBtb3VzZSBpc24ndCBtb3ZpbmcgZm9yIHNldmVyYWwgc2Vjb25kcyAoSlMgb3B0aW9uIHRpbWVUb0lkbGUpICovXG4ucHN3cF9fdWktLWlkbGUgLnBzd3BfX3RvcC1iYXIge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5wc3dwX191aS0taWRsZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwX191aS0taWRsZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICBvcGFjaXR5OiAwOyB9XG5cbi8qXG5cdHBzd3BfX3VpLS1oaWRkZW4gY2xhc3MgaXMgYWRkZWQgd2hlbiBjb250cm9scyBhcmUgaGlkZGVuXG5cdGUuZy4gd2hlbiB1c2VyIHRhcHMgdG8gdG9nZ2xlIHZpc2liaWxpdHkgb2YgY29udHJvbHNcbiovXG4ucHN3cF9fdWktLWhpZGRlbiAucHN3cF9fdG9wLWJhcixcbi5wc3dwX191aS0taGlkZGVuIC5wc3dwX19jYXB0aW9uLFxuLnBzd3BfX3VpLS1oaWRkZW4gLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4ucHN3cF9fdWktLWhpZGRlbiAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICAvKiBGb3JjZSBwYWludCAmIGNyZWF0ZSBjb21wb3NpdGlvbiBsYXllciBmb3IgY29udHJvbHMuICovXG4gIG9wYWNpdHk6IDAuMDAxOyB9XG5cbi8qIHBzd3BfX3VpLS1vbmUtc2xpZGUgY2xhc3MgaXMgYWRkZWQgd2hlbiB0aGVyZSBpcyBqdXN0IG9uZSBpdGVtIGluIGdhbGxlcnkgKi9cbi5wc3dwX191aS0tb25lLXNsaWRlIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3BfX3VpLS1vbmUtc2xpZGUgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0LFxuLnBzd3BfX3VpLS1vbmUtc2xpZGUgLnBzd3BfX2NvdW50ZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wc3dwX19lbGVtZW50LS1kaXNhYmxlZCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ucHN3cC0tbWluaW1hbC0tZGFyayAucHN3cF9fdG9wLWJhciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7IH1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogUGhvdG9Td2lwZSAoaHR0cDovL3Bob3Rvc3dpcGUuY29tLylcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItY2xhc3MtcGF0dGVybiAqL1xuXG4vLyBWZW5kb3JcblxuQHVzZSBcInBob3Rvc3dpcGUvZGlzdC9waG90b3N3aXBlLmNzc1wiO1xuQHVzZSBcInBob3Rvc3dpcGUvZGlzdC9kZWZhdWx0LXNraW4vZGVmYXVsdC1za2luLmNzc1wiO1xuXG4vLyBDdXN0b21cblxuLnBzd3Age1xuICAgICYge1xuICAgICAgICB6LWluZGV4OiAxMDAwMDA7XG4gICAgfVxufVxuXG4ucHN3cF9fYnV0dG9uLFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQ6OmJlZm9yZSxcbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodDo6YmVmb3JlIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvdmVuZG9yL3Bob3Rvc3dpcGUtZGVmYXVsdC1za2luLnBuZ1wiKTtcbiAgICB9XG59XG5cbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG59XG5cbkBtZWRpYSAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjEpLCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjA5Mzc1KSwgKG1pbi1yZXNvbHV0aW9uOiAxMDVkcGkpLCAobWluLXJlc29sdXRpb246IDEuMWRwcHgpIHsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZVxuICAgIC5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbixcbiAgICAucHN3cC0tc3ZnIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0OjpiZWZvcmUsXG4gICAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQ6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHN2Zy1sb2FkKFwiLi4vbWVkaWEvdmVuZG9yL3Bob3Rvc3dpcGUtZGVmYXVsdC1za2luLnN2Z1wiKTtcbiAgICB9XG5cbiAgICAucHN3cC0tc3ZnIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuICAgIC5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG59XG5cbi5wc3dwX19wcmVsb2FkZXItLWFjdGl2ZSAucHN3cF9fcHJlbG9hZGVyX19pY24ge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS92ZW5kb3IvcGhvdG9zd2lwZS1wcmVsb2FkZXIuZ2lmXCIpO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogUG9wcGVyLmpzIChodHRwczovL3d3dy5ucG1qcy5jb20vcGFja2FnZS9AcG9wcGVyanMvY29yZSlcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnBvcHBlcmpzLXRvb2x0aXAge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjOTA3MDU1O1xuICAgICAgICBib3gtc2hhZG93OiByZW1pZnkoMCAwIDYsIDE2KSB0cmFuc3BhcmVudGl6ZShjb2xvcihcImRhcmtcIiksIDAuNSk7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMTYsIDE2KSAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRdIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJltkYXRhLXBvcHBlci1wbGFjZW1lbnRdW2RhdGEtc2hvd10ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5wb3BwZXJqcy10b29sdGlwX190aXRsZSB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNFN0JFN0M7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImFjY2VudFwiKTtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoNy41IDEwLCAxNik7XG4gICAgfVxufVxuXG4ucG9wcGVyanMtdG9vbHRpcF9fdGV4dCB7XG4gICAgJiB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImxpZ2h0XCIpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoNy41IDEwLCAxNik7XG4gICAgfVxufVxuXG4ucG9wcGVyanMtdG9vbHRpcF9faW1hZ2Uge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAxMCAwIDAsIDE2KTtcbiAgICAgICAgd2lkdGg6IHJlbWlmeSgzNSwgMTYpO1xuICAgIH1cbn1cbiIsIi8qKlxuICogUFdBIEluc3RhbGwgUHJvbXB0IDEuMC4yXG4gKiBQcm9tcHQgdXNlcnMgdG8gYWRkIHlvdXIgUFdBIHRvIHRoZWlyIGhvbWUgc2NyZWVuLCBzaW5jZSBBcHBsZSB3b27igJl0LlxuICogaHR0cHM6Ly9naXRodWIuY29tL0phY29iREIvcHdhLWluc3RhbGwtcHJvbXB0L1xuICpcbiAqIENvcHlyaWdodCAyMDE4IEphY29iIEJlYXJjZVxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZVxuICpcbiAqIFJlbGVhc2VkIG9uOiBOb3ZlbWJlciA2LCAyMDE4XG4gKi9cblxuLnB3YS1pbnN0YWxsLXByb21wdF9fY29udGFpbmVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbGVmdDogLTk5OWVtO1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogLTk5OWVtO1xuICAgIHRyYW5zaXRpb246IGxlZnQgMHMgMC4xNXMsIHRvcCAwcyAwLjE1cywgdmlzaWJpbGl0eSAwcyAwLjE1cztcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTAwMDAwO1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0X19jb250YWluZXIuaXMtYWN0aXZlIHtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX292ZXJsYXkge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC41KTtcbiAgICBib3JkZXI6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTllbTtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cztcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAwO1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0X19jb250YWluZXIuaXMtYWN0aXZlIC5wd2EtaW5zdGFsbC1wcm9tcHRfX292ZXJsYXkge1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHQge1xuICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGJveC1zaGFkb3c6IDBweCA0cHggOHB4IHJnYmEoMCwwLDAsMC4xMjUpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgY29sb3I6ICM0MjQyNDI7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gICAgbWF4LXdpZHRoOiAzMjBweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1JSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cywgdHJhbnNmb3JtIDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX2NvbnRhaW5lci5pcy1hY3RpdmUgLnB3YS1pbnN0YWxsLXByb21wdCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0OjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgdmlld0JveD0nMCAwIDEyOCAxMjgnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGZpbGw9JyUyM0ZGRkZGRicgZD0nTTY0LjE5Nyw1MC40N0M3OS42OTYsMzQuOTUgOTUuMjU5LDE5LjUwMiAxMTAuNTk3LDMuODI0QzExNC40MTEsMC4xODIgMTE0LjU2NSwxLjAyMiAxMTcuNzA3LDEuMjRDMTI0LjI5OSwyLjE2NyAxMjcuNzIzLDEwLjY4NyAxMjMuNDM1LDE2LjA3OEMxMDguNDUzLDMyLjQ3IDkyLjk5Nyw0OC4zOTkgNzcuMzg3LDY0LjE3NEM5Mi41NzEsODAuMDEgMTA3LjY4NSw5NS45MTcgMTIzLjAyNCwxMTEuNTk1QzEyOS4xOTUsMTE4LjM0OSAxMjAuNDMyLDEzMi41MjcgMTExLjAzNSwxMjQuNzE2Qzk0Ljk5MiwxMDkuNDAzIDc5LjQwOCw5My42MTEgNjMuOTc5LDc3LjY1QzQ4LjQ4NSw5My4xNjkgMzIuOTE3LDEwOC42MTggMTcuNTg0LDEyNC4yOTZDMTAuODM3LDEzMC43MzQgLTIuNDExLDEyMS4wMzEgNC43NDcsMTEyLjA0MkMxOS43MjgsOTUuNjUgMzUuMTc5LDc5LjcxNiA1MC43OTUsNjMuOTQ1QzM1LjYwNSw0OC4xMSAyMC40OTEsMzIuMTk4IDUuMTU3LDE2LjUyNUMwLjA4NSwxMC45NzYgMi45MTIsMC41ODYgMTIuMjY3LDEuMjRDMTQuMDY5LDEuNDkxIDE1LjcyMywyLjIyNyAxNy4xNDEsMy40MDRDMzMuMTg0LDE4LjcxNyA0OC43NjgsMzQuNTA5IDY0LjE5Nyw1MC40N1onIC8lM0UlM0Mvc3ZnJTNFJTBBXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3R0b206IDEwMCU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgbWFyZ2luOiAwIDAgMTZweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDE2cHg7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX2ljb25fX2NvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB2aWV3Qm94PScwIDAgNzAgNzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGZpbGw9JyUyM0YwRjBGMCcgZD0nTTY1LDE3QzY1LDEwLjM3NyA1OS42MjMsNSA1Myw1TDE3LDVDMTAuMzc3LDUgNSwxMC4zNzcgNSwxN0w1LDUzQzUsNTkuNjIzIDEwLjM3Nyw2NSAxNyw2NUw1Myw2NUM1OS42MjMsNjUgNjUsNTkuNjIzIDY1LDUzTDY1LDE3WicgLyUzRSUzQy9zdmclM0UlMEFcIikgY2VudGVyIGNlbnRlciAvIDcwcHggNzBweCByZXBlYXQteDtcbiAgICBtYXJnaW46IDQwcHggMCAwO1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0X19pY29uIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiA2MHB4O1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0X19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxMHB4IDM1cHg7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbn1cblxuLnB3YS1pbnN0YWxsLXByb21wdF9fdGV4dCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIG1hcmdpbjogMCAwIDQ2cHg7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX2d1aWRlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbjogMDtcbn1cblxuLnB3YS1pbnN0YWxsLXByb21wdF9fZ3VpZGVfX2ljb24ge1xuICAgIG1hcmdpbjogMCAycHggNnB4O1xuICAgIHdpZHRoOiAyMHB4O1xufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBQV0EgSW5zdGFsbCBQcm9tcHQgKGh0dHBzOi8vZ2l0aHViLmNvbS9KYWNvYkRCL3B3YS1pbnN0YWxsLXByb21wdClcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gVmVuZG9yXG5cbkB1c2UgXCJwd2EtaW5zdGFsbC1wcm9tcHQvc3R5bGVcIjtcbiIsIkBrZXlmcmFtZXMgc2Nyb2xsLWhpbnQtYXBwZWFyIHtcblxuICAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDBweCk7XG4gICAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgNTAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLnNjcm9sbC1oaW50LmlzLXJpZ2h0LXNjcm9sbGFibGUge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKDAsIDAsIDAsIC4xNSkgMCwgcmdiYSgwLCAwLCAwLCAwKSAxNnB4LCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cblxuLnNjcm9sbC1oaW50LmlzLXJpZ2h0LXNjcm9sbGFibGUuaXMtbGVmdC1zY3JvbGxhYmxlIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDAsIDAsIDAsIC4xNSkgMCwgcmdiYSgwLCAwLCAwLCAwKSAxNnB4LCByZ2JhKDAsIDAsIDAsIDApKSwgbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgwLCAwLCAwLCAuMTUpIDAsIHJnYmEoMCwgMCwgMCwgMCkgMTZweCwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG5cbi5zY3JvbGwtaGludC5pcy1sZWZ0LXNjcm9sbGFibGUge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMCwgMCwgMCwgLjE1KSAwLCByZ2JhKDAsIDAsIDAsIDApIDE2cHgsIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuXG4uc2Nyb2xsLWhpbnQtaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDUwJSAtIDI1cHgpO1xuICBsZWZ0OiBjYWxjKDUwJSAtIDYwcHgpO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTIwcHg7XG4gIGhlaWdodDogODBweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcztcbiAgb3BhY2l0eTogMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNyk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMjBweCAxMHB4IDEwcHggMTBweDtcbn1cblxuLnNjcm9sbC1oaW50LWljb24td3JhcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnNjcm9sbC1oaW50LXRleHQge1xuICBmb250LXNpemU6IDEwcHg7XG4gIGNvbG9yOiAjRkZGO1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi5zY3JvbGwtaGludC1pY29uLXdyYXAuaXMtYWN0aXZlIC5zY3JvbGwtaGludC1pY29uIHtcbiAgICBvcGFjaXR5OiAuODtcbn1cblxuLnNjcm9sbC1oaW50LWljb246YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBjb2xvcjogI0ZGRjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXlOUzQzTnlJZ2FHVnBaMmgwUFNJek1DNDFNaUlnZG1sbGQwSnZlRDBpTUNBd0lESTFMamMzSURNd0xqVXlJajQ4ZEdsMGJHVSs0NEtpNDRLNzQ0T0Q0NE9JSURNOEwzUnBkR3hsUGp4bklHbGtQU0xqZzZ6amdxVGpnNlRqZzd4Zk1pSWdaR0YwWVMxdVlXMWxQU0xqZzZ6amdxVGpnNlRqZzd3Z01pSStQR2NnYVdROUl1T0RyT09DcE9PRHBPT0R2Rjh4TFRJaUlHUmhkR0V0Ym1GdFpUMGk0NE9zNDRLazQ0T2s0NE84SURFaVBqeHdZWFJvSUdROUlrMHlNUzR6TXl3ek1DNDFNa2czTGpnMVFURXVOVFVzTVM0MU5Td3dMREFzTVN3MkxqTXNNamxoTVRJdU5EWXNNVEl1TkRZc01Dd3dMREF0TGpZekxUUXVORElzTWpVdU1UWXNNalV1TVRZc01Dd3dMREF0TkM0eU5TMDFiQzB1TURZdExqQTJRVFVzTlN3d0xEQXNNU3d3TERFMUxqZzJZVE11TmpRc015NDJOQ3d3TERBc01Td3hMakUzTFRJdU5qSXNNeTQyTXl3ekxqWXpMREFzTUN3eExEVXVNVFF1TURkV015NDNOMkV6TGpjM0xETXVOemNzTUN3eExERXNOeTQxTkN3d1ZqZ3VNek5oTXk0ek5Td3pMak0xTERBc01Dd3hMREV1TWpZc01Dd3pMRE1zTUN3d0xERXNNaXd4TGpJeUxETXVOU3d6TGpVc01Dd3dMREVzTWkwdU1EWXNNeTR5TVN3ekxqSXhMREFzTUN3eExESXNNUzQxTkN3ekxqYzBMRE11TnpRc01Dd3dMREVzTXl3dU5EZEJOQzR5TVN3MExqSXhMREFzTUN3eExESTFMamMwTERFMVl6QXNMakV4TERBc0xqSTNMREFzTGpRMllURTVMakkyTERFNUxqSTJMREFzTUN3eExTNDROQ3czWXkwdU1UUXVNemd0TGpNMkxqZ3hMUzQxTml3eExqSXliQzB1TVRFdU1qSmpNQ3d1TURjdExqQTVMakUwTFM0eE5DNHlNV0UzTGpFekxEY3VNVE1zTUN3d0xEQXRNUzR4Tnl3eUxqRTNZeTB1TURZdU5UWXRMakEyTERJdU1UVXRMakExTERJdU56RkJNUzQxTlN3eExqVTFMREFzTUN3eExESXhMak16TERNd0xqVXlXazA0TGpZeExESTRMakl4YURFeVl6QXRMamN4TERBdE1TNDNNUzR3TnkweUxqSXpZVGd1TnpRc09DNDNOQ3d3TERBc01Td3hMalU1TFRNdU1qVnNMakEyTFM0eE1tRXhNQ3d4TUN3d0xEQXNNQ3d1TkRZdE1Td3hOaTQ0TERFMkxqZ3NNQ3d3TERBc0xqY3ROaTR4TW1Nd0xTNHlNeXd3TFM0ME1Td3dMUzQxTkdnd1lUSXNNaXd3TERBc01DMHVOalF0TVM0MU1pd3hMak16TERFdU16TXNNQ3d3TERBdE1TNDFOUzR3T0N3eExqRXpMREV1TVRNc01Dd3dMREV0TVM0eE9DNHlPQ3d4TGpFMUxERXVNVFVzTUN3d0xERXRMamM0TFM0NU5Dd3hMakkyTERFdU1qWXNNQ3d3TERBdExqYzFMVEV1TVRFc01Td3hMREFzTUN3d0xURXVNVEV1TWpoc0xTNHhMakZoTVM0eE5Td3hMakUxTERBc01Dd3hMVEV1TVRrdU1qa3NNUzR4Tml3eExqRTJMREFzTUN3eExTNDNPQzB1T1RWakxTNHdPUzB1TmpndExqSXhMUzQzTnkwdU55MHVPRGRoTGpneUxqZ3lMREFzTUN3d0xURXNMalE0TERFdU1UWXNNUzR4Tml3d0xEQXNNUzB5TGpFMkxTNDFPRll6TGpjM1lURXVORFlzTVM0ME5pd3dMREVzTUMweUxqa3lMREIyTnk0NE5Xd3dMRFF1TXpOaE1TNHhOeXd4TGpFM0xEQXNNQ3d4TFM0NE15d3hMakV4TERFdU1UVXNNUzR4TlN3d0xEQXNNUzB4TGpJdExqTTFiQzB4TFM0NU1XTXRMalEzTFM0ME1pMHVOek10TGpZMkxTNDROQzB1TnpkaE1TNHpOU3d4TGpNMUxEQXNNQ3d3TFRJdExqRXlUREl1Tnl3eE5XRXhMak15TERFdU16SXNNQ3d3TERBdExqTTVMREZCTWk0MU55d3lMalUzTERBc01Dd3dMRE1zTVRjdU9EVnNNQ3d3WVRJM0xqSTBMREkzTGpJMExEQXNNQ3d4TERRdU55dzFMall5UVRFeUxqWXpMREV5TGpZekxEQXNNQ3d4TERndU5qRXNNamd1TWpGYVRUSXpMaklzTWpNdU16VmFUVFl1TlRFc01UWXVOVGxhSWlCbWFXeHNQU0lqWm1abUlpOCtQQzluUGp3dlp6NDhMM04yWno0PSk7XG59XG5cbi5zY3JvbGwtaGludC1pY29uOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDM0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJek15NHlPU0lnYUdWcFoyaDBQU0l4TWk0d01pSWdkbWxsZDBKdmVEMGlNQ0F3SURNekxqSTVJREV5TGpBeUlqNDhkR2wwYkdVKzQ0S2k0NEs3NDRPRDQ0T0lJREU4TDNScGRHeGxQanhuSUdsa1BTTGpnNnpqZ3FUamc2VGpnN3hmTWlJZ1pHRjBZUzF1WVcxbFBTTGpnNnpqZ3FUamc2VGpnN3dnTWlJK1BHY2dhV1E5SXVPRHJPT0NwT09EcE9PRHZGOHhMVElpSUdSaGRHRXRibUZ0WlQwaTQ0T3M0NEtrNDRPazQ0TzhJREVpUGp4c2FXNWxJSGd4UFNJeExqZzFJaUI1TVQwaU5pNHdNU0lnZURJOUlqRXdMalFpSUhreVBTSTJMakF4SWlCbWFXeHNQU0lqWm1abUlpOCtQSEJoZEdnZ1pEMGlUVEV3TGpRc055NHhOMGd4TGpnMVlURXVNVFlzTVM0eE5pd3dMREVzTVN3d0xUSXVNekZJTVRBdU5HRXhMakUyTERFdU1UWXNNQ3d4TERFc01Dd3lMak14V2lJZ1ptbHNiRDBpSTJabVppSXZQanh3WVhSb0lHUTlJazAzTGpRc01USmhNUzR4TlN3eExqRTFMREFzTUN3eExTNDNNaTB1TWpWc0xUWXVNalV0TlVFeExqSXNNUzR5TERBc01Dd3hMREFzTlM0NE55d3hMakUwTERFdU1UUXNNQ3d3TERFc0xqUTJMRFZNTmk0M0xqSXpRVEV1TVRZc01TNHhOaXd3TERBc01TdzRMakVzTWk0d09Fd3pMRFV1T1RFc09DNHhNaXd4TUVFeExqRTJMREV1TVRZc01Dd3dMREVzTnk0MExERXlXaUlnWm1sc2JEMGlJMlptWmlJdlBqeHNhVzVsSUhneFBTSXpNUzQwTlNJZ2VURTlJall1TURFaUlIZ3lQU0l5TWk0NE9TSWdlVEk5SWpZdU1ERWlJR1pwYkd3OUlpTm1abVlpTHo0OGNHRjBhQ0JrUFNKTk16RXVORFVzTnk0eE4wZ3lNaTQ0T1dFeExqRTJMREV1TVRZc01Dd3hMREVzTUMweUxqTXhhRGd1TlRaaE1TNHhOaXd4TGpFMkxEQXNNQ3d4TERBc01pNHpNVm9pSUdacGJHdzlJaU5tWm1ZaUx6NDhjR0YwYUNCa1BTSk5NalV1T1N3eE1tRXhMakU0TERFdU1UZ3NNQ3d3TERFdExqa3hMUzQwTTBFeExqRTNMREV1TVRjc01Dd3dMREVzTWpVdU1UY3NNVEJzTlM0d09TMDBMakExVERJMUxqSXNNaTR3T0VFeExqRTJMREV1TVRZc01Dd3dMREVzTWpZdU5Ua3VNak5NTXpJdU9EUXNOV0V4TGpFMkxERXVNVFlzTUN3d0xERXNMalExTGpreExERXVNVFFzTVM0eE5Dd3dMREFzTVMwdU5ETXVPVEpzTFRZdU1qUXNOVUV4TGpFM0xERXVNVGNzTUN3d0xERXNNalV1T1N3eE1sb2lJR1pwYkd3OUlpTm1abVlpTHo0OEwyYytQQzluUGp3dmMzWm5QZz09KTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1kZWxheTogMi40cztcbn1cblxuLnNjcm9sbC1oaW50LWljb24td3JhcC5pcy1hY3RpdmUgLnNjcm9sbC1oaW50LWljb246YWZ0ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2Nyb2xsLWhpbnQtaWNvbi13cmFwLmlzLWFjdGl2ZSAuc2Nyb2xsLWhpbnQtaWNvbjpiZWZvcmUge1xuICBhbmltYXRpb246IHNjcm9sbC1oaW50LWFwcGVhciAxLjJzIGxpbmVhcjtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMjtcbn1cblxuLnNjcm9sbC1oaW50LWljb24td2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICBib3gtc2hhZG93OiAwIDRweCA1cHggcmdiYSgwLCAwLCAwLCAuNCk7XG59XG5cbi5zY3JvbGwtaGludC1pY29uLXdoaXRlOmJlZm9yZSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXlOUzQzTnlJZ2FHVnBaMmgwUFNJek1DNDFNaUlnZG1sbGQwSnZlRDBpTUNBd0lESTFMamMzSURNd0xqVXlJajQ4ZEdsMGJHVSs0NEtpNDRLNzQ0T0Q0NE9JSURROEwzUnBkR3hsUGp4bklHbGtQU0xqZzZ6amdxVGpnNlRqZzd4Zk1pSWdaR0YwWVMxdVlXMWxQU0xqZzZ6amdxVGpnNlRqZzd3Z01pSStQR2NnYVdROUl1T0RyT09DcE9PRHBPT0R2Rjh4TFRJaUlHUmhkR0V0Ym1GdFpUMGk0NE9zNDRLazQ0T2s0NE84SURFaVBqeHdZWFJvSUdROUlrMHlNUzR6TXl3ek1DNDFNa2czTGpnMVFURXVOVFVzTVM0MU5Td3dMREFzTVN3MkxqTXNNamxoTVRJdU5EWXNNVEl1TkRZc01Dd3dMREF0TGpZekxUUXVORElzTWpVdU1UWXNNalV1TVRZc01Dd3dMREF0TkM0eU5TMDFiQzB1TURZdExqQTJRVFVzTlN3d0xEQXNNU3d3TERFMUxqZzJZVE11TmpRc015NDJOQ3d3TERBc01Td3hMakUzTFRJdU5qSXNNeTQyTXl3ekxqWXpMREFzTUN3eExEVXVNVFF1TURkV015NDNOMkV6TGpjM0xETXVOemNzTUN3eExERXNOeTQxTkN3d1ZqZ3VNek5oTXk0ek5Td3pMak0xTERBc01Dd3hMREV1TWpZc01Dd3pMRE1zTUN3d0xERXNNaXd4TGpJeUxETXVOU3d6TGpVc01Dd3dMREVzTWkwdU1EWXNNeTR5TVN3ekxqSXhMREFzTUN3eExESXNNUzQxTkN3ekxqYzBMRE11TnpRc01Dd3dMREVzTXl3dU5EZEJOQzR5TVN3MExqSXhMREFzTUN3eExESTFMamMwTERFMVl6QXNMakV4TERBc0xqSTNMREFzTGpRMllURTVMakkyTERFNUxqSTJMREFzTUN3eExTNDROQ3czWXkwdU1UUXVNemd0TGpNMkxqZ3hMUzQxTml3eExqSXliQzB1TVRFdU1qSmpNQ3d1TURjdExqQTVMakUwTFM0eE5DNHlNV0UzTGpFekxEY3VNVE1zTUN3d0xEQXRNUzR4Tnl3eUxqRTNZeTB1TURZdU5UWXRMakEyTERJdU1UVXRMakExTERJdU56RkJNUzQxTlN3eExqVTFMREFzTUN3eExESXhMak16TERNd0xqVXlXazA0TGpZeExESTRMakl4YURFeVl6QXRMamN4TERBdE1TNDNNUzR3TnkweUxqSXpZVGd1TnpRc09DNDNOQ3d3TERBc01Td3hMalU1TFRNdU1qVnNMakEyTFM0eE1tRXhNQ3d4TUN3d0xEQXNNQ3d1TkRZdE1Td3hOaTQ0TERFMkxqZ3NNQ3d3TERBc0xqY3ROaTR4TW1Nd0xTNHlNeXd3TFM0ME1Td3dMUzQxTkdnd1lUSXNNaXd3TERBc01DMHVOalF0TVM0MU1pd3hMak16TERFdU16TXNNQ3d3TERBdE1TNDFOUzR3T0N3eExqRXpMREV1TVRNc01Dd3dMREV0TVM0eE9DNHlPQ3d4TGpFMUxERXVNVFVzTUN3d0xERXRMamM0TFM0NU5Dd3hMakkyTERFdU1qWXNNQ3d3TERBdExqYzFMVEV1TVRFc01Td3hMREFzTUN3d0xURXVNVEV1TWpoc0xTNHhMakZoTVM0eE5Td3hMakUxTERBc01Dd3hMVEV1TVRrdU1qa3NNUzR4Tml3eExqRTJMREFzTUN3eExTNDNPQzB1T1RWakxTNHdPUzB1TmpndExqSXhMUzQzTnkwdU55MHVPRGRoTGpneUxqZ3lMREFzTUN3d0xURXNMalE0TERFdU1UWXNNUzR4Tml3d0xEQXNNUzB5TGpFMkxTNDFPRll6TGpjM1lURXVORFlzTVM0ME5pd3dMREVzTUMweUxqa3lMREIyTnk0NE5Xd3dMRFF1TXpOaE1TNHhOeXd4TGpFM0xEQXNNQ3d4TFM0NE15d3hMakV4TERFdU1UVXNNUzR4TlN3d0xEQXNNUzB4TGpJdExqTTFiQzB4TFM0NU1XTXRMalEzTFM0ME1pMHVOek10TGpZMkxTNDROQzB1TnpkaE1TNHpOU3d4TGpNMUxEQXNNQ3d3TFRJdExqRXlUREl1Tnl3eE5XRXhMak15TERFdU16SXNNQ3d3TERBdExqTTVMREZCTWk0MU55d3lMalUzTERBc01Dd3dMRE1zTVRjdU9EVnNNQ3d3WVRJM0xqSTBMREkzTGpJMExEQXNNQ3d4TERRdU55dzFMall5UVRFeUxqWXpMREV5TGpZekxEQXNNQ3d4TERndU5qRXNNamd1TWpGYVRUSXpMaklzTWpNdU16VmFUVFl1TlRFc01UWXVOVGxhSWk4K1BDOW5Qand2Wno0OEwzTjJaejQ9KTtcbn1cblxuLnNjcm9sbC1oaW50LWljb24td2hpdGU6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhkcFpIUm9QU0l6TXk0eU9TSWdhR1ZwWjJoMFBTSXhNaTR3TWlJZ2RtbGxkMEp2ZUQwaU1DQXdJRE16TGpJNUlERXlMakF5SWo0OGRHbDBiR1UrNDRLaTQ0Szc0NE9ENDRPSUlESThMM1JwZEd4bFBqeG5JR2xrUFNMamc2empncVRqZzZUamc3eGZNaUlnWkdGMFlTMXVZVzFsUFNMamc2empncVRqZzZUamc3d2dNaUkrUEdjZ2FXUTlJdU9Eck9PQ3BPT0RwT09EdkY4eExUSWlJR1JoZEdFdGJtRnRaVDBpNDRPczQ0S2s0NE9rNDRPOElERWlQanhzYVc1bElIZ3hQU0l4TGpnMUlpQjVNVDBpTmk0d01TSWdlREk5SWpFd0xqUWlJSGt5UFNJMkxqQXhJaTgrUEhCaGRHZ2daRDBpVFRFd0xqUXNOeTR4TjBneExqZzFZVEV1TVRZc01TNHhOaXd3TERFc01Td3dMVEl1TXpGSU1UQXVOR0V4TGpFMkxERXVNVFlzTUN3eExERXNNQ3d5TGpNeFdpSXZQanh3WVhSb0lHUTlJazAzTGpRc01USmhNUzR4TlN3eExqRTFMREFzTUN3eExTNDNNaTB1TWpWc0xUWXVNalV0TlVFeExqSXNNUzR5TERBc01Dd3hMREFzTlM0NE55d3hMakUwTERFdU1UUXNNQ3d3TERFc0xqUTJMRFZNTmk0M0xqSXpRVEV1TVRZc01TNHhOaXd3TERBc01TdzRMakVzTWk0d09Fd3pMRFV1T1RFc09DNHhNaXd4TUVFeExqRTJMREV1TVRZc01Dd3dMREVzTnk0MExERXlXaUl2UGp4c2FXNWxJSGd4UFNJek1TNDBOU0lnZVRFOUlqWXVNREVpSUhneVBTSXlNaTQ0T1NJZ2VUSTlJall1TURFaUx6NDhjR0YwYUNCa1BTSk5NekV1TkRVc055NHhOMGd5TWk0NE9XRXhMakUyTERFdU1UWXNNQ3d4TERFc01DMHlMak14YURndU5UWmhNUzR4Tml3eExqRTJMREFzTUN3eExEQXNNaTR6TVZvaUx6NDhjR0YwYUNCa1BTSk5NalV1T1N3eE1tRXhMakU0TERFdU1UZ3NNQ3d3TERFdExqa3hMUzQwTTBFeExqRTNMREV1TVRjc01Dd3dMREVzTWpVdU1UY3NNVEJzTlM0d09TMDBMakExVERJMUxqSXNNaTR3T0VFeExqRTJMREV1TVRZc01Dd3dMREVzTWpZdU5Ua3VNak5NTXpJdU9EUXNOV0V4TGpFMkxERXVNVFlzTUN3d0xERXNMalExTGpreExERXVNVFFzTVM0eE5Dd3dMREFzTVMwdU5ETXVPVEpzTFRZdU1qUXNOVUV4TGpFM0xERXVNVGNzTUN3d0xERXNNalV1T1N3eE1sb2lMejQ4TDJjK1BDOW5Qand2YzNablBnPT0pO1xufVxuXG4uc2Nyb2xsLWhpbnQtaWNvbi13aGl0ZSAuc2Nyb2xsLWhpbnQtdGV4dCB7XG4gIGNvbG9yOiAjMDAwO1xufSIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU2Nyb2xsSGludCAoaHR0cHM6Ly9hcHBsZXBsZS5naXRodWIuaW8vc2Nyb2xsLWhpbnQvKVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1jbGFzcy1wYXR0ZXJuICovXG5cbi8vIFZlbmRvclxuXG5AdXNlIFwic2Nyb2xsLWhpbnQvc2Nzcy9zY3JvbGwtaGludFwiO1xuXG4vLyBDdXN0b21cblxuLnNjcm9sbC1oaW50LWljb24td3JhcCB7XG4gICAgJiB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IC8vIGZpeGVzIGlzc3VlIHdpdGggdGFibGVzIHRoYXQgYXJlIHRvbyBzaG9ydFxuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU2VhcmNoIEZvcm1cblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLnNlYXJjaC1mb3JtX19jb250YWluZXIge1xuICAgICYge1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMTUsIDE2KTtcbiAgICB9XG59XG5cbi5zZWFyY2gtZm9ybSB7XG4gICAgJiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG59XG5cbi5zZWFyY2gtZm9ybV9faW5wdXQge1xuICAgICYge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbWlmeSg0OCwgMTYpO1xuICAgIH1cbn1cblxuLnNlYXJjaC1mb3JtX19idXR0b24ge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3R0b206IHJlbWlmeSgyKTtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwiZm9yZWdyb3VuZFwiKTtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAxNiwgMTYpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiByZW1pZnkoMik7XG4gICAgICAgIHRvcDogcmVtaWZ5KDIpO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cztcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBjb2xvcjogY29sb3IoXCJhY2NlbnRcIik7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBTa2lwIExpbmtzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5za2lwLWxpbmtzIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogY29sb3IoXCJhY2NlbnRcIik7XG4gICAgICAgIGJvcmRlcjogcmVtaWZ5KDEpIHNvbGlkIGNvbG9yKFwiYWNjZW50XCIsIFwic2hhZGVcIik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbWlmeSg0KTtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwibGlnaHRcIik7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsZWZ0OiAtOTk5ZW07XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSg4IDEyLCAxNik7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0b3A6IC05OTllbTtcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgICBsZWZ0OiByZW1pZnkoMjAsIDE2KTtcbiAgICAgICAgdG9wOiByZW1pZnkoMjAsIDE2KTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFdQIENhcHRpb25cblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLndwLWNhcHRpb24ge1xuICAgICYge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi53cC1jYXB0aW9uLWltYWdlIHtcbiAgICAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLndwLWNhcHRpb24tdGV4dCB7XG4gICAgJiB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImZvcmVncm91bmRcIik7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW1pZnkoMjgsIDE2KTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMTQgMCAyOCwgMTYpO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogUGFnZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5odG1sLFxuYm9keSB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKFwicGFnZS1iYWNrZ3JvdW5kXCIpO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbmJvZHkge1xuICAgICYge1xuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgfVxufVxuXG4ucGFnZV9fY29udGFpbmVyIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1ib2R5LmpwZ1wiKSBjZW50ZXIgdG9wIG5vLXJlcGVhdCAjM0Q5NUQ1O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAjY29udGVudCB7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmVcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuXG4gICAgLmNvbnRlbnQtYmxvY2sge1xuICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEFsZXJ0XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5hbGVydC1ibG9jayB7XG4gICAgJiB7XG4gICAgICAgIEBpbmNsdWRlIGxheWVyKFwiYWxlcnRcIik7XG4gICAgfVxuXG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKFwic2Vjb25kYXJ5XCIpO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4uYWxlcnRfX2lubmVyIHtcbiAgICAmIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KCRzaXRlLXdpZHRoKTtcbiAgICB9XG59XG5cbi5hbGVydF9fYnV0dG9uIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwibGlnaHRcIik7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDMyLCAxNik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgc21hbGxlci10aGFuKHhzKSB7XG4gICAgICAgIFtjbGFzcyo9XCJjb2wtXCJdOm50aC1sYXN0LWNoaWxkKDIpICYge1xuICAgICAgICAgICAgbWFyZ2luOiByZW1pZnkoJGNvbnRlbnQtcGFkZGluZyk7XG4gICAgICAgIH1cblxuICAgICAgICBbY2xhc3MqPVwiY29sLVwiXTpudGgtbGFzdC1jaGlsZCgzKSAmIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiByZW1pZnkoJGNvbnRlbnQtcGFkZGluZyk7XG4gICAgICAgICAgICB0b3A6IHJlbWlmeSgkY29udGVudC1wYWRkaW5nKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB9XG59XG5cbi5hbGVydF9fdGl0bGUge1xuICAgICYge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgzMiwgMTYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoJGNvbnRlbnQtcGFkZGluZyk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgc21hbGxlci10aGFuKHhzKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHJlbWlmeSgxKSBzb2xpZCBjb2xvcihcInNlY29uZGFyeVwiLCBcInNoYWRlXCIpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW1pZnkoJGNvbnRlbnQtcGFkZGluZyAqIDIgKyAzMSk7XG4gICAgfVxuXG4gICAgLnRpdGxlX19pY29uIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMzIpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbWlmeSgxNiwgMzIpO1xuICAgIH1cbn1cblxuLmFsZXJ0X191c2VyLWNvbnRlbnQge1xuICAgICYge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoJGNvbnRlbnQtcGFkZGluZyk7XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEhlYWRlclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uaGVhZGVyLWJsb2NrIHtcbiAgICAmIHtcbiAgICAgICAgQGluY2x1ZGUgbGF5ZXIoXCJoZWFkZXJcIik7XG4gICAgfVxuXG4gICAgJiB7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgoJGNvbnRlbnQtcGFkZGluZyAqIDAuOCkgJGNvbnRlbnQtcGFkZGluZyAoJGNvbnRlbnQtcGFkZGluZyAqIDAuNikpO1xuICAgIH1cbn1cblxuLmhlYWRlcl9faW5uZXIge1xuICAgICYge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiByZW1pZnkoJHNpdGUtd2lkdGgpO1xuICAgIH1cbn1cblxuLmhlYWRlcl9fbG9nb19fY29udGFpbmVyIHtcbiAgICAmIHtcbiAgICAgICAgaGVpZ2h0OiByZW1pZnkoODAsIDE2KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIC5oZWFkZXJfX2xvZ28ge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IHJlbWlmeSgyMjAsIDE2KTtcbiAgICB9XG59XG5cbi5oZWFkZXJfX21lbnUtbGlzdF9fY29udGFpbmVyIHtcbiAgICAubWVudS1saXN0LS1zb2NpYWwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbWlmeSg4MCwgMTYpO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTmF2aWdhdGlvblxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AdXNlIFwic2Fzczpjb2xvclwiO1xuXG4ubmF2aWdhdGlvbl9faW5uZXIge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLW5hdmlnYXRpb25fZGVza3RvcC5wbmdcIikgY2VudGVyIGNlbnRlciAvIGNvbnRhaW4gbm8tcmVwZWF0O1xuICAgICAgICBoZWlnaHQ6IHJlbWlmeSgxMDIsIDE2KTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSg1MCAwIDAgMTAwLCAxNik7XG4gICAgICAgIHdpZHRoOiByZW1pZnkoODc3LCAxNik7XG4gICAgfVxufVxuXG4ubmF2aWdhdGlvbl9fZmlndXJlIHtcbiAgICAmIHtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDgsIDE2KTtcbiAgICB9XG59XG5cbi5uYXZpZ2F0aW9uX19pbWFnZSB7XG4gICAgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLm5hdmlnYXRpb25fX21lbnUtbGlzdF9fY29udGFpbmVyIHtcbiAgICAmIHtcbiAgICAgICAgQGluY2x1ZGUgbGF5ZXIoXCJuYXZpZ2F0aW9uXCIpO1xuICAgIH1cblxuICAgICYge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNSUpO1xuICAgIH1cbn1cblxuLyogZmx5b3V0IHZhcmlhbnQgKi9cblxuLm5hdmlnYXRpb24tYmxvY2stLWZseW91dCB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIGhlaWdodDogLXdlYmtpdC1maWxsLWF2YWlsYWJsZTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZVxuICAgICAgICBsZWZ0OiAtOTk5ZW07XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAtOTk5ZW07XG4gICAgICAgIHRyYW5zaXRpb246IGxlZnQgMHMgMC4yNXMsIHRvcCAwcyAwLjI1cywgdmlzaWJpbGl0eSAwcyAwLjI1cztcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgIHotaW5kZXg6IDEwMDAwMTtcbiAgICB9XG5cbiAgICAubmF2aWdhdGlvbl9faW5uZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLW5hdmlnYXRpb24uanBnXCIpIGNlbnRlciB0b3AgLyBjb3ZlciBuby1yZXBlYXQgY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIG92ZXJzY3JvbGwtYmVoYXZpb3I6IGNvbnRhaW47XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCN7cmVtaWZ5KC0yODAsIDE2KX0pO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXM7XG4gICAgICAgIHdpZHRoOiByZW1pZnkoMjgwLCAxNik7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgLm5hdmlnYXRpb25fX292ZXJsYXkge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmVcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lXG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yLmFkanVzdChjb2xvcihcImRhcmtcIiksICRhbHBoYTogLTAuNCk7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAtOTk5ZW07XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC05OTllbTtcbiAgICAgICAgdHJhbnNpdGlvbjogbGVmdCAwcyAwLjI1cywgdG9wIDBzIDAuMTVzLCBvcGFjaXR5IDAuMjVzLCB2aXNpYmlsaXR5IDBzIDAuMjVzO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgIC5tZW51LWFjdGl2ZSAmIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC5tZW51LWFjdGl2ZSAmIC5uYXZpZ2F0aW9uX19pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG5cbiAgICAubWVudS1hY3RpdmUgJiAubmF2aWdhdGlvbl9fb3ZlcmxheSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cztcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAubmF2aWdhdGlvbl9fbWVudS1saXN0X19jb250YWluZXIge1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBIZXJvXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5oZXJvLWJsb2NrIHtcbiAgICAmIHtcbiAgICAgICAgQGluY2x1ZGUgbGF5ZXIoXCJoZXJvXCIpO1xuICAgIH1cblxuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWNvbnRlbnQuanBnXCIpIGNlbnRlciB0b3AgcmVwZWF0LXk7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDQ1IGF1dG8gODApO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgxMDAgYXV0byA4MCk7XG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KDk5NCk7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwIDIwKTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDE2KTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWNvbnRlbnRfdG9wLmpwZ1wiKTtcbiAgICAgICAgYm90dG9tOiAxMDAlO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1jb250ZW50X2JvdHRvbS5qcGdcIik7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICB9XG59XG5cbi5oZXJvX19pbm5lciB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IHJlbWlmeSgkc2l0ZS13aWR0aCk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG59XG5cbi5oZXJvX192aWRlby1mcmFtZSB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IHJlbWlmeSg5MjIpO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMjYpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgje3JlbWlmeSgtMzUpfSk7XG4gICAgfVxuXG4gICAgLnZpZGVvLWZyYW1lX190b3Age1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtdmlkZW8tZnJhbWVfY2VudGVyLXRvcC5wbmdcIikgY2VudGVyIHRvcCByZXBlYXQteDtcbiAgICAgICAgICAgIGhlaWdodDogcmVtaWZ5KDI2KTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW1pZnkoMjYpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IHJlbWlmeSgyNik7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC12aWRlby1mcmFtZV9sZWZ0LXRvcC5wbmdcIik7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC12aWRlby1mcmFtZV9yaWdodC10b3AucG5nXCIpO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudmlkZW8tZnJhbWVfX2NlbnRlciB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgYm90dG9tOiByZW1pZnkoMjYpO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogcmVtaWZ5KDI2KTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiByZW1pZnkoMjYpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtdmlkZW8tZnJhbWVfbGVmdC1jZW50ZXIucG5nXCIpO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtdmlkZW8tZnJhbWVfcmlnaHQtY2VudGVyLnBuZ1wiKTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnZpZGVvLWZyYW1lX19ib3R0b20ge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtdmlkZW8tZnJhbWVfY2VudGVyLWJvdHRvbS5wbmdcIikgY2VudGVyIHRvcCByZXBlYXQteDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGhlaWdodDogcmVtaWZ5KDI2KTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUsXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW1pZnkoMjYpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IHJlbWlmeSgyNik7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC12aWRlby1mcmFtZV9sZWZ0LWJvdHRvbS5wbmdcIik7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC12aWRlby1mcmFtZV9yaWdodC1ib3R0b20ucG5nXCIpO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIENvbnRlbnRcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNvbnRlbnQtYmxvY2sge1xuICAgICYge1xuICAgICAgICBAaW5jbHVkZSBsYXllcihcImNvbnRlbnRcIik7XG4gICAgfVxuXG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtY29udGVudC5qcGdcIikgY2VudGVyIHRvcCByZXBlYXQteTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMTAwIGF1dG8gNTApO1xuICAgICAgICBtYXgtd2lkdGg6IHJlbWlmeSg5OTQpO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMzUgMCAxMDApO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiByZW1pZnkoMTYpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtY29udGVudF90b3AuanBnXCIpO1xuICAgICAgICBib3R0b206IDEwMCU7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWNvbnRlbnRfYm90dG9tLmpwZ1wiKTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgIH1cbn1cblxuLmNvbnRlbnRfX2lubmVyIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1jb250ZW50X2lubmVyX2NsZWFuLnBuZ1wiKSBjZW50ZXIgdG9wIHJlcGVhdC15O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiByZW1pZnkoJHNpdGUtd2lkdGgpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDEwMCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1jb250ZW50X2lubmVyLXRvcF9jbGVhbi5wbmdcIik7XG4gICAgICAgIGJvdHRvbTogMTAwJTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtY29udGVudF9pbm5lci1ib3R0b21fc29saWQucG5nXCIpO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgfVxufVxuXG4uY29udGVudF9fcG9zdCB7XG4gICAgJiB7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwICRjb250ZW50LXBhZGRpbmcgJGNvbnRlbnQtcGFkZGluZyk7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogNDtcbiAgICB9XG59XG5cbi5jb250ZW50X19zaWRlYmFyIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogY29sb3IoXCJiYWNrZ3JvdW5kXCIpO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoJGNvbnRlbnQtcGFkZGluZyAkY29udGVudC1wYWRkaW5nIDApO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1jb250ZW50X3NpZGViYXIucG5nXCIpIGNlbnRlciB0b3AgcmVwZWF0LXg7XG4gICAgICAgIGJvdHRvbTogMTAwJTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDUpO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLmNvbnRlbnRfX2ZpZ3VyZSB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAuZmlndXJlX19pbWFnZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogRm9vdGVyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5mb290ZXItYmxvY2sge1xuICAgICYge1xuICAgICAgICBAaW5jbHVkZSBsYXllcihcImZvb3RlclwiKTtcbiAgICB9XG5cbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1mb290ZXIucG5nXCIpIGNlbnRlciB0b3Agbm8tcmVwZWF0IGNvbG9yKFwicGFnZS1iYWNrZ3JvdW5kXCIpO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoKCRjb250ZW50LXBhZGRpbmcgKiAyKSAkY29udGVudC1wYWRkaW5nKTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWZvb3Rlcl90b3AucG5nXCIpIGNlbnRlciB0b3Agbm8tcmVwZWF0O1xuICAgICAgICBib3R0b206IDEwMCU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IHJlbWlmeSgyMCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4uZm9vdGVyX19pbm5lciB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IHJlbWlmeSgkc2l0ZS13aWR0aCAqIDAuOTA5MSk7XG4gICAgfVxufVxuXG4uZm9vdGVyX190aXRsZSB7XG4gICAgJiB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcInRlcnRpYXJ5XCIpO1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyMCwgMTYpO1xuICAgIH1cbn1cblxuLmZvb3Rlcl9fdGV4dCB7XG4gICAgJiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNCwgMTYpO1xuICAgIH1cblxuICAgICYudGV4dC0tdGFibGUgLnRleHRfX2NlbGwge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHJlbWlmeSgxKSBzb2xpZCB0cmFuc3BhcmVudGl6ZShjb2xvcihcImZvcmVncm91bmRcIiksIDAuOCk7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSg1IDUgNSAwLCAxNCk7XG4gICAgfVxuXG4gICAgJi50ZXh0LS10YWJsZSAudGV4dF9fY2VsbC50ZXh0X19jZWxsLS1oZWFkZXIge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJsaWdodFwiKTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgJi50ZXh0LS10YWJsZSAudGV4dF9fcm93Omxhc3QtY2hpbGQgPiAudGV4dF9fY2VsbCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJi50ZXh0LS10YWJsZS50ZXh0LS1jb21wYWN0IC50ZXh0X19jZWxsIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTW9kdWxlXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIExheW91dFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNb2R1bGVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTGF5b3V0XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1vZHVsZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AaW1wb3J0IFwiLi4vbW9kdWxlL2NvbHVtbnMvX2NvbHVtbnNfeHNcIjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTGF5b3V0XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkBpbXBvcnQgXCIuLi9sYXlvdXQvYWxlcnQvX2FsZXJ0X3hzXCI7XG5AaW1wb3J0IFwiLi4vbGF5b3V0L2hlYWRlci9faGVhZGVyX3hzXCI7XG5AaW1wb3J0IFwiLi4vbGF5b3V0L2hlcm8vX2hlcm9feHNcIjtcbkBpbXBvcnQgXCIuLi9sYXlvdXQvZm9vdGVyL19mb290ZXJfeHNcIjtcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ29sdW1uc1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AZm9yICRpIGZyb20gMiB0aHJvdWdoIDEyIHtcbiAgICAuY29sdW1ucy0tI3skaX0ge1xuICAgICAgICBjb2x1bW5zOiAkaTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEFsZXJ0XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5hbGVydC1ibG9jayB7XG4gICAgJiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtaWZ5KCRjb250ZW50LXBhZGRpbmcpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW1pZnkoJGNvbnRlbnQtcGFkZGluZyk7XG4gICAgfVxufVxuXG4uYWxlcnRfX3JvdyB7XG4gICAgW2RhdGEtb3JkZXI9XCIxXCJdIHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgfVxuXG4gICAgW2RhdGEtb3JkZXI9XCIyXCJdIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgfVxuXG4gICAgW2RhdGEtb3JkZXI9XCIzXCJdIHtcbiAgICAgICAgb3JkZXI6IDM7XG4gICAgfVxufVxuXG4uYWxlcnRfX3VzZXItY29udGVudCB7XG4gICAgJiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG59XG5cbi5hbGVydF9fdGl0bGUge1xuICAgICYge1xuICAgICAgICBib3JkZXItcmlnaHQ6IHJlbWlmeSgxKSBzb2xpZCBjb2xvcihcInNlY29uZGFyeVwiLCBcInNoYWRlXCIpO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbWlmeSgkY29sdW1uLWdhcCwgMzIpO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogSGVhZGVyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5oZWFkZXJfX2xvZ29fX2NvbnRhaW5lciB7XG4gICAgLmhlYWRlcl9fbG9nbyB7XG4gICAgICAgIHdpZHRoOiByZW1pZnkoMjkwLCAxNik7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBIZXJvXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5oZXJvLWJsb2NrIHtcbiAgICAmIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtaWZ5KDQ1KTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiByZW1pZnkoMzUpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW1pZnkoMzUpO1xuICAgIH1cbn1cblxuLmhlcm9fX2NhbGxvdXQge1xuICAgICYge1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEZvb3RlclxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uZm9vdGVyX19yb3cge1xuICAgICYucm93LS1oYWNrIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNb2R1bGVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTGF5b3V0XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1vZHVsZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBMYXlvdXRcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGltcG9ydCBcIi4uL2xheW91dC9jb250ZW50L19jb250ZW50X21cIjtcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ29udGVudFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uY29udGVudC1ibG9jayB7XG4gICAgJiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIH1cbn1cblxuLmNvbnRlbnRfX2lubmVyIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvYmFja2dyb3VuZC1jb250ZW50X2lubmVyLnBuZ1wiKTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9iYWNrZ3JvdW5kLWNvbnRlbnRfaW5uZXItdG9wLnBuZ1wiKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2JhY2tncm91bmQtY29udGVudF9pbm5lci1ib3R0b20ucG5nXCIpO1xuICAgIH1cbn1cblxuLmNvbnRlbnRfX3Bvc3Qge1xuICAgICYge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAkY29udGVudC1wYWRkaW5nIDAgKCRjb250ZW50LXBhZGRpbmcgKiAyKSk7XG4gICAgfVxufVxuXG4uY29udGVudF9fc2lkZWJhciB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwICgkY29udGVudC1wYWRkaW5nICogMikgMCAkY29udGVudC1wYWRkaW5nKTtcbiAgICAgICAgd2lkdGg6IHJlbWlmeSgzMDUsIDE2KTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTW9kdWxlXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIExheW91dFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSmFjb2IgQmVhcmNlIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNb2R1bGVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTGF5b3V0XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1vZHVsZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBMYXlvdXRcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEphY29iIEJlYXJjZSBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTW9kdWxlXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIExheW91dFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuIl19 */
