@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 Photoshop'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 Photoshop's Character Panel
 */
/* ------------------------------------------------------------------------ *\
 * Colors
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Fonts
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Widths
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Column Count
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Break Points
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Layers
\* ------------------------------------------------------------------------ */
.__dark {
  color: #000000 !important;
}

.__light {
  color: #FFFFFF !important;
}

.__inherit {
  color: inherit !important;
}

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

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

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

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

.__underline {
  text-decoration: underline !important;
}

.__lowercase {
  text-transform: lowercase !important;
}

.__uppercase {
  text-transform: uppercase !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;
}

.__inline {
  display: inline !important;
}

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

.__primary {
  color: #BB0D12 !important;
}

.__accent {
  color: #957600 !important;
}

.__tertiary {
  color: #ED1F25 !important;
}

.__error {
  color: #C62828 !important;
}

/* "visible" classes */
@media (max-width: 29.9375em) {
  .__visible-xxxs {
    display: none !important;
  }
}
@media (max-width: 39.9375em) {
  .__visible-xxs {
    display: none !important;
  }
}
@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;
  }
}
@media (max-width: 85.3125em) {
  .__visible-xxl {
    display: none !important;
  }
}
@media (max-width: 89.9375em) {
  .__visible-xxxl {
    display: none !important;
  }
}
/* "hidden" classes -- NOTE: It is important that __hidden classes come after __visible for override purposes */
@media (min-width: 30em) {
  .__hidden-xxxs {
    display: none !important;
  }
}
@media (min-width: 40em) {
  .__hidden-xxs {
    display: none !important;
  }
}
@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;
  }
}
@media (min-width: 85.375em) {
  .__hidden-xxl {
    display: none !important;
  }
}
@media (min-width: 90em) {
  .__hidden-xxxl {
    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 */
  -webkit-text-decoration: underline dotted;
  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;
}

[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
  appearance: none;
}

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

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

img {
  height: auto;
}

/* ------------------------------------------------------------------------ *\
 * Selection
\* ------------------------------------------------------------------------ */
::-moz-selection {
  background-color: #957600;
  color: #FFFFFF;
}
::selection {
  background-color: #957600;
  color: #FFFFFF;
}

/* ------------------------------------------------------------------------ *\
 * Alignment
\* ------------------------------------------------------------------------ */
.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.alignleft {
  float: left;
  margin-right: 1.5em;
  max-width: 33.3333333333%;
}

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

@media (max-width: 47.9375em) {
  .alignleft,
.alignright {
    display: block;
    float: none;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
  }
}

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

.divider--vertical {
  height: 2.6875em;
  margin: 0em 1.9375em;
  width: 0.1875em;
}

.divider--page-background {
  background: #909090;
}

/* ------------------------------------------------------------------------ *\
 * Grid (based loosely on https://v4-alpha.getbootstrap.com/layout/grid/)
\* ------------------------------------------------------------------------ */
.row {
  display: flex;
  flex-wrap: wrap;
}
.row > [class*=col-] {
  flex-grow: 1;
  flex-shrink: 1;
  min-width: 0;
}
.row > .col--grow-0 {
  flex-grow: 0;
}
.row > .col--shrink-0 {
  flex-shrink: 0;
}

.row--display-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
}
.row--display-grid.row--equal {
  grid-auto-columns: 1fr;
  grid-auto-rows: 1fr;
}

.row--padded,
.is-style-row-padded {
  margin-right: -1.875em;
}
.row--padded > [class*=col-],
.is-style-row-padded > [class*=col-] {
  padding-right: 1.875em;
}

.row--padded-tight,
.is-style-row-padded-tight {
  margin-right: -1.40625em;
}
.row--padded-tight > [class*=col-],
.is-style-row-padded-tight > [class*=col-] {
  padding-right: 1.40625em;
}

.row--padded-loose,
.is-style-row-padded-loose {
  margin-right: -2.34375em;
}
.row--padded-loose > [class*=col-],
.is-style-row-padded-loose > [class*=col-] {
  padding-right: 2.34375em;
}

.row--wrap-no {
  flex-wrap: nowrap;
}

.row--wrap-reverse {
  flex-wrap: wrap-reverse;
}

.row--center {
  align-items: center;
  justify-content: center;
}

.row--align-start {
  align-items: flex-start;
}

.row--align-center {
  align-items: center;
}

.row--align-end {
  align-items: flex-end;
}

.row--align-stretch {
  align-items: stretch;
}

.row--justify-start {
  justify-content: flex-start;
}

.row--justify-center {
  justify-content: center;
}

.row--justify-end {
  justify-content: flex-end;
}

.row--justify-around {
  justify-content: space-around;
}

.row--justify-between {
  justify-content: space-between;
}

.row--direction-column {
  flex-direction: column;
}

.row--direction-reverse:not(.row--direction-column) {
  flex-direction: row-reverse;
}
.row--direction-reverse.row--direction-column {
  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: 30em) {
  .col-xxxs-auto {
    flex-basis: auto;
  }

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

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

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

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

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

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

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

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

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

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

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

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

  .col-xxxs-12 {
    flex-basis: 100%;
    grid-column: span 12;
  }
}
@media (min-width: 40em) {
  .col-xxs-auto {
    flex-basis: auto;
  }

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

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

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

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

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

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

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

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

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

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

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

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

  .col-xxs-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;
  }
}
@media (min-width: 85.375em) {
  .col-xxl-auto {
    flex-basis: auto;
  }

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

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

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

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

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

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

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

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

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

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

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

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

  .col-xxl-12 {
    flex-basis: 100%;
    grid-column: span 12;
  }
}
@media (min-width: 90em) {
  .col-xxxl-auto {
    flex-basis: auto;
  }

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

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

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

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

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

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

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

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

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

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

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

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

  .col-xxxl-12 {
    flex-basis: 100%;
    grid-column: span 12;
  }
}
.col--divide {
  border-right: 0.1875em solid #909090;
  margin: 0em 1.9375em;
  width: 3px;
}

.col--justify-end {
  justify-self: flex-end;
}

/* ------------------------------------------------------------------------ *\
 * Link
\* ------------------------------------------------------------------------ */
.link, .woocommerce-privacy-policy-text a, .woocommerce form.login p.woocommerce-LostPassword a,
.woocommerce form.register p.woocommerce-LostPassword a, .woocommerce-error a,
.woocommerce-info a,
.woocommerce-message a, .woocommerce table.shop_table a, .woocommerce .woocommerce-product-rating .woocommerce-review-link, .woocommerce a.added_to_cart, .woocommerce nav.woocommerce-pagination ul li a, .woocommerce div.product form.cart .reset_variations, .woocommerce div.product div.summary div.product_meta a, .woocommerce-account .woocommerce-MyAccount-content a, .woocommerce-account .woocommerce-MyAccount-navigation a, .user-content a[href^="tel:"]:not(.link), .tribe-events-content a {
  color: #BB0D12;
  cursor: pointer;
  text-decoration: none;
  transition: color 0.15s;
}
.link:focus, .woocommerce-privacy-policy-text a:focus, .woocommerce form.login p.woocommerce-LostPassword a:focus,
.woocommerce form.register p.woocommerce-LostPassword a:focus, .woocommerce-error a:focus,
.woocommerce-info a:focus,
.woocommerce-message a:focus, .woocommerce table.shop_table a:focus, .woocommerce .woocommerce-product-rating .woocommerce-review-link:focus, .woocommerce a.added_to_cart:focus, .woocommerce nav.woocommerce-pagination ul li a:focus, .woocommerce div.product form.cart .reset_variations:focus, .woocommerce div.product div.summary div.product_meta a:focus, .woocommerce-account .woocommerce-MyAccount-content a:focus, .woocommerce-account .woocommerce-MyAccount-navigation a:focus, .user-content a[href^="tel:"]:focus:not(.link), .tribe-events-content a:focus, .link:hover, .woocommerce-privacy-policy-text a:hover, .woocommerce form.login p.woocommerce-LostPassword a:hover,
.woocommerce form.register p.woocommerce-LostPassword a:hover, .woocommerce-error a:hover,
.woocommerce-info a:hover,
.woocommerce-message a:hover, .woocommerce table.shop_table a:hover, .woocommerce .woocommerce-product-rating .woocommerce-review-link:hover, .woocommerce a.added_to_cart:hover, .woocommerce nav.woocommerce-pagination ul li a:hover, .woocommerce div.product form.cart .reset_variations:hover, .woocommerce div.product div.summary div.product_meta a:hover, .woocommerce-account .woocommerce-MyAccount-content a:hover, .woocommerce-account .woocommerce-MyAccount-navigation a:hover, .user-content a[href^="tel:"]:hover:not(.link), .tribe-events-content a:hover {
  color: #ED1F25;
}

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

/* ------------------------------------------------------------------------ *\
 * Button
\* ------------------------------------------------------------------------ */
.button, .tribe-events-content a.button, .tribe-events-cal-links .tribe-events-gcal,
.tribe-events-cal-links .tribe-events-ical,
.tribe-events-cal-links .tribe-events-ics {
  background: #BB0D12;
  border: 0;
  color: #FFFFFF;
  cursor: pointer;
  display: inline-block;
  font-family: "ibm-plex-sans", sans-serif;
  font-size: 1.125em;
  font-weight: 600;
  line-height: 1.2222222222em;
  margin: 0em 2.3888888889em 1.0555555556em 0em;
  outline: 0;
  padding: 1.1111111111em 1.2222222222em 1.1111111111em 2.5em;
  position: relative;
  text-align: left;
  text-decoration: none;
  transition: background-color 0.15s;
}
.button em, .tribe-events-content a.button em, .tribe-events-cal-links .tribe-events-gcal em,
.tribe-events-cal-links .tribe-events-ical em,
.tribe-events-cal-links .tribe-events-ics em {
  font-weight: 400;
}
.button:active, .tribe-events-content a.button:active, .tribe-events-cal-links .tribe-events-gcal:active,
.tribe-events-cal-links .tribe-events-ical:active,
.tribe-events-cal-links .tribe-events-ics:active {
  background-color: #ED1F25;
}
.button:focus, .tribe-events-content a.button:focus, .tribe-events-cal-links .tribe-events-gcal:focus,
.tribe-events-cal-links .tribe-events-ical:focus,
.tribe-events-cal-links .tribe-events-ics:focus, .button:hover, .tribe-events-content a.button:hover, .tribe-events-cal-links .tribe-events-gcal:hover,
.tribe-events-cal-links .tribe-events-ical:hover,
.tribe-events-cal-links .tribe-events-ics:hover {
  background-color: #ED1F25;
}

.button--alt {
  background: #000000;
}
.button--alt:active {
  background-color: #4A4A4A;
}
.button--alt:focus, .button--alt:hover {
  background-color: #4A4A4A;
}

.button--block {
  display: block;
  text-align: left;
  width: 100%;
}

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

/* ------------------------------------------------------------------------ *\
 * Input
\* ------------------------------------------------------------------------ */
.input, .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox,
.woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox, .woocommerce form .form-row select, .woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea, .woocommerce #review_form #respond .comment-form-author input,
.woocommerce #review_form #respond .comment-form-email input, .woocommerce #review_form #respond textarea, .woocommerce .woocommerce-ordering select, .woocommerce div.product form.cart .variations select, .woocommerce .quantity .qty {
  background: #FFFFFF;
  border: 2px solid #CCCCCC;
  border: 0.125rem solid #CCCCCC;
  border-radius: 0.25em;
  color: #212121;
  display: block;
  font-family: "ibm-plex-sans", 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, .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox:not(.input--disabled):active,
.woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox:not(.input--disabled):active, .woocommerce form .form-row select:not(.input--disabled):active, .woocommerce form .form-row input.input-text:not(.input--disabled):active,
.woocommerce form .form-row textarea:not(.input--disabled):active, .woocommerce #review_form #respond .comment-form-author input:not(.input--disabled):active,
.woocommerce #review_form #respond .comment-form-email input:not(.input--disabled):active, .woocommerce #review_form #respond textarea:not(.input--disabled):active, .woocommerce .woocommerce-ordering select:not(.input--disabled):active, .woocommerce div.product form.cart .variations select:not(.input--disabled):active, .woocommerce .quantity .qty:not(.input--disabled):active, .input:not(.input--disabled):focus, .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox:not(.input--disabled):focus,
.woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox:not(.input--disabled):focus, .woocommerce form .form-row select:not(.input--disabled):focus, .woocommerce form .form-row input.input-text:not(.input--disabled):focus,
.woocommerce form .form-row textarea:not(.input--disabled):focus, .woocommerce #review_form #respond .comment-form-author input:not(.input--disabled):focus,
.woocommerce #review_form #respond .comment-form-email input:not(.input--disabled):focus, .woocommerce #review_form #respond textarea:not(.input--disabled):focus, .woocommerce .woocommerce-ordering select:not(.input--disabled):focus, .woocommerce div.product form.cart .variations select:not(.input--disabled):focus, .woocommerce .quantity .qty:not(.input--disabled):focus {
  border-color: #957600;
}
.input::-moz-placeholder, .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox::-moz-placeholder, .woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox::-moz-placeholder, .woocommerce form .form-row select::-moz-placeholder, .woocommerce form .form-row input.input-text::-moz-placeholder, .woocommerce form .form-row textarea::-moz-placeholder, .woocommerce #review_form #respond .comment-form-author input::-moz-placeholder, .woocommerce #review_form #respond .comment-form-email input::-moz-placeholder, .woocommerce #review_form #respond textarea::-moz-placeholder, .woocommerce .woocommerce-ordering select::-moz-placeholder, .woocommerce div.product form.cart .variations select::-moz-placeholder, .woocommerce .quantity .qty::-moz-placeholder {
  color: #484848;
  opacity: 1;
}
.input:-ms-input-placeholder, .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox:-ms-input-placeholder, .woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox:-ms-input-placeholder, .woocommerce form .form-row select:-ms-input-placeholder, .woocommerce form .form-row input.input-text:-ms-input-placeholder, .woocommerce form .form-row textarea:-ms-input-placeholder, .woocommerce #review_form #respond .comment-form-author input:-ms-input-placeholder, .woocommerce #review_form #respond .comment-form-email input:-ms-input-placeholder, .woocommerce #review_form #respond textarea:-ms-input-placeholder, .woocommerce .woocommerce-ordering select:-ms-input-placeholder, .woocommerce div.product form.cart .variations select:-ms-input-placeholder, .woocommerce .quantity .qty:-ms-input-placeholder {
  color: #484848;
  opacity: 1;
}
.input::placeholder, .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox::placeholder,
.woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox::placeholder, .woocommerce form .form-row select::placeholder, .woocommerce form .form-row input.input-text::placeholder,
.woocommerce form .form-row textarea::placeholder, .woocommerce #review_form #respond .comment-form-author input::placeholder,
.woocommerce #review_form #respond .comment-form-email input::placeholder, .woocommerce #review_form #respond textarea::placeholder, .woocommerce .woocommerce-ordering select::placeholder, .woocommerce div.product form.cart .variations select::placeholder, .woocommerce .quantity .qty::placeholder {
  color: #484848;
  opacity: 1;
}

/* error variant */
.input--error, .nf-error .input, .nf-error .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox, .woocommerce form.login .nf-error input.woocommerce-form__input.woocommerce-form__input-checkbox,
.nf-error .woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox,
.woocommerce form.register .nf-error input.woocommerce-form__input.woocommerce-form__input-checkbox, .nf-error .woocommerce form .form-row select, .woocommerce form .form-row .nf-error select, .nf-error .woocommerce form .form-row input.input-text, .woocommerce form .form-row .nf-error input.input-text,
.nf-error .woocommerce form .form-row textarea,
.woocommerce form .form-row .nf-error textarea, .nf-error .woocommerce #review_form #respond .comment-form-author input, .woocommerce #review_form #respond .comment-form-author .nf-error input,
.nf-error .woocommerce #review_form #respond .comment-form-email input,
.woocommerce #review_form #respond .comment-form-email .nf-error input, .nf-error .woocommerce #review_form #respond textarea, .woocommerce #review_form #respond .nf-error textarea, .nf-error .woocommerce .woocommerce-ordering select, .woocommerce .woocommerce-ordering .nf-error select, .nf-error .woocommerce div.product form.cart .variations select, .woocommerce div.product form.cart .variations .nf-error select, .nf-error .woocommerce .quantity .qty, .woocommerce .quantity .nf-error .qty {
  border-color: #C62828;
}

/* success variant */
.input--success, .nf-pass .input, .nf-pass .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox, .woocommerce form.login .nf-pass input.woocommerce-form__input.woocommerce-form__input-checkbox,
.nf-pass .woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox,
.woocommerce form.register .nf-pass input.woocommerce-form__input.woocommerce-form__input-checkbox, .nf-pass .woocommerce form .form-row select, .woocommerce form .form-row .nf-pass select, .nf-pass .woocommerce form .form-row input.input-text, .woocommerce form .form-row .nf-pass input.input-text,
.nf-pass .woocommerce form .form-row textarea,
.woocommerce form .form-row .nf-pass textarea, .nf-pass .woocommerce #review_form #respond .comment-form-author input, .woocommerce #review_form #respond .comment-form-author .nf-pass input,
.nf-pass .woocommerce #review_form #respond .comment-form-email input,
.woocommerce #review_form #respond .comment-form-email .nf-pass input, .nf-pass .woocommerce #review_form #respond textarea, .woocommerce #review_form #respond .nf-pass textarea, .nf-pass .woocommerce .woocommerce-ordering select, .woocommerce .woocommerce-ordering .nf-pass select, .nf-pass .woocommerce div.product form.cart .variations select, .woocommerce div.product form.cart .variations .nf-pass select, .nf-pass .woocommerce .quantity .qty, .woocommerce .quantity .nf-pass .qty {
  border-color: #28C665;
}

/* select variant */
.input--select, .woocommerce form .form-row select, .woocommerce .woocommerce-ordering select, .woocommerce div.product form.cart .variations select {
  cursor: pointer;
  text-indent: 0.01px;
}
.input--select::-ms-expand, .woocommerce form .form-row select::-ms-expand, .woocommerce .woocommerce-ordering select::-ms-expand, .woocommerce div.product form.cart .variations select::-ms-expand {
  display: none;
}

.input--select-arrow, .woocommerce form .form-row select, .woocommerce .woocommerce-ordering select, .woocommerce div.product form.cart .variations select {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512' fill='%23212121'%3E%3C!--! Font Awesome Pro 6.1.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --%3E%3Cpath d='M27.66 224h264.7c24.6 0 36.89-29.78 19.54-47.12l-132.3-136.8c-5.406-5.406-12.47-8.107-19.53-8.107c-7.055 0-14.09 2.701-19.45 8.107L8.119 176.9C-9.229 194.2 3.055 224 27.66 224zM292.3 288H27.66c-24.6 0-36.89 29.77-19.54 47.12l132.5 136.8C145.9 477.3 152.1 480 160 480c7.053 0 14.12-2.703 19.53-8.109l132.3-136.8C329.2 317.8 316.9 288 292.3 288z'/%3E%3C/svg%3E");
  background-position: center right 0.9375em;
  background-repeat: no-repeat;
  background-size: 0.75em;
  padding-right: calc(0.75em + 1.875em);
}

/* toggle variants */
.input--toggle, .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox,
.woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox {
  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--toggle::after, .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox::after,
.woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox::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--toggle:checked::after, .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox:checked::after,
.woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox:checked::after {
  left: 0;
  transition: background-color 0.15s, transform 0.15s;
}
.input--toggle + .text--label, .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox + .text--label,
.woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox + .text--label {
  display: inline-block;
  font-size: 1em;
  line-height: 1.5em;
  margin-bottom: 10px;
  margin-bottom: 0.625rem;
  vertical-align: middle;
}

.input--toggle-checkbox:checked, .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox:checked,
.woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox:checked {
  background-color: #957600;
  border-color: #957600;
}
.input--toggle-checkbox::after, .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox::after,
.woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox::after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512' fill='%23FFFFFF'%3E%3C!--! Font Awesome Pro 6.1.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --%3E%3Cpath d='M438.6 105.4C451.1 117.9 451.1 138.1 438.6 150.6L182.6 406.6C170.1 419.1 149.9 419.1 137.4 406.6L9.372 278.6C-3.124 266.1-3.124 245.9 9.372 233.4C21.87 220.9 42.13 220.9 54.63 233.4L159.1 338.7L393.4 105.4C405.9 92.88 426.1 92.88 438.6 105.4H438.6z'/%3E%3C/svg%3E");
  transform: rotate(90deg);
}
.input--toggle-checkbox:checked::after, .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox:checked::after,
.woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox:checked::after {
  transform: rotate(0);
}

.input--toggle-radio {
  border-radius: 50%;
}
.input--toggle-radio::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='%23957600'%3E%3C!--! Font Awesome Pro 6.1.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --%3E%3Cpath d='M512 256C512 397.4 397.4 512 256 512C114.6 512 0 397.4 0 256C0 114.6 114.6 0 256 0C397.4 0 512 114.6 512 256z'/%3E%3C/svg%3E");
  transform: scale(0);
}
.input--toggle-radio:checked::after {
  transform: scale(1);
}

/* disabled variant */
.input--disabled {
  background-color: #e6e6e6;
  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,
:root .woocommerce form .form-row select,
:root .woocommerce .woocommerce-ordering select,
:root .woocommerce div.product form.cart .variations select {
  padding: 0.625em calc(0.9375em - 3px) calc(0.625em - 2px);
}

_:-ms-input-placeholder,
:root .input--select-arrow,
:root .woocommerce form .form-row select,
:root .woocommerce .woocommerce-ordering select,
:root .woocommerce div.product form.cart .variations select {
  padding-right: calc(0.75em + 1.875em - 3px);
}

/* Chrome  */
@supports (-webkit-appearance: none) and (font-stretch: normal) and (not (-ms-accelerator: true)) {
  .input--select, .woocommerce form .form-row select, .woocommerce .woocommerce-ordering select, .woocommerce div.product form.cart .variations select {
    padding: 0.625em 0.9375em 0.625em 0.9375em;
  }

  .input--select-arrow, .woocommerce form .form-row select, .woocommerce .woocommerce-ordering select, .woocommerce div.product form.cart .variations select {
    padding-right: calc(0.75em + 1.875em);
  }
}
/* Safari */
_::-webkit-full-page-media,
_:future,
:root .input--select,
:root .woocommerce form .form-row select,
:root .woocommerce .woocommerce-ordering select,
:root .woocommerce div.product form.cart .variations select {
  padding: 0.625em 0.9375em 0.625em 0.9375em;
}

_::-webkit-full-page-media,
_:future,
:root .input--select-arrow,
:root .woocommerce form .form-row select,
:root .woocommerce .woocommerce-ordering select,
:root .woocommerce div.product form.cart .variations select {
  padding-right: calc(0.75em + 1.875em);
}

/* Edge */
@supports (-ms-ime-align: auto) {
  .input--select, .woocommerce form .form-row select, .woocommerce .woocommerce-ordering select, .woocommerce div.product form.cart .variations select {
    padding: calc(0.625em - 1px) calc(0.9375em - 2px) calc(0.625em - 1px) calc(0.9375em - 2px);
  }

  .input--select-arrow, .woocommerce form .form-row select, .woocommerce .woocommerce-ordering select, .woocommerce div.product form.cart .variations select {
    padding-right: calc(0.75em + 1.875em - 2px);
  }
}
/* Firefox */
@-moz-document url-prefix("") {
  .input--select, .woocommerce form .form-row select, .woocommerce .woocommerce-ordering select, .woocommerce div.product form.cart .variations select {
    padding: 0.625em calc(0.9375em - 4px) 0.625em calc(0.9375em - 4px);
  }

  .input--select-arrow, .woocommerce form .form-row select, .woocommerce .woocommerce-ordering select, .woocommerce div.product form.cart .variations select {
    padding-right: calc(0.75em + 1.875em - 4px);
  }
}
/* stylelint-enable */
/* ------------------------------------------------------------------------ *\
 * Title
\* ------------------------------------------------------------------------ */
.title, .woocommerce-account .woocommerce-MyAccount-content form > h3, .woocommerce-account .woocommerce > h2, .woocommerce .woocommerce-order h2.woocommerce-column__title, .woocommerce .woocommerce-order h2.woocommerce-order-details__title, .woocommerce .checkout h3, .woocommerce .product .related > h2,
.woocommerce .product .upsells > h2, .woocommerce h1.page-title, .woocommerce .woocommerce-customer-details h2,
.woocommerce .woocommerce-order-details h2,
.woocommerce .woocommerce-order-downloads h2, .woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h3, .woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h2, .woocommerce div.product .product_title, .woocommerce .cart-collaterals h2,
.woocommerce-page .cart-collaterals h2 {
  color: #000000;
  font-family: "brothers", sans-serif;
  font-size: 3em;
  font-weight: 700;
  line-height: 1.2em;
  margin: 0px 0px 10px;
  margin: 0rem 0rem 0.625rem;
  text-transform: uppercase;
}

.title--h2 {
  font-size: 2em;
}

.title--h3 {
  font-size: 1.5625em;
}

.title--h4 {
  font-size: 1.25em;
}

.title--h5 {
  font-size: 1.125em;
  font-weight: 600;
}

.title--h6 {
  font-size: 1em;
  font-weight: 600;
  margin-bottom: 0;
}

/* font variant */
.title--uppercase {
  text-transform: uppercase !important;
}

/* font variant */
.title--body {
  font-family: "ibm-plex-sans", sans-serif;
  text-transform: none;
}

/* color variants */
.title--light {
  color: #FFFFFF;
}

.title--primary {
  color: #BB0D12;
}

.title--secondary {
  color: #FFCA00;
}

.title--tertiary {
  color: #ED1F25;
}

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

/* ------------------------------------------------------------------------ *\
 * Text
\* ------------------------------------------------------------------------ */
.text, .woocommerce-order > p, .woocommerce-privacy-policy-text p, .woocommerce-account .woocommerce fieldset, .woocommerce-account .addresses address, .woocommerce form.login p.woocommerce-LostPassword,
.woocommerce form.register p.woocommerce-LostPassword, .woocommerce .woocommerce-order p.woocommerce-notice, .woocommerce .woocommerce-customer-details address, .woocommerce table.shop_attributes, .woocommerce #review_form #respond label, .woocommerce #review_form #respond span.comment-reply-title, .woocommerce .woocommerce-product-rating, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce .woocommerce-result-count, .woocommerce div.product form.cart .reset_variations, .woocommerce div.product div.summary div.product_meta, .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce-account .woocommerce-MyAccount-navigation ul {
  color: #212121;
  display: block;
  font-family: "ibm-plex-sans", sans-serif;
  font-size: 1em;
  font-weight: 400;
  line-height: 1.375em;
  margin: 0em 0em 1.4375em;
}
.text .text, .woocommerce-order > p .text, .woocommerce-privacy-policy-text p .text, .woocommerce-account .woocommerce fieldset .text, .woocommerce-account .addresses address .text, .woocommerce form.login p.woocommerce-LostPassword .text,
.woocommerce form.register p.woocommerce-LostPassword .text, .woocommerce .woocommerce-order p.woocommerce-notice .text, .woocommerce .woocommerce-customer-details address .text, .woocommerce table.shop_attributes .text, .woocommerce #review_form #respond label .text, .woocommerce #review_form #respond span.comment-reply-title .text, .woocommerce .woocommerce-product-rating .text, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta .text, .woocommerce .woocommerce-result-count .text, .woocommerce div.product form.cart .reset_variations .text, .woocommerce div.product div.summary div.product_meta .text, .woocommerce-account .woocommerce-MyAccount-content p .text, .woocommerce-account .woocommerce-MyAccount-navigation ul .text, .text .woocommerce-order > p, .text .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .text p, .text .woocommerce-account .woocommerce fieldset, .woocommerce-account .woocommerce .text fieldset, .text .woocommerce-account .addresses address, .woocommerce-account .addresses .text address, .text .woocommerce form.login p.woocommerce-LostPassword, .woocommerce form.login .text p.woocommerce-LostPassword,
.text .woocommerce form.register p.woocommerce-LostPassword,
.woocommerce form.register .text p.woocommerce-LostPassword, .text .woocommerce .woocommerce-order p.woocommerce-notice, .woocommerce .woocommerce-order .text p.woocommerce-notice, .text .woocommerce .woocommerce-customer-details address, .woocommerce .woocommerce-customer-details .text address, .text .woocommerce table.shop_attributes, .woocommerce .text table.shop_attributes, .text .woocommerce #review_form #respond label, .woocommerce #review_form #respond .text label, .text .woocommerce #review_form #respond span.comment-reply-title, .woocommerce #review_form #respond .text span.comment-reply-title, .text .woocommerce .woocommerce-product-rating, .woocommerce .text .woocommerce-product-rating, .text .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text .text p.meta, .text .woocommerce .woocommerce-result-count, .woocommerce .text .woocommerce-result-count, .text .woocommerce div.product form.cart .reset_variations, .woocommerce div.product form.cart .text .reset_variations, .text .woocommerce div.product div.summary div.product_meta, .woocommerce div.product div.summary .text div.product_meta, .text .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce-account .woocommerce-MyAccount-content .text p, .text .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce-account .woocommerce-MyAccount-navigation .text ul, .woocommerce-order > p .woocommerce-order > p, .woocommerce-privacy-policy-text p .woocommerce-order > p, .woocommerce-order > p .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce-order > p p, .woocommerce-privacy-policy-text p p, .woocommerce-account .woocommerce fieldset .woocommerce-order > p, .woocommerce-account .woocommerce fieldset .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce-account .woocommerce fieldset p, .woocommerce-order > p .woocommerce-account .woocommerce fieldset, .woocommerce-privacy-policy-text p .woocommerce-account .woocommerce fieldset, .woocommerce-account .woocommerce .woocommerce-order > p fieldset, .woocommerce-account .woocommerce .woocommerce-privacy-policy-text p fieldset, .woocommerce-privacy-policy-text .woocommerce-account .woocommerce p fieldset, .woocommerce-account .woocommerce fieldset fieldset, .woocommerce-account .addresses address .woocommerce-order > p, .woocommerce-account .addresses address .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce-account .addresses address p, .woocommerce-account .addresses address .woocommerce fieldset, .woocommerce-account .woocommerce .addresses address fieldset, .woocommerce-order > p .woocommerce-account .addresses address, .woocommerce-privacy-policy-text p .woocommerce-account .addresses address, .woocommerce-account .woocommerce fieldset .woocommerce-account .addresses address, .woocommerce-account .addresses .woocommerce-order > p address, .woocommerce-account .addresses .woocommerce-privacy-policy-text p address, .woocommerce-privacy-policy-text .woocommerce-account .addresses p address, .woocommerce-account .addresses .woocommerce fieldset address, .woocommerce-account .woocommerce .addresses fieldset address, .woocommerce-account .addresses address address, .woocommerce form.login p.woocommerce-LostPassword .woocommerce-order > p, .woocommerce form.login p.woocommerce-LostPassword .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce form.login p.woocommerce-LostPassword p, .woocommerce-account .woocommerce form.login p.woocommerce-LostPassword fieldset, .woocommerce form.login p.woocommerce-LostPassword .woocommerce-account .addresses address, .woocommerce-account .addresses .woocommerce form.login p.woocommerce-LostPassword address,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce-order > p,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce-privacy-policy-text p,
.woocommerce-privacy-policy-text .woocommerce form.register p.woocommerce-LostPassword p,
.woocommerce-account .woocommerce form.register p.woocommerce-LostPassword fieldset,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce-account .addresses address,
.woocommerce-account .addresses .woocommerce form.register p.woocommerce-LostPassword address, .woocommerce-order > p .woocommerce form.login p.woocommerce-LostPassword, .woocommerce-privacy-policy-text p .woocommerce form.login p.woocommerce-LostPassword, .woocommerce-account .woocommerce fieldset .woocommerce form.login p.woocommerce-LostPassword, .woocommerce-account .addresses address .woocommerce form.login p.woocommerce-LostPassword, .woocommerce form.login .woocommerce-order > p p.woocommerce-LostPassword, .woocommerce form.login .woocommerce-privacy-policy-text p p.woocommerce-LostPassword, .woocommerce-privacy-policy-text .woocommerce form.login p p.woocommerce-LostPassword, .woocommerce-account .woocommerce form.login fieldset p.woocommerce-LostPassword, .woocommerce form.login .woocommerce-account .addresses address p.woocommerce-LostPassword, .woocommerce-account .addresses .woocommerce form.login address p.woocommerce-LostPassword, .woocommerce form.login p.woocommerce-LostPassword p.woocommerce-LostPassword,
.woocommerce form.register p.woocommerce-LostPassword form.login p.woocommerce-LostPassword,
.woocommerce form.login form.register p.woocommerce-LostPassword p.woocommerce-LostPassword,
.woocommerce-order > p .woocommerce form.register p.woocommerce-LostPassword,
.woocommerce-privacy-policy-text p .woocommerce form.register p.woocommerce-LostPassword,
.woocommerce-account .woocommerce fieldset .woocommerce form.register p.woocommerce-LostPassword,
.woocommerce-account .addresses address .woocommerce form.register p.woocommerce-LostPassword,
.woocommerce form.register .woocommerce-order > p p.woocommerce-LostPassword,
.woocommerce form.register .woocommerce-privacy-policy-text p p.woocommerce-LostPassword,
.woocommerce-privacy-policy-text .woocommerce form.register p p.woocommerce-LostPassword,
.woocommerce-account .woocommerce form.register fieldset p.woocommerce-LostPassword,
.woocommerce form.register .woocommerce-account .addresses address p.woocommerce-LostPassword,
.woocommerce-account .addresses .woocommerce form.register address p.woocommerce-LostPassword,
.woocommerce form.login p.woocommerce-LostPassword form.register p.woocommerce-LostPassword,
.woocommerce form.register form.login p.woocommerce-LostPassword p.woocommerce-LostPassword,
.woocommerce form.register p.woocommerce-LostPassword p.woocommerce-LostPassword, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce-order > p, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce .woocommerce-order p.woocommerce-notice p, .woocommerce-account .woocommerce .woocommerce-order p.woocommerce-notice fieldset, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce-account .addresses address, .woocommerce-account .addresses .woocommerce .woocommerce-order p.woocommerce-notice address, .woocommerce .woocommerce-order p.woocommerce-notice form.login p.woocommerce-LostPassword, .woocommerce form.login .woocommerce-order p.woocommerce-notice p.woocommerce-LostPassword,
.woocommerce .woocommerce-order p.woocommerce-notice form.register p.woocommerce-LostPassword,
.woocommerce form.register .woocommerce-order p.woocommerce-notice p.woocommerce-LostPassword, .woocommerce-order > p .woocommerce .woocommerce-order p.woocommerce-notice, .woocommerce-privacy-policy-text p .woocommerce .woocommerce-order p.woocommerce-notice, .woocommerce-account .woocommerce fieldset .woocommerce .woocommerce-order p.woocommerce-notice, .woocommerce-account .addresses address .woocommerce .woocommerce-order p.woocommerce-notice, .woocommerce form.login p.woocommerce-LostPassword .woocommerce .woocommerce-order p.woocommerce-notice,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce .woocommerce-order p.woocommerce-notice, .woocommerce .woocommerce-order > p p.woocommerce-notice, .woocommerce .woocommerce-order .woocommerce-privacy-policy-text p p.woocommerce-notice, .woocommerce-privacy-policy-text .woocommerce .woocommerce-order p p.woocommerce-notice, .woocommerce-account .woocommerce .woocommerce-order fieldset p.woocommerce-notice, .woocommerce .woocommerce-order .woocommerce-account .addresses address p.woocommerce-notice, .woocommerce-account .addresses .woocommerce .woocommerce-order address p.woocommerce-notice, .woocommerce .woocommerce-order form.login p.woocommerce-LostPassword p.woocommerce-notice, .woocommerce form.login .woocommerce-order p.woocommerce-LostPassword p.woocommerce-notice,
.woocommerce .woocommerce-order form.register p.woocommerce-LostPassword p.woocommerce-notice,
.woocommerce form.register .woocommerce-order p.woocommerce-LostPassword p.woocommerce-notice, .woocommerce .woocommerce-order p.woocommerce-notice p.woocommerce-notice, .woocommerce .woocommerce-customer-details address .woocommerce-order > p, .woocommerce .woocommerce-customer-details address .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce .woocommerce-customer-details address p, .woocommerce-account .woocommerce .woocommerce-customer-details address fieldset, .woocommerce .woocommerce-customer-details address .woocommerce-account .addresses address, .woocommerce-account .addresses .woocommerce .woocommerce-customer-details address address, .woocommerce .woocommerce-customer-details address form.login p.woocommerce-LostPassword, .woocommerce form.login .woocommerce-customer-details address p.woocommerce-LostPassword,
.woocommerce .woocommerce-customer-details address form.register p.woocommerce-LostPassword,
.woocommerce form.register .woocommerce-customer-details address p.woocommerce-LostPassword, .woocommerce .woocommerce-customer-details address .woocommerce-order p.woocommerce-notice, .woocommerce .woocommerce-order .woocommerce-customer-details address p.woocommerce-notice, .woocommerce-order > p .woocommerce .woocommerce-customer-details address, .woocommerce-privacy-policy-text p .woocommerce .woocommerce-customer-details address, .woocommerce-account .woocommerce fieldset .woocommerce .woocommerce-customer-details address, .woocommerce-account .addresses address .woocommerce .woocommerce-customer-details address, .woocommerce form.login p.woocommerce-LostPassword .woocommerce .woocommerce-customer-details address,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce .woocommerce-customer-details address, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce .woocommerce-customer-details address, .woocommerce .woocommerce-customer-details .woocommerce-order > p address, .woocommerce .woocommerce-customer-details .woocommerce-privacy-policy-text p address, .woocommerce-privacy-policy-text .woocommerce .woocommerce-customer-details p address, .woocommerce-account .woocommerce .woocommerce-customer-details fieldset address, .woocommerce .woocommerce-customer-details .woocommerce-account .addresses address address, .woocommerce-account .addresses .woocommerce .woocommerce-customer-details address address, .woocommerce .woocommerce-customer-details form.login p.woocommerce-LostPassword address, .woocommerce form.login .woocommerce-customer-details p.woocommerce-LostPassword address,
.woocommerce .woocommerce-customer-details form.register p.woocommerce-LostPassword address,
.woocommerce form.register .woocommerce-customer-details p.woocommerce-LostPassword address, .woocommerce .woocommerce-customer-details .woocommerce-order p.woocommerce-notice address, .woocommerce .woocommerce-order .woocommerce-customer-details p.woocommerce-notice address, .woocommerce .woocommerce-customer-details address address, .woocommerce table.shop_attributes .woocommerce-order > p, .woocommerce table.shop_attributes .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce table.shop_attributes p, .woocommerce-account .woocommerce table.shop_attributes fieldset, .woocommerce table.shop_attributes .woocommerce-account .addresses address, .woocommerce-account .addresses .woocommerce table.shop_attributes address, .woocommerce table.shop_attributes form.login p.woocommerce-LostPassword, .woocommerce form.login table.shop_attributes p.woocommerce-LostPassword,
.woocommerce table.shop_attributes form.register p.woocommerce-LostPassword,
.woocommerce form.register table.shop_attributes p.woocommerce-LostPassword, .woocommerce table.shop_attributes .woocommerce-order p.woocommerce-notice, .woocommerce .woocommerce-order table.shop_attributes p.woocommerce-notice, .woocommerce table.shop_attributes .woocommerce-customer-details address, .woocommerce .woocommerce-customer-details table.shop_attributes address, .woocommerce-order > p .woocommerce table.shop_attributes, .woocommerce-privacy-policy-text p .woocommerce table.shop_attributes, .woocommerce-account .woocommerce fieldset .woocommerce table.shop_attributes, .woocommerce-account .addresses address .woocommerce table.shop_attributes, .woocommerce form.login p.woocommerce-LostPassword .woocommerce table.shop_attributes,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce table.shop_attributes, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce table.shop_attributes, .woocommerce .woocommerce-customer-details address .woocommerce table.shop_attributes, .woocommerce .woocommerce-order > p table.shop_attributes, .woocommerce .woocommerce-privacy-policy-text p table.shop_attributes, .woocommerce-privacy-policy-text .woocommerce p table.shop_attributes, .woocommerce-account .woocommerce fieldset table.shop_attributes, .woocommerce .woocommerce-account .addresses address table.shop_attributes, .woocommerce-account .addresses .woocommerce address table.shop_attributes, .woocommerce form.login p.woocommerce-LostPassword table.shop_attributes,
.woocommerce form.register p.woocommerce-LostPassword table.shop_attributes, .woocommerce .woocommerce-order p.woocommerce-notice table.shop_attributes, .woocommerce .woocommerce-customer-details address table.shop_attributes, .woocommerce table.shop_attributes table.shop_attributes, .woocommerce #review_form #respond label .woocommerce-order > p, .woocommerce #review_form #respond label .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce #review_form #respond label p, .woocommerce-account .woocommerce #review_form #respond label fieldset, .woocommerce #review_form #respond label .woocommerce-account .addresses address, .woocommerce-account .addresses .woocommerce #review_form #respond label address, .woocommerce #review_form #respond label form.login p.woocommerce-LostPassword, .woocommerce form.login #review_form #respond label p.woocommerce-LostPassword,
.woocommerce #review_form #respond label form.register p.woocommerce-LostPassword,
.woocommerce form.register #review_form #respond label p.woocommerce-LostPassword, .woocommerce #review_form #respond label .woocommerce-order p.woocommerce-notice, .woocommerce .woocommerce-order #review_form #respond label p.woocommerce-notice, .woocommerce #review_form #respond label .woocommerce-customer-details address, .woocommerce .woocommerce-customer-details #review_form #respond label address, .woocommerce #review_form #respond label table.shop_attributes, .woocommerce-order > p .woocommerce #review_form #respond label, .woocommerce-privacy-policy-text p .woocommerce #review_form #respond label, .woocommerce-account .woocommerce fieldset .woocommerce #review_form #respond label, .woocommerce-account .addresses address .woocommerce #review_form #respond label, .woocommerce form.login p.woocommerce-LostPassword .woocommerce #review_form #respond label,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce #review_form #respond label, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce #review_form #respond label, .woocommerce .woocommerce-customer-details address .woocommerce #review_form #respond label, .woocommerce table.shop_attributes .woocommerce #review_form #respond label, .woocommerce #review_form #respond .woocommerce-order > p label, .woocommerce #review_form #respond .woocommerce-privacy-policy-text p label, .woocommerce-privacy-policy-text .woocommerce #review_form #respond p label, .woocommerce-account .woocommerce #review_form #respond fieldset label, .woocommerce #review_form #respond .woocommerce-account .addresses address label, .woocommerce-account .addresses .woocommerce #review_form #respond address label, .woocommerce #review_form #respond form.login p.woocommerce-LostPassword label, .woocommerce form.login #review_form #respond p.woocommerce-LostPassword label,
.woocommerce #review_form #respond form.register p.woocommerce-LostPassword label,
.woocommerce form.register #review_form #respond p.woocommerce-LostPassword label, .woocommerce #review_form #respond .woocommerce-order p.woocommerce-notice label, .woocommerce .woocommerce-order #review_form #respond p.woocommerce-notice label, .woocommerce #review_form #respond .woocommerce-customer-details address label, .woocommerce .woocommerce-customer-details #review_form #respond address label, .woocommerce #review_form #respond table.shop_attributes label, .woocommerce #review_form #respond label label, .woocommerce #review_form #respond span.comment-reply-title .woocommerce-order > p, .woocommerce #review_form #respond span.comment-reply-title .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce #review_form #respond span.comment-reply-title p, .woocommerce-account .woocommerce #review_form #respond span.comment-reply-title fieldset, .woocommerce #review_form #respond span.comment-reply-title .woocommerce-account .addresses address, .woocommerce-account .addresses .woocommerce #review_form #respond span.comment-reply-title address, .woocommerce #review_form #respond span.comment-reply-title form.login p.woocommerce-LostPassword, .woocommerce form.login #review_form #respond span.comment-reply-title p.woocommerce-LostPassword,
.woocommerce #review_form #respond span.comment-reply-title form.register p.woocommerce-LostPassword,
.woocommerce form.register #review_form #respond span.comment-reply-title p.woocommerce-LostPassword, .woocommerce #review_form #respond span.comment-reply-title .woocommerce-order p.woocommerce-notice, .woocommerce .woocommerce-order #review_form #respond span.comment-reply-title p.woocommerce-notice, .woocommerce #review_form #respond span.comment-reply-title .woocommerce-customer-details address, .woocommerce .woocommerce-customer-details #review_form #respond span.comment-reply-title address, .woocommerce #review_form #respond span.comment-reply-title table.shop_attributes, .woocommerce #review_form #respond span.comment-reply-title label, .woocommerce-order > p .woocommerce #review_form #respond span.comment-reply-title, .woocommerce-privacy-policy-text p .woocommerce #review_form #respond span.comment-reply-title, .woocommerce-account .woocommerce fieldset .woocommerce #review_form #respond span.comment-reply-title, .woocommerce-account .addresses address .woocommerce #review_form #respond span.comment-reply-title, .woocommerce form.login p.woocommerce-LostPassword .woocommerce #review_form #respond span.comment-reply-title,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce #review_form #respond span.comment-reply-title, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce #review_form #respond span.comment-reply-title, .woocommerce .woocommerce-customer-details address .woocommerce #review_form #respond span.comment-reply-title, .woocommerce table.shop_attributes .woocommerce #review_form #respond span.comment-reply-title, .woocommerce #review_form #respond label .woocommerce #review_form #respond span.comment-reply-title, .woocommerce #review_form #respond .woocommerce-order > p span.comment-reply-title, .woocommerce #review_form #respond .woocommerce-privacy-policy-text p span.comment-reply-title, .woocommerce-privacy-policy-text .woocommerce #review_form #respond p span.comment-reply-title, .woocommerce-account .woocommerce #review_form #respond fieldset span.comment-reply-title, .woocommerce #review_form #respond .woocommerce-account .addresses address span.comment-reply-title, .woocommerce-account .addresses .woocommerce #review_form #respond address span.comment-reply-title, .woocommerce #review_form #respond form.login p.woocommerce-LostPassword span.comment-reply-title, .woocommerce form.login #review_form #respond p.woocommerce-LostPassword span.comment-reply-title,
.woocommerce #review_form #respond form.register p.woocommerce-LostPassword span.comment-reply-title,
.woocommerce form.register #review_form #respond p.woocommerce-LostPassword span.comment-reply-title, .woocommerce #review_form #respond .woocommerce-order p.woocommerce-notice span.comment-reply-title, .woocommerce .woocommerce-order #review_form #respond p.woocommerce-notice span.comment-reply-title, .woocommerce #review_form #respond .woocommerce-customer-details address span.comment-reply-title, .woocommerce .woocommerce-customer-details #review_form #respond address span.comment-reply-title, .woocommerce #review_form #respond table.shop_attributes span.comment-reply-title, .woocommerce #review_form #respond label span.comment-reply-title, .woocommerce #review_form #respond span.comment-reply-title span.comment-reply-title, .woocommerce .woocommerce-product-rating .woocommerce-order > p, .woocommerce .woocommerce-product-rating .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce .woocommerce-product-rating p, .woocommerce-account .woocommerce .woocommerce-product-rating fieldset, .woocommerce .woocommerce-product-rating .woocommerce-account .addresses address, .woocommerce-account .addresses .woocommerce .woocommerce-product-rating address, .woocommerce .woocommerce-product-rating form.login p.woocommerce-LostPassword, .woocommerce form.login .woocommerce-product-rating p.woocommerce-LostPassword,
.woocommerce .woocommerce-product-rating form.register p.woocommerce-LostPassword,
.woocommerce form.register .woocommerce-product-rating p.woocommerce-LostPassword, .woocommerce .woocommerce-product-rating .woocommerce-order p.woocommerce-notice, .woocommerce .woocommerce-order .woocommerce-product-rating p.woocommerce-notice, .woocommerce .woocommerce-product-rating .woocommerce-customer-details address, .woocommerce .woocommerce-customer-details .woocommerce-product-rating address, .woocommerce .woocommerce-product-rating table.shop_attributes, .woocommerce .woocommerce-product-rating #review_form #respond label, .woocommerce #review_form #respond .woocommerce-product-rating label, .woocommerce .woocommerce-product-rating #review_form #respond span.comment-reply-title, .woocommerce #review_form #respond .woocommerce-product-rating span.comment-reply-title, .woocommerce-order > p .woocommerce .woocommerce-product-rating, .woocommerce-privacy-policy-text p .woocommerce .woocommerce-product-rating, .woocommerce-account .woocommerce fieldset .woocommerce .woocommerce-product-rating, .woocommerce-account .addresses address .woocommerce .woocommerce-product-rating, .woocommerce form.login p.woocommerce-LostPassword .woocommerce .woocommerce-product-rating,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce .woocommerce-product-rating, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce .woocommerce-product-rating, .woocommerce .woocommerce-customer-details address .woocommerce .woocommerce-product-rating, .woocommerce table.shop_attributes .woocommerce .woocommerce-product-rating, .woocommerce #review_form #respond label .woocommerce .woocommerce-product-rating, .woocommerce #review_form #respond span.comment-reply-title .woocommerce .woocommerce-product-rating, .woocommerce .woocommerce-order > p .woocommerce-product-rating, .woocommerce .woocommerce-privacy-policy-text p .woocommerce-product-rating, .woocommerce-privacy-policy-text .woocommerce p .woocommerce-product-rating, .woocommerce-account .woocommerce fieldset .woocommerce-product-rating, .woocommerce .woocommerce-account .addresses address .woocommerce-product-rating, .woocommerce-account .addresses .woocommerce address .woocommerce-product-rating, .woocommerce form.login p.woocommerce-LostPassword .woocommerce-product-rating,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce-product-rating, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce-product-rating, .woocommerce .woocommerce-customer-details address .woocommerce-product-rating, .woocommerce table.shop_attributes .woocommerce-product-rating, .woocommerce #review_form #respond label .woocommerce-product-rating, .woocommerce #review_form #respond span.comment-reply-title .woocommerce-product-rating, .woocommerce .woocommerce-product-rating .woocommerce-product-rating, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-order > p, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta p, .woocommerce-account .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta fieldset, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-account .addresses address, .woocommerce-account .addresses .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta address, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta form.login p.woocommerce-LostPassword, .woocommerce form.login #reviews #comments ol.commentlist li .comment-text p.meta p.woocommerce-LostPassword,
.woocommerce #reviews #comments ol.commentlist li .comment-text p.meta form.register p.woocommerce-LostPassword,
.woocommerce form.register #reviews #comments ol.commentlist li .comment-text p.meta p.woocommerce-LostPassword, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-order p.woocommerce-notice, .woocommerce .woocommerce-order #reviews #comments ol.commentlist li .comment-text p.meta p.woocommerce-notice, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-customer-details address, .woocommerce .woocommerce-customer-details #reviews #comments ol.commentlist li .comment-text p.meta address, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta table.shop_attributes, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta #review_form #respond label, .woocommerce #review_form #respond #reviews #comments ol.commentlist li .comment-text p.meta label, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta #review_form #respond span.comment-reply-title, .woocommerce #review_form #respond #reviews #comments ol.commentlist li .comment-text p.meta span.comment-reply-title, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-product-rating, .woocommerce-order > p .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce-privacy-policy-text p .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce-account .woocommerce fieldset .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce-account .addresses address .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce form.login p.woocommerce-LostPassword .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce .woocommerce-customer-details address .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce table.shop_attributes .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce #review_form #respond label .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce #review_form #respond span.comment-reply-title .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce .woocommerce-product-rating .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text .woocommerce-order > p p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text .woocommerce-privacy-policy-text p p.meta, .woocommerce-privacy-policy-text .woocommerce #reviews #comments ol.commentlist li .comment-text p p.meta, .woocommerce-account .woocommerce #reviews #comments ol.commentlist li .comment-text fieldset p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text .woocommerce-account .addresses address p.meta, .woocommerce-account .addresses .woocommerce #reviews #comments ol.commentlist li .comment-text address p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text form.login p.woocommerce-LostPassword p.meta, .woocommerce form.login #reviews #comments ol.commentlist li .comment-text p.woocommerce-LostPassword p.meta,
.woocommerce #reviews #comments ol.commentlist li .comment-text form.register p.woocommerce-LostPassword p.meta,
.woocommerce form.register #reviews #comments ol.commentlist li .comment-text p.woocommerce-LostPassword p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text .woocommerce-order p.woocommerce-notice p.meta, .woocommerce .woocommerce-order #reviews #comments ol.commentlist li .comment-text p.woocommerce-notice p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text .woocommerce-customer-details address p.meta, .woocommerce .woocommerce-customer-details #reviews #comments ol.commentlist li .comment-text address p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text table.shop_attributes p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text #review_form #respond label p.meta, .woocommerce #review_form #respond #reviews #comments ol.commentlist li .comment-text label p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text #review_form #respond span.comment-reply-title p.meta, .woocommerce #review_form #respond #reviews #comments ol.commentlist li .comment-text span.comment-reply-title p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text .woocommerce-product-rating p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta p.meta, .woocommerce .woocommerce-result-count .woocommerce-order > p, .woocommerce .woocommerce-result-count .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce .woocommerce-result-count p, .woocommerce-account .woocommerce .woocommerce-result-count fieldset, .woocommerce .woocommerce-result-count .woocommerce-account .addresses address, .woocommerce-account .addresses .woocommerce .woocommerce-result-count address, .woocommerce .woocommerce-result-count form.login p.woocommerce-LostPassword, .woocommerce form.login .woocommerce-result-count p.woocommerce-LostPassword,
.woocommerce .woocommerce-result-count form.register p.woocommerce-LostPassword,
.woocommerce form.register .woocommerce-result-count p.woocommerce-LostPassword, .woocommerce .woocommerce-result-count .woocommerce-order p.woocommerce-notice, .woocommerce .woocommerce-order .woocommerce-result-count p.woocommerce-notice, .woocommerce .woocommerce-result-count .woocommerce-customer-details address, .woocommerce .woocommerce-customer-details .woocommerce-result-count address, .woocommerce .woocommerce-result-count table.shop_attributes, .woocommerce .woocommerce-result-count #review_form #respond label, .woocommerce #review_form #respond .woocommerce-result-count label, .woocommerce .woocommerce-result-count #review_form #respond span.comment-reply-title, .woocommerce #review_form #respond .woocommerce-result-count span.comment-reply-title, .woocommerce .woocommerce-result-count .woocommerce-product-rating, .woocommerce .woocommerce-result-count #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text .woocommerce-result-count p.meta, .woocommerce-order > p .woocommerce .woocommerce-result-count, .woocommerce-privacy-policy-text p .woocommerce .woocommerce-result-count, .woocommerce-account .woocommerce fieldset .woocommerce .woocommerce-result-count, .woocommerce-account .addresses address .woocommerce .woocommerce-result-count, .woocommerce form.login p.woocommerce-LostPassword .woocommerce .woocommerce-result-count,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce .woocommerce-result-count, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce .woocommerce-result-count, .woocommerce .woocommerce-customer-details address .woocommerce .woocommerce-result-count, .woocommerce table.shop_attributes .woocommerce .woocommerce-result-count, .woocommerce #review_form #respond label .woocommerce .woocommerce-result-count, .woocommerce #review_form #respond span.comment-reply-title .woocommerce .woocommerce-result-count, .woocommerce .woocommerce-product-rating .woocommerce .woocommerce-result-count, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce .woocommerce-result-count, .woocommerce .woocommerce-order > p .woocommerce-result-count, .woocommerce .woocommerce-privacy-policy-text p .woocommerce-result-count, .woocommerce-privacy-policy-text .woocommerce p .woocommerce-result-count, .woocommerce-account .woocommerce fieldset .woocommerce-result-count, .woocommerce .woocommerce-account .addresses address .woocommerce-result-count, .woocommerce-account .addresses .woocommerce address .woocommerce-result-count, .woocommerce form.login p.woocommerce-LostPassword .woocommerce-result-count,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce-result-count, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce-result-count, .woocommerce .woocommerce-customer-details address .woocommerce-result-count, .woocommerce table.shop_attributes .woocommerce-result-count, .woocommerce #review_form #respond label .woocommerce-result-count, .woocommerce #review_form #respond span.comment-reply-title .woocommerce-result-count, .woocommerce .woocommerce-product-rating .woocommerce-result-count, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-result-count, .woocommerce .woocommerce-result-count .woocommerce-result-count, .woocommerce div.product form.cart .reset_variations .woocommerce-order > p, .woocommerce div.product form.cart .reset_variations .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce div.product form.cart .reset_variations p, .woocommerce-account .woocommerce div.product form.cart .reset_variations fieldset, .woocommerce div.product form.cart .reset_variations .woocommerce-account .addresses address, .woocommerce-account .addresses .woocommerce div.product form.cart .reset_variations address, .woocommerce div.product form.cart .reset_variations form.login p.woocommerce-LostPassword, .woocommerce form.login div.product form.cart .reset_variations p.woocommerce-LostPassword,
.woocommerce div.product form.cart .reset_variations form.register p.woocommerce-LostPassword,
.woocommerce form.register div.product form.cart .reset_variations p.woocommerce-LostPassword, .woocommerce div.product form.cart .reset_variations .woocommerce-order p.woocommerce-notice, .woocommerce .woocommerce-order div.product form.cart .reset_variations p.woocommerce-notice, .woocommerce div.product form.cart .reset_variations .woocommerce-customer-details address, .woocommerce .woocommerce-customer-details div.product form.cart .reset_variations address, .woocommerce div.product form.cart .reset_variations table.shop_attributes, .woocommerce div.product form.cart .reset_variations #review_form #respond label, .woocommerce #review_form #respond div.product form.cart .reset_variations label, .woocommerce div.product form.cart .reset_variations #review_form #respond span.comment-reply-title, .woocommerce #review_form #respond div.product form.cart .reset_variations span.comment-reply-title, .woocommerce div.product form.cart .reset_variations .woocommerce-product-rating, .woocommerce div.product form.cart .reset_variations #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text div.product form.cart .reset_variations p.meta, .woocommerce div.product form.cart .reset_variations .woocommerce-result-count, .woocommerce-order > p .woocommerce div.product form.cart .reset_variations, .woocommerce-privacy-policy-text p .woocommerce div.product form.cart .reset_variations, .woocommerce-account .woocommerce fieldset .woocommerce div.product form.cart .reset_variations, .woocommerce-account .addresses address .woocommerce div.product form.cart .reset_variations, .woocommerce form.login p.woocommerce-LostPassword .woocommerce div.product form.cart .reset_variations,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce div.product form.cart .reset_variations, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce div.product form.cart .reset_variations, .woocommerce .woocommerce-customer-details address .woocommerce div.product form.cart .reset_variations, .woocommerce table.shop_attributes .woocommerce div.product form.cart .reset_variations, .woocommerce #review_form #respond label .woocommerce div.product form.cart .reset_variations, .woocommerce #review_form #respond span.comment-reply-title .woocommerce div.product form.cart .reset_variations, .woocommerce .woocommerce-product-rating .woocommerce div.product form.cart .reset_variations, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce div.product form.cart .reset_variations, .woocommerce .woocommerce-result-count .woocommerce div.product form.cart .reset_variations, .woocommerce div.product form.cart .woocommerce-order > p .reset_variations, .woocommerce div.product form.cart .woocommerce-privacy-policy-text p .reset_variations, .woocommerce-privacy-policy-text .woocommerce div.product form.cart p .reset_variations, .woocommerce-account .woocommerce div.product form.cart fieldset .reset_variations, .woocommerce div.product form.cart .woocommerce-account .addresses address .reset_variations, .woocommerce-account .addresses .woocommerce div.product form.cart address .reset_variations, .woocommerce div.product form.cart form.login p.woocommerce-LostPassword .reset_variations, .woocommerce form.login div.product form.cart p.woocommerce-LostPassword .reset_variations,
.woocommerce div.product form.cart form.register p.woocommerce-LostPassword .reset_variations,
.woocommerce form.register div.product form.cart p.woocommerce-LostPassword .reset_variations, .woocommerce div.product form.cart .woocommerce-order p.woocommerce-notice .reset_variations, .woocommerce .woocommerce-order div.product form.cart p.woocommerce-notice .reset_variations, .woocommerce div.product form.cart .woocommerce-customer-details address .reset_variations, .woocommerce .woocommerce-customer-details div.product form.cart address .reset_variations, .woocommerce div.product form.cart table.shop_attributes .reset_variations, .woocommerce div.product form.cart #review_form #respond label .reset_variations, .woocommerce #review_form #respond div.product form.cart label .reset_variations, .woocommerce div.product form.cart #review_form #respond span.comment-reply-title .reset_variations, .woocommerce #review_form #respond div.product form.cart span.comment-reply-title .reset_variations, .woocommerce div.product form.cart .woocommerce-product-rating .reset_variations, .woocommerce div.product form.cart #reviews #comments ol.commentlist li .comment-text p.meta .reset_variations, .woocommerce #reviews #comments ol.commentlist li .comment-text div.product form.cart p.meta .reset_variations, .woocommerce div.product form.cart .woocommerce-result-count .reset_variations, .woocommerce div.product form.cart .reset_variations .reset_variations, .woocommerce div.product div.summary div.product_meta .woocommerce-order > p, .woocommerce div.product div.summary div.product_meta .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce div.product div.summary div.product_meta p, .woocommerce-account .woocommerce div.product div.summary div.product_meta fieldset, .woocommerce div.product div.summary div.product_meta .woocommerce-account .addresses address, .woocommerce-account .addresses .woocommerce div.product div.summary div.product_meta address, .woocommerce div.product div.summary div.product_meta form.login p.woocommerce-LostPassword, .woocommerce form.login div.product div.summary div.product_meta p.woocommerce-LostPassword,
.woocommerce div.product div.summary div.product_meta form.register p.woocommerce-LostPassword,
.woocommerce form.register div.product div.summary div.product_meta p.woocommerce-LostPassword, .woocommerce div.product div.summary div.product_meta .woocommerce-order p.woocommerce-notice, .woocommerce .woocommerce-order div.product div.summary div.product_meta p.woocommerce-notice, .woocommerce div.product div.summary div.product_meta .woocommerce-customer-details address, .woocommerce .woocommerce-customer-details div.product div.summary div.product_meta address, .woocommerce div.product div.summary div.product_meta table.shop_attributes, .woocommerce div.product div.summary div.product_meta #review_form #respond label, .woocommerce #review_form #respond div.product div.summary div.product_meta label, .woocommerce div.product div.summary div.product_meta #review_form #respond span.comment-reply-title, .woocommerce #review_form #respond div.product div.summary div.product_meta span.comment-reply-title, .woocommerce div.product div.summary div.product_meta .woocommerce-product-rating, .woocommerce div.product div.summary div.product_meta #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text div.product div.summary div.product_meta p.meta, .woocommerce div.product div.summary div.product_meta .woocommerce-result-count, .woocommerce div.product div.summary div.product_meta form.cart .reset_variations, .woocommerce div.product form.cart div.summary div.product_meta .reset_variations, .woocommerce-order > p .woocommerce div.product div.summary div.product_meta, .woocommerce-privacy-policy-text p .woocommerce div.product div.summary div.product_meta, .woocommerce-account .woocommerce fieldset .woocommerce div.product div.summary div.product_meta, .woocommerce-account .addresses address .woocommerce div.product div.summary div.product_meta, .woocommerce form.login p.woocommerce-LostPassword .woocommerce div.product div.summary div.product_meta,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce div.product div.summary div.product_meta, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce div.product div.summary div.product_meta, .woocommerce .woocommerce-customer-details address .woocommerce div.product div.summary div.product_meta, .woocommerce table.shop_attributes .woocommerce div.product div.summary div.product_meta, .woocommerce #review_form #respond label .woocommerce div.product div.summary div.product_meta, .woocommerce #review_form #respond span.comment-reply-title .woocommerce div.product div.summary div.product_meta, .woocommerce .woocommerce-product-rating .woocommerce div.product div.summary div.product_meta, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce div.product div.summary div.product_meta, .woocommerce .woocommerce-result-count .woocommerce div.product div.summary div.product_meta, .woocommerce div.product form.cart .reset_variations .woocommerce div.product div.summary div.product_meta, .woocommerce div.product div.summary .woocommerce-order > p div.product_meta, .woocommerce div.product div.summary .woocommerce-privacy-policy-text p div.product_meta, .woocommerce-privacy-policy-text .woocommerce div.product div.summary p div.product_meta, .woocommerce-account .woocommerce div.product div.summary fieldset div.product_meta, .woocommerce div.product div.summary .woocommerce-account .addresses address div.product_meta, .woocommerce-account .addresses .woocommerce div.product div.summary address div.product_meta, .woocommerce div.product div.summary form.login p.woocommerce-LostPassword div.product_meta, .woocommerce form.login div.product div.summary p.woocommerce-LostPassword div.product_meta,
.woocommerce div.product div.summary form.register p.woocommerce-LostPassword div.product_meta,
.woocommerce form.register div.product div.summary p.woocommerce-LostPassword div.product_meta, .woocommerce div.product div.summary .woocommerce-order p.woocommerce-notice div.product_meta, .woocommerce .woocommerce-order div.product div.summary p.woocommerce-notice div.product_meta, .woocommerce div.product div.summary .woocommerce-customer-details address div.product_meta, .woocommerce .woocommerce-customer-details div.product div.summary address div.product_meta, .woocommerce div.product div.summary table.shop_attributes div.product_meta, .woocommerce div.product div.summary #review_form #respond label div.product_meta, .woocommerce #review_form #respond div.product div.summary label div.product_meta, .woocommerce div.product div.summary #review_form #respond span.comment-reply-title div.product_meta, .woocommerce #review_form #respond div.product div.summary span.comment-reply-title div.product_meta, .woocommerce div.product div.summary .woocommerce-product-rating div.product_meta, .woocommerce div.product div.summary #reviews #comments ol.commentlist li .comment-text p.meta div.product_meta, .woocommerce #reviews #comments ol.commentlist li .comment-text div.product div.summary p.meta div.product_meta, .woocommerce div.product div.summary .woocommerce-result-count div.product_meta, .woocommerce div.product div.summary form.cart .reset_variations div.product_meta, .woocommerce div.product form.cart div.summary .reset_variations div.product_meta, .woocommerce div.product div.summary div.product_meta div.product_meta, .woocommerce-account .woocommerce-MyAccount-content p .woocommerce-order > p, .woocommerce-account .woocommerce-MyAccount-content p .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce-account .woocommerce-MyAccount-content p p, .woocommerce-account .woocommerce-MyAccount-content p .woocommerce fieldset, .woocommerce-account .woocommerce .woocommerce-MyAccount-content p fieldset, .woocommerce-account .woocommerce-MyAccount-content p .addresses address, .woocommerce-account .addresses .woocommerce-MyAccount-content p address, .woocommerce-account .woocommerce-MyAccount-content p .woocommerce form.login p.woocommerce-LostPassword, .woocommerce form.login .woocommerce-account .woocommerce-MyAccount-content p p.woocommerce-LostPassword,
.woocommerce-account .woocommerce-MyAccount-content p .woocommerce form.register p.woocommerce-LostPassword,
.woocommerce form.register .woocommerce-account .woocommerce-MyAccount-content p p.woocommerce-LostPassword, .woocommerce-account .woocommerce-MyAccount-content p .woocommerce .woocommerce-order p.woocommerce-notice, .woocommerce .woocommerce-order .woocommerce-account .woocommerce-MyAccount-content p p.woocommerce-notice, .woocommerce-account .woocommerce-MyAccount-content p .woocommerce .woocommerce-customer-details address, .woocommerce .woocommerce-customer-details .woocommerce-account .woocommerce-MyAccount-content p address, .woocommerce-account .woocommerce-MyAccount-content p .woocommerce table.shop_attributes, .woocommerce .woocommerce-account .woocommerce-MyAccount-content p table.shop_attributes, .woocommerce-account .woocommerce-MyAccount-content p .woocommerce #review_form #respond label, .woocommerce #review_form #respond .woocommerce-account .woocommerce-MyAccount-content p label, .woocommerce-account .woocommerce-MyAccount-content p .woocommerce #review_form #respond span.comment-reply-title, .woocommerce #review_form #respond .woocommerce-account .woocommerce-MyAccount-content p span.comment-reply-title, .woocommerce-account .woocommerce-MyAccount-content p .woocommerce .woocommerce-product-rating, .woocommerce .woocommerce-account .woocommerce-MyAccount-content p .woocommerce-product-rating, .woocommerce-account .woocommerce-MyAccount-content p .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text .woocommerce-account .woocommerce-MyAccount-content p p.meta, .woocommerce-account .woocommerce-MyAccount-content p .woocommerce .woocommerce-result-count, .woocommerce .woocommerce-account .woocommerce-MyAccount-content p .woocommerce-result-count, .woocommerce-account .woocommerce-MyAccount-content p .woocommerce div.product form.cart .reset_variations, .woocommerce div.product form.cart .woocommerce-account .woocommerce-MyAccount-content p .reset_variations, .woocommerce-account .woocommerce-MyAccount-content p .woocommerce div.product div.summary div.product_meta, .woocommerce div.product div.summary .woocommerce-account .woocommerce-MyAccount-content p div.product_meta, .woocommerce-order > p .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce-privacy-policy-text p .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce-account .woocommerce fieldset .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce-account .addresses address .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce form.login p.woocommerce-LostPassword .woocommerce-account .woocommerce-MyAccount-content p,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce .woocommerce-customer-details address .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce table.shop_attributes .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce #review_form #respond label .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce #review_form #respond span.comment-reply-title .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce .woocommerce-product-rating .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce .woocommerce-result-count .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce div.product form.cart .reset_variations .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce div.product div.summary div.product_meta .woocommerce-account .woocommerce-MyAccount-content p, .woocommerce-account .woocommerce-MyAccount-content .woocommerce-order > p p, .woocommerce-account .woocommerce-MyAccount-content .woocommerce-privacy-policy-text p p, .woocommerce-privacy-policy-text .woocommerce-account .woocommerce-MyAccount-content p p, .woocommerce-account .woocommerce-MyAccount-content .woocommerce fieldset p, .woocommerce-account .woocommerce .woocommerce-MyAccount-content fieldset p, .woocommerce-account .woocommerce-MyAccount-content .addresses address p, .woocommerce-account .addresses .woocommerce-MyAccount-content address p, .woocommerce-account .woocommerce-MyAccount-content .woocommerce form.login p.woocommerce-LostPassword p, .woocommerce form.login .woocommerce-account .woocommerce-MyAccount-content p.woocommerce-LostPassword p,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce form.register p.woocommerce-LostPassword p,
.woocommerce form.register .woocommerce-account .woocommerce-MyAccount-content p.woocommerce-LostPassword p, .woocommerce-account .woocommerce-MyAccount-content .woocommerce .woocommerce-order p.woocommerce-notice p, .woocommerce .woocommerce-order .woocommerce-account .woocommerce-MyAccount-content p.woocommerce-notice p, .woocommerce-account .woocommerce-MyAccount-content .woocommerce .woocommerce-customer-details address p, .woocommerce .woocommerce-customer-details .woocommerce-account .woocommerce-MyAccount-content address p, .woocommerce-account .woocommerce-MyAccount-content .woocommerce table.shop_attributes p, .woocommerce .woocommerce-account .woocommerce-MyAccount-content table.shop_attributes p, .woocommerce-account .woocommerce-MyAccount-content .woocommerce #review_form #respond label p, .woocommerce #review_form #respond .woocommerce-account .woocommerce-MyAccount-content label p, .woocommerce-account .woocommerce-MyAccount-content .woocommerce #review_form #respond span.comment-reply-title p, .woocommerce #review_form #respond .woocommerce-account .woocommerce-MyAccount-content span.comment-reply-title p, .woocommerce-account .woocommerce-MyAccount-content .woocommerce .woocommerce-product-rating p, .woocommerce .woocommerce-account .woocommerce-MyAccount-content .woocommerce-product-rating p, .woocommerce-account .woocommerce-MyAccount-content .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta p, .woocommerce #reviews #comments ol.commentlist li .comment-text .woocommerce-account .woocommerce-MyAccount-content p.meta p, .woocommerce-account .woocommerce-MyAccount-content .woocommerce .woocommerce-result-count p, .woocommerce .woocommerce-account .woocommerce-MyAccount-content .woocommerce-result-count p, .woocommerce-account .woocommerce-MyAccount-content .woocommerce div.product form.cart .reset_variations p, .woocommerce div.product form.cart .woocommerce-account .woocommerce-MyAccount-content .reset_variations p, .woocommerce-account .woocommerce-MyAccount-content .woocommerce div.product div.summary div.product_meta p, .woocommerce div.product div.summary .woocommerce-account .woocommerce-MyAccount-content div.product_meta p, .woocommerce-account .woocommerce-MyAccount-content p p, .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce-order > p, .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce-privacy-policy-text p, .woocommerce-privacy-policy-text .woocommerce-account .woocommerce-MyAccount-navigation ul p, .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce fieldset, .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul fieldset, .woocommerce-account .woocommerce-MyAccount-navigation ul .addresses address, .woocommerce-account .addresses .woocommerce-MyAccount-navigation ul address, .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce form.login p.woocommerce-LostPassword, .woocommerce form.login .woocommerce-account .woocommerce-MyAccount-navigation ul p.woocommerce-LostPassword,
.woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce form.register p.woocommerce-LostPassword,
.woocommerce form.register .woocommerce-account .woocommerce-MyAccount-navigation ul p.woocommerce-LostPassword, .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce .woocommerce-order p.woocommerce-notice, .woocommerce .woocommerce-order .woocommerce-account .woocommerce-MyAccount-navigation ul p.woocommerce-notice, .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce .woocommerce-customer-details address, .woocommerce .woocommerce-customer-details .woocommerce-account .woocommerce-MyAccount-navigation ul address, .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce table.shop_attributes, .woocommerce .woocommerce-account .woocommerce-MyAccount-navigation ul table.shop_attributes, .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce #review_form #respond label, .woocommerce #review_form #respond .woocommerce-account .woocommerce-MyAccount-navigation ul label, .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce #review_form #respond span.comment-reply-title, .woocommerce #review_form #respond .woocommerce-account .woocommerce-MyAccount-navigation ul span.comment-reply-title, .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce .woocommerce-product-rating, .woocommerce .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce-product-rating, .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta, .woocommerce #reviews #comments ol.commentlist li .comment-text .woocommerce-account .woocommerce-MyAccount-navigation ul p.meta, .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce .woocommerce-result-count, .woocommerce .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce-result-count, .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce div.product form.cart .reset_variations, .woocommerce div.product form.cart .woocommerce-account .woocommerce-MyAccount-navigation ul .reset_variations, .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce div.product div.summary div.product_meta, .woocommerce div.product div.summary .woocommerce-account .woocommerce-MyAccount-navigation ul div.product_meta, .woocommerce-account .woocommerce-MyAccount-navigation ul .woocommerce-MyAccount-content p, .woocommerce-account .woocommerce-MyAccount-content .woocommerce-MyAccount-navigation ul p, .woocommerce-order > p .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce-privacy-policy-text p .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce-account .woocommerce fieldset .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce-account .addresses address .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce form.login p.woocommerce-LostPassword .woocommerce-account .woocommerce-MyAccount-navigation ul,
.woocommerce form.register p.woocommerce-LostPassword .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce .woocommerce-order p.woocommerce-notice .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce .woocommerce-customer-details address .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce table.shop_attributes .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce #review_form #respond label .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce #review_form #respond span.comment-reply-title .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce .woocommerce-product-rating .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce .woocommerce-result-count .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce div.product form.cart .reset_variations .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce div.product div.summary div.product_meta .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce-account .woocommerce-MyAccount-content p .woocommerce-account .woocommerce-MyAccount-navigation ul, .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce-order > p ul, .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce-privacy-policy-text p ul, .woocommerce-privacy-policy-text .woocommerce-account .woocommerce-MyAccount-navigation p ul, .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce fieldset ul, .woocommerce-account .woocommerce .woocommerce-MyAccount-navigation fieldset ul, .woocommerce-account .woocommerce-MyAccount-navigation .addresses address ul, .woocommerce-account .addresses .woocommerce-MyAccount-navigation address ul, .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce form.login p.woocommerce-LostPassword ul, .woocommerce form.login .woocommerce-account .woocommerce-MyAccount-navigation p.woocommerce-LostPassword ul,
.woocommerce-account .woocommerce-MyAccount-navigation .woocommerce form.register p.woocommerce-LostPassword ul,
.woocommerce form.register .woocommerce-account .woocommerce-MyAccount-navigation p.woocommerce-LostPassword ul, .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce .woocommerce-order p.woocommerce-notice ul, .woocommerce .woocommerce-order .woocommerce-account .woocommerce-MyAccount-navigation p.woocommerce-notice ul, .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce .woocommerce-customer-details address ul, .woocommerce .woocommerce-customer-details .woocommerce-account .woocommerce-MyAccount-navigation address ul, .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce table.shop_attributes ul, .woocommerce .woocommerce-account .woocommerce-MyAccount-navigation table.shop_attributes ul, .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce #review_form #respond label ul, .woocommerce #review_form #respond .woocommerce-account .woocommerce-MyAccount-navigation label ul, .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce #review_form #respond span.comment-reply-title ul, .woocommerce #review_form #respond .woocommerce-account .woocommerce-MyAccount-navigation span.comment-reply-title ul, .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce .woocommerce-product-rating ul, .woocommerce .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce-product-rating ul, .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce #reviews #comments ol.commentlist li .comment-text p.meta ul, .woocommerce #reviews #comments ol.commentlist li .comment-text .woocommerce-account .woocommerce-MyAccount-navigation p.meta ul, .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce .woocommerce-result-count ul, .woocommerce .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce-result-count ul, .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce div.product form.cart .reset_variations ul, .woocommerce div.product form.cart .woocommerce-account .woocommerce-MyAccount-navigation .reset_variations ul, .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce div.product div.summary div.product_meta ul, .woocommerce div.product div.summary .woocommerce-account .woocommerce-MyAccount-navigation div.product_meta ul, .woocommerce-account .woocommerce-MyAccount-navigation .woocommerce-MyAccount-content p ul, .woocommerce-account .woocommerce-MyAccount-content .woocommerce-MyAccount-navigation p ul, .woocommerce-account .woocommerce-MyAccount-navigation ul ul {
  font-size: 1em;
}

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

/* list variant */
.text--list {
  padding: 0em 0em 0em 2em;
}
.text--list .text__list-item {
  display: list-item;
  padding-left: 1.375em;
}
.text--list .text__list-item:not(:last-child) {
  margin-bottom: 1.5em;
}
@media (min-width: 64em) {
  .text--list .text__list-item:not(:last-child) {
    margin-bottom: 0.625em;
  }
}
.text--list .text__list-item::marker {
  color: #909090;
}

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

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

/* table variant */
.text__table__container,
.wp-block-table {
  margin: 0em 0em 2em;
  overflow: auto;
  width: 100%;
}

.text--table {
  border-collapse: collapse;
  display: table;
  width: 100%;
}
.text--table .text__header {
  display: table-header-group;
}
.text--table .text__header .text__cell {
  background: #BB0D12;
  color: #FFFFFF;
}
.text--table .text__body {
  display: table-row-group;
}
.text--table .text__row:nth-child(2n) {
  background: #E0E0E0;
}
.text--table .text__footer {
  color: #484848;
  display: table-footer-group;
  font-style: italic;
}
.text--table .text__row {
  display: table-row;
}
.text--table .text__cell {
  border: 0;
  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--heading {
  font-weight: 700;
}
.text--table .text__body .text__cell--heading {
  text-align: left;
}
.text--table .text__header + .text__body > .text__row:first-child > .text__cell {
  border-top: 2px solid #f68f92;
  border-top: 0.125rem solid #f68f92;
}
.text--table > .text__row:nth-child(even) .text__cell,
.text--table .text__body .text__row:nth-child(even) .text__cell {
  background: #f68f92;
}
.text--table > .text__row:nth-child(even) .text__cell:first-child,
.text--table .text__body .text__row:nth-child(even) .text__cell:first-child {
  border-bottom-left-radius: 6px;
  border-bottom-left-radius: 0.375rem;
  border-top-left-radius: 6px;
  border-top-left-radius: 0.375rem;
}
.text--table > .text__row:nth-child(even) .text__cell:last-child,
.text--table .text__body .text__row:nth-child(even) .text__cell:last-child {
  border-bottom-right-radius: 6px;
  border-bottom-right-radius: 0.375rem;
  border-top-right-radius: 6px;
  border-top-right-radius: 0.375rem;
}

/* ------------------------------------------------------------------------ *\
 * Blockquote
\* ------------------------------------------------------------------------ */
.blockquote {
  background-color: #EEEEEE;
  border-radius: 0.8125em;
  display: block;
  margin: 3.125em 0em;
  padding: 1.625em 2.3125em;
}
@media (min-width: 64em) {
  .blockquote {
    margin: 3.875em 0em;
  }
}
.blockquote > :last-child {
  margin-bottom: 0;
}

/* ------------------------------------------------------------------------ *\
 * User Content
\* ------------------------------------------------------------------------ */
.user-content {
  /* stylelint-disable selector-no-qualifying-type, selector-max-type */
  /* stylelint-enable */
}
.user-content::after {
  clear: both;
  content: "";
  display: block;
}
.user-content img:not(.aligncenter):not(.alignleft):not(.alignright) {
  display: inline-block;
}
.user-content img {
  height: auto !important;
  max-width: 100%;
}
.user-content .title--h1 {
  font-size: 2.5em;
}
.user-content .title--h2 {
  color: #000000;
  font-size: 2.25em;
  margin-bottom: 0.4444444444em;
}
.user-content .title--h3 {
  color: #BB0D12;
  font-size: 2em;
  margin-bottom: 0.4375em;
}
.user-content .title--h4,
.user-content .title--h5,
.user-content .title--h6 {
  color: #000000;
  font-size: 1.625em;
  margin-bottom: 0.5384615385em;
}
.user-content .columns {
  margin-bottom: 3.875em;
}
.user-content .columns > .text--list {
  margin-bottom: 0;
}
.user-content .text--list {
  margin-bottom: 3.875em;
}
.user-content .text--list .text__list-item .text__list-item:first-child {
  margin-top: 1em;
}
@media (max-width: 63.9375em) {
  .user-content .button, .user-content .tribe-events-content a.button, .tribe-events-content .user-content a.button, .user-content .tribe-events-content .tribe-events-cal-links a.tribe-events-gcal, .tribe-events-content .tribe-events-cal-links .user-content a.tribe-events-gcal, .user-content .tribe-events-cal-links .tribe-events-content a.tribe-events-gcal, .tribe-events-cal-links .tribe-events-content .user-content a.tribe-events-gcal,
.user-content .tribe-events-content .tribe-events-cal-links a.tribe-events-ical,
.tribe-events-content .tribe-events-cal-links .user-content a.tribe-events-ical,
.user-content .tribe-events-cal-links .tribe-events-content a.tribe-events-ical,
.tribe-events-cal-links .tribe-events-content .user-content a.tribe-events-ical,
.user-content .tribe-events-content .tribe-events-cal-links a.tribe-events-ics,
.tribe-events-content .tribe-events-cal-links .user-content a.tribe-events-ics,
.user-content .tribe-events-cal-links .tribe-events-content a.tribe-events-ics,
.tribe-events-cal-links .tribe-events-content .user-content a.tribe-events-ics, .user-content .tribe-events-cal-links .tribe-events-gcal, .tribe-events-cal-links .user-content .tribe-events-gcal,
.user-content .tribe-events-cal-links .tribe-events-ical,
.tribe-events-cal-links .user-content .tribe-events-ical,
.user-content .tribe-events-cal-links .tribe-events-ics,
.tribe-events-cal-links .user-content .tribe-events-ics {
    display: block;
    font-size: 1em;
  }
}
.user-content .button::before, .user-content .tribe-events-content a.button::before, .tribe-events-content .user-content a.button::before, .user-content .tribe-events-cal-links .tribe-events-gcal::before, .tribe-events-cal-links .user-content .tribe-events-gcal::before,
.user-content .tribe-events-cal-links .tribe-events-ical::before,
.tribe-events-cal-links .user-content .tribe-events-ical::before,
.user-content .tribe-events-cal-links .tribe-events-ics::before,
.tribe-events-cal-links .user-content .tribe-events-ics::before {
  border-bottom: 0.1111111111em solid #F73B41;
  border-right: 0.1111111111em solid #F73B41;
  content: "";
  height: 0.5555555556em;
  left: 0.5555555556em;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  transition: border-color 0.15s;
  width: 0.5555555556em;
}
.user-content .button:focus::before, .user-content .tribe-events-cal-links .tribe-events-gcal:focus::before, .tribe-events-cal-links .user-content .tribe-events-gcal:focus::before,
.user-content .tribe-events-cal-links .tribe-events-ical:focus::before,
.tribe-events-cal-links .user-content .tribe-events-ical:focus::before,
.user-content .tribe-events-cal-links .tribe-events-ics:focus::before,
.tribe-events-cal-links .user-content .tribe-events-ics:focus::before,
.user-content .button:hover::before,
.user-content .tribe-events-cal-links .tribe-events-gcal:hover::before,
.tribe-events-cal-links .user-content .tribe-events-gcal:hover::before,
.user-content .tribe-events-cal-links .tribe-events-ical:hover::before,
.tribe-events-cal-links .user-content .tribe-events-ical:hover::before,
.user-content .tribe-events-cal-links .tribe-events-ics:hover::before,
.tribe-events-cal-links .user-content .tribe-events-ics:hover::before,
.user-content .button:active::before,
.user-content .tribe-events-cal-links .tribe-events-gcal:active::before,
.tribe-events-cal-links .user-content .tribe-events-gcal:active::before,
.user-content .tribe-events-cal-links .tribe-events-ical:active::before,
.tribe-events-cal-links .user-content .tribe-events-ical:active::before,
.user-content .tribe-events-cal-links .tribe-events-ics:active::before,
.tribe-events-cal-links .user-content .tribe-events-ics:active::before {
  border-color: #FFFFFF;
}
.user-content .divider {
  background-color: #FFD536;
  margin: 4.375em 0em;
}
.user-content .gallery {
  margin-bottom: 2.625em;
}
@media (max-width: 63.9375em) {
  .user-content .text--list {
    margin-bottom: 2.625em;
  }
  .user-content .title--h2 {
    font-size: 1.625em;
    margin-bottom: 0.8846153846em;
  }
  .user-content .title--h3 {
    font-size: 1.625em;
    margin-bottom: 0.8076923077em;
  }
  .user-content .title--h4,
.user-content .title--h5,
.user-content .title--h6 {
    font-size: 1.375em;
    margin-bottom: 0.7272727273em;
  }
}

.frontpage .user-content .title--h2 {
  color: #000000;
  font-size: 1.875em;
  text-transform: uppercase;
}
.frontpage .user-content .title--h3 {
  font-size: 1.75em;
}

/* light variant */
.user-content--light {
  /* stylelint-disable selector-no-qualifying-type, selector-max-type */
  /* stylelint-enable */
}
.user-content--light .user-content__link,
.user-content--light .user-content__title,
.user-content--light .user-content__text,
.user-content--light .wp-caption-text {
  color: #FFFFFF;
}

/* ------------------------------------------------------------------------ *\
 * Module
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Accessible Poetry (https://wordpress.org/plugins/accessible-poetry/)
\* ------------------------------------------------------------------------ */
/* stylelint-disable selector-no-qualifying-type */
body.acwp-monochrome {
  filter: none !important;
}

.acwp-toolbar {
  font-family: "ibm-plex-sans", sans-serif;
}

.acwp-footer {
  display: none;
}

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

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

.article__title {
  color: #BB0D12;
  font-size: 2.25em;
  margin-bottom: 0.8611111111em;
  text-transform: uppercase;
}
@media (max-width: 63.9375em) {
  .article__title {
    font-size: 1.625em;
    margin-bottom: 2.0769230769em;
  }
}

.article__user-content .blockquote:first-child {
  margin-top: 0;
}

/* post-excerpt variant */
.article--post-excerpt + .article--post-excerpt {
  border-top: 1px solid #CCCCCC;
  border-top: 0.0625rem solid #CCCCCC;
  padding-top: 1em;
}
.article--post-excerpt .article__title {
  font-size: 2.25em;
  margin-bottom: 0.2222222222em;
}
@media (max-width: 63.9375em) {
  .article--post-excerpt .article__title {
    font-family: "ibm-plex-sans", sans-serif;
    font-size: 1.125em;
    margin-bottom: 0.2222222222em;
  }
}
.article--post-excerpt .article__header > .article__title:not(:last-child) {
  margin-bottom: 0;
}
.article--post-excerpt .article__header > .article__title:not(:last-child) + * {
  margin-bottom: 0.5em;
}
@media (min-width: 60em) {
  .article--post-excerpt .title__link {
    color: #000000;
  }
}
.article--post-excerpt .title__link:hover {
  color: #BB0D12;
}
.article--post-excerpt .article__link {
  color: #BB0D12;
  font-family: "ibm-plex-sans", sans-serif;
  font-size: 1em;
  font-weight: 600;
}
@media (max-width: 63.9375em) {
  .article--post-excerpt .article__link {
    font-size: 0.875em;
    margin-bottom: 3.7142857143em;
  }
}
.article--post-excerpt .article__link:hover {
  color: #ED1F25;
}
.article--post-excerpt .article__text {
  margin-bottom: 0.75em;
}
@media (max-width: 63.9375em) {
  .article--post-excerpt .article__text {
    font-size: 0.875em;
    margin-bottom: 0.2857142857em;
  }
}

.handorgel {
  display: block;
  width: 100%;
  border: 1px solid #eee;
  border-top: none;
}

.handorgel__header {
  display: block;
  margin: 0;
}

.handorgel__header--open .handorgel__header__button {
  background-color: #eee;
}

.handorgel__header--focus .handorgel__header__button {
  background-color: #dfdfdf;
  outline: none;
}

.handorgel__header__button {
  display: block;
  width: 100%;
  padding: 20px 24px;
  margin: 0;
  border: none;
  border-top: 1px solid #eee;
  background-color: #fff;
  border-radius: 0;
  color: inherit;
  cursor: pointer;
  font-size: inherit;
  text-align: left;
  transition: background-color 0.2s ease;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.handorgel__header__button::-moz-focus-inner {
  border: 0;
}

.handorgel__content {
  display: none;
  overflow: hidden;
  height: 0;
  border-top: 1px solid #eee;
  background-color: #fff;
  transition: height 0.1s ease 0.1s;
}

.handorgel__content--open {
  display: block;
  transition: height 0.2s ease;
}

.handorgel__content--opened {
  overflow: visible;
}

.handorgel__content__inner {
  padding: 20px 24px;
  opacity: 0;
  transition: opacity 0.1s ease;
}

.handorgel__content--opened .handorgel__content__inner {
  opacity: 1;
  transition: opacity 0.3s ease;
}

/* ------------------------------------------------------------------------ *\
 * Handorgel (https://www.npmjs.com/package/handorgel)
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * 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[href]:focus, .logo[href]:hover {
  opacity: 0.9;
}

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

@media (min-width: 64em) {
  .logo__text {
    margin-left: 0.8125em;
  }
}

.logo.logo--divider {
  border: none;
  border-bottom: 3px solid #BB0D12;
  margin: 0.375em auto;
}
@media (min-width: 48em) {
  .logo.logo--divider {
    margin: 0.875em auto;
  }
}

/* ------------------------------------------------------------------------ *\
 * 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;
}

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

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

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

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

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

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

/* ============================ CUSTOM VARIANTS =========================== */
/* mega variant */
.menu-list__container--mega {
  display: flex;
  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--mega.menu-list__item--parent:hover > .menu-list__container--mega, .menu-list__item--mega.menu-list__item--parent.is-active > .menu-list__container--mega {
  left: 0;
  opacity: 1;
  top: 100%;
  transition: opacity 0.15s;
  visibility: visible;
}
.no-javascript .menu-list__item--mega.menu-list__item--parent:focus-within > .menu-list__container--mega {
  left: 0;
  opacity: 1;
  top: 100%;
  transition: opacity 0.15s;
  visibility: visible;
}
.menu-list__container--mega .menu-list.menu-list--depth-1 {
  flex: 0 0 auto;
}
.menu-list__container--mega .menu-list.menu-list--depth-2 {
  flex: 0 0 100%;
}

/* mega reverse variant */
.menu-list__container--mega.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--mega.menu-list__item--parent:hover > .menu-list__container--mega.menu-list--reverse, .menu-list__item--mega.menu-list__item--parent.is-active > .menu-list__container--mega.menu-list--reverse {
  left: auto;
  right: 0;
  transition: opacity 0.15s;
}
.no-javascript .menu-list__item--mega.menu-list__item--parent:focus-within > .menu-list__container--mega.menu-list--reverse {
  left: auto;
  right: 0;
}

/* meta variant */
.menu-list--meta {
  color: #484848;
  font-family: "ibm-plex-sans", 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: #484848;
  display: inline-block;
}
.menu-list--meta .menu-list__link:hover {
  color: #484848;
}

/* navigation variant */
.menu-list--navigation {
  /* child */
  /* child depth-2 */
  /* mega */
  /* mega depth-2 */
  /* overlay */
  /* overlay depth-2 */
}
.menu-list--navigation {
  display: flex;
  font-family: "ibm-plex-sans", sans-serif;
  font-size: 0.875em;
  font-weight: 700;
  justify-content: space-between;
  padding-right: 1.4285714286em;
}
.menu-list--navigation .menu-list__link,
.menu-list--navigation .menu-list__toggle {
  color: #FFFFFF;
  padding: 0.5em 0.5714285714em 0.6428571429em;
  text-transform: uppercase;
  transition: color 0.15s;
}
.menu-list--navigation .menu-list__item {
  transition: background-color 0.15s;
}
.menu-list--navigation .menu-list__item:hover, .menu-list--navigation .menu-list__item:active, .menu-list--navigation .menu-list__item:focus {
  background-color: #a30b10;
}
.menu-list--navigation .menu-list__link .svg-inline--fa {
  margin-left: 0.4444444444em;
}
.menu-list--navigation .menu-list__item.is-active > .menu-list__link,
.menu-list--navigation .menu-list__item.is-active > .menu-list__toggle,
.menu-list--navigation .menu-list__item:focus-within > .menu-list__link,
.menu-list--navigation .menu-list__item:focus-within > .menu-list__toggle,
.menu-list--navigation .menu-list__item:hover > .menu-list__link,
.menu-list--navigation .menu-list__item:hover > .menu-list__toggle {
  color: #FFFFFF;
}
.menu-list--navigation .menu-list--child {
  background: #a30b10;
  font-size: 1em;
}
.menu-list--navigation .menu-list--child::before, .menu-list--navigation .menu-list--child::after {
  content: "";
  display: block;
  height: 0.6666666667em;
  width: 100%;
}
.menu-list--navigation .menu-list--child .menu-list__link,
.menu-list--navigation .menu-list--child .menu-list__toggle {
  color: #FFFFFF;
  transition: background-color 0.15s;
}
.menu-list--navigation .menu-list--child .menu-list__item.is-active > .menu-list__link,
.menu-list--navigation .menu-list--child .menu-list__item.is-active > .menu-list__toggle,
.menu-list--navigation .menu-list--child .menu-list__item:focus-within > .menu-list__link,
.menu-list--navigation .menu-list--child .menu-list__item:focus-within > .menu-list__toggle,
.menu-list--navigation .menu-list--child .menu-list__item:hover > .menu-list__link,
.menu-list--navigation .menu-list--child .menu-list__item:hover > .menu-list__toggle {
  background-color: rgba(255, 255, 255, 0.2);
  color: #FFFFFF;
}
.menu-list--navigation .menu-list--child.menu-list--depth-2 {
  background: #73080b;
  font-family: "ibm-plex-sans", sans-serif;
  font-weight: 400;
}
.menu-list--navigation .menu-list__container--mega {
  background: #a30b10;
}
.menu-list--navigation .menu-list--child.menu-list--depth-1.menu-list--mega {
  background: none;
  min-width: 0;
  width: 15em;
}
.menu-list--navigation .menu-list--child.menu-list--depth-1.menu-list--mega:not(:last-child) {
  border-right: 1px solid #73080b;
  border-right: 0.0625rem solid #73080b;
}
.menu-list--navigation .menu-list--child.menu-list--depth-2.menu-list--mega {
  background: none;
}
.menu-list--navigation .menu-list--child.menu-list--depth-2.menu-list--mega::before {
  display: none;
}
.menu-list--navigation .menu-list--overlay {
  width: 15em;
}
.menu-list--navigation .menu-list--overlay.menu-list--depth-2 {
  transform: translateY(-0.6666666667em);
}

/* pagination variant */
.menu-list--pagination {
  font-family: "ibm-plex-sans", 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: #212121;
  cursor: auto;
}

/* submenu variant */
.menu-list--submenu {
  font-family: "ibm-plex-sans", sans-serif;
  font-size: 1.125em;
  font-weight: 400;
}
.menu-list--submenu .menu-list__link {
  border-bottom: 2px solid #CCCCCC;
  border-bottom: 0.125rem solid #CCCCCC;
  padding: 0.5em 0em;
}
.menu-list--submenu .menu-list--child {
  padding: 0.25em 0em;
}
.menu-list--submenu .menu-list--child .menu-list__link {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 512' fill='%23D8D8D8'%3E%3C!--! Font Awesome Pro 6.1.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --%3E%3Cpath d='M64 448c-8.188 0-16.38-3.125-22.62-9.375c-12.5-12.5-12.5-32.75 0-45.25L178.8 256L41.38 118.6c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0l160 160c12.5 12.5 12.5 32.75 0 45.25l-160 160C80.38 444.9 72.19 448 64 448z'/%3E%3C/svg%3E");
  background-position: 0em 0.6111111111em;
  background-repeat: no-repeat;
  background-size: 0.75em 0.75em;
  border-bottom: 0;
  padding: 0.25em 0em 0.25em 1em;
}
.menu-list--submenu .menu-list--child.menu-list--depth-2 {
  padding-left: 1em;
}

/* light variant */
.menu-list--light .menu-list__link {
  color: #FFFFFF;
}
.menu-list--light .menu-list__link:hover {
  color: #FFCA00;
}

/* social variant */
.menu-list--social {
  align-items: center;
  display: flex;
  font-size: 1.25em;
  grid-gap: 0em 0.7em;
  justify-content: space-between;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 85.3125em) {
  .menu-list--social {
    grid-gap: 0em 0.4em;
  }
}
@media (max-width: 63.9375em) {
  .menu-list--social {
    grid-gap: 0em 0.7em;
    justify-content: center;
  }
}
.menu-list--social .menu-list__item {
  width: auto;
}
@media (max-width: 63.9375em) {
  .menu-list--social .menu-list__item {
    flex: 0 0 auto;
  }
}

/* ------------------------------------------------------------------------ *\
 * 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: 1 1 0%;
}
.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(255, 255, 255, 0.75);
  content: "Sorry, it looks like you're offline. Please reconnect to the internet to use this form.";
  display: flex;
  font-family: "ibm-plex-sans", 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: #C62828;
}

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

.ninja-forms-help-tooltip {
  background: #4A4A4A;
  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 #4A4A4A;
  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;
}

.nf-product-quantity .nf-input {
  display: inline-block;
  width: auto;
}

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

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

.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 .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox, .woocommerce form.login .nf-field-container.label-below .nf-field-element input.woocommerce-form__input.woocommerce-form__input-checkbox,
.nf-field-container.label-below .nf-field-element .woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox,
.woocommerce form.register .nf-field-container.label-below .nf-field-element input.woocommerce-form__input.woocommerce-form__input-checkbox, .nf-field-container.label-below .nf-field-element .woocommerce form .form-row select, .woocommerce form .form-row .nf-field-container.label-below .nf-field-element select, .nf-field-container.label-below .nf-field-element .woocommerce form .form-row input.input-text, .woocommerce form .form-row .nf-field-container.label-below .nf-field-element input.input-text,
.nf-field-container.label-below .nf-field-element .woocommerce form .form-row textarea,
.woocommerce form .form-row .nf-field-container.label-below .nf-field-element textarea, .nf-field-container.label-below .nf-field-element .woocommerce #review_form #respond .comment-form-author input, .woocommerce #review_form #respond .comment-form-author .nf-field-container.label-below .nf-field-element input,
.nf-field-container.label-below .nf-field-element .woocommerce #review_form #respond .comment-form-email input,
.woocommerce #review_form #respond .comment-form-email .nf-field-container.label-below .nf-field-element input, .nf-field-container.label-below .nf-field-element .woocommerce #review_form #respond textarea, .woocommerce #review_form #respond .nf-field-container.label-below .nf-field-element textarea, .nf-field-container.label-below .nf-field-element .woocommerce .woocommerce-ordering select, .woocommerce .woocommerce-ordering .nf-field-container.label-below .nf-field-element select, .nf-field-container.label-below .nf-field-element .woocommerce div.product form.cart .variations select, .woocommerce div.product form.cart .variations .nf-field-container.label-below .nf-field-element select, .nf-field-container.label-below .nf-field-element .woocommerce .quantity .qty, .woocommerce .quantity .nf-field-container.label-below .nf-field-element .qty, .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--toggle, .nf-field-container.listcheckbox-container .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox, .woocommerce form.login .nf-field-container.listcheckbox-container input.woocommerce-form__input.woocommerce-form__input-checkbox,
.nf-field-container.listcheckbox-container .woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox,
.woocommerce form.register .nf-field-container.listcheckbox-container input.woocommerce-form__input.woocommerce-form__input-checkbox, .nf-field-container.listradio-container .input--toggle, .nf-field-container.listradio-container .woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox, .woocommerce form.login .nf-field-container.listradio-container input.woocommerce-form__input.woocommerce-form__input-checkbox,
.nf-field-container.listradio-container .woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox,
.woocommerce form.register .nf-field-container.listradio-container input.woocommerce-form__input.woocommerce-form__input-checkbox {
  margin-right: 0.375em;
}

.flatpickr-calendar {
  font-family: "ibm-plex-sans", sans-serif;
}

/* ------------------------------------------------------------------------ *\
 * Panel Toggle
\* ------------------------------------------------------------------------ */
.panel-toggle {
  background: none;
  border: 0;
  color: #957600;
  cursor: pointer;
  font-size: 1.5em;
  height: 1.6666666667em;
  margin: 0;
  padding: 0;
  position: relative;
  width: 1.6666666667em;
}
@media (max-width: 63.9375em) {
  .panel-toggle {
    font-size: 1.6875em;
    height: 1.2592592593em;
    width: auto;
  }
}

.panel-toggle--light {
  color: #FFFFFF;
}

/*! 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;
  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 * {
  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 */
  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;
  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 {
  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%;
  transform-origin: left top;
  /* for open/close transition */
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

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

.pswp--animated-in .pswp__bg,
.pswp--animated-in .pswp__zoom-wrap {
  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;
  transition: opacity 0.2s;
  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;
  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;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25);
  transform: translateY(6px);
  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 {
  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;
  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 {
  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% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes clockwise {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes donut-rotate {
  0% {
    transform: rotate(0);
  }
  50% {
    transform: rotate(-140deg);
  }
  100% {
    transform: rotate(0);
  }
}
@keyframes donut-rotate {
  0% {
    transform: rotate(0);
  }
  50% {
    transform: rotate(-140deg);
  }
  100% {
    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;
  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");
}

/* ------------------------------------------------------------------------ *\
 * Post Password Form
\* ------------------------------------------------------------------------ */
.post-password-form .user-content__text {
  font-size: 1em;
}

.post-password-form__input {
  margin-top: 0.5em;
}

/**
 * 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)
\* ------------------------------------------------------------------------ */
@-webkit-keyframes scroll-hint-appear {
  0% {
    transform: translateX(40px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50%, 100% {
    transform: translateX(-40px);
    opacity: 0;
  }
}
@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 {
  -webkit-animation: scroll-hint-appear 1.2s linear;
  animation: scroll-hint-appear 1.2s linear;
  -webkit-animation-iteration-count: 2;
  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 {
  font-family: "ibm-plex-sans", sans-serif;
  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: #212121;
  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:active {
  background: none;
  color: #7c6200;
}

/* expandable variant */
.search-form__container--expandable {
  align-items: center;
  display: flex;
  height: 100%;
  left: 0;
  margin-bottom: 0;
  opacity: 0;
  position: absolute;
  top: -999em;
  transition: opacity 0.15s, top 0s 0.15s, visibility 0s 0.15s;
  visibility: hidden;
  width: 100%;
  z-index: 999;
}
.search-form__container--expandable.is-active {
  opacity: 1;
  top: 0;
  transition: opacity 0.15s;
  visibility: visible;
}
.search-form__container--expandable .search-form {
  width: 100%;
}

/* ------------------------------------------------------------------------ *\
 * Skip Links
\* ------------------------------------------------------------------------ */
.skip-links {
  background: #957600;
  border: 1px solid #7c6200;
  border: 0.0625rem solid #7c6200;
  border-radius: 0.25rem;
  color: #FFFFFF;
  font-family: "brothers", 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;
}

/**
 * Swiper 8.4.4
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2022 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: October 12, 2022
 */
@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, 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") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-pointer-events {
  touch-action: pan-y;
}

.swiper-pointer-events.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d, .swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-horizontal.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory;
}

.swiper-vertical.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
  scroll-snap-type: y mandatory;
}

.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}

.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-start: var(--swiper-centered-offset-before);
  margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  width: var(--swiper-centered-offset-after);
}

.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-before: var(--swiper-centered-offset-before);
  margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  height: var(--swiper-centered-offset-after);
}

.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
}

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-fade .swiper-slide-active, .swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: calc(44px / 44 * 27);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: 44px;
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - 44px / 2);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #007aff;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
  display: none !important;
}

.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: 44px;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: 10px;
  right: auto;
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: 10px;
  left: auto;
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: "next";
}

.swiper-button-lock {
  display: none;
}

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: 10px;
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: 8px;
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: 8px;
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: 50%;
  background: #000;
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: 0.2;
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: 1;
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: #007aff;
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}

.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}

.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}

.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px;
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}

/* Progress */
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #007aff;
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}

.swiper-vertical > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

/* ------------------------------------------------------------------------ *\
 * Swiper (http://idangero.us/swiper/)
\* ------------------------------------------------------------------------ */
.swiper-slide {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  height: auto;
  margin: 0;
  overflow: hidden;
}

.swiper__picture {
  display: flex;
  flex: none;
  position: relative;
}
.swiper__picture::after {
  content: "";
  display: block;
  padding-bottom: 158.1333333333%;
  width: 100%;
}
.swiper-container--height-fixed .swiper__picture::after {
  padding-bottom: 37.0625em;
}
.swiper__picture .swiper__video {
  height: 100%;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}

.swiper__image {
  display: block;
  height: 100%;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  width: 100%;
}

.swiper__caption {
  background: #000000;
  flex: 1 1 auto;
  padding: 18.75px 25px;
  padding: 1.171875rem 1.5625rem;
}

.swiper__caption__inner {
  margin: 0 auto;
  max-width: 1435px;
  max-width: 89.6875rem;
}

.swiper__title {
  color: #FFFFFF;
  font-size: 2em;
}

.swiper__subtitle {
  background-color: #ED1F25;
  background-image: url("../media/tagline-texture-mobile.png");
  background-position: center;
  background-size: cover;
  border-bottom: 0.1875em solid #FFFFFF;
  border-top: 0.1875em solid #FFFFFF;
  padding: 2.0625em 1.25em 1.75em;
}
@media (min-width: 64em) {
  .swiper__subtitle {
    background-image: url("../media/tagline-texture-desktop.png");
    padding: 2em 1.75em 1.75em;
  }
}
.swiper__subtitle .title, .swiper__subtitle .woocommerce-account .woocommerce-MyAccount-content form > h3, .woocommerce-account .woocommerce-MyAccount-content .swiper__subtitle form > h3, .swiper__subtitle .woocommerce-account .woocommerce > h2, .woocommerce-account .swiper__subtitle .woocommerce > h2, .swiper__subtitle .woocommerce .woocommerce-order h2.woocommerce-column__title, .woocommerce .woocommerce-order .swiper__subtitle h2.woocommerce-column__title, .swiper__subtitle .woocommerce .woocommerce-order h2.woocommerce-order-details__title, .woocommerce .woocommerce-order .swiper__subtitle h2.woocommerce-order-details__title, .swiper__subtitle .woocommerce .checkout h3, .woocommerce .checkout .swiper__subtitle h3, .swiper__subtitle .woocommerce .product .related > h2, .woocommerce .product .swiper__subtitle .related > h2,
.swiper__subtitle .woocommerce .product .upsells > h2,
.woocommerce .product .swiper__subtitle .upsells > h2, .swiper__subtitle .woocommerce h1.page-title, .woocommerce .swiper__subtitle h1.page-title, .swiper__subtitle .woocommerce .woocommerce-customer-details h2, .woocommerce .woocommerce-customer-details .swiper__subtitle h2,
.swiper__subtitle .woocommerce .woocommerce-order-details h2,
.woocommerce .woocommerce-order-details .swiper__subtitle h2,
.swiper__subtitle .woocommerce .woocommerce-order-downloads h2,
.woocommerce .woocommerce-order-downloads .swiper__subtitle h2, .swiper__subtitle .woocommerce ul.products li.product .woocommerce-loop-category__title, .woocommerce ul.products li.product .swiper__subtitle .woocommerce-loop-category__title,
.swiper__subtitle .woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .swiper__subtitle .woocommerce-loop-product__title,
.swiper__subtitle .woocommerce ul.products li.product h3,
.woocommerce ul.products li.product .swiper__subtitle h3, .swiper__subtitle .woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h2, .woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel .swiper__subtitle h2, .swiper__subtitle .woocommerce div.product .product_title, .woocommerce div.product .swiper__subtitle .product_title, .swiper__subtitle .woocommerce .cart-collaterals h2, .woocommerce .cart-collaterals .swiper__subtitle h2,
.swiper__subtitle .woocommerce-page .cart-collaterals h2,
.woocommerce-page .cart-collaterals .swiper__subtitle h2 {
  color: #FFD536;
  font-size: 1.375em;
  letter-spacing: 0.0240909091em;
}
@media (min-width: 64em) {
  .swiper__subtitle .title, .swiper__subtitle .woocommerce-account .woocommerce-MyAccount-content form > h3, .woocommerce-account .woocommerce-MyAccount-content .swiper__subtitle form > h3, .swiper__subtitle .woocommerce-account .woocommerce > h2, .woocommerce-account .swiper__subtitle .woocommerce > h2, .swiper__subtitle .woocommerce .woocommerce-order h2.woocommerce-column__title, .woocommerce .woocommerce-order .swiper__subtitle h2.woocommerce-column__title, .swiper__subtitle .woocommerce .woocommerce-order h2.woocommerce-order-details__title, .woocommerce .woocommerce-order .swiper__subtitle h2.woocommerce-order-details__title, .swiper__subtitle .woocommerce .checkout h3, .woocommerce .checkout .swiper__subtitle h3, .swiper__subtitle .woocommerce .product .related > h2, .woocommerce .product .swiper__subtitle .related > h2,
.swiper__subtitle .woocommerce .product .upsells > h2,
.woocommerce .product .swiper__subtitle .upsells > h2, .swiper__subtitle .woocommerce h1.page-title, .woocommerce .swiper__subtitle h1.page-title, .swiper__subtitle .woocommerce .woocommerce-customer-details h2, .woocommerce .woocommerce-customer-details .swiper__subtitle h2,
.swiper__subtitle .woocommerce .woocommerce-order-details h2,
.woocommerce .woocommerce-order-details .swiper__subtitle h2,
.swiper__subtitle .woocommerce .woocommerce-order-downloads h2,
.woocommerce .woocommerce-order-downloads .swiper__subtitle h2, .swiper__subtitle .woocommerce ul.products li.product .woocommerce-loop-category__title, .woocommerce ul.products li.product .swiper__subtitle .woocommerce-loop-category__title,
.swiper__subtitle .woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .swiper__subtitle .woocommerce-loop-product__title,
.swiper__subtitle .woocommerce ul.products li.product h3,
.woocommerce ul.products li.product .swiper__subtitle h3, .swiper__subtitle .woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h2, .woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel .swiper__subtitle h2, .swiper__subtitle .woocommerce div.product .product_title, .woocommerce div.product .swiper__subtitle .product_title, .swiper__subtitle .woocommerce .cart-collaterals h2, .woocommerce .cart-collaterals .swiper__subtitle h2,
.swiper__subtitle .woocommerce-page .cart-collaterals h2,
.woocommerce-page .cart-collaterals .swiper__subtitle h2 {
    font-size: 2.5em;
    letter-spacing: 0.25825em;
  }
}
.swiper__subtitle .spacer {
  margin: 0em 0.3em;
}
@media (min-width: 64em) {
  .swiper__subtitle .spacer {
    margin: 0em 0.7272727273em;
  }
}

.swiper__user-content > :last-child {
  margin-bottom: 0 !important;
}

.swiper-button {
  align-items: center;
  background: none;
  border: 0;
  color: #BB0D12;
  cursor: pointer;
  display: flex;
  font-size: 3.125em;
  height: 100%;
  justify-content: center;
  margin: 0;
  opacity: 0;
  padding: 0;
  position: absolute;
  top: 0;
  transition: opacity 0.15s;
  width: 1em;
  z-index: 999;
}
.swiper-button.swiper-button--prev, .swiper-container-rtl .swiper-button.swiper-button--next {
  left: 0;
}
.swiper-button.swiper-button--next, .swiper-container-rtl .swiper-button.swiper-button--prev {
  right: 0;
}
.swiper-container:hover .swiper-button {
  opacity: 0.5;
}
.swiper-container:hover .swiper-button:hover, .swiper-container:hover .swiper-button:focus {
  opacity: 1;
}

.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: auto;
  top: 0;
}

.swiper-pagination-bullet {
  background: rgba(0, 0, 0, 0.5);
  height: 0.625em;
  opacity: 1;
  transition: background-color 0.15s;
  width: 0.625em;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 1.25em 0.3125em;
}

.swiper-pagination-bullet-active {
  background-color: #BB0D12;
}

/* ------------------------------------------------------------------------ *\
 * Tribe Events (https://theeventscalendar.com/)
\* ------------------------------------------------------------------------ */
/* stylelint-disable selector-class-pattern, selector-max-id, selector-max-type, selector-no-qualifying-type */
/* custom properties */
:root {
  --tec-color-text-primary: #212121;
  --tec-color-text-primary-light: rgba(33, 33, 33, 0.62);
  --tec-color-text-secondary: #484848;
  --tec-color-text-disabled: rgba(72, 72, 72, 0.4);
  --tec-color-icon-primary: #212121;
  --tec-color-icon-primary-alt: #393939;
  --tec-color-icon-secondary: #484848;
  --tec-color-icon-active: #212121;
  --tec-color-icon-disabled: rgba(72, 72, 72, 0.4);
  --tec-color-icon-focus: #BB0D12;
  --tec-color-icon-error: #C62828;
  --tec-color-event-icon: #212121;
  --tec-color-event-icon-hover: #BB0D12;
  --tec-color-accent-primary: #BB0D12;
  --tec-color-accent-primary-hover: rgba(187, 13, 18, 0.8);
  --tec-color-accent-primary-active: rgba(187, 13, 18, 0.9);
  --tec-color-accent-primary-background: rgba(187, 13, 18, 0.07);
  --tec-color-accent-secondary: #212121;
  --tec-color-accent-secondary-hover: rgba(33, 33, 33, 0.8);
  --tec-color-accent-secondary-active: rgba(33, 33, 33, 0.9);
  --tec-color-accent-secondary-background: rgba(33, 33, 33, 0.07);
  --tec-color-link-accent-hover: rgba(187, 13, 18, 0.8);
  --tec-color-border-default: #484848;
  --tec-color-border-secondary: #575757;
  --tec-color-border-tertiary: black;
  --tec-color-border-hover: #484848;
  --tec-color-border-active: #212121;
  --tec-color-background: #FFFFFF;
  --tec-color-background-transparent: rgba(255, 255, 255, 0.6);
  --tec-color-background-secondary: #f7f7f7;
  --tec-color-background-messages: rgba(33, 33, 33, 0.07);
  --tec-color-background-secondary-hover: #efefef;
  --tec-color-background-error: rgba(198, 40, 40, 0.08);
  --tec-color-box-shadow: rgba(0, 0, 0, 0.14);
  --tec-color-box-shadow-secondary: rgba(0, 0, 0, 0.1);
  --tec-color-scroll-track: rgba(0, 0, 0, 0.25);
  --tec-color-scroll-bar: rgba(0, 0, 0, 0.5);
  --tec-color-background-primary-multiday: rgba(187, 13, 18, 0.24);
  --tec-color-background-primary-multiday-hover: rgba(187, 13, 18, 0.34);
  --tec-color-background-secondary-multiday: rgba(33, 33, 33, 0.24);
  --tec-color-background-secondary-multiday-hover: rgba(33, 33, 33, 0.34);
  --tec-color-accent-primary-week-event: rgba(187, 13, 18, 0.1);
  --tec-color-accent-primary-week-event-hover: rgba(187, 13, 18, 0.2);
  --tec-color-accent-primary-week-event-featured: rgba(187, 13, 18, 0.04);
  --tec-color-accent-primary-week-event-featured-hover: rgba(187, 13, 18, 0.14);
  --tec-font-family-sans-serif: ibm-plex-sans, sans-serif;
}

/* container */
#tribe-events-pg-template,
.tribe-events .tribe-events-l-container,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container {
  max-width: 100%;
  padding: 0;
}

/* links */
.tribe-common .tribe-common-anchor-thin-alt:active, .tribe-common .tribe-common-anchor-thin-alt:focus, .tribe-common .tribe-common-anchor-thin-alt:hover {
  border-bottom-color: currentColor;
}

.tribe-events-pro .tribe-events-pro-organizer__meta-email-link,
.tribe-events-pro .tribe-events-pro-organizer__meta-website-link {
  border-bottom-width: 1px;
}

/* ical link */
.tribe-events .tribe-events-c-ical {
  clear: both;
}

.tribe-events-cal-links .tribe-events-gcal:not(:last-child),
.tribe-events-cal-links .tribe-events-ical:not(:last-child),
.tribe-events-cal-links .tribe-events-ics:not(:last-child) {
  margin-right: 1.25em;
}

/* pagination */
.tribe-events-sub-nav {
  padding: 0;
}

/* list */
.tribe-events .tribe-events-calendar-list__month-separator {
  width: 100%;
}

/* month mobile */
.tribe-events .tribe-events-calendar-month__week {
  width: 100%;
}

.tribe-events .tribe-events-calendar-month-nav {
  margin-bottom: 1em;
}

/* day */
.tribe-events .tribe-events-calendar-day__time-separator {
  width: 100%;
}

/* single */
.tribe-events-back {
  margin-top: 0;
}

.tribe-events-schedule {
  margin-top: 0;
}
.tribe-events-schedule h2 {
  margin-top: 0;
}

.single-tribe_events .tribe-events-schedule .tribe-events-divider {
  margin: 0 0.25em;
}

.tribe-events-content a {
  border-bottom: 0 !important;
}
.tribe-events-single ul.tribe-related-events .recurringinfo {
  margin-bottom: 0.5em;
  margin-top: 0.5em;
}

#tribe-events-footer .tribe-events-sub-nav,
#tribe-events-header .tribe-events-sub-nav {
  padding: 0;
}

.tribe-events-event-image img {
  max-width: 100%;
}

/* Pro: Organizer */
.tribe-events-pro .tribe-events-pro-organizer__meta-email,
.tribe-events-pro .tribe-events-pro-organizer__meta-phone,
.tribe-events-pro .tribe-events-pro-organizer__meta-website {
  align-items: center;
  display: flex;
}

/* ------------------------------------------------------------------------ *\
 * WooCommerce (https://woocommerce.com/)
\* ------------------------------------------------------------------------ */
/* stylelint-disable selector-max-id, selector-max-type, selector-no-qualifying-type, selector-class-pattern */
/* variables and helpers */
/* photoswipe.css */
.woocommerce-page .pswp {
  font-family: "ibm-plex-sans", sans-serif;
}
.woocommerce-page .pswp .pswp__caption {
  font-size: 1.25em;
}

/* select2.css */
.select2-container--default .select2-selection--single .select2-selection__rendered {
  font-family: "ibm-plex-sans", sans-serif;
}

.select2-container--default .select2-results > .select2-results__options {
  font-family: "ibm-plex-sans", sans-serif;
}

/* woocommerce-layout.css */
.woocommerce #content table.cart td.actions .input-text,
.woocommerce table.cart td.actions .input-text,
.woocommerce-page #content table.cart td.actions .input-text,
.woocommerce-page table.cart td.actions .input-text {
  width: 7.5em;
}

.woocommerce .cart-collaterals h2,
.woocommerce-page .cart-collaterals h2 {
  font-size: 1.5em;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
/* woocommerce.css */
.woocommerce .woocommerce-breadcrumb {
  font-family: "ibm-plex-sans", sans-serif;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
  font-family: "ibm-plex-sans", sans-serif;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  font-family: "ibm-plex-sans", sans-serif;
}
.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h2 {
  font-size: 1.5em;
}

.woocommerce div.product form.cart {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1em;
}
.woocommerce div.product form.cart div.quantity {
  margin-right: 0.5em;
}
.woocommerce div.product form.cart div.quantity .qty {
  margin-bottom: 0;
}

.woocommerce span.onsale {
  box-sizing: content-box;
  font-family: "ibm-plex-sans", sans-serif;
}

.woocommerce div.product form.cart .variations label {
  font-family: "ibm-plex-sans", sans-serif;
}

.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h3 {
  font-size: 1.25em;
  margin-bottom: 0.25em;
  padding: 0;
}

.woocommerce ul.products li.product .price {
  font-family: "ibm-plex-sans", sans-serif;
}

.woocommerce .woocommerce-result-count {
  float: none;
  margin: 0;
}

.woocommerce .woocommerce-ordering {
  float: none;
  margin: 0;
}
.woocommerce .woocommerce-ordering select {
  margin: 0;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  font-family: "ibm-plex-sans", sans-serif;
}
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce .tribe-events-cal-links a.alt.tribe-events-gcal,
.tribe-events-cal-links .woocommerce a.alt.tribe-events-gcal,
.woocommerce .tribe-events-cal-links a.alt.tribe-events-ical,
.tribe-events-cal-links .woocommerce a.alt.tribe-events-ical,
.woocommerce .tribe-events-cal-links a.alt.tribe-events-ics,
.tribe-events-cal-links .woocommerce a.alt.tribe-events-ics,
.woocommerce button.button.alt,
.woocommerce .tribe-events-cal-links button.alt.tribe-events-gcal,
.tribe-events-cal-links .woocommerce button.alt.tribe-events-gcal,
.woocommerce .tribe-events-cal-links button.alt.tribe-events-ical,
.tribe-events-cal-links .woocommerce button.alt.tribe-events-ical,
.woocommerce .tribe-events-cal-links button.alt.tribe-events-ics,
.tribe-events-cal-links .woocommerce button.alt.tribe-events-ics,
.woocommerce input.button.alt,
.woocommerce .tribe-events-cal-links input.alt.tribe-events-gcal,
.tribe-events-cal-links .woocommerce input.alt.tribe-events-gcal,
.woocommerce .tribe-events-cal-links input.alt.tribe-events-ical,
.tribe-events-cal-links .woocommerce input.alt.tribe-events-ical,
.woocommerce .tribe-events-cal-links input.alt.tribe-events-ics,
.tribe-events-cal-links .woocommerce input.alt.tribe-events-ics {
  background-color: #BB0D12;
}
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce .tribe-events-cal-links a.alt.tribe-events-gcal:hover,
.tribe-events-cal-links .woocommerce a.alt.tribe-events-gcal:hover,
.woocommerce .tribe-events-cal-links a.alt.tribe-events-ical:hover,
.tribe-events-cal-links .woocommerce a.alt.tribe-events-ical:hover,
.woocommerce .tribe-events-cal-links a.alt.tribe-events-ics:hover,
.tribe-events-cal-links .woocommerce a.alt.tribe-events-ics:hover,
.woocommerce button.button.alt:hover,
.woocommerce .tribe-events-cal-links button.alt.tribe-events-gcal:hover,
.tribe-events-cal-links .woocommerce button.alt.tribe-events-gcal:hover,
.woocommerce .tribe-events-cal-links button.alt.tribe-events-ical:hover,
.tribe-events-cal-links .woocommerce button.alt.tribe-events-ical:hover,
.woocommerce .tribe-events-cal-links button.alt.tribe-events-ics:hover,
.tribe-events-cal-links .woocommerce button.alt.tribe-events-ics:hover,
.woocommerce input.button.alt:hover,
.woocommerce .tribe-events-cal-links input.alt.tribe-events-gcal:hover,
.tribe-events-cal-links .woocommerce input.alt.tribe-events-gcal:hover,
.woocommerce .tribe-events-cal-links input.alt.tribe-events-ical:hover,
.tribe-events-cal-links .woocommerce input.alt.tribe-events-ical:hover,
.woocommerce .tribe-events-cal-links input.alt.tribe-events-ics:hover,
.tribe-events-cal-links .woocommerce input.alt.tribe-events-ics:hover {
  background-color: #a30b11;
}

.woocommerce #reviews #comments ol.commentlist {
  padding: 0;
}

.woocommerce #reviews #comments ol.commentlist li .comment-text p.meta {
  font-size: 0.75em;
}

.woocommerce a.added_to_cart {
  display: block;
  font-family: "ibm-plex-sans", sans-serif;
}

.woocommerce #respond input#submit.alt.disabled,
.woocommerce #respond input#submit.alt.disabled:hover,
.woocommerce #respond input#submit.alt:disabled,
.woocommerce #respond input#submit.alt:disabled:hover,
.woocommerce #respond input#submit.alt:disabled[disabled],
.woocommerce #respond input#submit.alt:disabled[disabled]:hover,
.woocommerce a.button.alt.disabled,
.woocommerce .tribe-events-cal-links a.alt.disabled.tribe-events-gcal,
.tribe-events-cal-links .woocommerce a.alt.disabled.tribe-events-gcal,
.woocommerce .tribe-events-cal-links a.alt.disabled.tribe-events-ical,
.tribe-events-cal-links .woocommerce a.alt.disabled.tribe-events-ical,
.woocommerce .tribe-events-cal-links a.alt.disabled.tribe-events-ics,
.tribe-events-cal-links .woocommerce a.alt.disabled.tribe-events-ics,
.woocommerce a.button.alt.disabled:hover,
.woocommerce .tribe-events-cal-links a.alt.disabled.tribe-events-gcal:hover,
.tribe-events-cal-links .woocommerce a.alt.disabled.tribe-events-gcal:hover,
.woocommerce .tribe-events-cal-links a.alt.disabled.tribe-events-ical:hover,
.tribe-events-cal-links .woocommerce a.alt.disabled.tribe-events-ical:hover,
.woocommerce .tribe-events-cal-links a.alt.disabled.tribe-events-ics:hover,
.tribe-events-cal-links .woocommerce a.alt.disabled.tribe-events-ics:hover,
.woocommerce a.button.alt:disabled,
.woocommerce .tribe-events-cal-links a.alt.tribe-events-gcal:disabled,
.tribe-events-cal-links .woocommerce a.alt.tribe-events-gcal:disabled,
.woocommerce .tribe-events-cal-links a.alt.tribe-events-ical:disabled,
.tribe-events-cal-links .woocommerce a.alt.tribe-events-ical:disabled,
.woocommerce .tribe-events-cal-links a.alt.tribe-events-ics:disabled,
.tribe-events-cal-links .woocommerce a.alt.tribe-events-ics:disabled,
.woocommerce a.button.alt:disabled:hover,
.woocommerce .tribe-events-cal-links a.alt.tribe-events-gcal:disabled:hover,
.tribe-events-cal-links .woocommerce a.alt.tribe-events-gcal:disabled:hover,
.woocommerce .tribe-events-cal-links a.alt.tribe-events-ical:disabled:hover,
.tribe-events-cal-links .woocommerce a.alt.tribe-events-ical:disabled:hover,
.woocommerce .tribe-events-cal-links a.alt.tribe-events-ics:disabled:hover,
.tribe-events-cal-links .woocommerce a.alt.tribe-events-ics:disabled:hover,
.woocommerce a.button.alt:disabled[disabled],
.woocommerce .tribe-events-cal-links a.alt.tribe-events-gcal:disabled[disabled],
.tribe-events-cal-links .woocommerce a.alt.tribe-events-gcal:disabled[disabled],
.woocommerce .tribe-events-cal-links a.alt.tribe-events-ical:disabled[disabled],
.tribe-events-cal-links .woocommerce a.alt.tribe-events-ical:disabled[disabled],
.woocommerce .tribe-events-cal-links a.alt.tribe-events-ics:disabled[disabled],
.tribe-events-cal-links .woocommerce a.alt.tribe-events-ics:disabled[disabled],
.woocommerce a.button.alt:disabled[disabled]:hover,
.woocommerce .tribe-events-cal-links a.alt.tribe-events-gcal:disabled[disabled]:hover,
.tribe-events-cal-links .woocommerce a.alt.tribe-events-gcal:disabled[disabled]:hover,
.woocommerce .tribe-events-cal-links a.alt.tribe-events-ical:disabled[disabled]:hover,
.tribe-events-cal-links .woocommerce a.alt.tribe-events-ical:disabled[disabled]:hover,
.woocommerce .tribe-events-cal-links a.alt.tribe-events-ics:disabled[disabled]:hover,
.tribe-events-cal-links .woocommerce a.alt.tribe-events-ics:disabled[disabled]:hover,
.woocommerce button.button.alt.disabled,
.woocommerce .tribe-events-cal-links button.alt.disabled.tribe-events-gcal,
.tribe-events-cal-links .woocommerce button.alt.disabled.tribe-events-gcal,
.woocommerce .tribe-events-cal-links button.alt.disabled.tribe-events-ical,
.tribe-events-cal-links .woocommerce button.alt.disabled.tribe-events-ical,
.woocommerce .tribe-events-cal-links button.alt.disabled.tribe-events-ics,
.tribe-events-cal-links .woocommerce button.alt.disabled.tribe-events-ics,
.woocommerce button.button.alt.disabled:hover,
.woocommerce .tribe-events-cal-links button.alt.disabled.tribe-events-gcal:hover,
.tribe-events-cal-links .woocommerce button.alt.disabled.tribe-events-gcal:hover,
.woocommerce .tribe-events-cal-links button.alt.disabled.tribe-events-ical:hover,
.tribe-events-cal-links .woocommerce button.alt.disabled.tribe-events-ical:hover,
.woocommerce .tribe-events-cal-links button.alt.disabled.tribe-events-ics:hover,
.tribe-events-cal-links .woocommerce button.alt.disabled.tribe-events-ics:hover,
.woocommerce button.button.alt:disabled,
.woocommerce .tribe-events-cal-links button.alt.tribe-events-gcal:disabled,
.tribe-events-cal-links .woocommerce button.alt.tribe-events-gcal:disabled,
.woocommerce .tribe-events-cal-links button.alt.tribe-events-ical:disabled,
.tribe-events-cal-links .woocommerce button.alt.tribe-events-ical:disabled,
.woocommerce .tribe-events-cal-links button.alt.tribe-events-ics:disabled,
.tribe-events-cal-links .woocommerce button.alt.tribe-events-ics:disabled,
.woocommerce button.button.alt:disabled:hover,
.woocommerce .tribe-events-cal-links button.alt.tribe-events-gcal:disabled:hover,
.tribe-events-cal-links .woocommerce button.alt.tribe-events-gcal:disabled:hover,
.woocommerce .tribe-events-cal-links button.alt.tribe-events-ical:disabled:hover,
.tribe-events-cal-links .woocommerce button.alt.tribe-events-ical:disabled:hover,
.woocommerce .tribe-events-cal-links button.alt.tribe-events-ics:disabled:hover,
.tribe-events-cal-links .woocommerce button.alt.tribe-events-ics:disabled:hover,
.woocommerce button.button.alt:disabled[disabled],
.woocommerce .tribe-events-cal-links button.alt.tribe-events-gcal:disabled[disabled],
.tribe-events-cal-links .woocommerce button.alt.tribe-events-gcal:disabled[disabled],
.woocommerce .tribe-events-cal-links button.alt.tribe-events-ical:disabled[disabled],
.tribe-events-cal-links .woocommerce button.alt.tribe-events-ical:disabled[disabled],
.woocommerce .tribe-events-cal-links button.alt.tribe-events-ics:disabled[disabled],
.tribe-events-cal-links .woocommerce button.alt.tribe-events-ics:disabled[disabled],
.woocommerce button.button.alt:disabled[disabled]:hover,
.woocommerce .tribe-events-cal-links button.alt.tribe-events-gcal:disabled[disabled]:hover,
.tribe-events-cal-links .woocommerce button.alt.tribe-events-gcal:disabled[disabled]:hover,
.woocommerce .tribe-events-cal-links button.alt.tribe-events-ical:disabled[disabled]:hover,
.tribe-events-cal-links .woocommerce button.alt.tribe-events-ical:disabled[disabled]:hover,
.woocommerce .tribe-events-cal-links button.alt.tribe-events-ics:disabled[disabled]:hover,
.tribe-events-cal-links .woocommerce button.alt.tribe-events-ics:disabled[disabled]:hover,
.woocommerce input.button.alt.disabled,
.woocommerce .tribe-events-cal-links input.alt.disabled.tribe-events-gcal,
.tribe-events-cal-links .woocommerce input.alt.disabled.tribe-events-gcal,
.woocommerce .tribe-events-cal-links input.alt.disabled.tribe-events-ical,
.tribe-events-cal-links .woocommerce input.alt.disabled.tribe-events-ical,
.woocommerce .tribe-events-cal-links input.alt.disabled.tribe-events-ics,
.tribe-events-cal-links .woocommerce input.alt.disabled.tribe-events-ics,
.woocommerce input.button.alt.disabled:hover,
.woocommerce .tribe-events-cal-links input.alt.disabled.tribe-events-gcal:hover,
.tribe-events-cal-links .woocommerce input.alt.disabled.tribe-events-gcal:hover,
.woocommerce .tribe-events-cal-links input.alt.disabled.tribe-events-ical:hover,
.tribe-events-cal-links .woocommerce input.alt.disabled.tribe-events-ical:hover,
.woocommerce .tribe-events-cal-links input.alt.disabled.tribe-events-ics:hover,
.tribe-events-cal-links .woocommerce input.alt.disabled.tribe-events-ics:hover,
.woocommerce input.button.alt:disabled,
.woocommerce .tribe-events-cal-links input.alt.tribe-events-gcal:disabled,
.tribe-events-cal-links .woocommerce input.alt.tribe-events-gcal:disabled,
.woocommerce .tribe-events-cal-links input.alt.tribe-events-ical:disabled,
.tribe-events-cal-links .woocommerce input.alt.tribe-events-ical:disabled,
.woocommerce .tribe-events-cal-links input.alt.tribe-events-ics:disabled,
.tribe-events-cal-links .woocommerce input.alt.tribe-events-ics:disabled,
.woocommerce input.button.alt:disabled:hover,
.woocommerce .tribe-events-cal-links input.alt.tribe-events-gcal:disabled:hover,
.tribe-events-cal-links .woocommerce input.alt.tribe-events-gcal:disabled:hover,
.woocommerce .tribe-events-cal-links input.alt.tribe-events-ical:disabled:hover,
.tribe-events-cal-links .woocommerce input.alt.tribe-events-ical:disabled:hover,
.woocommerce .tribe-events-cal-links input.alt.tribe-events-ics:disabled:hover,
.tribe-events-cal-links .woocommerce input.alt.tribe-events-ics:disabled:hover,
.woocommerce input.button.alt:disabled[disabled],
.woocommerce .tribe-events-cal-links input.alt.tribe-events-gcal:disabled[disabled],
.tribe-events-cal-links .woocommerce input.alt.tribe-events-gcal:disabled[disabled],
.woocommerce .tribe-events-cal-links input.alt.tribe-events-ical:disabled[disabled],
.tribe-events-cal-links .woocommerce input.alt.tribe-events-ical:disabled[disabled],
.woocommerce .tribe-events-cal-links input.alt.tribe-events-ics:disabled[disabled],
.tribe-events-cal-links .woocommerce input.alt.tribe-events-ics:disabled[disabled],
.woocommerce input.button.alt:disabled[disabled]:hover,
.woocommerce .tribe-events-cal-links input.alt.tribe-events-gcal:disabled[disabled]:hover,
.tribe-events-cal-links .woocommerce input.alt.tribe-events-gcal:disabled[disabled]:hover,
.woocommerce .tribe-events-cal-links input.alt.tribe-events-ical:disabled[disabled]:hover,
.tribe-events-cal-links .woocommerce input.alt.tribe-events-ical:disabled[disabled]:hover,
.woocommerce .tribe-events-cal-links input.alt.tribe-events-ics:disabled[disabled]:hover,
.tribe-events-cal-links .woocommerce input.alt.tribe-events-ics:disabled[disabled]:hover {
  background-color: #BB0D12;
}

.woocommerce .star-rating {
  color: #F08E01;
}

.woocommerce .woocommerce-product-rating .star-rating {
  margin-top: 0.25em;
}
.woocommerce #review_form #respond span.comment-reply-title {
  font-size: 1.25em;
  font-weight: 700;
}
.woocommerce #review_form #respond label {
  font-weight: 700;
  margin-bottom: 0.25em;
}
.woocommerce #review_form #respond label span.required {
  color: #C62828;
}
.woocommerce p.stars {
  color: #212121;
}
.woocommerce p.stars:hover, .woocommerce p.stars.selected {
  color: #F08E01;
}
.woocommerce p.stars a {
  color: inherit;
}

.woocommerce table.shop_attributes {
  border: 0;
  border-collapse: collapse;
  display: table;
}
.woocommerce table.shop_attributes td,
.woocommerce table.shop_attributes th {
  border: 0;
  vertical-align: top;
}
.woocommerce table.shop_attributes tr:nth-child(2n) td,
.woocommerce table.shop_attributes tr:nth-child(2n) th {
  background-color: #EBE9EB;
}
.woocommerce table.shop_attributes td {
  padding: 8px;
  padding-left: 0;
}
.woocommerce table.shop_attributes td p {
  padding: 0;
}
.woocommerce table.shop_attributes th {
  text-align: right;
}

.woocommerce table.shop_table {
  font-family: "ibm-plex-sans", sans-serif;
}
.woocommerce table.shop_table tfoot th {
  text-align: right;
}
.woocommerce table.shop_table .quantity .qty {
  width: 6em;
}

.woocommerce form .form-row label {
  font-family: "ibm-plex-sans", sans-serif;
  font-weight: 700;
}

.woocommerce ul.order_details {
  background-color: #EBE9EB;
  background-image: linear-gradient(135deg, #FFFFFF 50%, transparent 50%), linear-gradient(225deg, #FFFFFF 50%, transparent 50%), linear-gradient(45deg, #FFFFFF 50%, transparent 50%), linear-gradient(-45deg, #FFFFFF 50%, transparent 50%);
  background-position: top left, top left, bottom left, bottom left;
  background-repeat: repeat-x;
  background-size: 1em 1em;
  font-family: "ibm-plex-sans", sans-serif;
  padding: 2em 0;
}
.woocommerce ul.order_details li {
  border-bottom: 1px dashed #DFDCDE;
  border-right: 0;
  float: none;
  padding: 0.75em 1.25em;
}

.woocommerce .woocommerce-customer-details h2,
.woocommerce .woocommerce-order-details h2,
.woocommerce .woocommerce-order-downloads h2 {
  font-size: 1.5em;
}

.woocommerce .woocommerce-customer-details address {
  margin-bottom: 1em !important;
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
  font-family: "ibm-plex-sans", sans-serif;
}
.woocommerce-account .addresses .title h3, .woocommerce-account .addresses .woocommerce-MyAccount-content form > h3 h3, .woocommerce-account .woocommerce-MyAccount-content .addresses form > h3 h3, .woocommerce-account .addresses .woocommerce > h2 h3, .woocommerce-account .addresses .woocommerce .woocommerce-order h2.woocommerce-column__title h3, .woocommerce .woocommerce-order .woocommerce-account .addresses h2.woocommerce-column__title h3, .woocommerce-account .addresses .woocommerce .woocommerce-order h2.woocommerce-order-details__title h3, .woocommerce .woocommerce-order .woocommerce-account .addresses h2.woocommerce-order-details__title h3, .woocommerce-account .addresses .woocommerce .checkout h3 h3, .woocommerce .checkout .woocommerce-account .addresses h3 h3, .woocommerce-account .addresses .woocommerce .product .related > h2 h3, .woocommerce .product .woocommerce-account .addresses .related > h2 h3,
.woocommerce-account .addresses .woocommerce .product .upsells > h2 h3,
.woocommerce .product .woocommerce-account .addresses .upsells > h2 h3, .woocommerce-account .addresses .woocommerce h1.page-title h3, .woocommerce .woocommerce-account .addresses h1.page-title h3, .woocommerce-account .addresses .woocommerce .cart-collaterals h2 h3, .woocommerce .cart-collaterals .woocommerce-account .addresses h2 h3,
.woocommerce-account .addresses .woocommerce-page .cart-collaterals h2 h3,
.woocommerce-page .cart-collaterals .woocommerce-account .addresses h2 h3, .woocommerce-account .addresses .woocommerce div.product .product_title h3, .woocommerce div.product .woocommerce-account .addresses .product_title h3, .woocommerce-account .addresses .woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h2 h3, .woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel .woocommerce-account .addresses h2 h3, .woocommerce-account .addresses .woocommerce ul.products li.product .woocommerce-loop-category__title h3, .woocommerce ul.products li.product .woocommerce-account .addresses .woocommerce-loop-category__title h3,
.woocommerce-account .addresses .woocommerce ul.products li.product .woocommerce-loop-product__title h3,
.woocommerce ul.products li.product .woocommerce-account .addresses .woocommerce-loop-product__title h3,
.woocommerce-account .addresses .woocommerce ul.products li.product h3 h3,
.woocommerce ul.products li.product .woocommerce-account .addresses h3 h3, .woocommerce-account .addresses .woocommerce .woocommerce-customer-details h2 h3, .woocommerce .woocommerce-customer-details .woocommerce-account .addresses h2 h3,
.woocommerce-account .addresses .woocommerce .woocommerce-order-details h2 h3,
.woocommerce .woocommerce-order-details .woocommerce-account .addresses h2 h3,
.woocommerce-account .addresses .woocommerce .woocommerce-order-downloads h2 h3,
.woocommerce .woocommerce-order-downloads .woocommerce-account .addresses h2 h3 {
  margin: 0;
}

#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment {
  border-radius: 0;
}

#add_payment_method #payment ul.payment_methods,
.woocommerce-cart #payment ul.payment_methods,
.woocommerce-checkout #payment ul.payment_methods {
  font-family: "ibm-plex-sans", sans-serif;
  padding: 0;
}

#add_payment_method #payment ul.payment_methods li:not(:last-child),
.woocommerce-cart #payment ul.payment_methods li:not(:last-child),
.woocommerce-checkout #payment ul.payment_methods li:not(:last-child) {
  border-bottom: 1px solid #FFFFFF;
}

#add_payment_method #payment ul.payment_methods li > input,
.woocommerce-cart #payment ul.payment_methods li > input,
.woocommerce-checkout #payment ul.payment_methods li > input {
  left: -999em;
  position: absolute;
}

#add_payment_method #payment div.payment_box,
.woocommerce-cart #payment div.payment_box,
.woocommerce-checkout #payment div.payment_box {
  background: none;
  margin: 0;
}
#add_payment_method #payment div.payment_box::before,
.woocommerce-cart #payment div.payment_box::before,
.woocommerce-checkout #payment div.payment_box::before {
  display: none;
}

#add_payment_method #payment div.payment_box p:first-child,
.woocommerce-cart #payment div.payment_box p:first-child,
.woocommerce-checkout #payment div.payment_box p:first-child {
  margin-top: 0;
}

#add_payment_method #payment .payment_method_paypal .about_paypal,
.woocommerce-cart #payment .payment_method_paypal .about_paypal,
.woocommerce-checkout #payment .payment_method_paypal .about_paypal {
  display: none;
}

/* custom */
.woocommerce__archive-results {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 1em;
}

.woocommerce .product .related > h2,
.woocommerce .product .upsells > h2 {
  font-size: 1.5em;
}

.woocommerce form.woocommerce-checkout .col2-set .col-1,
.woocommerce form.woocommerce-checkout .col2-set .col-2,
.woocommerce-page form.woocommerce-checkout .col2-set .col-1,
.woocommerce-page form.woocommerce-checkout .col2-set .col-2 {
  float: none;
  width: auto;
}

@media (min-width: 48em) {
  .woocommerce form.woocommerce-checkout,
.woocommerce-page form.woocommerce-checkout {
    overflow: hidden;
  }
  .woocommerce form.woocommerce-checkout #customer_details,
.woocommerce-page form.woocommerce-checkout #customer_details {
    float: left;
    margin-right: 4.3478%;
    width: 47.8261%;
  }
  .woocommerce form.woocommerce-checkout #order_review,
.woocommerce form.woocommerce-checkout #order_review_heading,
.woocommerce-page form.woocommerce-checkout #order_review,
.woocommerce-page form.woocommerce-checkout #order_review_heading {
    float: right;
    margin-right: 0;
    width: 47.8261%;
  }
}
.woocommerce .checkout h3 {
  font-size: 1.25em;
}

#add_payment_method #payment ul.payment_methods li > label,
.woocommerce-cart #payment ul.payment_methods li > label,
.woocommerce-checkout #payment ul.payment_methods li > label {
  background: #DFDCDE;
  cursor: pointer;
  display: flex;
  font-weight: 700;
  padding: 0.5em 1em;
  transition: background-color 0.15s, color 0.15s;
}
#add_payment_method #payment ul.payment_methods li > input:checked + label,
.woocommerce-cart #payment ul.payment_methods li > input:checked + label,
.woocommerce-checkout #payment ul.payment_methods li > input:checked + label {
  background-color: #BB0D12;
  color: #FFFFFF;
}
#add_payment_method #payment ul.payment_methods li > label img,
.woocommerce-cart #payment ul.payment_methods li > label img,
.woocommerce-checkout #payment ul.payment_methods li > label img {
  max-height: 32px;
}

.woocommerce .woocommerce-order h2.woocommerce-order-details__title {
  font-size: 1.5em;
}

.woocommerce .woocommerce-order h2.woocommerce-column__title {
  font-size: 1.25em;
}

.woocommerce-account .woocommerce > h2 {
  font-size: 1.25em;
}

.woocommerce form.login,
.woocommerce form.register {
  margin-top: 0;
}
.woocommerce form.login label.woocommerce-form-login__rememberme,
.woocommerce form.register label.woocommerce-form-login__rememberme {
  align-items: center;
  display: inline-flex;
}
.woocommerce form.login input.woocommerce-form__input.woocommerce-form__input-checkbox,
.woocommerce form.register input.woocommerce-form__input.woocommerce-form__input-checkbox {
  margin: 0 0.5em 0 0;
}
.woocommerce-Address-title {
  font-size: 1em;
}

.woocommerce-account .woocommerce-MyAccount-content form > h3 {
  font-size: 1.5em;
}

.woocommerce-account .woocommerce fieldset legend {
  padding: 0 0.5em;
}

.woocommerce-variation-add-to-cart {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
}

/* ------------------------------------------------------------------------ *\
 * WP Caption
\* ------------------------------------------------------------------------ */
.wp-caption {
  margin-bottom: 0;
  margin-top: 0;
  max-width: 100%;
}
.wp-caption:not(.alignleft) {
  margin-right: 0;
}
.wp-caption:not(.alignright) {
  margin-left: 0;
}

.wp-caption-image {
  display: block;
  width: 100%;
}
.wp-caption-image:last-child {
  margin-bottom: 1.5em;
}

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

/* ------------------------------------------------------------------------ *\
 * WP Gallery
\* ------------------------------------------------------------------------ */
.wp-block-gallery {
  margin: 0;
}

.gallery,
.blocks-gallery-grid {
  display: grid;
  grid-gap: 1.875rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

@media (min-width: 48em) {
  .gallery-columns-1,
.wp-block-gallery.columns-1 > .blocks-gallery-grid {
    grid-template-columns: repeat(1, 1fr);
  }

  .gallery-columns-2,
.wp-block-gallery.columns-2 > .blocks-gallery-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .gallery-columns-3,
.wp-block-gallery.columns-3 > .blocks-gallery-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .gallery-columns-4,
.wp-block-gallery.columns-4 > .blocks-gallery-grid {
    grid-template-columns: repeat(4, 1fr);
  }

  .gallery-columns-5,
.wp-block-gallery.columns-5 > .blocks-gallery-grid {
    grid-template-columns: repeat(5, 1fr);
  }

  .gallery-columns-6,
.wp-block-gallery.columns-6 > .blocks-gallery-grid {
    grid-template-columns: repeat(6, 1fr);
  }

  .gallery-columns-7,
.wp-block-gallery.columns-7 > .blocks-gallery-grid {
    grid-template-columns: repeat(7, 1fr);
  }

  .gallery-columns-8,
.wp-block-gallery.columns-8 > .blocks-gallery-grid {
    grid-template-columns: repeat(8, 1fr);
  }

  .gallery-columns-9,
.wp-block-gallery.columns-9 > .blocks-gallery-grid {
    grid-template-columns: repeat(9, 1fr);
  }
}
.gallery-item,
.blocks-gallery-item {
  -moz-column-span: span 1;
  column-span: span 1;
  margin: 0;
}
.gallery-item figure,
.blocks-gallery-item figure {
  margin-bottom: 0 !important;
}
.gallery-item img,
.blocks-gallery-item img {
  width: 100%;
}

/*
<div class="location__title">
    <div class="location__line location__line--first">
        <hr class="banner__line__line" />
        <i class="fas fa-star"></i>
    </div>
    <h2 class="title title--decorated">
        <?php _e("OFPD Fire Stations", "ofpd"); ?>
    </h2>
    <div class="location__line location__line--last">
        <hr class="banner__line__line" />
        <i class="fas fa-star"></i>
    </div>
</div>
*/
@media (max-width: 63.9375em) {
  .location__block {
    padding-bottom: 4.6875em;
  }
}
.location__block .location__row {
  grid-gap: 0em 2.75em;
  justify-content: center;
}
.location__block .location__title {
  align-items: center;
  display: flex;
  grid-gap: 1em;
  justify-content: center;
  margin-bottom: 2.25em;
}
.location__block .location__line {
  align-items: center;
  color: #FFCA00;
  display: flex;
  grid-gap: 0.25em;
  justify-content: center;
  max-width: 100%;
  width: 9.9375em;
}
.location__block .location__line__line {
  background-color: #BB0D12;
  border: none;
  flex: 1 0 auto;
  height: 0.1875em;
}
.location__block .location__title__text {
  color: #BB0D12;
  font-size: 2.25em;
}
.location__block .location__col {
  flex: 0 1 18.75em;
  margin-bottom: 1.5em;
}
.location__block .location__image__wrapper {
  margin-bottom: 0.9375em;
}
.location__block .location__image {
  border: 0.1875em solid #FFCA00;
  display: block;
  margin: 0 auto;
  max-width: 100%;
}
.location__block .location__text {
  font-size: 1em;
  margin-bottom: 1.125em;
}

.overlay__block {
  left: 0;
  padding: 0px 25px;
  padding: 0rem 1.5625rem;
  position: absolute;
  width: 100%;
  z-index: 999;
}
.overlay__block.overlay__block--align-bottom {
  bottom: 1.5em;
}
.overlay__block .divider {
  margin: 0.9375em 0em;
}

.overlay__block--mobile .col--text {
  align-items: center;
  display: flex;
  flex-direction: column;
}

.news__image__wrapper {
  margin-bottom: 0.9375em;
  position: relative;
}
.news__image__wrapper .news__overlay {
  background-color: #FFD536;
  left: 1.125em;
  padding: 0.8125em;
  position: absolute;
  top: 0;
  z-index: 3;
}
.news__image__wrapper .news__overlay .title, .news__image__wrapper .news__overlay .woocommerce .cart-collaterals h2, .woocommerce .cart-collaterals .news__image__wrapper .news__overlay h2,
.news__image__wrapper .news__overlay .woocommerce-page .cart-collaterals h2,
.woocommerce-page .cart-collaterals .news__image__wrapper .news__overlay h2, .news__image__wrapper .news__overlay .woocommerce div.product .product_title, .woocommerce div.product .news__image__wrapper .news__overlay .product_title, .news__image__wrapper .news__overlay .woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h2, .woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel .news__image__wrapper .news__overlay h2, .news__image__wrapper .news__overlay .woocommerce ul.products li.product .woocommerce-loop-category__title, .woocommerce ul.products li.product .news__image__wrapper .news__overlay .woocommerce-loop-category__title,
.news__image__wrapper .news__overlay .woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .news__image__wrapper .news__overlay .woocommerce-loop-product__title,
.news__image__wrapper .news__overlay .woocommerce ul.products li.product h3,
.woocommerce ul.products li.product .news__image__wrapper .news__overlay h3, .news__image__wrapper .news__overlay .woocommerce .woocommerce-customer-details h2, .woocommerce .woocommerce-customer-details .news__image__wrapper .news__overlay h2,
.news__image__wrapper .news__overlay .woocommerce .woocommerce-order-details h2,
.woocommerce .woocommerce-order-details .news__image__wrapper .news__overlay h2,
.news__image__wrapper .news__overlay .woocommerce .woocommerce-order-downloads h2,
.woocommerce .woocommerce-order-downloads .news__image__wrapper .news__overlay h2, .news__image__wrapper .news__overlay .woocommerce h1.page-title, .woocommerce .news__image__wrapper .news__overlay h1.page-title, .news__image__wrapper .news__overlay .woocommerce .product .related > h2, .woocommerce .product .news__image__wrapper .news__overlay .related > h2,
.news__image__wrapper .news__overlay .woocommerce .product .upsells > h2,
.woocommerce .product .news__image__wrapper .news__overlay .upsells > h2, .news__image__wrapper .news__overlay .woocommerce .checkout h3, .woocommerce .checkout .news__image__wrapper .news__overlay h3, .news__image__wrapper .news__overlay .woocommerce .woocommerce-order h2.woocommerce-order-details__title, .woocommerce .woocommerce-order .news__image__wrapper .news__overlay h2.woocommerce-order-details__title, .news__image__wrapper .news__overlay .woocommerce .woocommerce-order h2.woocommerce-column__title, .woocommerce .woocommerce-order .news__image__wrapper .news__overlay h2.woocommerce-column__title, .news__image__wrapper .news__overlay .woocommerce-account .woocommerce > h2, .woocommerce-account .news__image__wrapper .news__overlay .woocommerce > h2, .news__image__wrapper .news__overlay .woocommerce-account .woocommerce-MyAccount-content form > h3, .woocommerce-account .woocommerce-MyAccount-content .news__image__wrapper .news__overlay form > h3 {
  color: #957600;
  display: block;
  font-size: 1.5em;
  margin: 0;
  text-align: center;
}
.news__image__wrapper .news__overlay .title--small {
  display: block;
  font-family: "ibm-plex-sans", sans-serif;
  font-size: 0.6666666667em;
  font-weight: 400;
  margin-bottom: -0.5em;
  text-transform: uppercase;
}
.news__image__wrapper .news__image {
  width: 100%;
}

.content-block.content-block--news {
  padding-bottom: 0;
  position: relative;
}
@media (min-width: 48em) {
  .content-block.content-block--news {
    background-color: #484848;
    background-image: url("../media/events-background.png");
    background-position: center;
    background-size: cover;
    padding: 3.1875em 1.5625em 4.625em;
  }
}
.content-block.content-block--news::after {
  background-image: linear-gradient(270deg, rgba(208, 208, 208, 0) 39%, #595959 87%);
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.content-block.content-block--news .content__inner {
  background-color: #FFFFFF;
  padding: 3.6875em 3.4375em;
  position: relative;
}
@media (max-width: 47.9375em) {
  .content-block.content-block--news .content__inner {
    padding: 0.6875em 0em;
  }
}
.content-block.content-block--news .title--news {
  line-height: 1em;
  margin-bottom: 1.4375em;
  text-transform: uppercase;
}
@media (max-width: 47.9375em) {
  .content-block.content-block--news .title--news {
    margin-bottom: 0.71875em;
    text-align: center;
  }
}
@media (max-width: 47.9375em) {
  .content-block.content-block--news .swiper-slide {
    margin-bottom: 2.625em;
  }
}
.content-block.content-block--news .title--news-slide {
  font-family: "ibm-plex-sans", sans-serif;
  font-size: 1.125em;
}
.content-block.content-block--news .swiper-container__wrapper {
  background-color: #FFFFFF;
  overflow-x: hidden;
  position: relative;
}
@media (min-width: 48em) {
  .content-block.content-block--news .swiper-container__wrapper {
    padding: 0em 3.75em;
  }
}
.content-block.content-block--news .swiper-container {
  overflow-x: hidden;
}
@media (max-width: 47.9375em) {
  .content-block.content-block--news .swiper-wrapper {
    flex-direction: column;
  }
}
.content-block.content-block--news .swiper-button {
  opacity: 1;
}
@media (max-width: 47.9375em) {
  .content-block.content-block--news .swiper-button {
    display: none;
  }
}
.content-block.content-block--news .swiper-button.swiper-button--prev {
  left: 0em;
}
.content-block.content-block--news .swiper-button.swiper-button--next {
  right: 0em;
}
.content-block.content-block--news .swiper-button .svg-inline--fa {
  margin-bottom: 2.7em;
}
.content-block.content-block--news .news__button {
  display: block;
  position: relative;
}
@media (min-width: 48em) {
  .content-block.content-block--news .news__button {
    bottom: 0;
    display: inline-block;
    margin-bottom: -1.1111111111em;
    position: absolute;
    right: 0;
  }
}
@media (max-width: 47.9375em) {
  .content-block.content-block--news .news__button {
    margin-bottom: 0;
    margin-right: 0;
  }
}
.content-block.content-block--news .news__button::before {
  border-bottom: 0.1111111111em solid #BB0D12;
  border-right: 0.1111111111em solid #BB0D12;
  content: "";
  height: 0.5555555556em;
  left: 0.5555555556em;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
  transition: border-color 0.15s;
  width: 0.5555555556em;
}
.content-block.content-block--news .button[href]:focus::before, .content-block.content-block--news .tribe-events-cal-links [href].tribe-events-gcal:focus::before, .tribe-events-cal-links .content-block.content-block--news [href].tribe-events-gcal:focus::before,
.content-block.content-block--news .tribe-events-cal-links [href].tribe-events-ical:focus::before,
.tribe-events-cal-links .content-block.content-block--news [href].tribe-events-ical:focus::before,
.content-block.content-block--news .tribe-events-cal-links [href].tribe-events-ics:focus::before,
.tribe-events-cal-links .content-block.content-block--news [href].tribe-events-ics:focus::before,
.content-block.content-block--news .button[href]:hover::before,
.content-block.content-block--news .tribe-events-cal-links [href].tribe-events-gcal:hover::before,
.tribe-events-cal-links .content-block.content-block--news [href].tribe-events-gcal:hover::before,
.content-block.content-block--news .tribe-events-cal-links [href].tribe-events-ical:hover::before,
.tribe-events-cal-links .content-block.content-block--news [href].tribe-events-ical:hover::before,
.content-block.content-block--news .tribe-events-cal-links [href].tribe-events-ics:hover::before,
.tribe-events-cal-links .content-block.content-block--news [href].tribe-events-ics:hover::before,
.content-block.content-block--news .button[href]:active::before,
.content-block.content-block--news .tribe-events-cal-links [href].tribe-events-gcal:active::before,
.tribe-events-cal-links .content-block.content-block--news [href].tribe-events-gcal:active::before,
.content-block.content-block--news .tribe-events-cal-links [href].tribe-events-ical:active::before,
.tribe-events-cal-links .content-block.content-block--news [href].tribe-events-ical:active::before,
.content-block.content-block--news .tribe-events-cal-links [href].tribe-events-ics:active::before,
.tribe-events-cal-links .content-block.content-block--news [href].tribe-events-ics:active::before {
  border-color: #FFFFFF;
}
.content-block.content-block--news .text--news {
  margin-bottom: 0.25em;
}
.content-block.content-block--news .text--news .link, .content-block.content-block--news .text--news .user-content a[href^="tel:"]:not(.link), .user-content .content-block.content-block--news .text--news a[href^="tel:"]:not(.link), .content-block.content-block--news .text--news .tribe-events-content a, .tribe-events-content .content-block.content-block--news .text--news a, .content-block.content-block--news .text--news .woocommerce-account .woocommerce-MyAccount-navigation a, .woocommerce-account .woocommerce-MyAccount-navigation .content-block.content-block--news .text--news a, .content-block.content-block--news .text--news .woocommerce-account .woocommerce-MyAccount-content a, .woocommerce-account .woocommerce-MyAccount-content .content-block.content-block--news .text--news a, .content-block.content-block--news .text--news .woocommerce div.product div.summary div.product_meta a, .woocommerce div.product div.summary div.product_meta .content-block.content-block--news .text--news a, .content-block.content-block--news .text--news .woocommerce div.product form.cart .reset_variations, .woocommerce div.product form.cart .content-block.content-block--news .text--news .reset_variations, .content-block.content-block--news .text--news .woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li .content-block.content-block--news .text--news a, .content-block.content-block--news .text--news .woocommerce a.added_to_cart, .woocommerce .content-block.content-block--news .text--news a.added_to_cart, .content-block.content-block--news .text--news .woocommerce .woocommerce-product-rating .woocommerce-review-link, .woocommerce .woocommerce-product-rating .content-block.content-block--news .text--news .woocommerce-review-link, .content-block.content-block--news .text--news .woocommerce table.shop_table a, .woocommerce table.shop_table .content-block.content-block--news .text--news a, .content-block.content-block--news .text--news .woocommerce-error a, .woocommerce-error .content-block.content-block--news .text--news a,
.content-block.content-block--news .text--news .woocommerce-info a,
.woocommerce-info .content-block.content-block--news .text--news a,
.content-block.content-block--news .text--news .woocommerce-message a,
.woocommerce-message .content-block.content-block--news .text--news a, .content-block.content-block--news .text--news .woocommerce form.login p.woocommerce-LostPassword a, .woocommerce form.login p.woocommerce-LostPassword .content-block.content-block--news .text--news a,
.content-block.content-block--news .text--news .woocommerce form.register p.woocommerce-LostPassword a,
.woocommerce form.register p.woocommerce-LostPassword .content-block.content-block--news .text--news a, .content-block.content-block--news .text--news .woocommerce-privacy-policy-text a, .woocommerce-privacy-policy-text .content-block.content-block--news .text--news a {
  font-size: 0.875em;
  font-weight: 600;
}

/* ------------------------------------------------------------------------ *\
 * Layout
\* ------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------ *\
 * Page
\* ------------------------------------------------------------------------ */
:root {
  accent-color: #957600;
}

html,
body {
  background: #E0E0E0;
  min-height: 100vh;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  width: 100%;
}

@supports (-webkit-touch-callout: none){
  html,
body{
    min-height: -webkit-fill-available;
  }
}

.page__container {
  background: #E0E0E0;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  overflow: hidden;
  overflow: clip;
  position: relative;
  width: 100%;
}

@supports (-webkit-touch-callout: none){
  .page__container{
    min-height: -webkit-fill-available;
  }
}
.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: #C62828;
  display: none;
  padding: 25px;
  padding: 1.5625rem;
}
.alert-block.is-active {
  display: block;
}

.alert__inner {
  margin: 0 auto;
  max-width: 1435px;
  max-width: 89.6875rem;
}

.alert__button {
  align-items: center;
  background: #FFFFFF;
  border-radius: 50%;
  color: #C62828;
  display: inline-flex;
  height: 2em;
  justify-content: center;
  padding: 0;
  width: 2em;
}

.alert__user-content > :last-child {
  margin-bottom: 0 !important;
}

/* ------------------------------------------------------------------------ *\
 * Header
\* ------------------------------------------------------------------------ */
.header-block {
  position: relative;
  z-index: 5;
  position: relative;
}

.header__inner {
  margin: 0 auto;
  max-width: 1485px;
  max-width: 92.8125rem;
  padding: 31.25px 25px;
  padding: 1.953125rem 1.5625rem;
}

.header__lower--internal {
  background-image: url("../media/banner-internal.jpg");
  position: relative;
  z-index: 1;
}
.header__lower--internal::after {
  background-color: rgba(0, 0, 0, 0.8);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}
.header__lower--internal .header__inner {
  z-index: 3;
}

.header__lower:not(.header__lower--internal) {
  left: 0;
  position: absolute;
  right: 0;
  top: 100%;
}
.header__lower .header__inner {
  padding-bottom: 2em;
  padding-top: 2.8125em;
}
@media (max-width: 63.9375em) {
  .header__lower .header__inner {
    padding-bottom: 2.8125em;
    padding-top: 2.5em;
  }
}

.header__logo {
  max-width: 100%;
  width: 5.625em;
}
@media (max-width: 63.9375em) {
  .header__logo {
    margin: 0 auto;
  }
}

.logo--mobile {
  display: block;
  margin-top: -0.375em;
  position: relative;
  z-index: 2;
}
.logo--mobile .logo__image {
  left: 50%;
  max-width: 4.875em;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: 100%;
}

.header__logo--text,
.header__logo--divider {
  max-width: 45.625em;
  width: 100%;
}
@media (max-width: 89.9375em) {
  .header__logo--text,
.header__logo--divider {
    max-width: 37.5em;
  }
}

.header__search-form {
  padding: 0em 1.5625em;
}
.header__search-form .search-form__input {
  background: rgba(216, 216, 216, 0.1);
  border: none;
  border-radius: 0.4375em;
  color: #FFFFFF;
}
.header__search-form .search-form__button {
  color: #FFFFFF;
  right: 1.5625em;
}

.header__search-form__container.is-active {
  z-index: 9999;
}
.header__search-form__container.is-active::after {
  background-color: rgba(0, 0, 0, 0.6);
  content: "";
  height: 100vh;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}
@supports (-webkit-touch-callout: none){
  .header__search-form__container.is-active::after{
    height: -webkit-fill-available;
  }
}
.header__search-form__container.is-active .search-form__input {
  z-index: 999999;
}

.search-form__container--expandable {
  background-color: #BB0D12;
}

.search-active {
  overflow-y: hidden;
}

.header__upper {
  background-color: #000000;
  background-image: url("../media/header-texture.png");
  border-bottom: 3px solid #957600;
  position: relative;
}
.header__upper .header__inner {
  padding-bottom: 0.625em;
  padding-top: 0.625em;
}
@media (max-width: 63.9375em) {
  .header__upper .header__inner {
    padding-bottom: 0.9375em;
    padding-top: 0.9375em;
  }
}

.header__title.title--h3 {
  font-size: 1.5625em;
  line-height: 1.32em;
}
.header__title.title--h4 {
  font-size: 1.125em;
}
.header__title .link, .header__title .user-content a[href^="tel:"]:not(.link), .user-content .header__title a[href^="tel:"]:not(.link), .header__title .tribe-events-content a, .tribe-events-content .header__title a, .header__title .woocommerce-account .woocommerce-MyAccount-navigation a, .woocommerce-account .woocommerce-MyAccount-navigation .header__title a, .header__title .woocommerce-account .woocommerce-MyAccount-content a, .woocommerce-account .woocommerce-MyAccount-content .header__title a, .header__title .woocommerce div.product div.summary div.product_meta a, .woocommerce div.product div.summary div.product_meta .header__title a, .header__title .woocommerce div.product form.cart .reset_variations, .woocommerce div.product form.cart .header__title .reset_variations, .header__title .woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li .header__title a, .header__title .woocommerce a.added_to_cart, .woocommerce .header__title a.added_to_cart, .header__title .woocommerce .woocommerce-product-rating .woocommerce-review-link, .woocommerce .woocommerce-product-rating .header__title .woocommerce-review-link, .header__title .woocommerce table.shop_table a, .woocommerce table.shop_table .header__title a, .header__title .woocommerce-error a, .woocommerce-error .header__title a,
.header__title .woocommerce-info a,
.woocommerce-info .header__title a,
.header__title .woocommerce-message a,
.woocommerce-message .header__title a, .header__title .woocommerce form.login p.woocommerce-LostPassword a, .woocommerce form.login p.woocommerce-LostPassword .header__title a,
.header__title .woocommerce form.register p.woocommerce-LostPassword a,
.woocommerce form.register p.woocommerce-LostPassword .header__title a, .header__title .woocommerce-privacy-policy-text a, .woocommerce-privacy-policy-text .header__title a {
  color: inherit;
}

/* ------------------------------------------------------------------------ *\
 * Navigation
\* ------------------------------------------------------------------------ */
.navigation-block {
  position: relative;
  z-index: 4;
}

.navigation__inner {
  margin: 0 auto;
  max-width: 1435px;
  max-width: 89.6875rem;
  max-width: calc(89.6875rem + 1.6em);
}

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

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

/* flyout variant */
.navigation-block--flyout {
  background: none;
  bottom: 999em;
  left: -999em;
  position: fixed;
  top: -999em;
  transition: bottom 0s 0.25s, left 0s 0.25s, top 0s 0.25s, visibility 0s 0.25s;
  visibility: hidden;
  width: 100vw;
  z-index: 100001;
}
.navigation-block--flyout .navigation__close {
  align-items: center;
  display: flex;
  font-size: 2em;
  justify-content: flex-end;
  padding: 0.625em 0.78125em;
  width: 100%;
}
.navigation-block--flyout .navigation__close__button {
  background-color: inherit;
  border: none;
  cursor: pointer;
  outline: none;
}
.navigation-block--flyout .navigation__inner {
  background: #BB0D12;
  height: 100%;
  margin: 0;
  overflow: auto;
  -ms-scroll-chaining: none;
  overscroll-behavior: contain;
  padding: 0;
  position: relative;
  transform: translateX(-20em);
  transition: transform 0.25s;
  width: 20em;
  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 {
  bottom: 0;
  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 .menu-list--navigation {
  display: block !important;
  padding-right: 0 !important;
}
.navigation-block--flyout .menu-item {
  color: #FFCA00;
}
.navigation-block--flyout .menu-list__link {
  font-size: 1.5em;
  padding: 0.4166666667em 0.5em 0.5833333333em;
}
.navigation-block--flyout .menu-list__toggle {
  padding-right: 2.34375em;
}

/* ------------------------------------------------------------------------ *\
 * Hero
\* ------------------------------------------------------------------------ */
.hero-block {
  position: relative;
  z-index: 3;
}
.hero-block {
  background: #FFFFFF;
  position: relative;
}
.hero-block .swiper-wrapper::after {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.83) 41%, rgba(0, 0, 0, 0.32) 54%, rgba(0, 0, 0, 0.37) 70%, rgba(0, 0, 0, 0.83) 80%);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 99;
}
@media (min-width: 64em) {
  .hero-block .swiper-wrapper::after {
    background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.15) 55%, rgba(0, 0, 0, 0.83) 86%);
  }
}

/* ------------------------------------------------------------------------ *\
 * Content
\* ------------------------------------------------------------------------ */
.content-block {
  position: relative;
  z-index: 2;
}
.content-block {
  background: #FFFFFF;
  padding: 50px 25px;
  padding: 3.125rem 1.5625rem;
}

.content__inner {
  margin: 0 auto;
  max-width: 1435px;
  max-width: 89.6875rem;
}

@media (min-width: 48em) {
  .content__row .col-content {
    padding-right: 6.5em;
  }
}

.content__sidebar {
  background-color: #BB0D12;
  background-image: linear-gradient(-88deg, #ED1F25 3%, #BB0D12 84%);
  padding: 2em 3.375em;
}
@media (max-width: 47.9375em) {
  .content__sidebar {
    margin: 6em -1.5625em -3.125em;
  }
}
.content__sidebar .menu-list__link {
  border-bottom: none;
  color: #FFCA00;
  font-family: "brothers", sans-serif;
  font-size: 1.5em;
  padding: 0em 0em 0.5833333333em;
}
.content__sidebar .menu-list__link:hover,
.content__sidebar .menu-list__link:focus {
  color: #ffcf1a;
}
.content__sidebar .menu-list--child .menu-list__link {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 512' fill='%23F73B41'%3E%3C!--! Font Awesome Pro 6.1.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. --%3E%3Cpath d='M64 448c-8.188 0-16.38-3.125-22.62-9.375c-12.5-12.5-12.5-32.75 0-45.25L178.8 256L41.38 118.6c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0l160 160c12.5 12.5 12.5 32.75 0 45.25l-160 160C80.38 444.9 72.19 448 64 448z'/%3E%3C/svg%3E");
  background-position: center left;
  border-bottom: 0.0625em solid #ED1F25;
  color: #FFFFFF;
  font-family: "ibm-plex-sans", sans-serif;
  font-size: 0.8888888889em;
  padding: 0.5625em 0em 0.5625em 1em;
}
.content__sidebar .menu-list--child .menu-list__link:hover,
.content__sidebar .menu-list--child .menu-list__link:focus {
  color: #FFCA00;
}
@media (min-width: 48em) {
  .content__sidebar {
    padding: 2em 1.5em;
  }
}

.content-block.content-block--home {
  padding-bottom: 6.25em;
  padding-top: 8.25em;
}
.content-block.content-block--home .title--h2 {
  font-size: 1.875em;
}
@media (max-width: 63.9375em) {
  .content-block.content-block--home {
    padding-bottom: 3.5625em;
    padding-top: 4.4375em;
  }
  .content-block.content-block--home .title--h2 {
    font-size: 1.625em;
  }
}

/* ------------------------------------------------------------------------ *\
 * Footer
\* ------------------------------------------------------------------------ */
.footer-block {
  position: relative;
  z-index: 1;
}
.footer-block {
  background-color: #000000;
  background-image: url("../media/footer-texture_mobile.png");
  background-repeat: repeat;
  background-size: auto 100%;
  padding: 58px 25px 57px;
  padding: 3.625rem 1.5625rem 3.5625rem;
}
@media (min-width: 60em) {
  .footer-block {
    background-image: url("../media/footer-texture.png");
    background-size: contain;
    padding: 4.0625rem 1.5625rem 0rem;
  }
}
.footer-block .handorgel {
  border: none;
}
.footer-block .handorgel__content {
  background-color: #ED1F25;
}
.footer-block .handorgel__content--opened {
  margin-bottom: 1.5625em;
}
.footer-block .menu-list--navigation .menu-list--child::after,
.footer-block .menu-list--navigation .menu-list--child::before {
  display: none;
}
.footer-block .menu-list--navigation {
  flex-wrap: wrap;
  font-size: 0.875em;
  padding-right: 0;
}
@media (max-width: 63.9375em) {
  .footer-block .menu-list--navigation {
    display: block;
  }
}
.footer-block .menu-list--navigation .menu-list--child {
  background-color: #ED1F25;
  font-size: 0.875em;
  padding-left: 0;
}
.footer-block .menu-list--child .menu-list__link {
  display: flex;
  font-weight: 400;
}
.footer-block .menu-list--child .menu-list__link::before {
  content: "-";
  margin-right: 0.3333333333em;
}
.footer-block .footer__nav-button {
  background: none;
  border: none;
  color: #FFFFFF;
  cursor: pointer;
  padding-left: 0;
}
.footer-block .menu-list__item {
  margin-bottom: auto;
}
@media (max-width: 63.9375em) {
  .footer-block .footer__sitemap--mobile {
    padding-right: 0 !important;
  }
}
.footer-block .menu-item {
  display: flex;
  flex: 1 1 0%;
  flex-wrap: wrap;
}
.footer-block .menu-item-has-children {
  flex: 0 1 16.0714285714em;
}
.footer-block .menu-list__link {
  flex: 1 1 auto;
}

.footer__inner {
  margin: 0 auto;
  max-width: 1435px;
  max-width: 89.6875rem;
}

.footer__lower {
  background: #BB0D12;
  padding: 2em 1.75em;
}
@media (min-width: 64em) {
  .footer__lower {
    padding: 1.375em 3.4375em 0.6875em;
  }
}

.footer__divider {
  background: #ED1F25;
  height: 0.1875em;
  margin: 0.9375em 0em;
}

.footer__title.title--h3 {
  font-size: 1.5625em;
}
.footer__title.title--h4 {
  font-size: 1.125em;
}
@media (max-width: 63.9375em) {
  .footer__title {
    text-align: center;
  }
}

.footer__text.text--small {
  font-size: 0.875em;
  font-weight: 400;
  margin-bottom: 0.5714285714em;
}
@media (max-width: 63.9375em) {
  .footer__text.text--small {
    font-size: 0.75em;
  }
}
@media (max-width: 63.9375em) {
  .footer__text {
    text-align: center;
  }
}

.footer__link {
  color: #FFCA00;
}
.footer__link:hover {
  color: #FFFFFF;
}

@media (min-width: 30em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
}
@media (min-width: 40em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Swiper (http://idangero.us/swiper/)
  \* ------------------------------------------------------------------------ */
  .swiper__picture::after {
    padding-bottom: 37.5%;
  }
  .swiper-container--height-fixed .swiper__picture::after {
    padding-bottom: 24em;
  }

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

  .columns--3 {
    -moz-columns: 3;
    columns: 3;
  }

  .columns--4 {
    -moz-columns: 4;
    columns: 4;
  }

  .columns--5 {
    -moz-columns: 5;
    columns: 5;
  }

  .columns--6 {
    -moz-columns: 6;
    columns: 6;
  }

  .columns--7 {
    -moz-columns: 7;
    columns: 7;
  }

  .columns--8 {
    -moz-columns: 8;
    columns: 8;
  }

  .columns--9 {
    -moz-columns: 9;
    columns: 9;
  }

  .columns--10 {
    -moz-columns: 10;
    columns: 10;
  }

  .columns--11 {
    -moz-columns: 11;
    columns: 11;
  }

  .columns--12 {
    -moz-columns: 12;
    columns: 12;
  }

  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
}
@media (min-width: 53.3125em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
}
@media (min-width: 60em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
}
@media (min-width: 64em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Swiper (http://idangero.us/swiper/)
  \* ------------------------------------------------------------------------ */
  .swiper__picture::after {
    padding-bottom: 37.5520833333%;
  }
  .swiper-container--height-fixed .swiper__picture::after {
    padding-bottom: 45.0625em;
  }

  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
}
@media (min-width: 80em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
}
@media (min-width: 85.375em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Menu List
  \* ------------------------------------------------------------------------ */
  /* navigation variant */
  .menu-list--navigation {
    font-size: 1.125em;
    padding-right: 1.2222222222em;
  }
  .menu-list--navigation .menu-list__link,
.menu-list--navigation .menu-list__toggle {
    padding: 0.3888888889em 1.1111111111em 0.5em;
  }

  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
}
@media (min-width: 90em) {
  /* ------------------------------------------------------------------------ *\
   * Module
  \* ------------------------------------------------------------------------ */
  /* ------------------------------------------------------------------------ *\
   * Layout
  \* ------------------------------------------------------------------------ */
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1vZGVybi5jc3MiLCJoZWxwZXJzL19oZWxwZXJzLnNjc3MiLCJoZWxwZXJzL19taXhpbnMuc2NzcyIsImhlbHBlcnMvX2Z1bmN0aW9ucy5zY3NzIiwiaGVscGVycy9fdmFyaWFibGVzLnNjc3MiLCJ2aWV3cy9fc2NyZWVuLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbm9ybWFsaXplLmNzcy9ub3JtYWxpemUuY3NzIiwiYmFzZS9ub3JtYWxpemUvX25vcm1hbGl6ZS5zY3NzIiwiYmFzZS9zZWxlY3Rpb24vX3NlbGVjdGlvbi5zY3NzIiwiYmFzZS9hbGlnbi9fYWxpZ24uc2NzcyIsImJhc2UvZGl2aWRlci9fZGl2aWRlci5zY3NzIiwiYmFzZS9ncmlkL19ncmlkLnNjc3MiLCJiYXNlL2xpbmsvX2xpbmsuc2NzcyIsImJhc2UvYnV0dG9uL19idXR0b24uc2NzcyIsImJhc2UvaW5wdXQvX2lucHV0LnNjc3MiLCJiYXNlL3RpdGxlL190aXRsZS5zY3NzIiwiYmFzZS90ZXh0L190ZXh0LnNjc3MiLCJiYXNlL2Jsb2NrcXVvdGUvX2Jsb2NrcXVvdGUuc2NzcyIsImJhc2UvdXNlci1jb250ZW50L191c2VyLWNvbnRlbnQuc2NzcyIsIm1vZHVsZS9hY2Nlc3NpYmxlLXBvZXRyeS9fYWNjZXNzaWJsZS1wb2V0cnkuc2NzcyIsIm1vZHVsZS9hcnRpY2xlL19hcnRpY2xlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvaGFuZG9yZ2VsL3NyYy9zY3NzL3N0eWxlLnNjc3MiLCJtb2R1bGUvaGFuZG9yZ2VsL19oYW5kb3JnZWwuc2NzcyIsIm1vZHVsZS9pZnJhbWUvX2lmcmFtZS5zY3NzIiwibW9kdWxlL2xvZ28vX2xvZ28uc2NzcyIsIm1vZHVsZS9tZW51LWxpc3QvX21lbnUtbGlzdC5zY3NzIiwibW9kdWxlL25pbmphLWZvcm1zL19uaW5qYS1mb3Jtcy5zY3NzIiwibW9kdWxlL3BhbmVsLXRvZ2dsZS9fcGFuZWwtdG9nZ2xlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvcGhvdG9zd2lwZS9kaXN0L3Bob3Rvc3dpcGUuY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL3Bob3Rvc3dpcGUvZGlzdC9kZWZhdWx0LXNraW4vZGVmYXVsdC1za2luLmNzcyIsIm1vZHVsZS9waG90b3N3aXBlL19waG90b3N3aXBlLnNjc3MiLCJtb2R1bGUvcG9zdC1wYXNzd29yZC1mb3JtL19wb3N0LXBhc3N3b3JkLWZvcm0uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9wd2EtaW5zdGFsbC1wcm9tcHQvc3R5bGUuY3NzIiwibW9kdWxlL3B3YS1pbnN0YWxsLXByb21wdC9fcHdhLWluc3RhbGwtcHJvbXB0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvc2Nyb2xsLWhpbnQvc2Nzcy9zY3JvbGwtaGludC5zY3NzIiwibW9kdWxlL3Njcm9sbC1oaW50L19zY3JvbGwtaGludC5zY3NzIiwibW9kdWxlL3NlYXJjaC1mb3JtL19zZWFyY2gtZm9ybS5zY3NzIiwibW9kdWxlL3NraXAtbGlua3MvX3NraXAtbGlua3Muc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9zd2lwZXIvc3dpcGVyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvc3dpcGVyL21vZHVsZXMvZWZmZWN0LWZhZGUvZWZmZWN0LWZhZGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9zd2lwZXIvbW9kdWxlcy9uYXZpZ2F0aW9uL25hdmlnYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9zd2lwZXIvbW9kdWxlcy9wYWdpbmF0aW9uL3BhZ2luYXRpb24uc2NzcyIsIm1vZHVsZS9zd2lwZXIvX3N3aXBlci5zY3NzIiwibW9kdWxlL3RyaWJlLWV2ZW50cy9fdHJpYmUtZXZlbnRzLnNjc3MiLCJtb2R1bGUvd29vY29tbWVyY2UvX3dvb2NvbW1lcmNlLnNjc3MiLCJtb2R1bGUvd3AtY2FwdGlvbi9fd3AtY2FwdGlvbi5zY3NzIiwibW9kdWxlL3dwLWdhbGxlcnkvX3dwLWdhbGxlcnkuc2NzcyIsIm1vZHVsZS9sb2NhdGlvbi9fbG9jYXRpb24uc2NzcyIsIm1vZHVsZS9vdmVybGF5L19vdmVybGF5LnNjc3MiLCJtb2R1bGUvbmV3cy9fbmV3cy5zY3NzIiwibGF5b3V0L3BhZ2UvX3BhZ2Uuc2NzcyIsImxheW91dC9hbGVydC9fYWxlcnQuc2NzcyIsImxheW91dC9oZWFkZXIvX2hlYWRlci5zY3NzIiwibGF5b3V0L25hdmlnYXRpb24vX25hdmlnYXRpb24uc2NzcyIsImxheW91dC9oZXJvL19oZXJvLnNjc3MiLCJsYXlvdXQvY29udGVudC9fY29udGVudC5zY3NzIiwibGF5b3V0L2Zvb3Rlci9fZm9vdGVyLnNjc3MiLCJ2aWV3cy9fc2NyZWVuX3h4eHMuc2NzcyIsInZpZXdzL19zY3JlZW5feHhzLnNjc3MiLCJtb2R1bGUvc3dpcGVyL19zd2lwZXJfeHhzLnNjc3MiLCJ2aWV3cy9fc2NyZWVuX3hzLnNjc3MiLCJtb2R1bGUvY29sdW1ucy9fY29sdW1uc194cy5zY3NzIiwidmlld3MvX3NjcmVlbl9zLnNjc3MiLCJ2aWV3cy9fc2NyZWVuX20uc2NzcyIsInZpZXdzL19zY3JlZW5fbC5zY3NzIiwibW9kdWxlL3N3aXBlci9fc3dpcGVyX2wuc2NzcyIsInZpZXdzL19zY3JlZW5feGwuc2NzcyIsInZpZXdzL19zY3JlZW5feHhsLnNjc3MiLCJtb2R1bGUvbWVudS1saXN0L19tZW51LWxpc3RfeHhsLnNjc3MiLCJ2aWV3cy9fc2NyZWVuX3h4eGwuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNFaEI7OzZFQUFBO0FDQUE7OzZFQUFBO0FDRUE7OzZFQUFBO0FBSUE7Ozs7O0VBQUE7QUFVQTs7OztFQUFBO0FBU0E7Ozs7OztFQUFBO0FBK0JBOzs7OztFQUFBO0FBYUE7Ozs7O0VBQUE7QUNuRUE7OzZFQUFBO0FBNkVBOzs2RUFBQTtBQU9BOzs2RUFBQTtBQVFBOzs2RUFBQTtBQU1BOzs2RUFBQTtBQTBCQTs7NkVBQUE7QUhsSEE7RUFDSSx5QkFBQTtBRDZDSjs7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OzsrRUFBQTtFQUlBOzsrRUFBQTtBL0R5cU5BO0FFbmpOSTtFOEQxSEo7OytFQUFBO0VDQUE7OytFQUFBO0VBU0k7SUFDSSw4QkFBQTtFakU2cU5OO0VpRTFxTkU7SUFDSSx5QkFBQTtFakU0cU5OOztFZ0Vwck5GOzsrRUFBQTtBaEV5ck5BO0FFcmtOSTtFZ0UxSEo7OytFQUFBO0VBSUE7OytFQUFBO0FsRW1zTkE7QUU3a05JO0VpRTFISjs7K0VBQUE7RUNBQTs7K0VBQUE7RUFJQSx1QkFBQTtFQUVJO0lBQ0ksa0JBQUE7SUFDQSw2QkFBQTtFcEUyc05OO0VvRXRzTk07O0lBQ0ksNENBQUE7RXBFeXNOVjs7RW1FanRORjs7K0VBQUE7QW5Fc3ROQTtBRWxtTkk7RW1FMUhKOzsrRUFBQTtFQUlBOzsrRUFBQTtBckVndU5BIiwiZmlsZSI6Im1vZGVybi4yYzM4NWFlZi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBIZWxwZXJzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNaXhpbnNcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEZ1bmN0aW9uc1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLypcbiAqIFJldHJpZXZlIGEgY29sb3IgdmFyaWFibGVcbiAqXG4gKiBAcGFyYW0gIHtzdHJpbmd9ICAkY29sb3IgLSBUaGUgbmFtZSBvZiB0aGUgY29sb3IgYXMgZGVmaW5lZCBpbiBfdmFyaWFibGVzXG4gKiBAcGFyYW0gIHtzdHJpbmd9ICAkdG9uZSAgLSBUaGUgdmFyaWFudCBvZiB0aGUgY29sb3IgKHNoYWRlfGJhc2V8dGludClcbiAqL1xuLypcbiAqIFJlbW92ZSB0aGUgdW5pdCBvZiBhIGxlbmd0aFxuICpcbiAqIEBwYXJhbSAge051bWJlcn0gICRudW1iZXJcbiAqL1xuLypcbiAqIENvbnZlcnQgUFggdW5pdHMgaW4gdG8gRU0gb3IgUkVNLCByZWxhdGl2ZSB0byBhIHNwZWNpZmllZCBiYXNlIHNpemVzXG4gKlxuICogQHBhcmFtICB7TnVtYmVyfSAgJHNpemUgLSBBcnJheSBvZiB1cCB0byBmb3VyIHNpemVzIGluIFBYIHVuaXRzXG4gKiBAcGFyYW0gIHtOdW1iZXJ9ICAkYmFzZSAtIEZvbnQgc2l6ZSB0byBiYXNlIGNhbGN1bGF0aW9ucyBvZmYgb2ZcbiAqIEBwYXJhbSAge1N0cmluZ30gICR1bml0IC0gRWl0aGVyIFwiZW1cIiBvciBcInJlbVwiXG4gKi9cbi8qXG4gKiBDb252ZXJ0IFBob3Rvc2hvcCBsZWFkaW5nIHRvIENTUyBsaW5lLWhlaWdodFxuICpcbiAqIEBwYXJhbSAge051bWJlcn0gICRzaXplIC0gVmFsdWUgb2YgTGVhZGluZyBpbiBQaG90b3Nob3AncyBDaGFyYWN0ZXIgUGFuZWxcbiAqIEBwYXJhbSAge051bWJlcn0gICRiYXNlIC0gVmFsdWUgb2YgRm9udCBTaXplIGluIFBob3Rvc2hvcCdzIENoYXJhY3RlciBQYW5lbFxuICovXG4vKlxuICogQ29udmVydCBQaG90b3Nob3AgdHJhY2tpbmcgdG8gQ1NTIGxldHRlci1zcGFjaW5nXG4gKlxuICogQHBhcmFtICB7TnVtYmVyfSAgJHNpemUgLSBWYWx1ZSBvZiBUcmFja2luZyBpbiBQaG90b3Nob3AncyBDaGFyYWN0ZXIgUGFuZWxcbiAqIEBwYXJhbSAge051bWJlcn0gICRiYXNlIC0gVmFsdWUgb2YgRm9udCBTaXplIGluIFBob3Rvc2hvcCdzIENoYXJhY3RlciBQYW5lbFxuICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBDb2xvcnNcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEZvbnRzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBXaWR0aHNcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIENvbHVtbiBDb3VudFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQnJlYWsgUG9pbnRzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBMYXllcnNcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5fX2Rhcmsge1xuICBjb2xvcjogIzAwMDAwMCAhaW1wb3J0YW50O1xufVxuXG4uX19saWdodCB7XG4gIGNvbG9yOiAjRkZGRkZGICFpbXBvcnRhbnQ7XG59XG5cbi5fX2luaGVyaXQge1xuICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuXG4uX19iaWcge1xuICBmb250LXNpemU6IDEuMjVlbSAhaW1wb3J0YW50O1xufVxuXG4uX19zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC43NWVtICFpbXBvcnRhbnQ7XG59XG5cbi5fX2JvbGQge1xuICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG59XG5cbi5fX2l0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYyAhaW1wb3J0YW50O1xufVxuXG4uX191bmRlcmxpbmUge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhaW1wb3J0YW50O1xufVxuXG4uX19sb3dlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7XG59XG5cbi5fX3VwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbn1cblxuLl9fdGV4dGNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xufVxuXG4uX190ZXh0bGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLl9fdGV4dHJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbn1cblxuLl9fbm93cmFwIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xufVxuXG4uX19jZW50ZXIge1xuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cblxuLl9fbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi5fX3JpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5fX25vbWFyZ2luIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5fX25vcGFkZGluZyB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLl9fbm90cmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLl9fbm90cmFuc2l0aW9uIHtcbiAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uX19ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5fX2ZsZXgge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG59XG5cbi5fX2lubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xufVxuXG4uX192aXN1YWxseWhpZGRlbiB7XG4gIGxlZnQ6IC05OTllbSAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgdG9wOiAtOTk5ZW0gIWltcG9ydGFudDtcbn1cblxuLl9fcHJpbWFyeSB7XG4gIGNvbG9yOiAjQkIwRDEyICFpbXBvcnRhbnQ7XG59XG5cbi5fX2FjY2VudCB7XG4gIGNvbG9yOiAjOTU3NjAwICFpbXBvcnRhbnQ7XG59XG5cbi5fX3RlcnRpYXJ5IHtcbiAgY29sb3I6ICNFRDFGMjUgIWltcG9ydGFudDtcbn1cblxuLl9fZXJyb3Ige1xuICBjb2xvcjogI0M2MjgyOCAhaW1wb3J0YW50O1xufVxuXG4vKiBcInZpc2libGVcIiBjbGFzc2VzICovXG5AbWVkaWEgKG1heC13aWR0aDogMjkuOTM3NWVtKSB7XG4gIC5fX3Zpc2libGUteHh4cyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5fX3Zpc2libGUteHhzIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLl9fdmlzaWJsZS14cyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTMuMjVlbSkge1xuICAuX192aXNpYmxlLXMge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDU5LjkzNzVlbSkge1xuICAuX192aXNpYmxlLW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuX192aXNpYmxlLWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc5LjkzNzVlbSkge1xuICAuX192aXNpYmxlLXhsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA4NS4zMTI1ZW0pIHtcbiAgLl9fdmlzaWJsZS14eGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDg5LjkzNzVlbSkge1xuICAuX192aXNpYmxlLXh4eGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLyogXCJoaWRkZW5cIiBjbGFzc2VzIC0tIE5PVEU6IEl0IGlzIGltcG9ydGFudCB0aGF0IF9faGlkZGVuIGNsYXNzZXMgY29tZSBhZnRlciBfX3Zpc2libGUgZm9yIG92ZXJyaWRlIHB1cnBvc2VzICovXG5AbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAuX19oaWRkZW4teHh4cyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAuX19oaWRkZW4teHhzIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5fX2hpZGRlbi14cyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTMuMzEyNWVtKSB7XG4gIC5fX2hpZGRlbi1zIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5fX2hpZGRlbi1tIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5fX2hpZGRlbi1sIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5fX2hpZGRlbi14bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogODUuMzc1ZW0pIHtcbiAgLl9faGlkZGVuLXh4bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTBlbSkge1xuICAuX19oaWRkZW4teHh4bCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBCYXNlXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4gKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLyoqXG4gKiBSZW5kZXIgdGhlIGBtYWluYCBlbGVtZW50IGNvbnNpc3RlbnRseSBpbiBJRS5cbiAqL1xubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAyICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cbmJ1dHRvbixcbmlucHV0IHtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uLFxuc2VsZWN0IHtcbiAgLyogMSAqL1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1yZXNldF06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1zdWJtaXRdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZyxcblt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxcblt0eXBlPXN1Ym1pdF06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7XG4gIC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5bdHlwZT1jaGVja2JveF0sXG5bdHlwZT1yYWRpb10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gKi9cblt0eXBlPXNlYXJjaF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cbiAqL1xuW3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE5vcm1hbGl6ZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCwgc2VsZWN0b3ItbWF4LXR5cGUsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSAqL1xuLyogVGhlc2Ugc3R5bGVzIGFyZSBpbnRlbmRlZCB0byBiZSBnbG9iYWwgKi9cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuW3R5cGU9c2VhcmNoXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuW3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbnN2ZyB7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyogUmVtb3ZlIG91dGxpbmUgZm9yIG5vbi1rZXlib2FyZCA6Zm9jdXMgKi9cbio6Zm9jdXM6bm90KC5mb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbmltZyB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU2VsZWN0aW9uXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5NTc2MDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBBbGlnbm1lbnRcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5hbGlnbmNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuXG4uYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMS41ZW07XG4gIG1heC13aWR0aDogMzMuMzMzMzMzMzMzMyU7XG59XG5cbi5hbGlnbnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogMS41ZW07XG4gIG1heC13aWR0aDogMzMuMzMzMzMzMzMzMyU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLmFsaWdubGVmdCxcbi5hbGlnbnJpZ2h0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIERpdmlkZXJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5kaXZpZGVyIHtcbiAgYmFja2dyb3VuZDogI0JCMEQxMjtcbiAgYm9yZGVyOiAwO1xuICBjbGVhcjogYm90aDtcbiAgaGVpZ2h0OiAwLjEyNXJlbTtcbiAgbWFyZ2luOiAyZW0gMGVtO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmRpdmlkZXItLXZlcnRpY2FsIHtcbiAgaGVpZ2h0OiAyLjY4NzVlbTtcbiAgbWFyZ2luOiAwZW0gMS45Mzc1ZW07XG4gIHdpZHRoOiAwLjE4NzVlbTtcbn1cblxuLmRpdmlkZXItLXBhZ2UtYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQ6ICM5MDkwOTA7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEdyaWQgKGJhc2VkIGxvb3NlbHkgb24gaHR0cHM6Ly92NC1hbHBoYS5nZXRib290c3RyYXAuY29tL2xheW91dC9ncmlkLylcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4ucm93ID4gW2NsYXNzKj1jb2wtXSB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgZmxleC1zaHJpbms6IDE7XG4gIG1pbi13aWR0aDogMDtcbn1cbi5yb3cgPiAuY29sLS1ncm93LTAge1xuICBmbGV4LWdyb3c6IDA7XG59XG4ucm93ID4gLmNvbC0tc2hyaW5rLTAge1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLnJvdy0tZGlzcGxheS1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTIsIDFmcik7XG59XG4ucm93LS1kaXNwbGF5LWdyaWQucm93LS1lcXVhbCB7XG4gIGdyaWQtYXV0by1jb2x1bW5zOiAxZnI7XG4gIGdyaWQtYXV0by1yb3dzOiAxZnI7XG59XG5cbi5yb3ctLXBhZGRlZCxcbi5pcy1zdHlsZS1yb3ctcGFkZGVkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMS44NzVlbTtcbn1cbi5yb3ctLXBhZGRlZCA+IFtjbGFzcyo9Y29sLV0sXG4uaXMtc3R5bGUtcm93LXBhZGRlZCA+IFtjbGFzcyo9Y29sLV0ge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjg3NWVtO1xufVxuXG4ucm93LS1wYWRkZWQtdGlnaHQsXG4uaXMtc3R5bGUtcm93LXBhZGRlZC10aWdodCB7XG4gIG1hcmdpbi1yaWdodDogLTEuNDA2MjVlbTtcbn1cbi5yb3ctLXBhZGRlZC10aWdodCA+IFtjbGFzcyo9Y29sLV0sXG4uaXMtc3R5bGUtcm93LXBhZGRlZC10aWdodCA+IFtjbGFzcyo9Y29sLV0ge1xuICBwYWRkaW5nLXJpZ2h0OiAxLjQwNjI1ZW07XG59XG5cbi5yb3ctLXBhZGRlZC1sb29zZSxcbi5pcy1zdHlsZS1yb3ctcGFkZGVkLWxvb3NlIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMi4zNDM3NWVtO1xufVxuLnJvdy0tcGFkZGVkLWxvb3NlID4gW2NsYXNzKj1jb2wtXSxcbi5pcy1zdHlsZS1yb3ctcGFkZGVkLWxvb3NlID4gW2NsYXNzKj1jb2wtXSB7XG4gIHBhZGRpbmctcmlnaHQ6IDIuMzQzNzVlbTtcbn1cblxuLnJvdy0td3JhcC1ubyB7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xufVxuXG4ucm93LS13cmFwLXJldmVyc2Uge1xuICBmbGV4LXdyYXA6IHdyYXAtcmV2ZXJzZTtcbn1cblxuLnJvdy0tY2VudGVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5yb3ctLWFsaWduLXN0YXJ0IHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5yb3ctLWFsaWduLWNlbnRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5yb3ctLWFsaWduLWVuZCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbn1cblxuLnJvdy0tYWxpZ24tc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuXG4ucm93LS1qdXN0aWZ5LXN0YXJ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4ucm93LS1qdXN0aWZ5LWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ucm93LS1qdXN0aWZ5LWVuZCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5yb3ctLWp1c3RpZnktYXJvdW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG59XG5cbi5yb3ctLWp1c3RpZnktYmV0d2VlbiB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLnJvdy0tZGlyZWN0aW9uLWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5yb3ctLWRpcmVjdGlvbi1yZXZlcnNlOm5vdCgucm93LS1kaXJlY3Rpb24tY29sdW1uKSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbn1cbi5yb3ctLWRpcmVjdGlvbi1yZXZlcnNlLnJvdy0tZGlyZWN0aW9uLWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbn1cblxuLmNvbC1hdXRvIHtcbiAgZmxleC1iYXNpczogYXV0bztcbn1cblxuLmNvbC0wIHtcbiAgZmxleC1iYXNpczogMCU7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDA7XG59XG5cbi5jb2wtMSB7XG4gIGZsZXgtYmFzaXM6IDguMzMzMzMzMzMzMyU7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDE7XG59XG5cbi5jb2wtMiB7XG4gIGZsZXgtYmFzaXM6IDE2LjY2NjY2NjY2NjclO1xuICBncmlkLWNvbHVtbjogc3BhbiAyO1xufVxuXG4uY29sLTMge1xuICBmbGV4LWJhc2lzOiAyNSU7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDM7XG59XG5cbi5jb2wtNCB7XG4gIGZsZXgtYmFzaXM6IDMzLjMzMzMzMzMzMzMlO1xuICBncmlkLWNvbHVtbjogc3BhbiA0O1xufVxuXG4uY29sLTUge1xuICBmbGV4LWJhc2lzOiA0MS42NjY2NjY2NjY3JTtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gNTtcbn1cblxuLmNvbC02IHtcbiAgZmxleC1iYXNpczogNTAlO1xuICBncmlkLWNvbHVtbjogc3BhbiA2O1xufVxuXG4uY29sLTcge1xuICBmbGV4LWJhc2lzOiA1OC4zMzMzMzMzMzMzJTtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gNztcbn1cblxuLmNvbC04IHtcbiAgZmxleC1iYXNpczogNjYuNjY2NjY2NjY2NyU7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDg7XG59XG5cbi5jb2wtOSB7XG4gIGZsZXgtYmFzaXM6IDc1JTtcbiAgZ3JpZC1jb2x1bW46IHNwYW4gOTtcbn1cblxuLmNvbC0xMCB7XG4gIGZsZXgtYmFzaXM6IDgzLjMzMzMzMzMzMzMlO1xuICBncmlkLWNvbHVtbjogc3BhbiAxMDtcbn1cblxuLmNvbC0xMSB7XG4gIGZsZXgtYmFzaXM6IDkxLjY2NjY2NjY2NjclO1xuICBncmlkLWNvbHVtbjogc3BhbiAxMTtcbn1cblxuLmNvbC0xMiB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGdyaWQtY29sdW1uOiBzcGFuIDEyO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAuY29sLXh4eHMtYXV0byB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuXG4gIC5jb2wteHh4cy0wIHtcbiAgICBmbGV4LWJhc2lzOiAwJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAwO1xuICB9XG5cbiAgLmNvbC14eHhzLTEge1xuICAgIGZsZXgtYmFzaXM6IDguMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTtcbiAgfVxuXG4gIC5jb2wteHh4cy0yIHtcbiAgICBmbGV4LWJhc2lzOiAxNi42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICB9XG5cbiAgLmNvbC14eHhzLTMge1xuICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAzO1xuICB9XG5cbiAgLmNvbC14eHhzLTQge1xuICAgIGZsZXgtYmFzaXM6IDMzLjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDQ7XG4gIH1cblxuICAuY29sLXh4eHMtNSB7XG4gICAgZmxleC1iYXNpczogNDEuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNTtcbiAgfVxuXG4gIC5jb2wteHh4cy02IHtcbiAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNjtcbiAgfVxuXG4gIC5jb2wteHh4cy03IHtcbiAgICBmbGV4LWJhc2lzOiA1OC4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA3O1xuICB9XG5cbiAgLmNvbC14eHhzLTgge1xuICAgIGZsZXgtYmFzaXM6IDY2LjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDg7XG4gIH1cblxuICAuY29sLXh4eHMtOSB7XG4gICAgZmxleC1iYXNpczogNzUlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDk7XG4gIH1cblxuICAuY29sLXh4eHMtMTAge1xuICAgIGZsZXgtYmFzaXM6IDgzLjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDEwO1xuICB9XG5cbiAgLmNvbC14eHhzLTExIHtcbiAgICBmbGV4LWJhc2lzOiA5MS42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMTtcbiAgfVxuXG4gIC5jb2wteHh4cy0xMiB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMjtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmNvbC14eHMtYXV0byB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuXG4gIC5jb2wteHhzLTAge1xuICAgIGZsZXgtYmFzaXM6IDAlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDA7XG4gIH1cblxuICAuY29sLXh4cy0xIHtcbiAgICBmbGV4LWJhc2lzOiA4LjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDE7XG4gIH1cblxuICAuY29sLXh4cy0yIHtcbiAgICBmbGV4LWJhc2lzOiAxNi42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICB9XG5cbiAgLmNvbC14eHMtMyB7XG4gICAgZmxleC1iYXNpczogMjUlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDM7XG4gIH1cblxuICAuY29sLXh4cy00IHtcbiAgICBmbGV4LWJhc2lzOiAzMy4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA0O1xuICB9XG5cbiAgLmNvbC14eHMtNSB7XG4gICAgZmxleC1iYXNpczogNDEuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNTtcbiAgfVxuXG4gIC5jb2wteHhzLTYge1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA2O1xuICB9XG5cbiAgLmNvbC14eHMtNyB7XG4gICAgZmxleC1iYXNpczogNTguMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNztcbiAgfVxuXG4gIC5jb2wteHhzLTgge1xuICAgIGZsZXgtYmFzaXM6IDY2LjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDg7XG4gIH1cblxuICAuY29sLXh4cy05IHtcbiAgICBmbGV4LWJhc2lzOiA3NSU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gOTtcbiAgfVxuXG4gIC5jb2wteHhzLTEwIHtcbiAgICBmbGV4LWJhc2lzOiA4My4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMDtcbiAgfVxuXG4gIC5jb2wteHhzLTExIHtcbiAgICBmbGV4LWJhc2lzOiA5MS42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMTtcbiAgfVxuXG4gIC5jb2wteHhzLTEyIHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDEyO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLXhzLWF1dG8ge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cblxuICAuY29sLXhzLTAge1xuICAgIGZsZXgtYmFzaXM6IDAlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDA7XG4gIH1cblxuICAuY29sLXhzLTEge1xuICAgIGZsZXgtYmFzaXM6IDguMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTtcbiAgfVxuXG4gIC5jb2wteHMtMiB7XG4gICAgZmxleC1iYXNpczogMTYuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcbiAgfVxuXG4gIC5jb2wteHMtMyB7XG4gICAgZmxleC1iYXNpczogMjUlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDM7XG4gIH1cblxuICAuY29sLXhzLTQge1xuICAgIGZsZXgtYmFzaXM6IDMzLjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDQ7XG4gIH1cblxuICAuY29sLXhzLTUge1xuICAgIGZsZXgtYmFzaXM6IDQxLjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDU7XG4gIH1cblxuICAuY29sLXhzLTYge1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA2O1xuICB9XG5cbiAgLmNvbC14cy03IHtcbiAgICBmbGV4LWJhc2lzOiA1OC4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA3O1xuICB9XG5cbiAgLmNvbC14cy04IHtcbiAgICBmbGV4LWJhc2lzOiA2Ni42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA4O1xuICB9XG5cbiAgLmNvbC14cy05IHtcbiAgICBmbGV4LWJhc2lzOiA3NSU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gOTtcbiAgfVxuXG4gIC5jb2wteHMtMTAge1xuICAgIGZsZXgtYmFzaXM6IDgzLjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDEwO1xuICB9XG5cbiAgLmNvbC14cy0xMSB7XG4gICAgZmxleC1iYXNpczogOTEuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTE7XG4gIH1cblxuICAuY29sLXhzLTEyIHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDEyO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTMuMzEyNWVtKSB7XG4gIC5jb2wtcy1hdXRvIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG5cbiAgLmNvbC1zLTAge1xuICAgIGZsZXgtYmFzaXM6IDAlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDA7XG4gIH1cblxuICAuY29sLXMtMSB7XG4gICAgZmxleC1iYXNpczogOC4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxO1xuICB9XG5cbiAgLmNvbC1zLTIge1xuICAgIGZsZXgtYmFzaXM6IDE2LjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gIH1cblxuICAuY29sLXMtMyB7XG4gICAgZmxleC1iYXNpczogMjUlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDM7XG4gIH1cblxuICAuY29sLXMtNCB7XG4gICAgZmxleC1iYXNpczogMzMuMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNDtcbiAgfVxuXG4gIC5jb2wtcy01IHtcbiAgICBmbGV4LWJhc2lzOiA0MS42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA1O1xuICB9XG5cbiAgLmNvbC1zLTYge1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA2O1xuICB9XG5cbiAgLmNvbC1zLTcge1xuICAgIGZsZXgtYmFzaXM6IDU4LjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDc7XG4gIH1cblxuICAuY29sLXMtOCB7XG4gICAgZmxleC1iYXNpczogNjYuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gODtcbiAgfVxuXG4gIC5jb2wtcy05IHtcbiAgICBmbGV4LWJhc2lzOiA3NSU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gOTtcbiAgfVxuXG4gIC5jb2wtcy0xMCB7XG4gICAgZmxleC1iYXNpczogODMuMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTA7XG4gIH1cblxuICAuY29sLXMtMTEge1xuICAgIGZsZXgtYmFzaXM6IDkxLjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDExO1xuICB9XG5cbiAgLmNvbC1zLTEyIHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDEyO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLW0tYXV0byB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuXG4gIC5jb2wtbS0wIHtcbiAgICBmbGV4LWJhc2lzOiAwJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAwO1xuICB9XG5cbiAgLmNvbC1tLTEge1xuICAgIGZsZXgtYmFzaXM6IDguMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTtcbiAgfVxuXG4gIC5jb2wtbS0yIHtcbiAgICBmbGV4LWJhc2lzOiAxNi42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICB9XG5cbiAgLmNvbC1tLTMge1xuICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAzO1xuICB9XG5cbiAgLmNvbC1tLTQge1xuICAgIGZsZXgtYmFzaXM6IDMzLjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDQ7XG4gIH1cblxuICAuY29sLW0tNSB7XG4gICAgZmxleC1iYXNpczogNDEuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNTtcbiAgfVxuXG4gIC5jb2wtbS02IHtcbiAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNjtcbiAgfVxuXG4gIC5jb2wtbS03IHtcbiAgICBmbGV4LWJhc2lzOiA1OC4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA3O1xuICB9XG5cbiAgLmNvbC1tLTgge1xuICAgIGZsZXgtYmFzaXM6IDY2LjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDg7XG4gIH1cblxuICAuY29sLW0tOSB7XG4gICAgZmxleC1iYXNpczogNzUlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDk7XG4gIH1cblxuICAuY29sLW0tMTAge1xuICAgIGZsZXgtYmFzaXM6IDgzLjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDEwO1xuICB9XG5cbiAgLmNvbC1tLTExIHtcbiAgICBmbGV4LWJhc2lzOiA5MS42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMTtcbiAgfVxuXG4gIC5jb2wtbS0xMiB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMjtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbC1sLWF1dG8ge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gIH1cblxuICAuY29sLWwtMCB7XG4gICAgZmxleC1iYXNpczogMCU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMDtcbiAgfVxuXG4gIC5jb2wtbC0xIHtcbiAgICBmbGV4LWJhc2lzOiA4LjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDE7XG4gIH1cblxuICAuY29sLWwtMiB7XG4gICAgZmxleC1iYXNpczogMTYuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMjtcbiAgfVxuXG4gIC5jb2wtbC0zIHtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMztcbiAgfVxuXG4gIC5jb2wtbC00IHtcbiAgICBmbGV4LWJhc2lzOiAzMy4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA0O1xuICB9XG5cbiAgLmNvbC1sLTUge1xuICAgIGZsZXgtYmFzaXM6IDQxLjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDU7XG4gIH1cblxuICAuY29sLWwtNiB7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDY7XG4gIH1cblxuICAuY29sLWwtNyB7XG4gICAgZmxleC1iYXNpczogNTguMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNztcbiAgfVxuXG4gIC5jb2wtbC04IHtcbiAgICBmbGV4LWJhc2lzOiA2Ni42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA4O1xuICB9XG5cbiAgLmNvbC1sLTkge1xuICAgIGZsZXgtYmFzaXM6IDc1JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA5O1xuICB9XG5cbiAgLmNvbC1sLTEwIHtcbiAgICBmbGV4LWJhc2lzOiA4My4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMDtcbiAgfVxuXG4gIC5jb2wtbC0xMSB7XG4gICAgZmxleC1iYXNpczogOTEuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTE7XG4gIH1cblxuICAuY29sLWwtMTIge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTI7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wteGwtYXV0byB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuXG4gIC5jb2wteGwtMCB7XG4gICAgZmxleC1iYXNpczogMCU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMDtcbiAgfVxuXG4gIC5jb2wteGwtMSB7XG4gICAgZmxleC1iYXNpczogOC4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxO1xuICB9XG5cbiAgLmNvbC14bC0yIHtcbiAgICBmbGV4LWJhc2lzOiAxNi42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICB9XG5cbiAgLmNvbC14bC0zIHtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMztcbiAgfVxuXG4gIC5jb2wteGwtNCB7XG4gICAgZmxleC1iYXNpczogMzMuMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNDtcbiAgfVxuXG4gIC5jb2wteGwtNSB7XG4gICAgZmxleC1iYXNpczogNDEuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNTtcbiAgfVxuXG4gIC5jb2wteGwtNiB7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDY7XG4gIH1cblxuICAuY29sLXhsLTcge1xuICAgIGZsZXgtYmFzaXM6IDU4LjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDc7XG4gIH1cblxuICAuY29sLXhsLTgge1xuICAgIGZsZXgtYmFzaXM6IDY2LjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDg7XG4gIH1cblxuICAuY29sLXhsLTkge1xuICAgIGZsZXgtYmFzaXM6IDc1JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA5O1xuICB9XG5cbiAgLmNvbC14bC0xMCB7XG4gICAgZmxleC1iYXNpczogODMuMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTA7XG4gIH1cblxuICAuY29sLXhsLTExIHtcbiAgICBmbGV4LWJhc2lzOiA5MS42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxMTtcbiAgfVxuXG4gIC5jb2wteGwtMTIge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTI7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA4NS4zNzVlbSkge1xuICAuY29sLXh4bC1hdXRvIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG5cbiAgLmNvbC14eGwtMCB7XG4gICAgZmxleC1iYXNpczogMCU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMDtcbiAgfVxuXG4gIC5jb2wteHhsLTEge1xuICAgIGZsZXgtYmFzaXM6IDguMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTtcbiAgfVxuXG4gIC5jb2wteHhsLTIge1xuICAgIGZsZXgtYmFzaXM6IDE2LjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gIH1cblxuICAuY29sLXh4bC0zIHtcbiAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMztcbiAgfVxuXG4gIC5jb2wteHhsLTQge1xuICAgIGZsZXgtYmFzaXM6IDMzLjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDQ7XG4gIH1cblxuICAuY29sLXh4bC01IHtcbiAgICBmbGV4LWJhc2lzOiA0MS42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA1O1xuICB9XG5cbiAgLmNvbC14eGwtNiB7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDY7XG4gIH1cblxuICAuY29sLXh4bC03IHtcbiAgICBmbGV4LWJhc2lzOiA1OC4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA3O1xuICB9XG5cbiAgLmNvbC14eGwtOCB7XG4gICAgZmxleC1iYXNpczogNjYuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gODtcbiAgfVxuXG4gIC5jb2wteHhsLTkge1xuICAgIGZsZXgtYmFzaXM6IDc1JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA5O1xuICB9XG5cbiAgLmNvbC14eGwtMTAge1xuICAgIGZsZXgtYmFzaXM6IDgzLjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDEwO1xuICB9XG5cbiAgLmNvbC14eGwtMTEge1xuICAgIGZsZXgtYmFzaXM6IDkxLjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDExO1xuICB9XG5cbiAgLmNvbC14eGwtMTIge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTI7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5jb2wteHh4bC1hdXRvIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG5cbiAgLmNvbC14eHhsLTAge1xuICAgIGZsZXgtYmFzaXM6IDAlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDA7XG4gIH1cblxuICAuY29sLXh4eGwtMSB7XG4gICAgZmxleC1iYXNpczogOC4zMzMzMzMzMzMzJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiAxO1xuICB9XG5cbiAgLmNvbC14eHhsLTIge1xuICAgIGZsZXgtYmFzaXM6IDE2LjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDI7XG4gIH1cblxuICAuY29sLXh4eGwtMyB7XG4gICAgZmxleC1iYXNpczogMjUlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDM7XG4gIH1cblxuICAuY29sLXh4eGwtNCB7XG4gICAgZmxleC1iYXNpczogMzMuMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gNDtcbiAgfVxuXG4gIC5jb2wteHh4bC01IHtcbiAgICBmbGV4LWJhc2lzOiA0MS42NjY2NjY2NjY3JTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA1O1xuICB9XG5cbiAgLmNvbC14eHhsLTYge1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICBncmlkLWNvbHVtbjogc3BhbiA2O1xuICB9XG5cbiAgLmNvbC14eHhsLTcge1xuICAgIGZsZXgtYmFzaXM6IDU4LjMzMzMzMzMzMzMlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDc7XG4gIH1cblxuICAuY29sLXh4eGwtOCB7XG4gICAgZmxleC1iYXNpczogNjYuNjY2NjY2NjY2NyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gODtcbiAgfVxuXG4gIC5jb2wteHh4bC05IHtcbiAgICBmbGV4LWJhc2lzOiA3NSU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gOTtcbiAgfVxuXG4gIC5jb2wteHh4bC0xMCB7XG4gICAgZmxleC1iYXNpczogODMuMzMzMzMzMzMzMyU7XG4gICAgZ3JpZC1jb2x1bW46IHNwYW4gMTA7XG4gIH1cblxuICAuY29sLXh4eGwtMTEge1xuICAgIGZsZXgtYmFzaXM6IDkxLjY2NjY2NjY2NjclO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDExO1xuICB9XG5cbiAgLmNvbC14eHhsLTEyIHtcbiAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIGdyaWQtY29sdW1uOiBzcGFuIDEyO1xuICB9XG59XG4uY29sLS1kaXZpZGUge1xuICBib3JkZXItcmlnaHQ6IDAuMTg3NWVtIHNvbGlkICM5MDkwOTA7XG4gIG1hcmdpbjogMGVtIDEuOTM3NWVtO1xuICB3aWR0aDogM3B4O1xufVxuXG4uY29sLS1qdXN0aWZ5LWVuZCB7XG4gIGp1c3RpZnktc2VsZjogZmxleC1lbmQ7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIExpbmtcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5saW5rLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBhLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCBhLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgYSwgLndvb2NvbW1lcmNlLWVycm9yIGEsXG4ud29vY29tbWVyY2UtaW5mbyBhLFxuLndvb2NvbW1lcmNlLW1lc3NhZ2UgYSwgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgYSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZyAud29vY29tbWVyY2UtcmV2aWV3LWxpbmssIC53b29jb21tZXJjZSBhLmFkZGVkX3RvX2NhcnQsIC53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBhLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSBhLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgYSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIGEsIC51c2VyLWNvbnRlbnQgYVtocmVmXj1cInRlbDpcIl06bm90KC5saW5rKSwgLnRyaWJlLWV2ZW50cy1jb250ZW50IGEge1xuICBjb2xvcjogI0JCMEQxMjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzO1xufVxuLmxpbms6Zm9jdXMsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IGE6Zm9jdXMsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIGE6Zm9jdXMsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCBhOmZvY3VzLCAud29vY29tbWVyY2UtZXJyb3IgYTpmb2N1cyxcbi53b29jb21tZXJjZS1pbmZvIGE6Zm9jdXMsXG4ud29vY29tbWVyY2UtbWVzc2FnZSBhOmZvY3VzLCAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSBhOmZvY3VzLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIC53b29jb21tZXJjZS1yZXZpZXctbGluazpmb2N1cywgLndvb2NvbW1lcmNlIGEuYWRkZWRfdG9fY2FydDpmb2N1cywgLndvb2NvbW1lcmNlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIGE6Zm9jdXMsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnM6Zm9jdXMsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhIGE6Zm9jdXMsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBhOmZvY3VzLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gYTpmb2N1cywgLnVzZXItY29udGVudCBhW2hyZWZePVwidGVsOlwiXTpmb2N1czpub3QoLmxpbmspLCAudHJpYmUtZXZlbnRzLWNvbnRlbnQgYTpmb2N1cywgLmxpbms6aG92ZXIsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IGE6aG92ZXIsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIGE6aG92ZXIsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCBhOmhvdmVyLCAud29vY29tbWVyY2UtZXJyb3IgYTpob3Zlcixcbi53b29jb21tZXJjZS1pbmZvIGE6aG92ZXIsXG4ud29vY29tbWVyY2UtbWVzc2FnZSBhOmhvdmVyLCAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSBhOmhvdmVyLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIC53b29jb21tZXJjZS1yZXZpZXctbGluazpob3ZlciwgLndvb2NvbW1lcmNlIGEuYWRkZWRfdG9fY2FydDpob3ZlciwgLndvb2NvbW1lcmNlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIGE6aG92ZXIsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnM6aG92ZXIsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhIGE6aG92ZXIsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBhOmhvdmVyLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gYTpob3ZlciwgLnVzZXItY29udGVudCBhW2hyZWZePVwidGVsOlwiXTpob3Zlcjpub3QoLmxpbmspLCAudHJpYmUtZXZlbnRzLWNvbnRlbnQgYTpob3ZlciB7XG4gIGNvbG9yOiAjRUQxRjI1O1xufVxuXG4vKiBpbmhlcml0IHZhcmlhbnQgKi9cbi5saW5rLS1pbmhlcml0IHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4ubGluay0taW5oZXJpdDpmb2N1cywgLmxpbmstLWluaGVyaXQ6aG92ZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEJ1dHRvblxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmJ1dHRvbiwgLnRyaWJlLWV2ZW50cy1jb250ZW50IGEuYnV0dG9uLCAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWdjYWwsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWljYWwsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWljcyB7XG4gIGJhY2tncm91bmQ6ICNCQjBEMTI7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjIyMjIyMjIyMmVtO1xuICBtYXJnaW46IDBlbSAyLjM4ODg4ODg4ODllbSAxLjA1NTU1NTU1NTZlbSAwZW07XG4gIG91dGxpbmU6IDA7XG4gIHBhZGRpbmc6IDEuMTExMTExMTExMWVtIDEuMjIyMjIyMjIyMmVtIDEuMTExMTExMTExMWVtIDIuNWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cztcbn1cbi5idXR0b24gZW0sIC50cmliZS1ldmVudHMtY29udGVudCBhLmJ1dHRvbiBlbSwgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1nY2FsIGVtLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1pY2FsIGVtLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1pY3MgZW0ge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLmJ1dHRvbjphY3RpdmUsIC50cmliZS1ldmVudHMtY29udGVudCBhLmJ1dHRvbjphY3RpdmUsIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIC50cmliZS1ldmVudHMtZ2NhbDphY3RpdmUsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWljYWw6YWN0aXZlLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1pY3M6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VEMUYyNTtcbn1cbi5idXR0b246Zm9jdXMsIC50cmliZS1ldmVudHMtY29udGVudCBhLmJ1dHRvbjpmb2N1cywgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1nY2FsOmZvY3VzLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1pY2FsOmZvY3VzLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1pY3M6Zm9jdXMsIC5idXR0b246aG92ZXIsIC50cmliZS1ldmVudHMtY29udGVudCBhLmJ1dHRvbjpob3ZlciwgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1nY2FsOmhvdmVyLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1pY2FsOmhvdmVyLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1pY3M6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUQxRjI1O1xufVxuXG4uYnV0dG9uLS1hbHQge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xufVxuLmJ1dHRvbi0tYWx0OmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0QTRBNEE7XG59XG4uYnV0dG9uLS1hbHQ6Zm9jdXMsIC5idXR0b24tLWFsdDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0QTRBNEE7XG59XG5cbi5idXR0b24tLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiBkaXNhYmxlZCB2YXJpYW50ICovXG4uYnV0dG9uLS1kaXNhYmxlZCB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIG9wYWNpdHk6IDAuNjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIElucHV0XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uaW5wdXQsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIGlucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94LFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgaW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3gsIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBzZWxlY3QsIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBpbnB1dC5pbnB1dC10ZXh0LFxuLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IHRleHRhcmVhLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC5jb21tZW50LWZvcm0tYXV0aG9yIGlucHV0LFxuLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCAuY29tbWVudC1mb3JtLWVtYWlsIGlucHV0LCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIHRleHRhcmVhLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHNlbGVjdCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudmFyaWF0aW9ucyBzZWxlY3QsIC53b29jb21tZXJjZSAucXVhbnRpdHkgLnF0eSB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlcjogMC4xMjVyZW0gc29saWQgI0NDQ0NDQztcbiAgYm9yZGVyLXJhZGl1czogMC4yNWVtO1xuICBjb2xvcjogIzIxMjEyMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcImlibS1wbGV4LXNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgbWFyZ2luOiAwcmVtIDByZW0gMC42MjVyZW07XG4gIG91dGxpbmU6IDA7XG4gIHBhZGRpbmc6IDAuNjI1ZW0gMC45Mzc1ZW0gMC42MjVlbSAwLjkzNzVlbTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMsIGJhY2tncm91bmQtc2l6ZSAwLjE1cywgYm9yZGVyLWNvbG9yIDAuMTVzLCBjb2xvciAwLjE1cztcbiAgd2lkdGg6IDEwMCU7XG59XG4uaW5wdXQ6bm90KC5pbnB1dC0tZGlzYWJsZWQpOmFjdGl2ZSwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gaW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3g6bm90KC5pbnB1dC0tZGlzYWJsZWQpOmFjdGl2ZSxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIGlucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94Om5vdCguaW5wdXQtLWRpc2FibGVkKTphY3RpdmUsIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBzZWxlY3Q6bm90KC5pbnB1dC0tZGlzYWJsZWQpOmFjdGl2ZSwgLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IGlucHV0LmlucHV0LXRleHQ6bm90KC5pbnB1dC0tZGlzYWJsZWQpOmFjdGl2ZSxcbi53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyB0ZXh0YXJlYTpub3QoLmlucHV0LS1kaXNhYmxlZCk6YWN0aXZlLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC5jb21tZW50LWZvcm0tYXV0aG9yIGlucHV0Om5vdCguaW5wdXQtLWRpc2FibGVkKTphY3RpdmUsXG4ud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC5jb21tZW50LWZvcm0tZW1haWwgaW5wdXQ6bm90KC5pbnB1dC0tZGlzYWJsZWQpOmFjdGl2ZSwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCB0ZXh0YXJlYTpub3QoLmlucHV0LS1kaXNhYmxlZCk6YWN0aXZlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHNlbGVjdDpub3QoLmlucHV0LS1kaXNhYmxlZCk6YWN0aXZlLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHNlbGVjdDpub3QoLmlucHV0LS1kaXNhYmxlZCk6YWN0aXZlLCAud29vY29tbWVyY2UgLnF1YW50aXR5IC5xdHk6bm90KC5pbnB1dC0tZGlzYWJsZWQpOmFjdGl2ZSwgLmlucHV0Om5vdCguaW5wdXQtLWRpc2FibGVkKTpmb2N1cywgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gaW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3g6bm90KC5pbnB1dC0tZGlzYWJsZWQpOmZvY3VzLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgaW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3g6bm90KC5pbnB1dC0tZGlzYWJsZWQpOmZvY3VzLCAud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgc2VsZWN0Om5vdCguaW5wdXQtLWRpc2FibGVkKTpmb2N1cywgLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IGlucHV0LmlucHV0LXRleHQ6bm90KC5pbnB1dC0tZGlzYWJsZWQpOmZvY3VzLFxuLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IHRleHRhcmVhOm5vdCguaW5wdXQtLWRpc2FibGVkKTpmb2N1cywgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCAuY29tbWVudC1mb3JtLWF1dGhvciBpbnB1dDpub3QoLmlucHV0LS1kaXNhYmxlZCk6Zm9jdXMsXG4ud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC5jb21tZW50LWZvcm0tZW1haWwgaW5wdXQ6bm90KC5pbnB1dC0tZGlzYWJsZWQpOmZvY3VzLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIHRleHRhcmVhOm5vdCguaW5wdXQtLWRpc2FibGVkKTpmb2N1cywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlcmluZyBzZWxlY3Q6bm90KC5pbnB1dC0tZGlzYWJsZWQpOmZvY3VzLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHNlbGVjdDpub3QoLmlucHV0LS1kaXNhYmxlZCk6Zm9jdXMsIC53b29jb21tZXJjZSAucXVhbnRpdHkgLnF0eTpub3QoLmlucHV0LS1kaXNhYmxlZCk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM5NTc2MDA7XG59XG4uaW5wdXQ6OnBsYWNlaG9sZGVyLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveDo6cGxhY2Vob2xkZXIsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveDo6cGxhY2Vob2xkZXIsIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBzZWxlY3Q6OnBsYWNlaG9sZGVyLCAud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgaW5wdXQuaW5wdXQtdGV4dDo6cGxhY2Vob2xkZXIsXG4ud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgdGV4dGFyZWE6OnBsYWNlaG9sZGVyLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC5jb21tZW50LWZvcm0tYXV0aG9yIGlucHV0OjpwbGFjZWhvbGRlcixcbi53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLmNvbW1lbnQtZm9ybS1lbWFpbCBpbnB1dDo6cGxhY2Vob2xkZXIsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgdGV4dGFyZWE6OnBsYWNlaG9sZGVyLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHNlbGVjdDo6cGxhY2Vob2xkZXIsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnZhcmlhdGlvbnMgc2VsZWN0OjpwbGFjZWhvbGRlciwgLndvb2NvbW1lcmNlIC5xdWFudGl0eSAucXR5OjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjNDg0ODQ4O1xuICBvcGFjaXR5OiAxO1xufVxuXG4vKiBlcnJvciB2YXJpYW50ICovXG4uaW5wdXQtLWVycm9yLCAubmYtZXJyb3IgLmlucHV0LCAubmYtZXJyb3IgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gaW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3gsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIC5uZi1lcnJvciBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveCxcbi5uZi1lcnJvciAud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveCxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIC5uZi1lcnJvciBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveCwgLm5mLWVycm9yIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBzZWxlY3QsIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyAubmYtZXJyb3Igc2VsZWN0LCAubmYtZXJyb3IgLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IGlucHV0LmlucHV0LXRleHQsIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyAubmYtZXJyb3IgaW5wdXQuaW5wdXQtdGV4dCxcbi5uZi1lcnJvciAud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgdGV4dGFyZWEsXG4ud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgLm5mLWVycm9yIHRleHRhcmVhLCAubmYtZXJyb3IgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCAuY29tbWVudC1mb3JtLWF1dGhvciBpbnB1dCwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCAuY29tbWVudC1mb3JtLWF1dGhvciAubmYtZXJyb3IgaW5wdXQsXG4ubmYtZXJyb3IgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCAuY29tbWVudC1mb3JtLWVtYWlsIGlucHV0LFxuLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCAuY29tbWVudC1mb3JtLWVtYWlsIC5uZi1lcnJvciBpbnB1dCwgLm5mLWVycm9yIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgdGV4dGFyZWEsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLm5mLWVycm9yIHRleHRhcmVhLCAubmYtZXJyb3IgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlcmluZyBzZWxlY3QsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXJpbmcgLm5mLWVycm9yIHNlbGVjdCwgLm5mLWVycm9yIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnZhcmlhdGlvbnMgc2VsZWN0LCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIC5uZi1lcnJvciBzZWxlY3QsIC5uZi1lcnJvciAud29vY29tbWVyY2UgLnF1YW50aXR5IC5xdHksIC53b29jb21tZXJjZSAucXVhbnRpdHkgLm5mLWVycm9yIC5xdHkge1xuICBib3JkZXItY29sb3I6ICNDNjI4Mjg7XG59XG5cbi8qIHN1Y2Nlc3MgdmFyaWFudCAqL1xuLmlucHV0LS1zdWNjZXNzLCAubmYtcGFzcyAuaW5wdXQsIC5uZi1wYXNzIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIGlucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94LCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiAubmYtcGFzcyBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveCxcbi5uZi1wYXNzIC53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIGlucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94LFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgLm5mLXBhc3MgaW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3gsIC5uZi1wYXNzIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBzZWxlY3QsIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyAubmYtcGFzcyBzZWxlY3QsIC5uZi1wYXNzIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBpbnB1dC5pbnB1dC10ZXh0LCAud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgLm5mLXBhc3MgaW5wdXQuaW5wdXQtdGV4dCxcbi5uZi1wYXNzIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyB0ZXh0YXJlYSxcbi53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyAubmYtcGFzcyB0ZXh0YXJlYSwgLm5mLXBhc3MgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCAuY29tbWVudC1mb3JtLWF1dGhvciBpbnB1dCwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCAuY29tbWVudC1mb3JtLWF1dGhvciAubmYtcGFzcyBpbnB1dCxcbi5uZi1wYXNzIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLmNvbW1lbnQtZm9ybS1lbWFpbCBpbnB1dCxcbi53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLmNvbW1lbnQtZm9ybS1lbWFpbCAubmYtcGFzcyBpbnB1dCwgLm5mLXBhc3MgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCB0ZXh0YXJlYSwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCAubmYtcGFzcyB0ZXh0YXJlYSwgLm5mLXBhc3MgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlcmluZyBzZWxlY3QsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXJpbmcgLm5mLXBhc3Mgc2VsZWN0LCAubmYtcGFzcyAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHNlbGVjdCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudmFyaWF0aW9ucyAubmYtcGFzcyBzZWxlY3QsIC5uZi1wYXNzIC53b29jb21tZXJjZSAucXVhbnRpdHkgLnF0eSwgLndvb2NvbW1lcmNlIC5xdWFudGl0eSAubmYtcGFzcyAucXR5IHtcbiAgYm9yZGVyLWNvbG9yOiAjMjhDNjY1O1xufVxuXG4vKiBzZWxlY3QgdmFyaWFudCAqL1xuLmlucHV0LS1zZWxlY3QsIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBzZWxlY3QsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXJpbmcgc2VsZWN0LCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHNlbGVjdCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1pbmRlbnQ6IDAuMDFweDtcbn1cbi5pbnB1dC0tc2VsZWN0OjotbXMtZXhwYW5kLCAud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgc2VsZWN0OjotbXMtZXhwYW5kLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHNlbGVjdDo6LW1zLWV4cGFuZCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudmFyaWF0aW9ucyBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaW5wdXQtLXNlbGVjdC1hcnJvdywgLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IHNlbGVjdCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlcmluZyBzZWxlY3QsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnZhcmlhdGlvbnMgc2VsZWN0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogc3ZnLWxvYWQoXCIuLi9tZWRpYS92ZW5kb3IvZmFzLXNvcnQuc3ZnXCIsIGZpbGw9IzIxMjEyMSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCAwLjkzNzVlbTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAwLjc1ZW07XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoMC43NWVtICsgMS44NzVlbSk7XG59XG5cbi8qIHRvZ2dsZSB2YXJpYW50cyAqL1xuLmlucHV0LS10b2dnbGUsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIGlucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94LFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgaW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3gge1xuICBib3JkZXItd2lkdGg6IDAuMDYyNXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMS41ZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDEuNWVtO1xufVxuLmlucHV0LS10b2dnbGU6OmFmdGVyLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveDo6YWZ0ZXIsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDAuNzVlbTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogLTk5OWVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cywgbGVmdCAwcyAwLjE1cywgdHJhbnNmb3JtIDAuMTVzO1xuICB3aWR0aDogMTAwJTtcbn1cbi5pbnB1dC0tdG9nZ2xlOmNoZWNrZWQ6OmFmdGVyLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveDpjaGVja2VkOjphZnRlcixcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIGlucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94OmNoZWNrZWQ6OmFmdGVyIHtcbiAgbGVmdDogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cywgdHJhbnNmb3JtIDAuMTVzO1xufVxuLmlucHV0LS10b2dnbGUgKyAudGV4dC0tbGFiZWwsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIGlucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94ICsgLnRleHQtLWxhYmVsLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgaW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3ggKyAudGV4dC0tbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uaW5wdXQtLXRvZ2dsZS1jaGVja2JveDpjaGVja2VkLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveDpjaGVja2VkLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgaW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3g6Y2hlY2tlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5NTc2MDA7XG4gIGJvcmRlci1jb2xvcjogIzk1NzYwMDtcbn1cbi5pbnB1dC0tdG9nZ2xlLWNoZWNrYm94OjphZnRlciwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gaW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3g6OmFmdGVyLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgaW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3g6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogc3ZnLWxvYWQoXCIuLi9tZWRpYS92ZW5kb3IvZmFzLWNoZWNrLnN2Z1wiLCBmaWxsPSNGRkZGRkYpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG59XG4uaW5wdXQtLXRvZ2dsZS1jaGVja2JveDpjaGVja2VkOjphZnRlciwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gaW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3g6Y2hlY2tlZDo6YWZ0ZXIsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveDpjaGVja2VkOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xufVxuXG4uaW5wdXQtLXRvZ2dsZS1yYWRpbyB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cbi5pbnB1dC0tdG9nZ2xlLXJhZGlvOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHN2Zy1sb2FkKFwiLi4vbWVkaWEvdmVuZG9yL2Zhcy1jaXJjbGUuc3ZnXCIsIGZpbGw9Izk1NzYwMCk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMCk7XG59XG4uaW5wdXQtLXRvZ2dsZS1yYWRpbzpjaGVja2VkOjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbi8qIGRpc2FibGVkIHZhcmlhbnQgKi9cbi5pbnB1dC0tZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBvcGFjaXR5OiAwLjY7XG59XG5cbi8qIHNlbGVjdCBicm93c2VyIHZhcmlhbnRzICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtdHlwZSwgc2VsZWN0b3Itbm8tdmVuZG9yLXByZWZpeCwgc2VsZWN0b3ItdHlwZS1uby11bmtub3duICovXG4vKiBJRSAqL1xuXzotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG46cm9vdCAuaW5wdXQtLXNlbGVjdCxcbjpyb290IC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBzZWxlY3QsXG46cm9vdCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHNlbGVjdCxcbjpyb290IC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnZhcmlhdGlvbnMgc2VsZWN0IHtcbiAgcGFkZGluZzogMC42MjVlbSBjYWxjKDAuOTM3NWVtIC0gM3B4KSBjYWxjKDAuNjI1ZW0gLSAycHgpO1xufVxuXG5fOi1tcy1pbnB1dC1wbGFjZWhvbGRlcixcbjpyb290IC5pbnB1dC0tc2VsZWN0LWFycm93LFxuOnJvb3QgLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IHNlbGVjdCxcbjpyb290IC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXJpbmcgc2VsZWN0LFxuOnJvb3QgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudmFyaWF0aW9ucyBzZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDAuNzVlbSArIDEuODc1ZW0gLSAzcHgpO1xufVxuXG4vKiBDaHJvbWUgICovXG5Ac3VwcG9ydHMgKC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZSkgYW5kIChmb250LXN0cmV0Y2g6IG5vcm1hbCkgYW5kIChub3QgKC1tcy1hY2NlbGVyYXRvcjogdHJ1ZSkpIHtcbiAgLmlucHV0LS1zZWxlY3QsIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBzZWxlY3QsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXJpbmcgc2VsZWN0LCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHNlbGVjdCB7XG4gICAgcGFkZGluZzogMC42MjVlbSAwLjkzNzVlbSAwLjYyNWVtIDAuOTM3NWVtO1xuICB9XG5cbiAgLmlucHV0LS1zZWxlY3QtYXJyb3csIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBzZWxlY3QsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXJpbmcgc2VsZWN0LCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHNlbGVjdCB7XG4gICAgcGFkZGluZy1yaWdodDogY2FsYygwLjc1ZW0gKyAxLjg3NWVtKTtcbiAgfVxufVxuLyogU2FmYXJpICovXG5fOjotd2Via2l0LWZ1bGwtcGFnZS1tZWRpYSxcbl86ZnV0dXJlLFxuOnJvb3QgLmlucHV0LS1zZWxlY3QsXG46cm9vdCAud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgc2VsZWN0LFxuOnJvb3QgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlcmluZyBzZWxlY3QsXG46cm9vdCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHNlbGVjdCB7XG4gIHBhZGRpbmc6IDAuNjI1ZW0gMC45Mzc1ZW0gMC42MjVlbSAwLjkzNzVlbTtcbn1cblxuXzo6LXdlYmtpdC1mdWxsLXBhZ2UtbWVkaWEsXG5fOmZ1dHVyZSxcbjpyb290IC5pbnB1dC0tc2VsZWN0LWFycm93LFxuOnJvb3QgLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IHNlbGVjdCxcbjpyb290IC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXJpbmcgc2VsZWN0LFxuOnJvb3QgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudmFyaWF0aW9ucyBzZWxlY3Qge1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDAuNzVlbSArIDEuODc1ZW0pO1xufVxuXG4vKiBFZGdlICovXG5Ac3VwcG9ydHMgKC1tcy1pbWUtYWxpZ246IGF1dG8pIHtcbiAgLmlucHV0LS1zZWxlY3QsIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBzZWxlY3QsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXJpbmcgc2VsZWN0LCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHNlbGVjdCB7XG4gICAgcGFkZGluZzogY2FsYygwLjYyNWVtIC0gMXB4KSBjYWxjKDAuOTM3NWVtIC0gMnB4KSBjYWxjKDAuNjI1ZW0gLSAxcHgpIGNhbGMoMC45Mzc1ZW0gLSAycHgpO1xuICB9XG5cbiAgLmlucHV0LS1zZWxlY3QtYXJyb3csIC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBzZWxlY3QsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXJpbmcgc2VsZWN0LCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHNlbGVjdCB7XG4gICAgcGFkZGluZy1yaWdodDogY2FsYygwLjc1ZW0gKyAxLjg3NWVtIC0gMnB4KTtcbiAgfVxufVxuLyogRmlyZWZveCAqL1xuQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeChcIlwiKSB7XG4gIC5pbnB1dC0tc2VsZWN0LCAud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgc2VsZWN0LCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHNlbGVjdCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudmFyaWF0aW9ucyBzZWxlY3Qge1xuICAgIHBhZGRpbmc6IDAuNjI1ZW0gY2FsYygwLjkzNzVlbSAtIDRweCkgMC42MjVlbSBjYWxjKDAuOTM3NWVtIC0gNHB4KTtcbiAgfVxuXG4gIC5pbnB1dC0tc2VsZWN0LWFycm93LCAud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgc2VsZWN0LCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHNlbGVjdCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudmFyaWF0aW9ucyBzZWxlY3Qge1xuICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoMC43NWVtICsgMS44NzVlbSAtIDRweCk7XG4gIH1cbn1cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFRpdGxlXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4udGl0bGUsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBmb3JtID4gaDMsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSA+IGgyLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIGgyLndvb2NvbW1lcmNlLWNvbHVtbl9fdGl0bGUsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgaDIud29vY29tbWVyY2Utb3JkZXItZGV0YWlsc19fdGl0bGUsIC53b29jb21tZXJjZSAuY2hlY2tvdXQgaDMsIC53b29jb21tZXJjZSAucHJvZHVjdCAucmVsYXRlZCA+IGgyLFxuLndvb2NvbW1lcmNlIC5wcm9kdWN0IC51cHNlbGxzID4gaDIsIC53b29jb21tZXJjZSBoMS5wYWdlLXRpdGxlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgaDIsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMgaDIsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyLWRvd25sb2FkcyBoMiwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLndvb2NvbW1lcmNlLWxvb3AtY2F0ZWdvcnlfX3RpdGxlLFxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsXG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBoMywgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIGgyLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgLnByb2R1Y3RfdGl0bGUsIC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyBoMixcbi53b29jb21tZXJjZS1wYWdlIC5jYXJ0LWNvbGxhdGVyYWxzIGgyIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtZmFtaWx5OiBcImJyb3RoZXJzXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogM2VtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsaW5lLWhlaWdodDogMS4yZW07XG4gIG1hcmdpbjogMHJlbSAwcmVtIDAuNjI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4udGl0bGUtLWgyIHtcbiAgZm9udC1zaXplOiAyZW07XG59XG5cbi50aXRsZS0taDMge1xuICBmb250LXNpemU6IDEuNTYyNWVtO1xufVxuXG4udGl0bGUtLWg0IHtcbiAgZm9udC1zaXplOiAxLjI1ZW07XG59XG5cbi50aXRsZS0taDUge1xuICBmb250LXNpemU6IDEuMTI1ZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi50aXRsZS0taDYge1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogZm9udCB2YXJpYW50ICovXG4udGl0bGUtLXVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWltcG9ydGFudDtcbn1cblxuLyogZm9udCB2YXJpYW50ICovXG4udGl0bGUtLWJvZHkge1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4vKiBjb2xvciB2YXJpYW50cyAqL1xuLnRpdGxlLS1saWdodCB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4udGl0bGUtLXByaW1hcnkge1xuICBjb2xvcjogI0JCMEQxMjtcbn1cblxuLnRpdGxlLS1zZWNvbmRhcnkge1xuICBjb2xvcjogI0ZGQ0EwMDtcbn1cblxuLnRpdGxlLS10ZXJ0aWFyeSB7XG4gIGNvbG9yOiAjRUQxRjI1O1xufVxuXG4vKiBkaXZpZGVyIHZhcmlhbnQgKi9cbi50aXRsZS0tZGl2aWRlciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4udGl0bGUtLWRpdmlkZXI6OmJlZm9yZSwgLnRpdGxlLS1kaXZpZGVyOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNDQ0NDQ0M7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMSAxIDAlO1xuICBoZWlnaHQ6IDAuMDYyNXJlbTtcbn1cbi50aXRsZS0tZGl2aWRlcjo6YmVmb3JlIHtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG59XG4udGl0bGUtLWRpdmlkZXI6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogVGV4dFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnRleHQsIC53b29jb21tZXJjZS1vcmRlciA+IHAsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmaWVsZHNldCwgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBhZGRyZXNzLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIHAud29vY29tbWVyY2Utbm90aWNlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcywgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcywgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcsIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCB7XG4gIGNvbG9yOiAjMjEyMTIxO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiaWJtLXBsZXgtc2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMzc1ZW07XG4gIG1hcmdpbjogMGVtIDBlbSAxLjQzNzVlbTtcbn1cbi50ZXh0IC50ZXh0LCAud29vY29tbWVyY2Utb3JkZXIgPiBwIC50ZXh0LCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIC50ZXh0LCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZmllbGRzZXQgLnRleHQsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcyAudGV4dCwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgLnRleHQsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCAudGV4dCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSAudGV4dCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgLnRleHQsIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgLnRleHQsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwgLnRleHQsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlIC50ZXh0LCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIC50ZXh0LCAud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhIC50ZXh0LCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCAudGV4dCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyAudGV4dCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEgLnRleHQsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwIC50ZXh0LCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgLnRleHQsIC50ZXh0IC53b29jb21tZXJjZS1vcmRlciA+IHAsIC50ZXh0IC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IC50ZXh0IHAsIC50ZXh0IC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmaWVsZHNldCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC50ZXh0IGZpZWxkc2V0LCAudGV4dCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLnRleHQgYWRkcmVzcywgLnRleHQgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIC50ZXh0IHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLFxuLnRleHQgLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciAudGV4dCBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCwgLnRleHQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciAudGV4dCBwLndvb2NvbW1lcmNlLW5vdGljZSwgLnRleHQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyAudGV4dCBhZGRyZXNzLCAudGV4dCAud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzLCAud29vY29tbWVyY2UgLnRleHQgdGFibGUuc2hvcF9hdHRyaWJ1dGVzLCAudGV4dCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC50ZXh0IGxhYmVsLCAudGV4dCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCAudGV4dCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC50ZXh0IC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcsIC53b29jb21tZXJjZSAudGV4dCAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcsIC50ZXh0IC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEsIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCAudGV4dCBwLm1ldGEsIC50ZXh0IC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCAud29vY29tbWVyY2UgLnRleHQgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCwgLnRleHQgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudGV4dCAucmVzZXRfdmFyaWF0aW9ucywgLnRleHQgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAudGV4dCBkaXYucHJvZHVjdF9tZXRhLCAudGV4dCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IC50ZXh0IHAsIC50ZXh0IC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIC50ZXh0IHVsLCAud29vY29tbWVyY2Utb3JkZXIgPiBwIC53b29jb21tZXJjZS1vcmRlciA+IHAsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgLndvb2NvbW1lcmNlLW9yZGVyID4gcCwgLndvb2NvbW1lcmNlLW9yZGVyID4gcCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCAud29vY29tbWVyY2Utb3JkZXIgPiBwIHAsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZpZWxkc2V0IC53b29jb21tZXJjZS1vcmRlciA+IHAsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmaWVsZHNldCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZmllbGRzZXQgcCwgLndvb2NvbW1lcmNlLW9yZGVyID4gcCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZmllbGRzZXQsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZpZWxkc2V0LCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyID4gcCBmaWVsZHNldCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgZmllbGRzZXQsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBwIGZpZWxkc2V0LCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZmllbGRzZXQgZmllbGRzZXQsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcyAud29vY29tbWVyY2Utb3JkZXIgPiBwLCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCwgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBhZGRyZXNzIHAsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcyAud29vY29tbWVyY2UgZmllbGRzZXQsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAuYWRkcmVzc2VzIGFkZHJlc3MgZmllbGRzZXQsIC53b29jb21tZXJjZS1vcmRlciA+IHAgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBhZGRyZXNzLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcywgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZpZWxkc2V0IC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcywgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2Utb3JkZXIgPiBwIGFkZHJlc3MsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCBhZGRyZXNzLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIHAgYWRkcmVzcywgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgZmllbGRzZXQgYWRkcmVzcywgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC5hZGRyZXNzZXMgZmllbGRzZXQgYWRkcmVzcywgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBhZGRyZXNzIGFkZHJlc3MsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC53b29jb21tZXJjZS1vcmRlciA+IHAsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IC53b29jb21tZXJjZSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIHAsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIGZpZWxkc2V0LCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgYWRkcmVzcyxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC53b29jb21tZXJjZS1vcmRlciA+IHAsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwLFxuLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgcCxcbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIGZpZWxkc2V0LFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBhZGRyZXNzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCBhZGRyZXNzLCAud29vY29tbWVyY2Utb3JkZXIgPiBwIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZmllbGRzZXQgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcyAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gLndvb2NvbW1lcmNlLW9yZGVyID4gcCBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCwgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcCBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gZmllbGRzZXQgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcyBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCwgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBhZGRyZXNzIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsXG4ud29vY29tbWVyY2UgZm9ybS5sb2dpbiBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLFxuLndvb2NvbW1lcmNlLW9yZGVyID4gcCAud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCxcbi53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZmllbGRzZXQgLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsXG4ud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MgLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciAud29vY29tbWVyY2Utb3JkZXIgPiBwIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCxcbi53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IC53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHAgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBmaWVsZHNldCBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcyBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCxcbi53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgYWRkcmVzcyBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCxcbi53b29jb21tZXJjZSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UgLndvb2NvbW1lcmNlLW9yZGVyID4gcCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIHAud29vY29tbWVyY2Utbm90aWNlIHAsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UgZmllbGRzZXQsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBhZGRyZXNzLCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UgYWRkcmVzcywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIHAud29vY29tbWVyY2Utbm90aWNlIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsIC53b29jb21tZXJjZS1vcmRlciA+IHAgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSwgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIHAud29vY29tbWVyY2Utbm90aWNlLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZmllbGRzZXQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSwgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBhZGRyZXNzIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIHAud29vY29tbWVyY2Utbm90aWNlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyID4gcCBwLndvb2NvbW1lcmNlLW5vdGljZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIHAud29vY29tbWVyY2Utbm90aWNlLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIHAgcC53b29jb21tZXJjZS1ub3RpY2UsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgZmllbGRzZXQgcC53b29jb21tZXJjZS1ub3RpY2UsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBhZGRyZXNzIHAud29vY29tbWVyY2Utbm90aWNlLCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgYWRkcmVzcyBwLndvb2NvbW1lcmNlLW5vdGljZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIHAud29vY29tbWVyY2Utbm90aWNlLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgcC53b29jb21tZXJjZS1ub3RpY2UsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgcC53b29jb21tZXJjZS1ub3RpY2UsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgcC53b29jb21tZXJjZS1ub3RpY2UsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UgcC53b29jb21tZXJjZS1ub3RpY2UsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzIC53b29jb21tZXJjZS1vcmRlciA+IHAsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzIHAsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzIGZpZWxkc2V0LCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcyAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgYWRkcmVzcywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcyBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcyAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcyBwLndvb2NvbW1lcmNlLW5vdGljZSwgLndvb2NvbW1lcmNlLW9yZGVyID4gcCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcywgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcywgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZpZWxkc2V0IC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzLCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyAud29vY29tbWVyY2Utb3JkZXIgPiBwIGFkZHJlc3MsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIGFkZHJlc3MsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBwIGFkZHJlc3MsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBmaWVsZHNldCBhZGRyZXNzLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBhZGRyZXNzIGFkZHJlc3MsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgYWRkcmVzcywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgYWRkcmVzcywgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgYWRkcmVzcyxcbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIGFkZHJlc3MsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCBhZGRyZXNzLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgLndvb2NvbW1lcmNlLW9yZGVyIHAud29vY29tbWVyY2Utbm90aWNlIGFkZHJlc3MsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgcC53b29jb21tZXJjZS1ub3RpY2UgYWRkcmVzcywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgYWRkcmVzcywgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyAud29vY29tbWVyY2Utb3JkZXIgPiBwLCAud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IC53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyBmaWVsZHNldCwgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyBhZGRyZXNzLCAud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIHRhYmxlLnNob3BfYXR0cmlidXRlcyBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCxcbi53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHRhYmxlLnNob3BfYXR0cmlidXRlcyBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCwgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHAud29vY29tbWVyY2Utbm90aWNlLCAud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgYWRkcmVzcywgLndvb2NvbW1lcmNlLW9yZGVyID4gcCAud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmaWVsZHNldCAud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzLCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcywgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciA+IHAgdGFibGUuc2hvcF9hdHRyaWJ1dGVzLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IC53b29jb21tZXJjZSBwIHRhYmxlLnNob3BfYXR0cmlidXRlcywgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZpZWxkc2V0IHRhYmxlLnNob3BfYXR0cmlidXRlcywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcyB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlIGFkZHJlc3MgdGFibGUuc2hvcF9hdHRyaWJ1dGVzLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcyB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMsIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGFibGUuc2hvcF9hdHRyaWJ1dGVzLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsIC53b29jb21tZXJjZS1vcmRlciA+IHAsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCwgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCBwLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsIGZpZWxkc2V0LCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcywgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsIGFkZHJlc3MsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLFxuLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwgcC53b29jb21tZXJjZS1ub3RpY2UsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCBhZGRyZXNzLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsIHRhYmxlLnNob3BfYXR0cmlidXRlcywgLndvb2NvbW1lcmNlLW9yZGVyID4gcCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmaWVsZHNldCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsLCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCwgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC53b29jb21tZXJjZS1vcmRlciA+IHAgbGFiZWwsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCBsYWJlbCwgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBwIGxhYmVsLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGZpZWxkc2V0IGxhYmVsLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcyBsYWJlbCwgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGFkZHJlc3MgbGFiZWwsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCBsYWJlbCwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gI3Jldmlld19mb3JtICNyZXNwb25kIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIGxhYmVsLFxuLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIGxhYmVsLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgI3Jldmlld19mb3JtICNyZXNwb25kIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIGxhYmVsLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSBsYWJlbCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgcC53b29jb21tZXJjZS1ub3RpY2UgbGFiZWwsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcyBsYWJlbCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBhZGRyZXNzIGxhYmVsLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIHRhYmxlLnNob3BfYXR0cmlidXRlcyBsYWJlbCwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCBsYWJlbCwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUgLndvb2NvbW1lcmNlLW9yZGVyID4gcCwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCwgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUgcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUgZmllbGRzZXQsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcywgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSBhZGRyZXNzLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLFxuLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlIHAud29vY29tbWVyY2Utbm90aWNlLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgI3Jldmlld19mb3JtICNyZXNwb25kIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSBhZGRyZXNzLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlIGxhYmVsLCAud29vY29tbWVyY2Utb3JkZXIgPiBwIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZmllbGRzZXQgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcyAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLndvb2NvbW1lcmNlLW9yZGVyID4gcCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgcCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgZmllbGRzZXQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcyBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBhZGRyZXNzIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gI3Jldmlld19mb3JtICNyZXNwb25kIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSxcbi53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgI3Jldmlld19mb3JtICNyZXNwb25kIHAud29vY29tbWVyY2Utbm90aWNlIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBhZGRyZXNzIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIC53b29jb21tZXJjZS1vcmRlciA+IHAsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCwgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZyBwLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIGZpZWxkc2V0LCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcywgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIGFkZHJlc3MsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZyBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcgcC53b29jb21tZXJjZS1ub3RpY2UsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZyBhZGRyZXNzLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIHRhYmxlLnNob3BfYXR0cmlidXRlcywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZyAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIGxhYmVsLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSwgLndvb2NvbW1lcmNlLW9yZGVyID4gcCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmaWVsZHNldCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nLCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZywgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZyxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZywgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgPiBwIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCAud29vY29tbWVyY2UgcCAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmaWVsZHNldCAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nLCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIC53b29jb21tZXJjZSBhZGRyZXNzIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZywgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIHAud29vY29tbWVyY2Utbm90aWNlIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nLCAud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZywgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZyAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcsIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgLndvb2NvbW1lcmNlLW9yZGVyID4gcCwgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAubWV0YSAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCAud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhIHAsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgZmllbGRzZXQsIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBhZGRyZXNzLCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgYWRkcmVzcywgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAubWV0YSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsXG4ud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgLndvb2NvbW1lcmNlLW9yZGVyIHAud29vY29tbWVyY2Utbm90aWNlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAubWV0YSBwLndvb2NvbW1lcmNlLW5vdGljZSwgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAubWV0YSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhIGFkZHJlc3MsIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgdGFibGUuc2hvcF9hdHRyaWJ1dGVzLCAud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgbGFiZWwsIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgI3Jldmlld19mb3JtICNyZXNwb25kIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlLCAud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZywgLndvb2NvbW1lcmNlLW9yZGVyID4gcCAud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmaWVsZHNldCAud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhLCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAubWV0YSwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAubWV0YSxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAubWV0YSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAubWV0YSwgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyAud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAubWV0YSwgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IC53b29jb21tZXJjZS1vcmRlciA+IHAgcC5tZXRhLCAud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCBwLm1ldGEsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwIHAubWV0YSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IGZpZWxkc2V0IHAubWV0YSwgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcyBwLm1ldGEsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IGFkZHJlc3MgcC5tZXRhLCAud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCBwLm1ldGEsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIHAubWV0YSxcbi53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIHAubWV0YSxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIHAubWV0YSwgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSBwLm1ldGEsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC53b29jb21tZXJjZS1ub3RpY2UgcC5tZXRhLCAud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcyBwLm1ldGEsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBhZGRyZXNzIHAubWV0YSwgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHRhYmxlLnNob3BfYXR0cmlidXRlcyBwLm1ldGEsIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwgcC5tZXRhLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IGxhYmVsIHAubWV0YSwgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0ICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUgcC5tZXRhLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHNwYW4uY29tbWVudC1yZXBseS10aXRsZSBwLm1ldGEsIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcgcC5tZXRhLCAud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhIHAubWV0YSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQgLndvb2NvbW1lcmNlLW9yZGVyID4gcCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCwgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQgcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQgZmllbGRzZXQsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcywgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCBhZGRyZXNzLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IHAud29vY29tbWVyY2Utbm90aWNlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCBhZGRyZXNzLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50ICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IGxhYmVsLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50ICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAubWV0YSwgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IC53b29jb21tZXJjZS1yZXN1bHQtY291bnQgcC5tZXRhLCAud29vY29tbWVyY2Utb3JkZXIgPiBwIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZmllbGRzZXQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcyAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQsIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCAud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyID4gcCAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCAud29vY29tbWVyY2UgcCAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZmllbGRzZXQgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcyAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIC53b29jb21tZXJjZSBhZGRyZXNzIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIHAud29vY29tbWVyY2Utbm90aWNlIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQsIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQsIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyAud29vY29tbWVyY2Utb3JkZXIgPiBwLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnMgcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyBmaWVsZHNldCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyBhZGRyZXNzLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCxcbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnMgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zIHAud29vY29tbWVyY2Utbm90aWNlLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnMgYWRkcmVzcywgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnMgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyBsYWJlbCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnMgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAubWV0YSwgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyBwLm1ldGEsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnMgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCwgLndvb2NvbW1lcmNlLW9yZGVyID4gcCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnMsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmaWVsZHNldCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnMsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnMsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnMsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAubWV0YSAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC53b29jb21tZXJjZS1vcmRlciA+IHAgLnJlc2V0X3ZhcmlhdGlvbnMsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCBwIC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IGZpZWxkc2V0IC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcyAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IGFkZHJlc3MgLnJlc2V0X3ZhcmlhdGlvbnMsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC5yZXNldF92YXJpYXRpb25zLFxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC5yZXNldF92YXJpYXRpb25zLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBkaXYucHJvZHVjdCBmb3JtLmNhcnQgcC53b29jb21tZXJjZS1ub3RpY2UgLnJlc2V0X3ZhcmlhdGlvbnMsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcyAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGRpdi5wcm9kdWN0IGZvcm0uY2FydCBhZGRyZXNzIC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IHRhYmxlLnNob3BfYXR0cmlidXRlcyAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwgLnJlc2V0X3ZhcmlhdGlvbnMsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IGxhYmVsIC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0ICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUgLnJlc2V0X3ZhcmlhdGlvbnMsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IHNwYW4uY29tbWVudC1yZXBseS10aXRsZSAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcgLnJlc2V0X3ZhcmlhdGlvbnMsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhIC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IHAubWV0YSAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zIC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSAud29vY29tbWVyY2Utb3JkZXIgPiBwLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSBwLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSBmaWVsZHNldCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBhZGRyZXNzLCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhIGFkZHJlc3MsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEgLndvb2NvbW1lcmNlLW9yZGVyIHAud29vY29tbWVyY2Utbm90aWNlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEgcC53b29jb21tZXJjZS1ub3RpY2UsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhIGFkZHJlc3MsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhIHRhYmxlLnNob3BfYXR0cmlidXRlcywgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEgbGFiZWwsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZywgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhLCAud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSBwLm1ldGEsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhIGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucywgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhIC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2Utb3JkZXIgPiBwIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZmllbGRzZXQgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgYWRkcmVzcyAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEsIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhLCAud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC53b29jb21tZXJjZS1vcmRlciA+IHAgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IHAgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGZpZWxkc2V0IGRpdi5wcm9kdWN0X21ldGEsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3MgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgYWRkcmVzcyBkaXYucHJvZHVjdF9tZXRhLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCBkaXYucHJvZHVjdF9tZXRhLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCBkaXYucHJvZHVjdF9tZXRhLFxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgZGl2LnByb2R1Y3RfbWV0YSxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIGRpdi5wcm9kdWN0X21ldGEsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAud29vY29tbWVyY2Utb3JkZXIgcC53b29jb21tZXJjZS1ub3RpY2UgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBwLndvb2NvbW1lcmNlLW5vdGljZSBkaXYucHJvZHVjdF9tZXRhLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcyBkaXYucHJvZHVjdF9tZXRhLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgYWRkcmVzcyBkaXYucHJvZHVjdF9tZXRhLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIGRpdi5wcm9kdWN0X21ldGEsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBsYWJlbCBkaXYucHJvZHVjdF9tZXRhLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgI3Jldmlld19mb3JtICNyZXNwb25kIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSBkaXYucHJvZHVjdF9tZXRhLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IHNwYW4uY29tbWVudC1yZXBseS10aXRsZSBkaXYucHJvZHVjdF9tZXRhLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIGRpdi5wcm9kdWN0X21ldGEsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IHAubWV0YSBkaXYucHJvZHVjdF9tZXRhLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCBkaXYucHJvZHVjdF9tZXRhLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zIGRpdi5wcm9kdWN0X21ldGEsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgZGl2LnN1bW1hcnkgLnJlc2V0X3ZhcmlhdGlvbnMgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAgLndvb2NvbW1lcmNlLW9yZGVyID4gcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCwgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAgcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAgLndvb2NvbW1lcmNlIGZpZWxkc2V0LCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAgZmllbGRzZXQsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwIC5hZGRyZXNzZXMgYWRkcmVzcywgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCBhZGRyZXNzLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCAud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIHAud29vY29tbWVyY2Utbm90aWNlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwIHAud29vY29tbWVyY2Utbm90aWNlLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwIGFkZHJlc3MsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAgbGFiZWwsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZywgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAubWV0YSwgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwIHAubWV0YSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50LCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwIC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwIGRpdi5wcm9kdWN0X21ldGEsIC53b29jb21tZXJjZS1vcmRlciA+IHAgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSBmaWVsZHNldCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBhZGRyZXNzIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIHAud29vY29tbWVyY2Utbm90aWNlIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcyAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCwgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAsIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IC53b29jb21tZXJjZS1vcmRlciA+IHAgcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IHAgcCwgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAgcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IC53b29jb21tZXJjZSBmaWVsZHNldCBwLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IGZpZWxkc2V0IHAsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCAuYWRkcmVzc2VzIGFkZHJlc3MgcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgYWRkcmVzcyBwLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgcCwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIHAsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgcCxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCBwLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSBwLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwLndvb2NvbW1lcmNlLW5vdGljZSBwLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgcCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBhZGRyZXNzIHAsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCAud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHAsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHAsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsIHAsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IGxhYmVsIHAsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSBwLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUgcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcgcCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcgcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgcCwgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwLm1ldGEgcCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IHAsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCBwLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyBwLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCAucmVzZXRfdmFyaWF0aW9ucyBwLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEgcCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBkaXYucHJvZHVjdF9tZXRhIHAsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwIHAsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCAud29vY29tbWVyY2Utb3JkZXIgPiBwLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgcCwgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIHAsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCAud29vY29tbWVyY2UgZmllbGRzZXQsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgZmllbGRzZXQsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCAuYWRkcmVzc2VzIGFkZHJlc3MsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIGFkZHJlc3MsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIC53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBwLndvb2NvbW1lcmNlLW5vdGljZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgcC53b29jb21tZXJjZS1ub3RpY2UsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgYWRkcmVzcywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCBhZGRyZXNzLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcywgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIGxhYmVsLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCBsYWJlbCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlLCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZywgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEsIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgcC5tZXRhLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnMsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IGRpdi5wcm9kdWN0X21ldGEsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwgZGl2LnByb2R1Y3RfbWV0YSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIHAsIC53b29jb21tZXJjZS1vcmRlciA+IHAgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZpZWxkc2V0IC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCwgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBhZGRyZXNzIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIHAud29vY29tbWVyY2Utbm90aWNlIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGFkZHJlc3MgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsLCAud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCwgLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgc3Bhbi5jb21tZW50LXJlcGx5LXRpdGxlIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZyAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwsIC53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnMgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gdWwsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBwIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIC53b29jb21tZXJjZS1vcmRlciA+IHAgdWwsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCBwIHVsLCAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gcCB1bCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIC53b29jb21tZXJjZSBmaWVsZHNldCB1bCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiBmaWVsZHNldCB1bCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIC5hZGRyZXNzZXMgYWRkcmVzcyB1bCwgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gYWRkcmVzcyB1bCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIC53b29jb21tZXJjZSBmb3JtLmxvZ2luIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIHVsLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgdWwsXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgdWwsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgdWwsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIHAud29vY29tbWVyY2Utbm90aWNlIHVsLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiBwLndvb2NvbW1lcmNlLW5vdGljZSB1bCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzIHVsLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIGFkZHJlc3MgdWwsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiAud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHVsLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHRhYmxlLnNob3BfYXR0cmlidXRlcyB1bCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwgdWwsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIGxhYmVsIHVsLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBzcGFuLmNvbW1lbnQtcmVwbHktdGl0bGUgdWwsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSB1bCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcgdWwsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIHVsLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IHAubWV0YSB1bCwgLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCBsaSAuY29tbWVudC10ZXh0IC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiBwLm1ldGEgdWwsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCB1bCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IHVsLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyB1bCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gLnJlc2V0X3ZhcmlhdGlvbnMgdWwsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkgZGl2LnByb2R1Y3RfbWV0YSB1bCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiBkaXYucHJvZHVjdF9tZXRhIHVsLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IHAgdWwsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gcCB1bCwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIHVsIHVsIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi8qIGxhYmVsIHZhcmlhbnQgKi9cbi50ZXh0LS1sYWJlbCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLyogbGlzdCB2YXJpYW50ICovXG4udGV4dC0tbGlzdCB7XG4gIHBhZGRpbmc6IDBlbSAwZW0gMGVtIDJlbTtcbn1cbi50ZXh0LS1saXN0IC50ZXh0X19saXN0LWl0ZW0ge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIHBhZGRpbmctbGVmdDogMS4zNzVlbTtcbn1cbi50ZXh0LS1saXN0IC50ZXh0X19saXN0LWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRleHQtLWxpc3QgLnRleHRfX2xpc3QtaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNWVtO1xuICB9XG59XG4udGV4dC0tbGlzdCAudGV4dF9fbGlzdC1pdGVtOjptYXJrZXIge1xuICBjb2xvcjogIzkwOTA5MDtcbn1cblxuLyogbGlzdCBvcmRlcmVkIHZhcmlhbnQgKi9cbi50ZXh0LS1saXN0LW9yZGVyZWQge1xuICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xufVxuXG4vKiBsaXN0IHVub3JkZXJlZCB2YXJpYW50ICovXG4udGV4dC0tbGlzdC11bm9yZGVyZWQge1xuICBsaXN0LXN0eWxlOiBkaXNjO1xufVxuXG4vKiB0YWJsZSB2YXJpYW50ICovXG4udGV4dF9fdGFibGVfX2NvbnRhaW5lcixcbi53cC1ibG9jay10YWJsZSB7XG4gIG1hcmdpbjogMGVtIDBlbSAyZW07XG4gIG92ZXJmbG93OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnRleHQtLXRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnRleHQtLXRhYmxlIC50ZXh0X19oZWFkZXIge1xuICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG59XG4udGV4dC0tdGFibGUgLnRleHRfX2hlYWRlciAudGV4dF9fY2VsbCB7XG4gIGJhY2tncm91bmQ6ICNCQjBEMTI7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnRleHQtLXRhYmxlIC50ZXh0X19ib2R5IHtcbiAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwO1xufVxuLnRleHQtLXRhYmxlIC50ZXh0X19yb3c6bnRoLWNoaWxkKDJuKSB7XG4gIGJhY2tncm91bmQ6ICNFMEUwRTA7XG59XG4udGV4dC0tdGFibGUgLnRleHRfX2Zvb3RlciB7XG4gIGNvbG9yOiAjNDg0ODQ4O1xuICBkaXNwbGF5OiB0YWJsZS1mb290ZXItZ3JvdXA7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi50ZXh0LS10YWJsZSAudGV4dF9fcm93IHtcbiAgZGlzcGxheTogdGFibGUtcm93O1xufVxuLnRleHQtLXRhYmxlIC50ZXh0X19jZWxsIHtcbiAgYm9yZGVyOiAwO1xuICBtaW4td2lkdGg6IDcuODEyNWVtO1xuICBwYWRkaW5nOiAwLjYyNWVtIDAuOTM3NWVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuLnRleHQtLXRhYmxlIC50ZXh0X19oZWFkZXIgLnRleHRfX2NlbGwsXG4udGV4dC0tdGFibGUgLnRleHRfX2JvZHkgLnRleHRfX2NlbGwtLWhlYWRpbmcge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLnRleHQtLXRhYmxlIC50ZXh0X19ib2R5IC50ZXh0X19jZWxsLS1oZWFkaW5nIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi50ZXh0LS10YWJsZSAudGV4dF9faGVhZGVyICsgLnRleHRfX2JvZHkgPiAudGV4dF9fcm93OmZpcnN0LWNoaWxkID4gLnRleHRfX2NlbGwge1xuICBib3JkZXItdG9wOiAwLjEyNXJlbSBzb2xpZCAjZjY4ZjkyO1xufVxuLnRleHQtLXRhYmxlID4gLnRleHRfX3JvdzpudGgtY2hpbGQoZXZlbikgLnRleHRfX2NlbGwsXG4udGV4dC0tdGFibGUgLnRleHRfX2JvZHkgLnRleHRfX3JvdzpudGgtY2hpbGQoZXZlbikgLnRleHRfX2NlbGwge1xuICBiYWNrZ3JvdW5kOiAjZjY4ZjkyO1xufVxuLnRleHQtLXRhYmxlID4gLnRleHRfX3JvdzpudGgtY2hpbGQoZXZlbikgLnRleHRfX2NlbGw6Zmlyc3QtY2hpbGQsXG4udGV4dC0tdGFibGUgLnRleHRfX2JvZHkgLnRleHRfX3JvdzpudGgtY2hpbGQoZXZlbikgLnRleHRfX2NlbGw6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjM3NXJlbTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4zNzVyZW07XG59XG4udGV4dC0tdGFibGUgPiAudGV4dF9fcm93Om50aC1jaGlsZChldmVuKSAudGV4dF9fY2VsbDpsYXN0LWNoaWxkLFxuLnRleHQtLXRhYmxlIC50ZXh0X19ib2R5IC50ZXh0X19yb3c6bnRoLWNoaWxkKGV2ZW4pIC50ZXh0X19jZWxsOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4zNzVyZW07XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjM3NXJlbTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQmxvY2txdW90ZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmJsb2NrcXVvdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUVFRUVFO1xuICBib3JkZXItcmFkaXVzOiAwLjgxMjVlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMy4xMjVlbSAwZW07XG4gIHBhZGRpbmc6IDEuNjI1ZW0gMi4zMTI1ZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAzLjg3NWVtIDBlbTtcbiAgfVxufVxuLmJsb2NrcXVvdGUgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFVzZXIgQ29udGVudFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnVzZXItY29udGVudCB7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgc2VsZWN0b3ItbWF4LXR5cGUgKi9cbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xufVxuLnVzZXItY29udGVudDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4udXNlci1jb250ZW50IGltZzpub3QoLmFsaWduY2VudGVyKTpub3QoLmFsaWdubGVmdCk6bm90KC5hbGlnbnJpZ2h0KSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi51c2VyLWNvbnRlbnQgaW1nIHtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbi51c2VyLWNvbnRlbnQgLnRpdGxlLS1oMSB7XG4gIGZvbnQtc2l6ZTogMi41ZW07XG59XG4udXNlci1jb250ZW50IC50aXRsZS0taDIge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC1zaXplOiAyLjI1ZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNDQ0NDQ0NDQ0NGVtO1xufVxuLnVzZXItY29udGVudCAudGl0bGUtLWgzIHtcbiAgY29sb3I6ICNCQjBEMTI7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjQzNzVlbTtcbn1cbi51c2VyLWNvbnRlbnQgLnRpdGxlLS1oNCxcbi51c2VyLWNvbnRlbnQgLnRpdGxlLS1oNSxcbi51c2VyLWNvbnRlbnQgLnRpdGxlLS1oNiB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXNpemU6IDEuNjI1ZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNTM4NDYxNTM4NWVtO1xufVxuLnVzZXItY29udGVudCAuY29sdW1ucyB7XG4gIG1hcmdpbi1ib3R0b206IDMuODc1ZW07XG59XG4udXNlci1jb250ZW50IC5jb2x1bW5zID4gLnRleHQtLWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnVzZXItY29udGVudCAudGV4dC0tbGlzdCB7XG4gIG1hcmdpbi1ib3R0b206IDMuODc1ZW07XG59XG4udXNlci1jb250ZW50IC50ZXh0LS1saXN0IC50ZXh0X19saXN0LWl0ZW0gLnRleHRfX2xpc3QtaXRlbTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDFlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnVzZXItY29udGVudCAuYnV0dG9uLCAudXNlci1jb250ZW50IC50cmliZS1ldmVudHMtY29udGVudCBhLmJ1dHRvbiwgLnRyaWJlLWV2ZW50cy1jb250ZW50IC51c2VyLWNvbnRlbnQgYS5idXR0b24sIC51c2VyLWNvbnRlbnQgLnRyaWJlLWV2ZW50cy1jb250ZW50IC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGEudHJpYmUtZXZlbnRzLWdjYWwsIC50cmliZS1ldmVudHMtY29udGVudCAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudXNlci1jb250ZW50IGEudHJpYmUtZXZlbnRzLWdjYWwsIC51c2VyLWNvbnRlbnQgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1jb250ZW50IGEudHJpYmUtZXZlbnRzLWdjYWwsIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIC50cmliZS1ldmVudHMtY29udGVudCAudXNlci1jb250ZW50IGEudHJpYmUtZXZlbnRzLWdjYWwsXG4udXNlci1jb250ZW50IC50cmliZS1ldmVudHMtY29udGVudCAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBhLnRyaWJlLWV2ZW50cy1pY2FsLFxuLnRyaWJlLWV2ZW50cy1jb250ZW50IC50cmliZS1ldmVudHMtY2FsLWxpbmtzIC51c2VyLWNvbnRlbnQgYS50cmliZS1ldmVudHMtaWNhbCxcbi51c2VyLWNvbnRlbnQgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1jb250ZW50IGEudHJpYmUtZXZlbnRzLWljYWwsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWNvbnRlbnQgLnVzZXItY29udGVudCBhLnRyaWJlLWV2ZW50cy1pY2FsLFxuLnVzZXItY29udGVudCAudHJpYmUtZXZlbnRzLWNvbnRlbnQgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS50cmliZS1ldmVudHMtaWNzLFxuLnRyaWJlLWV2ZW50cy1jb250ZW50IC50cmliZS1ldmVudHMtY2FsLWxpbmtzIC51c2VyLWNvbnRlbnQgYS50cmliZS1ldmVudHMtaWNzLFxuLnVzZXItY29udGVudCAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWNvbnRlbnQgYS50cmliZS1ldmVudHMtaWNzLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1jb250ZW50IC51c2VyLWNvbnRlbnQgYS50cmliZS1ldmVudHMtaWNzLCAudXNlci1jb250ZW50IC50cmliZS1ldmVudHMtY2FsLWxpbmtzIC50cmliZS1ldmVudHMtZ2NhbCwgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnVzZXItY29udGVudCAudHJpYmUtZXZlbnRzLWdjYWwsXG4udXNlci1jb250ZW50IC50cmliZS1ldmVudHMtY2FsLWxpbmtzIC50cmliZS1ldmVudHMtaWNhbCxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC51c2VyLWNvbnRlbnQgLnRyaWJlLWV2ZW50cy1pY2FsLFxuLnVzZXItY29udGVudCAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWljcyxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC51c2VyLWNvbnRlbnQgLnRyaWJlLWV2ZW50cy1pY3Mge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICB9XG59XG4udXNlci1jb250ZW50IC5idXR0b246OmJlZm9yZSwgLnVzZXItY29udGVudCAudHJpYmUtZXZlbnRzLWNvbnRlbnQgYS5idXR0b246OmJlZm9yZSwgLnRyaWJlLWV2ZW50cy1jb250ZW50IC51c2VyLWNvbnRlbnQgYS5idXR0b246OmJlZm9yZSwgLnVzZXItY29udGVudCAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWdjYWw6OmJlZm9yZSwgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnVzZXItY29udGVudCAudHJpYmUtZXZlbnRzLWdjYWw6OmJlZm9yZSxcbi51c2VyLWNvbnRlbnQgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1pY2FsOjpiZWZvcmUsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudXNlci1jb250ZW50IC50cmliZS1ldmVudHMtaWNhbDo6YmVmb3JlLFxuLnVzZXItY29udGVudCAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWljczo6YmVmb3JlLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnVzZXItY29udGVudCAudHJpYmUtZXZlbnRzLWljczo6YmVmb3JlIHtcbiAgYm9yZGVyLWJvdHRvbTogMC4xMTExMTExMTExZW0gc29saWQgI0Y3M0I0MTtcbiAgYm9yZGVyLXJpZ2h0OiAwLjExMTExMTExMTFlbSBzb2xpZCAjRjczQjQxO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDAuNTU1NTU1NTU1NmVtO1xuICBsZWZ0OiAwLjU1NTU1NTU1NTZlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXM7XG4gIHdpZHRoOiAwLjU1NTU1NTU1NTZlbTtcbn1cbi51c2VyLWNvbnRlbnQgLmJ1dHRvbjpmb2N1czo6YmVmb3JlLCAudXNlci1jb250ZW50IC50cmliZS1ldmVudHMtY2FsLWxpbmtzIC50cmliZS1ldmVudHMtZ2NhbDpmb2N1czo6YmVmb3JlLCAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudXNlci1jb250ZW50IC50cmliZS1ldmVudHMtZ2NhbDpmb2N1czo6YmVmb3JlLFxuLnVzZXItY29udGVudCAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWljYWw6Zm9jdXM6OmJlZm9yZSxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC51c2VyLWNvbnRlbnQgLnRyaWJlLWV2ZW50cy1pY2FsOmZvY3VzOjpiZWZvcmUsXG4udXNlci1jb250ZW50IC50cmliZS1ldmVudHMtY2FsLWxpbmtzIC50cmliZS1ldmVudHMtaWNzOmZvY3VzOjpiZWZvcmUsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudXNlci1jb250ZW50IC50cmliZS1ldmVudHMtaWNzOmZvY3VzOjpiZWZvcmUsXG4udXNlci1jb250ZW50IC5idXR0b246aG92ZXI6OmJlZm9yZSxcbi51c2VyLWNvbnRlbnQgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1nY2FsOmhvdmVyOjpiZWZvcmUsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudXNlci1jb250ZW50IC50cmliZS1ldmVudHMtZ2NhbDpob3Zlcjo6YmVmb3JlLFxuLnVzZXItY29udGVudCAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWljYWw6aG92ZXI6OmJlZm9yZSxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC51c2VyLWNvbnRlbnQgLnRyaWJlLWV2ZW50cy1pY2FsOmhvdmVyOjpiZWZvcmUsXG4udXNlci1jb250ZW50IC50cmliZS1ldmVudHMtY2FsLWxpbmtzIC50cmliZS1ldmVudHMtaWNzOmhvdmVyOjpiZWZvcmUsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudXNlci1jb250ZW50IC50cmliZS1ldmVudHMtaWNzOmhvdmVyOjpiZWZvcmUsXG4udXNlci1jb250ZW50IC5idXR0b246YWN0aXZlOjpiZWZvcmUsXG4udXNlci1jb250ZW50IC50cmliZS1ldmVudHMtY2FsLWxpbmtzIC50cmliZS1ldmVudHMtZ2NhbDphY3RpdmU6OmJlZm9yZSxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC51c2VyLWNvbnRlbnQgLnRyaWJlLWV2ZW50cy1nY2FsOmFjdGl2ZTo6YmVmb3JlLFxuLnVzZXItY29udGVudCAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWljYWw6YWN0aXZlOjpiZWZvcmUsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudXNlci1jb250ZW50IC50cmliZS1ldmVudHMtaWNhbDphY3RpdmU6OmJlZm9yZSxcbi51c2VyLWNvbnRlbnQgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1pY3M6YWN0aXZlOjpiZWZvcmUsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudXNlci1jb250ZW50IC50cmliZS1ldmVudHMtaWNzOmFjdGl2ZTo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjRkZGRkZGO1xufVxuLnVzZXItY29udGVudCAuZGl2aWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkQ1MzY7XG4gIG1hcmdpbjogNC4zNzVlbSAwZW07XG59XG4udXNlci1jb250ZW50IC5nYWxsZXJ5IHtcbiAgbWFyZ2luLWJvdHRvbTogMi42MjVlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnVzZXItY29udGVudCAudGV4dC0tbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi42MjVlbTtcbiAgfVxuICAudXNlci1jb250ZW50IC50aXRsZS0taDIge1xuICAgIGZvbnQtc2l6ZTogMS42MjVlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjg4NDYxNTM4NDZlbTtcbiAgfVxuICAudXNlci1jb250ZW50IC50aXRsZS0taDMge1xuICAgIGZvbnQtc2l6ZTogMS42MjVlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjgwNzY5MjMwNzdlbTtcbiAgfVxuICAudXNlci1jb250ZW50IC50aXRsZS0taDQsXG4udXNlci1jb250ZW50IC50aXRsZS0taDUsXG4udXNlci1jb250ZW50IC50aXRsZS0taDYge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjcyNzI3MjcyNzNlbTtcbiAgfVxufVxuXG4uZnJvbnRwYWdlIC51c2VyLWNvbnRlbnQgLnRpdGxlLS1oMiB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXNpemU6IDEuODc1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uZnJvbnRwYWdlIC51c2VyLWNvbnRlbnQgLnRpdGxlLS1oMyB7XG4gIGZvbnQtc2l6ZTogMS43NWVtO1xufVxuXG4vKiBsaWdodCB2YXJpYW50ICovXG4udXNlci1jb250ZW50LS1saWdodCB7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgc2VsZWN0b3ItbWF4LXR5cGUgKi9cbiAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xufVxuLnVzZXItY29udGVudC0tbGlnaHQgLnVzZXItY29udGVudF9fbGluayxcbi51c2VyLWNvbnRlbnQtLWxpZ2h0IC51c2VyLWNvbnRlbnRfX3RpdGxlLFxuLnVzZXItY29udGVudC0tbGlnaHQgLnVzZXItY29udGVudF9fdGV4dCxcbi51c2VyLWNvbnRlbnQtLWxpZ2h0IC53cC1jYXB0aW9uLXRleHQge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTW9kdWxlXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBBY2Nlc3NpYmxlIFBvZXRyeSAoaHR0cHM6Ly93b3JkcHJlc3Mub3JnL3BsdWdpbnMvYWNjZXNzaWJsZS1wb2V0cnkvKVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlICovXG5ib2R5LmFjd3AtbW9ub2Nocm9tZSB7XG4gIGZpbHRlcjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uYWN3cC10b29sYmFyIHtcbiAgZm9udC1mYW1pbHk6IFwiaWJtLXBsZXgtc2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuXG4uYWN3cC1mb290ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBBcnRpY2xlXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uYXJ0aWNsZV9fZmlndXJlIHtcbiAgbWFyZ2luOiAwZW0gMGVtIDEuODc1ZW07XG59XG5cbi5hcnRpY2xlX19maWd1cmVfX2ltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYXJ0aWNsZV9fdGl0bGUge1xuICBjb2xvcjogI0JCMEQxMjtcbiAgZm9udC1zaXplOiAyLjI1ZW07XG4gIG1hcmdpbi1ib3R0b206IDAuODYxMTExMTExMWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuYXJ0aWNsZV9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS42MjVlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjA3NjkyMzA3NjllbTtcbiAgfVxufVxuXG4uYXJ0aWNsZV9fdXNlci1jb250ZW50IC5ibG9ja3F1b3RlOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLyogcG9zdC1leGNlcnB0IHZhcmlhbnQgKi9cbi5hcnRpY2xlLS1wb3N0LWV4Y2VycHQgKyAuYXJ0aWNsZS0tcG9zdC1leGNlcnB0IHtcbiAgYm9yZGVyLXRvcDogMC4wNjI1cmVtIHNvbGlkICNDQ0NDQ0M7XG4gIHBhZGRpbmctdG9wOiAxZW07XG59XG4uYXJ0aWNsZS0tcG9zdC1leGNlcnB0IC5hcnRpY2xlX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMi4yNWVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjIyMjIyMjIyMjJlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmFydGljbGUtLXBvc3QtZXhjZXJwdCAuYXJ0aWNsZV9fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiBcImlibS1wbGV4LXNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC4yMjIyMjIyMjIyZW07XG4gIH1cbn1cbi5hcnRpY2xlLS1wb3N0LWV4Y2VycHQgLmFydGljbGVfX2hlYWRlciA+IC5hcnRpY2xlX190aXRsZTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5hcnRpY2xlLS1wb3N0LWV4Y2VycHQgLmFydGljbGVfX2hlYWRlciA+IC5hcnRpY2xlX190aXRsZTpub3QoOmxhc3QtY2hpbGQpICsgKiB7XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmFydGljbGUtLXBvc3QtZXhjZXJwdCAudGl0bGVfX2xpbmsge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG59XG4uYXJ0aWNsZS0tcG9zdC1leGNlcnB0IC50aXRsZV9fbGluazpob3ZlciB7XG4gIGNvbG9yOiAjQkIwRDEyO1xufVxuLmFydGljbGUtLXBvc3QtZXhjZXJwdCAuYXJ0aWNsZV9fbGluayB7XG4gIGNvbG9yOiAjQkIwRDEyO1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuYXJ0aWNsZS0tcG9zdC1leGNlcnB0IC5hcnRpY2xlX19saW5rIHtcbiAgICBmb250LXNpemU6IDAuODc1ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMy43MTQyODU3MTQzZW07XG4gIH1cbn1cbi5hcnRpY2xlLS1wb3N0LWV4Y2VycHQgLmFydGljbGVfX2xpbms6aG92ZXIge1xuICBjb2xvcjogI0VEMUYyNTtcbn1cbi5hcnRpY2xlLS1wb3N0LWV4Y2VycHQgLmFydGljbGVfX3RleHQge1xuICBtYXJnaW4tYm90dG9tOiAwLjc1ZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5hcnRpY2xlLS1wb3N0LWV4Y2VycHQgLmFydGljbGVfX3RleHQge1xuICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjI4NTcxNDI4NTdlbTtcbiAgfVxufVxuXG4uaGFuZG9yZ2VsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWVlO1xuICBib3JkZXItdG9wOiBub25lO1xufVxuXG4uaGFuZG9yZ2VsX19oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xufVxuXG4uaGFuZG9yZ2VsX19oZWFkZXItLW9wZW4gLmhhbmRvcmdlbF9faGVhZGVyX19idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xufVxuXG4uaGFuZG9yZ2VsX19oZWFkZXItLWZvY3VzIC5oYW5kb3JnZWxfX2hlYWRlcl9fYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RmZGZkZjtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLmhhbmRvcmdlbF9faGVhZGVyX19idXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDIwcHggMjRweDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLmhhbmRvcmdlbF9faGVhZGVyX19idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG59XG5cbi5oYW5kb3JnZWxfX2NvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4xcyBlYXNlIDAuMXM7XG59XG5cbi5oYW5kb3JnZWxfX2NvbnRlbnQtLW9wZW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuMnMgZWFzZTtcbn1cblxuLmhhbmRvcmdlbF9fY29udGVudC0tb3BlbmVkIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5oYW5kb3JnZWxfX2NvbnRlbnRfX2lubmVyIHtcbiAgcGFkZGluZzogMjBweCAyNHB4O1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZTtcbn1cblxuLmhhbmRvcmdlbF9fY29udGVudC0tb3BlbmVkIC5oYW5kb3JnZWxfX2NvbnRlbnRfX2lubmVyIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEhhbmRvcmdlbCAoaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2UvaGFuZG9yZ2VsKVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogaWZyYW1lXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uaWZyYW1lX19jb250YWluZXIge1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaWZyYW1lX19jb250YWluZXIgPiAuaWZyYW1lIHtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIExvZ29cblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5sb2dvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cztcbn1cbi5sb2dvW2hyZWZdOmZvY3VzLCAubG9nb1tocmVmXTpob3ZlciB7XG4gIG9wYWNpdHk6IDAuOTtcbn1cblxuLmxvZ29fX2ltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAubG9nb19fdGV4dCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuODEyNWVtO1xuICB9XG59XG5cbi5sb2dvLmxvZ28tLWRpdmlkZXIge1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjQkIwRDEyO1xuICBtYXJnaW46IDAuMzc1ZW0gYXV0bztcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sb2dvLmxvZ28tLWRpdmlkZXIge1xuICAgIG1hcmdpbjogMC44NzVlbSBhdXRvO1xuICB9XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1lbnUgTGlzdFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PSBHTE9CQUwgVkFSSUFOVFMgPT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ubWVudS1saXN0X19jb250YWluZXIge1xuICBjbGVhcjogZml4O1xufVxuXG4ubWVudS1saXN0IHtcbiAgY2xlYXI6IGZpeDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5tZW51LWxpc3RfX2l0ZW0ge1xuICBmbG9hdDogbGVmdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubWVudS1saXN0X19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5tZW51LWxpc3RfX3RvZ2dsZSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxleDogMCAwIGF1dG87XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBtYXJnaW46IDA7XG59XG4ubWVudS1saXN0X190b2dnbGUgLnRvZ2dsZV9faWNvbiB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cztcbn1cbi5tZW51LWxpc3RfX2l0ZW0uaXMtYWN0aXZlID4gLm1lbnUtbGlzdF9fdG9nZ2xlIC50b2dnbGVfX2ljb24ge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbn1cblxuLyogYWNjb3JkaW9uIHZhcmlhbnQgKi9cbi5tZW51LWxpc3QtLWFjY29yZGlvbiAubWVudS1saXN0X19pdGVtLS1wYXJlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4ubWVudS1saXN0LS1hY2NvcmRpb24gLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50ID4gLm1lbnUtbGlzdF9fbGluayB7XG4gIGZsZXg6IDEgMSAwJTtcbn1cblxuLyogY2hpbGQgdmFyaWFudCAqL1xuLm1lbnUtbGlzdC0tY2hpbGQge1xuICBtaW4td2lkdGg6IDEwMCU7XG59XG4ubWVudS1saXN0LS1jaGlsZCAubWVudS1saXN0X19pdGVtIHtcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbi8qIGNoaWxkIGFjY29yZGlvbiB2YXJpYW50ICovXG4ubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLWFjY29yZGlvbiB7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuMTVzLCB2aXNpYmlsaXR5IDBzIDAuMTVzICFpbXBvcnRhbnQ7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudC5pcy1hY3RpdmUgPiAubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLWFjY29yZGlvbiB7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjE1cyAhaW1wb3J0YW50O1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4vKiBjaGlsZCBvdmVybGF5IHZhcmlhbnQgKi9cbi5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tb3ZlcmxheSB7XG4gIGxlZnQ6IC05OTllbTtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTllbTtcbiAgdHJhbnNpdGlvbjogbGVmdCAwcyAwLjE1cywgb3BhY2l0eSAwLjE1cywgdG9wIDBzIDAuMTVzLCB2aXNpYmlsaXR5IDBzIDAuMTVzO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4ubWVudS1saXN0X19pdGVtLS1wYXJlbnQ6aG92ZXIgPiAubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLW92ZXJsYXksIC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudC5pcy1hY3RpdmUgPiAubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLW92ZXJsYXkge1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAxO1xuICB0b3A6IDEwMCU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXM7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4ubm8tamF2YXNjcmlwdCAubWVudS1saXN0X19pdGVtLS1wYXJlbnQ6Zm9jdXMtd2l0aGluID4gLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1vdmVybGF5IHtcbiAgbGVmdDogMDtcbiAgb3BhY2l0eTogMTtcbiAgdG9wOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4vKiBjaGlsZCBvdmVybGF5IGRlcHRoIDIgdmFyaWFudCAqL1xuLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50OmhvdmVyID4gLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1vdmVybGF5Lm1lbnUtbGlzdC0tZGVwdGgtMiwgLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50LmlzLWFjdGl2ZSA+IC5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tb3ZlcmxheS5tZW51LWxpc3QtLWRlcHRoLTIge1xuICBsZWZ0OiAxMDAlO1xuICB0b3A6IDA7XG59XG4ubm8tamF2YXNjcmlwdCAubWVudS1saXN0X19pdGVtLS1wYXJlbnQ6Zm9jdXMtd2l0aGluID4gLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1vdmVybGF5Lm1lbnUtbGlzdC0tZGVwdGgtMiB7XG4gIGxlZnQ6IDEwMCU7XG4gIHRvcDogMDtcbn1cblxuLyogY2hpbGQgb3ZlcmxheSByZXZlcnNlIHZhcmlhbnQgKi9cbi5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tb3ZlcmxheS5tZW51LWxpc3QtLXJldmVyc2Uge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogOTk5ZW07XG4gIHRyYW5zaXRpb246IHJpZ2h0IDBzIDAuMTVzLCBvcGFjaXR5IDAuMTVzLCB0b3AgMHMgMC4xNXMsIHZpc2liaWxpdHkgMHMgMC4xNXM7XG59XG4ubWVudS1saXN0X19pdGVtLS1wYXJlbnQ6aG92ZXIgPiAubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLW92ZXJsYXkubWVudS1saXN0LS1yZXZlcnNlLCAubWVudS1saXN0X19pdGVtLS1wYXJlbnQuaXMtYWN0aXZlID4gLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1vdmVybGF5Lm1lbnUtbGlzdC0tcmV2ZXJzZSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzO1xufVxuLm5vLWphdmFzY3JpcHQgLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50OmZvY3VzLXdpdGhpbiA+IC5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tb3ZlcmxheS5tZW51LWxpc3QtLXJldmVyc2Uge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cztcbn1cblxuLyogY2hpbGQgb3ZlcmxheSByZXZlcnNlIGRlcHRoIDIgdmFyaWFudCAqL1xuLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50OmhvdmVyID4gLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1vdmVybGF5Lm1lbnUtbGlzdC0tcmV2ZXJzZS5tZW51LWxpc3QtLWRlcHRoLTIsIC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudC5pcy1hY3RpdmUgPiAubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLW92ZXJsYXkubWVudS1saXN0LS1yZXZlcnNlLm1lbnUtbGlzdC0tZGVwdGgtMiB7XG4gIHJpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG59XG4ubm8tamF2YXNjcmlwdCAubWVudS1saXN0X19pdGVtLS1wYXJlbnQ6Zm9jdXMtd2l0aGluID4gLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1vdmVybGF5Lm1lbnUtbGlzdC0tcmV2ZXJzZS5tZW51LWxpc3QtLWRlcHRoLTIge1xuICByaWdodDogMTAwJTtcbiAgdG9wOiAwO1xufVxuXG4vKiBkaXNwbGF5LWZsZXggdmFyaWFudCAqL1xuLm1lbnUtbGlzdC0tZGlzcGxheS1mbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5tZW51LWxpc3QtLWRpc3BsYXktZmxleDpub3QoLm1lbnUtbGlzdC0tanVzdGlmeS1iZXR3ZWVuKSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5tZW51LWxpc3QtLWRpc3BsYXktZmxleDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm1lbnUtbGlzdC0tZGlzcGxheS1mbGV4ID4gLm1lbnUtbGlzdF9faXRlbSB7XG4gIGZsZXg6IDEgMSAwJTtcbn1cbi5tZW51LWxpc3QtLWRpc3BsYXktZmxleDpub3QoLm1lbnUtbGlzdC0tanVzdGlmeS1iZXR3ZWVuKTpub3QoLm1lbnUtbGlzdC0tanVzdGlmeS1jZW50ZXIpID4gLm1lbnUtbGlzdF9faXRlbSB7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLyoganVzdGlmeS1zdGFydCB2YXJpYW50ICovXG4ubWVudS1saXN0LS1qdXN0aWZ5LXN0YXJ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuLm1lbnUtbGlzdC0tanVzdGlmeS1zdGFydCA+IC5tZW51LWxpc3RfX2l0ZW0ge1xuICBmbGV4OiAwIDAgYXV0bztcbn1cblxuLyoganVzdGlmeS1jZW50ZXIgdmFyaWFudCAqL1xuLm1lbnUtbGlzdC0tanVzdGlmeS1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5tZW51LWxpc3QtLWp1c3RpZnktY2VudGVyID4gLm1lbnUtbGlzdF9faXRlbSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuXG4vKiBqdXN0aWZ5LWVuZCB2YXJpYW50ICovXG4ubWVudS1saXN0LS1qdXN0aWZ5LWVuZCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG4ubWVudS1saXN0LS1qdXN0aWZ5LWVuZCA+IC5tZW51LWxpc3RfX2l0ZW0ge1xuICBmbGV4OiAwIDAgYXV0bztcbn1cblxuLyoganVzdGlmeS1iZXR3ZWVuIHZhcmlhbnQgKi9cbi5tZW51LWxpc3QtLWp1c3RpZnktYmV0d2VlbiB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi5tZW51LWxpc3QtLWp1c3RpZnktYmV0d2VlbiA+IC5tZW51LWxpc3RfX2l0ZW0ge1xuICBmbGV4OiAwIDAgYXV0bztcbn1cblxuLyogdmVydGljYWwgdmFyaWFudCAqL1xuLm1lbnUtbGlzdC0tdmVydGljYWwgPiAubWVudS1saXN0X19pdGVtIHtcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT0gQ1VTVE9NIFZBUklBTlRTID09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogbWVnYSB2YXJpYW50ICovXG4ubWVudS1saXN0X19jb250YWluZXItLW1lZ2Ege1xuICBkaXNwbGF5OiBmbGV4O1xuICBsZWZ0OiAtOTk5ZW07XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5ZW07XG4gIHRyYW5zaXRpb246IGxlZnQgMHMgMC4xNXMsIG9wYWNpdHkgMC4xNXMsIHRvcCAwcyAwLjE1cywgdmlzaWJpbGl0eSAwcyAwLjE1cztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLm1lbnUtbGlzdF9faXRlbS0tbWVnYS5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudDpob3ZlciA+IC5tZW51LWxpc3RfX2NvbnRhaW5lci0tbWVnYSwgLm1lbnUtbGlzdF9faXRlbS0tbWVnYS5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudC5pcy1hY3RpdmUgPiAubWVudS1saXN0X19jb250YWluZXItLW1lZ2Ege1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAxO1xuICB0b3A6IDEwMCU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXM7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4ubm8tamF2YXNjcmlwdCAubWVudS1saXN0X19pdGVtLS1tZWdhLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50OmZvY3VzLXdpdGhpbiA+IC5tZW51LWxpc3RfX2NvbnRhaW5lci0tbWVnYSB7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDE7XG4gIHRvcDogMTAwJTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cbi5tZW51LWxpc3RfX2NvbnRhaW5lci0tbWVnYSAubWVudS1saXN0Lm1lbnUtbGlzdC0tZGVwdGgtMSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuLm1lbnUtbGlzdF9fY29udGFpbmVyLS1tZWdhIC5tZW51LWxpc3QubWVudS1saXN0LS1kZXB0aC0yIHtcbiAgZmxleDogMCAwIDEwMCU7XG59XG5cbi8qIG1lZ2EgcmV2ZXJzZSB2YXJpYW50ICovXG4ubWVudS1saXN0X19jb250YWluZXItLW1lZ2EubWVudS1saXN0LS1yZXZlcnNlIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDk5OWVtO1xuICB0cmFuc2l0aW9uOiByaWdodCAwcyAwLjE1cywgb3BhY2l0eSAwLjE1cywgdG9wIDBzIDAuMTVzLCB2aXNpYmlsaXR5IDBzIDAuMTVzO1xufVxuLm1lbnUtbGlzdF9faXRlbS0tbWVnYS5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudDpob3ZlciA+IC5tZW51LWxpc3RfX2NvbnRhaW5lci0tbWVnYS5tZW51LWxpc3QtLXJldmVyc2UsIC5tZW51LWxpc3RfX2l0ZW0tLW1lZ2EubWVudS1saXN0X19pdGVtLS1wYXJlbnQuaXMtYWN0aXZlID4gLm1lbnUtbGlzdF9fY29udGFpbmVyLS1tZWdhLm1lbnUtbGlzdC0tcmV2ZXJzZSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzO1xufVxuLm5vLWphdmFzY3JpcHQgLm1lbnUtbGlzdF9faXRlbS0tbWVnYS5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudDpmb2N1cy13aXRoaW4gPiAubWVudS1saXN0X19jb250YWluZXItLW1lZ2EubWVudS1saXN0LS1yZXZlcnNlIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG59XG5cbi8qIG1ldGEgdmFyaWFudCAqL1xuLm1lbnUtbGlzdC0tbWV0YSB7XG4gIGNvbG9yOiAjNDg0ODQ4O1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luOiAwZW0gMGVtIDFlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5tZW51LWxpc3QtLW1ldGEgLm1lbnUtbGlzdF9faXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjQyODU3MTQyODZlbTtcbn1cbi5tZW51LWxpc3QtLW1ldGEgLm1lbnUtbGlzdF9fbGluayB7XG4gIGNvbG9yOiAjNDg0ODQ4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ubWVudS1saXN0LS1tZXRhIC5tZW51LWxpc3RfX2xpbms6aG92ZXIge1xuICBjb2xvcjogIzQ4NDg0ODtcbn1cblxuLyogbmF2aWdhdGlvbiB2YXJpYW50ICovXG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIHtcbiAgLyogY2hpbGQgKi9cbiAgLyogY2hpbGQgZGVwdGgtMiAqL1xuICAvKiBtZWdhICovXG4gIC8qIG1lZ2EgZGVwdGgtMiAqL1xuICAvKiBvdmVybGF5ICovXG4gIC8qIG92ZXJsYXkgZGVwdGgtMiAqL1xufVxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtZmFtaWx5OiBcImlibS1wbGV4LXNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmctcmlnaHQ6IDEuNDI4NTcxNDI4NmVtO1xufVxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0X19saW5rLFxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0X190b2dnbGUge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgcGFkZGluZzogMC41ZW0gMC41NzE0Mjg1NzE0ZW0gMC42NDI4NTcxNDI5ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzO1xufVxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0X19pdGVtIHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cztcbn1cbi5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdF9faXRlbTpob3ZlciwgLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0X19pdGVtOmFjdGl2ZSwgLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0X19pdGVtOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2EzMGIxMDtcbn1cbi5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdF9fbGluayAuc3ZnLWlubGluZS0tZmEge1xuICBtYXJnaW4tbGVmdDogMC40NDQ0NDQ0NDQ0ZW07XG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3RfX2l0ZW0uaXMtYWN0aXZlID4gLm1lbnUtbGlzdF9fbGluayxcbi5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdF9faXRlbS5pcy1hY3RpdmUgPiAubWVudS1saXN0X190b2dnbGUsXG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3RfX2l0ZW06Zm9jdXMtd2l0aGluID4gLm1lbnUtbGlzdF9fbGluayxcbi5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdF9faXRlbTpmb2N1cy13aXRoaW4gPiAubWVudS1saXN0X190b2dnbGUsXG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3RfX2l0ZW06aG92ZXIgPiAubWVudS1saXN0X19saW5rLFxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0X19pdGVtOmhvdmVyID4gLm1lbnUtbGlzdF9fdG9nZ2xlIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3QtLWNoaWxkIHtcbiAgYmFja2dyb3VuZDogI2EzMGIxMDtcbiAgZm9udC1zaXplOiAxZW07XG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3QtLWNoaWxkOjpiZWZvcmUsIC5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdC0tY2hpbGQ6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMC42NjY2NjY2NjY3ZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0LS1jaGlsZCAubWVudS1saXN0X19saW5rLFxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0LS1jaGlsZCAubWVudS1saXN0X190b2dnbGUge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cztcbn1cbi5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdC0tY2hpbGQgLm1lbnUtbGlzdF9faXRlbS5pcy1hY3RpdmUgPiAubWVudS1saXN0X19saW5rLFxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0LS1jaGlsZCAubWVudS1saXN0X19pdGVtLmlzLWFjdGl2ZSA+IC5tZW51LWxpc3RfX3RvZ2dsZSxcbi5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdC0tY2hpbGQgLm1lbnUtbGlzdF9faXRlbTpmb2N1cy13aXRoaW4gPiAubWVudS1saXN0X19saW5rLFxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0LS1jaGlsZCAubWVudS1saXN0X19pdGVtOmZvY3VzLXdpdGhpbiA+IC5tZW51LWxpc3RfX3RvZ2dsZSxcbi5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdC0tY2hpbGQgLm1lbnUtbGlzdF9faXRlbTpob3ZlciA+IC5tZW51LWxpc3RfX2xpbmssXG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2l0ZW06aG92ZXIgPiAubWVudS1saXN0X190b2dnbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLWRlcHRoLTIge1xuICBiYWNrZ3JvdW5kOiAjNzMwODBiO1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3RfX2NvbnRhaW5lci0tbWVnYSB7XG4gIGJhY2tncm91bmQ6ICNhMzBiMTA7XG59XG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tZGVwdGgtMS5tZW51LWxpc3QtLW1lZ2Ege1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBtaW4td2lkdGg6IDA7XG4gIHdpZHRoOiAxNWVtO1xufVxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLWRlcHRoLTEubWVudS1saXN0LS1tZWdhOm5vdCg6bGFzdC1jaGlsZCkge1xuICBib3JkZXItcmlnaHQ6IDAuMDYyNXJlbSBzb2xpZCAjNzMwODBiO1xufVxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLWRlcHRoLTIubWVudS1saXN0LS1tZWdhIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbi5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1kZXB0aC0yLm1lbnUtbGlzdC0tbWVnYTo6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdC0tb3ZlcmxheSB7XG4gIHdpZHRoOiAxNWVtO1xufVxuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0LS1vdmVybGF5Lm1lbnUtbGlzdC0tZGVwdGgtMiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC42NjY2NjY2NjY3ZW0pO1xufVxuXG4vKiBwYWdpbmF0aW9uIHZhcmlhbnQgKi9cbi5tZW51LWxpc3QtLXBhZ2luYXRpb24ge1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi5tZW51LWxpc3QtLXBhZ2luYXRpb24gLm1lbnUtbGlzdF9faXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjU3MTQyODU3MTRlbTtcbn1cbi5tZW51LWxpc3QtLXBhZ2luYXRpb24gLm1lbnUtbGlzdF9fbGluay0tY3VycmVudCB7XG4gIGNvbG9yOiAjMjEyMTIxO1xuICBjdXJzb3I6IGF1dG87XG59XG5cbi8qIHN1Ym1lbnUgdmFyaWFudCAqL1xuLm1lbnUtbGlzdC0tc3VibWVudSB7XG4gIGZvbnQtZmFtaWx5OiBcImlibS1wbGV4LXNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLm1lbnUtbGlzdC0tc3VibWVudSAubWVudS1saXN0X19saW5rIHtcbiAgYm9yZGVyLWJvdHRvbTogMC4xMjVyZW0gc29saWQgI0NDQ0NDQztcbiAgcGFkZGluZzogMC41ZW0gMGVtO1xufVxuLm1lbnUtbGlzdC0tc3VibWVudSAubWVudS1saXN0LS1jaGlsZCB7XG4gIHBhZGRpbmc6IDAuMjVlbSAwZW07XG59XG4ubWVudS1saXN0LS1zdWJtZW51IC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2xpbmsge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBzdmctbG9hZChcIi4uL21lZGlhL3ZlbmRvci9mYXMtYW5nbGUtcmlnaHQuc3ZnXCIsIGZpbGw9I0Q4RDhEOCk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDBlbSAwLjYxMTExMTExMTFlbTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAwLjc1ZW0gMC43NWVtO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwLjI1ZW0gMGVtIDAuMjVlbSAxZW07XG59XG4ubWVudS1saXN0LS1zdWJtZW51IC5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tZGVwdGgtMiB7XG4gIHBhZGRpbmctbGVmdDogMWVtO1xufVxuXG4vKiBsaWdodCB2YXJpYW50ICovXG4ubWVudS1saXN0LS1saWdodCAubWVudS1saXN0X19saW5rIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4ubWVudS1saXN0LS1saWdodCAubWVudS1saXN0X19saW5rOmhvdmVyIHtcbiAgY29sb3I6ICNGRkNBMDA7XG59XG5cbi8qIHNvY2lhbCB2YXJpYW50ICovXG4ubWVudS1saXN0LS1zb2NpYWwge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgZ3JpZC1nYXA6IDBlbSAwLjdlbTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5AbWVkaWEgKG1heC13aWR0aDogODUuMzEyNWVtKSB7XG4gIC5tZW51LWxpc3QtLXNvY2lhbCB7XG4gICAgZ3JpZC1nYXA6IDBlbSAwLjRlbTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAubWVudS1saXN0LS1zb2NpYWwge1xuICAgIGdyaWQtZ2FwOiAwZW0gMC43ZW07XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cbi5tZW51LWxpc3QtLXNvY2lhbCAubWVudS1saXN0X19pdGVtIHtcbiAgd2lkdGg6IGF1dG87XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5tZW51LWxpc3QtLXNvY2lhbCAubWVudS1saXN0X19pdGVtIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBOaW5qYSBGb3Jtc1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItY2xhc3MtcGF0dGVybiAqL1xuLm5mLWZvcm0taHAge1xuICBsZWZ0OiAtOTk5ZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5ZW07XG59XG5cbi5uZi1maWVsZC1jb250YWluZXIgLnBpa2FkYXlfX2NvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubmYtZmllbGQtY29udGFpbmVyIC5saXN0LWNoZWNrYm94LFxuLm5mLWZpZWxkLWNvbnRhaW5lciAubGlzdC1yYWRpbyB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5uZi1maWVsZC1jb250YWluZXIubGFiZWwtYWJvdmUgLmZpZWxkLXdyYXAsIC5uZi1maWVsZC1jb250YWluZXIubGFiZWwtcmlnaHQgLmZpZWxkLXdyYXAsIC5uZi1maWVsZC1jb250YWluZXIubGFiZWwtYmVsb3cgLmZpZWxkLXdyYXAsIC5uZi1maWVsZC1jb250YWluZXIubGFiZWwtbGVmdCAuZmllbGQtd3JhcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1yaWdodCAuZmllbGQtd3JhcCAubmYtZmllbGQtbGFiZWwsIC5uZi1maWVsZC1jb250YWluZXIubGFiZWwtbGVmdCAuZmllbGQtd3JhcCAubmYtZmllbGQtbGFiZWwge1xuICBmbGV4OiAxIDEgMCU7XG59XG4ubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWFib3ZlIC5maWVsZC13cmFwIC5uZi1maWVsZC1lbGVtZW50LCAubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWJlbG93IC5maWVsZC13cmFwIC5uZi1maWVsZC1lbGVtZW50IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLXJpZ2h0IC5maWVsZC13cmFwIC5uZi1maWVsZC1lbGVtZW50LCAubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWxlZnQgLmZpZWxkLXdyYXAgLm5mLWZpZWxkLWVsZW1lbnQge1xuICBmbGV4OiAxIDEgYXV0bztcbn1cbi5uZi1maWVsZC1jb250YWluZXIubGFiZWwtcmlnaHQgLmNoZWNrYm94LXdyYXAgLm5mLWZpZWxkLWVsZW1lbnQsIC5uZi1maWVsZC1jb250YWluZXIubGFiZWwtbGVmdCAuY2hlY2tib3gtd3JhcCAubmYtZmllbGQtZWxlbWVudCB7XG4gIGZsZXg6IG5vbmU7XG59XG4ubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWFib3ZlIC5maWVsZC13cmFwIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5uZi1maWVsZC1jb250YWluZXIubGFiZWwtYmVsb3cgLmZpZWxkLXdyYXAge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAuZmllbGQtd3JhcCAubmYtZmllbGQtbGFiZWwge1xuICBvcmRlcjogMjtcbn1cbi5uZi1maWVsZC1jb250YWluZXIubGFiZWwtYmVsb3cgLmZpZWxkLXdyYXAgLm5mLWZpZWxkLWVsZW1lbnQge1xuICBvcmRlcjogMTtcbn1cbi5uZi1maWVsZC1jb250YWluZXIubGFiZWwtcmlnaHQgLmZpZWxkLXdyYXAgLm5mLWZpZWxkLWxhYmVsIHtcbiAgb3JkZXI6IDI7XG59XG4ubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLXJpZ2h0IC5maWVsZC13cmFwIC5uZi1maWVsZC1lbGVtZW50IHtcbiAgb3JkZXI6IDE7XG59XG4ubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWhpZGRlbiAuZmllbGQtd3JhcCAubmYtZmllbGQtbGFiZWwge1xuICBsZWZ0OiAtOTk5ZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5ZW07XG59XG5cbi5ncmVjYXB0Y2hhLWJhZGdlIHtcbiAgei1pbmRleDogOTk5O1xufVxuXG4ubmYtaGFzLWNvbHVtbnMgLm5mLXJvdyB7XG4gIG1hcmdpbjogMCAtNXB4O1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBPcGluaW9uYXRlZCBUd2Vha3NcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5pcy1vZmZsaW5lIC5uZi1mb3JtLWNvbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaXMtb2ZmbGluZSAubmYtZm9ybS1jb250OjpiZWZvcmUge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xuICBjb250ZW50OiBcIlNvcnJ5LCBpdCBsb29rcyBsaWtlIHlvdSdyZSBvZmZsaW5lLiBQbGVhc2UgcmVjb25uZWN0IHRvIHRoZSBpbnRlcm5ldCB0byB1c2UgdGhpcyBmb3JtLlwiO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAxLjI1ZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubmluamEtZm9ybXMtcmVxLXN5bWJvbCB7XG4gIGNvbG9yOiAjQzYyODI4O1xufVxuXG4ubmluamEtZm9ybXMtaGVscC1zeW1ib2wge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm5pbmphLWZvcm1zLWhlbHAtdG9vbHRpcCB7XG4gIGJhY2tncm91bmQ6ICM0QTRBNEE7XG4gIGJvcmRlci1yYWRpdXM6IDAuNDI4NTcxNDI4NmVtO1xuICBib3R0b206IDEzMCU7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgbGVmdDogNTAlO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwLjcxNDI4NTcxNDNlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKDUwJSk7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMsIHRyYW5zZm9ybSAwLjE1cztcbiAgd2lkdGg6IDE0LjI4NTcxNDI4NTdlbTtcbn1cbi5uaW5qYS1mb3Jtcy1oZWxwLXN5bWJvbC5pcy1hY3RpdmUgLm5pbmphLWZvcm1zLWhlbHAtdG9vbHRpcCB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cbi5uaW5qYS1mb3Jtcy1oZWxwLXRvb2x0aXA6OmFmdGVyIHtcbiAgYm9yZGVyLWxlZnQ6IDAuMzc1ZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMC4zNzVlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogMC4zNzVlbSBzb2xpZCAjNEE0QTRBO1xuICBjb250ZW50OiBcIlwiO1xuICBsZWZ0OiA1MCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG4ubmluamEtZm9ybXMtaGVscC10b29sdGlwIC5uaW5qYS1mb3Jtcy11c2VyLWNvbnRlbnQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLm5mLWZpZWxkLWNvbnRhaW5lciAubGlzdC1jaGVja2JveCxcbi5uZi1maWVsZC1jb250YWluZXIgLmxpc3QtcmFkaW8ge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLm5mLXByb2R1Y3QtcXVhbnRpdHkgLm5mLWlucHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbn1cblxuLm5mLWZpZWxkLWNvbnRhaW5lciAuc3RhcnMge1xuICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbn1cblxuLm5mLWVycm9yLW1zZyB7XG4gIGNvbG9yOiAjRkY1RjUyO1xufVxuXG4ubmYtZmllbGQtY29udGFpbmVyIC5nLXJlY2FwdGNoYTpub3QoW2RhdGEtc2l6ZT1pbnZpc2libGVdKSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNWVtO1xufVxuXG4ubmYtZmllbGQtY29udGFpbmVyIC50ZXh0LS1sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1hYm92ZSAubmYtZmllbGQtbGFiZWwgPiAudGV4dC0tbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwLjI1ZW07XG59XG4ubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWJlbG93IC5uZi1maWVsZC1sYWJlbCA+IC50ZXh0LS1sYWJlbCB7XG4gIG1hcmdpbi10b3A6IDAuMjVlbTtcbn1cbi5uZi1maWVsZC1jb250YWluZXIubGFiZWwtYmVsb3cgLm5mLWZpZWxkLWVsZW1lbnQgLmlucHV0LCAubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWJlbG93IC5uZi1maWVsZC1lbGVtZW50IC53b29jb21tZXJjZSBmb3JtLmxvZ2luIGlucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94LCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiAubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWJlbG93IC5uZi1maWVsZC1lbGVtZW50IGlucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94LFxuLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAubmYtZmllbGQtZWxlbWVudCAud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveCxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIC5uZi1maWVsZC1jb250YWluZXIubGFiZWwtYmVsb3cgLm5mLWZpZWxkLWVsZW1lbnQgaW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3gsIC5uZi1maWVsZC1jb250YWluZXIubGFiZWwtYmVsb3cgLm5mLWZpZWxkLWVsZW1lbnQgLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IHNlbGVjdCwgLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IC5uZi1maWVsZC1jb250YWluZXIubGFiZWwtYmVsb3cgLm5mLWZpZWxkLWVsZW1lbnQgc2VsZWN0LCAubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWJlbG93IC5uZi1maWVsZC1lbGVtZW50IC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBpbnB1dC5pbnB1dC10ZXh0LCAud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAubmYtZmllbGQtZWxlbWVudCBpbnB1dC5pbnB1dC10ZXh0LFxuLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAubmYtZmllbGQtZWxlbWVudCAud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgdGV4dGFyZWEsXG4ud29vY29tbWVyY2UgZm9ybSAuZm9ybS1yb3cgLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAubmYtZmllbGQtZWxlbWVudCB0ZXh0YXJlYSwgLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAubmYtZmllbGQtZWxlbWVudCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC5jb21tZW50LWZvcm0tYXV0aG9yIGlucHV0LCAud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIC5jb21tZW50LWZvcm0tYXV0aG9yIC5uZi1maWVsZC1jb250YWluZXIubGFiZWwtYmVsb3cgLm5mLWZpZWxkLWVsZW1lbnQgaW5wdXQsXG4ubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWJlbG93IC5uZi1maWVsZC1lbGVtZW50IC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLmNvbW1lbnQtZm9ybS1lbWFpbCBpbnB1dCxcbi53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLmNvbW1lbnQtZm9ybS1lbWFpbCAubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWJlbG93IC5uZi1maWVsZC1lbGVtZW50IGlucHV0LCAubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWJlbG93IC5uZi1maWVsZC1lbGVtZW50IC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgdGV4dGFyZWEsIC53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAubmYtZmllbGQtZWxlbWVudCB0ZXh0YXJlYSwgLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAubmYtZmllbGQtZWxlbWVudCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHNlbGVjdCwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlcmluZyAubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWJlbG93IC5uZi1maWVsZC1lbGVtZW50IHNlbGVjdCwgLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAubmYtZmllbGQtZWxlbWVudCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHNlbGVjdCwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudmFyaWF0aW9ucyAubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWJlbG93IC5uZi1maWVsZC1lbGVtZW50IHNlbGVjdCwgLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAubmYtZmllbGQtZWxlbWVudCAud29vY29tbWVyY2UgLnF1YW50aXR5IC5xdHksIC53b29jb21tZXJjZSAucXVhbnRpdHkgLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAubmYtZmllbGQtZWxlbWVudCAucXR5LCAubmYtZmllbGQtY29udGFpbmVyLmxhYmVsLWJlbG93IC5uZi1maWVsZC1lbGVtZW50IC5zdGFycywgLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAubGlzdC1jaGVja2JveCwgLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1iZWxvdyAubGlzdC1yYWRpbyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG9yZGVyOiAxO1xufVxuLm5mLWZpZWxkLWNvbnRhaW5lci5sYWJlbC1sZWZ0IC5uZi1maWVsZC1sYWJlbCA+IC50ZXh0LS1sYWJlbCB7XG4gIG1hcmdpbi1yaWdodDogMC42MjVlbTtcbn1cbi5uZi1maWVsZC1jb250YWluZXIubGFiZWwtcmlnaHQgLm5mLWZpZWxkLWxhYmVsID4gLnRleHQtLWxhYmVsIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1ZW07XG59XG4ubmYtZmllbGQtY29udGFpbmVyLmxpc3RjaGVja2JveC1jb250YWluZXIgLmlucHV0LS10b2dnbGUsIC5uZi1maWVsZC1jb250YWluZXIubGlzdGNoZWNrYm94LWNvbnRhaW5lciAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveCwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gLm5mLWZpZWxkLWNvbnRhaW5lci5saXN0Y2hlY2tib3gtY29udGFpbmVyIGlucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94LFxuLm5mLWZpZWxkLWNvbnRhaW5lci5saXN0Y2hlY2tib3gtY29udGFpbmVyIC53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIGlucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94LFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgLm5mLWZpZWxkLWNvbnRhaW5lci5saXN0Y2hlY2tib3gtY29udGFpbmVyIGlucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94LCAubmYtZmllbGQtY29udGFpbmVyLmxpc3RyYWRpby1jb250YWluZXIgLmlucHV0LS10b2dnbGUsIC5uZi1maWVsZC1jb250YWluZXIubGlzdHJhZGlvLWNvbnRhaW5lciAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveCwgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gLm5mLWZpZWxkLWNvbnRhaW5lci5saXN0cmFkaW8tY29udGFpbmVyIGlucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94LFxuLm5mLWZpZWxkLWNvbnRhaW5lci5saXN0cmFkaW8tY29udGFpbmVyIC53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIGlucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94LFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgLm5mLWZpZWxkLWNvbnRhaW5lci5saXN0cmFkaW8tY29udGFpbmVyIGlucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0Lndvb2NvbW1lcmNlLWZvcm1fX2lucHV0LWNoZWNrYm94IHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjM3NWVtO1xufVxuXG4uZmxhdHBpY2tyLWNhbGVuZGFyIHtcbiAgZm9udC1mYW1pbHk6IFwiaWJtLXBsZXgtc2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBQYW5lbCBUb2dnbGVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5wYW5lbC10b2dnbGUge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiAjOTU3NjAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGhlaWdodDogMS42NjY2NjY2NjY3ZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMS42NjY2NjY2NjY3ZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5wYW5lbC10b2dnbGUge1xuICAgIGZvbnQtc2l6ZTogMS42ODc1ZW07XG4gICAgaGVpZ2h0OiAxLjI1OTI1OTI1OTNlbTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4ucGFuZWwtdG9nZ2xlLS1saWdodCB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4vKiEgUGhvdG9Td2lwZSBtYWluIENTUyBieSBEbWl0cnkgU2VtZW5vdiB8IHBob3Rvc3dpcGUuY29tIHwgTUlUIGxpY2Vuc2UgKi9cbi8qXG5cdFN0eWxlcyBmb3IgYmFzaWMgUGhvdG9Td2lwZSBmdW5jdGlvbmFsaXR5IChzbGlkaW5nIGFyZWEsIG9wZW4vY2xvc2UgdHJhbnNpdGlvbnMpXG4qL1xuLyogcHN3cCA9IHBob3Rvc3dpcGUgKi9cbi5wc3dwIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbiAgei1pbmRleDogMTUwMDtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiBjcmVhdGUgc2VwYXJhdGUgbGF5ZXIsIHRvIGF2b2lkIHBhaW50IG9uIHdpbmRvdy5vbnNjcm9sbCBpbiB3ZWJraXQvYmxpbmsgKi9cbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5wc3dwICoge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5wc3dwIGltZyB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuLyogc3R5bGUgaXMgYWRkZWQgd2hlbiBKUyBvcHRpb24gc2hvd0hpZGVPcGFjaXR5IGlzIHNldCB0byB0cnVlICovXG4ucHN3cC0tYW5pbWF0ZV9vcGFjaXR5IHtcbiAgLyogMC4wMDEsIGJlY2F1c2Ugb3BhY2l0eTowIGRvZXNuJ3QgdHJpZ2dlciBQYWludCBhY3Rpb24sIHdoaWNoIGNhdXNlcyBsYWcgYXQgc3RhcnQgb2YgdHJhbnNpdGlvbiAqL1xuICBvcGFjaXR5OiAwLjAwMTtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG4gIC8qIGZvciBvcGVuL2Nsb3NlIHRyYW5zaXRpb24gKi9cbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpO1xufVxuXG4ucHN3cC0tb3BlbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucHN3cC0tem9vbS1hbGxvd2VkIC5wc3dwX19pbWcge1xuICAvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcbiAgY3Vyc29yOiAtbW96LXpvb20taW47XG4gIGN1cnNvcjogem9vbS1pbjtcbn1cblxuLnBzd3AtLXpvb21lZC1pbiAucHN3cF9faW1nIHtcbiAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gIGN1cnNvcjogLW1vei1ncmFiO1xuICBjdXJzb3I6IGdyYWI7XG59XG5cbi5wc3dwLS1kcmFnZ2luZyAucHN3cF9faW1nIHtcbiAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cbiAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nO1xuICBjdXJzb3I6IC1tb3otZ3JhYmJpbmc7XG4gIGN1cnNvcjogZ3JhYmJpbmc7XG59XG5cbi8qXG5cdEJhY2tncm91bmQgaXMgYWRkZWQgYXMgYSBzZXBhcmF0ZSBlbGVtZW50LlxuXHRBcyBhbmltYXRpbmcgb3BhY2l0eSBpcyBtdWNoIGZhc3RlciB0aGFuIGFuaW1hdGluZyByZ2JhKCkgYmFja2dyb3VuZC1jb2xvci5cbiovXG4ucHN3cF9fYmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xufVxuXG4ucHN3cF9fc2Nyb2xsLXdyYXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnBzd3BfX2NvbnRhaW5lcixcbi5wc3dwX196b29tLXdyYXAge1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xufVxuXG4vKiBQcmV2ZW50IHNlbGVjdGlvbiBhbmQgdGFwIGhpZ2hsaWdodHMgKi9cbi5wc3dwX19jb250YWluZXIsXG4ucHN3cF9faW1nIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xufVxuXG4ucHN3cF9fem9vbS13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgLyogZm9yIG9wZW4vY2xvc2UgdHJhbnNpdGlvbiAqL1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7XG59XG5cbi5wc3dwX19iZyB7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICAvKiBmb3Igb3Blbi9jbG9zZSB0cmFuc2l0aW9uICovXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcbn1cblxuLnBzd3AtLWFuaW1hdGVkLWluIC5wc3dwX19iZyxcbi5wc3dwLS1hbmltYXRlZC1pbiAucHN3cF9fem9vbS13cmFwIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4ucHN3cF9fY29udGFpbmVyLFxuLnBzd3BfX3pvb20td3JhcCB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ucHN3cF9faXRlbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucHN3cF9faW1nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi8qXG5cdHN0cmV0Y2hlZCB0aHVtYm5haWwgb3IgZGl2IHBsYWNlaG9sZGVyIGVsZW1lbnQgKHNlZSBiZWxvdylcblx0c3R5bGUgaXMgYWRkZWQgdG8gYXZvaWQgZmxpY2tlcmluZyBpbiB3ZWJraXQvYmxpbmsgd2hlbiBsYXllcnMgb3ZlcmxhcFxuKi9cbi5wc3dwX19pbWctLXBsYWNlaG9sZGVyIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qXG5cdGRpdiBlbGVtZW50IHRoYXQgbWF0Y2hlcyBzaXplIG9mIGxhcmdlIGltYWdlXG5cdGxhcmdlIGltYWdlIGxvYWRzIG9uIHRvcCBvZiBpdFxuKi9cbi5wc3dwX19pbWctLXBsYWNlaG9sZGVyLS1ibGFuayB7XG4gIGJhY2tncm91bmQ6ICMyMjI7XG59XG5cbi5wc3dwLS1pZSAucHN3cF9faW1nIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbn1cblxuLypcblx0RXJyb3IgbWVzc2FnZSBhcHBlYXJzIHdoZW4gaW1hZ2UgaXMgbm90IGxvYWRlZFxuXHQoSlMgb3B0aW9uIGVycm9yTXNnIGNvbnRyb2xzIG1hcmt1cClcbiovXG4ucHN3cF9fZXJyb3ItbXNnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgbWFyZ2luLXRvcDogLThweDtcbiAgY29sb3I6ICNDQ0M7XG59XG5cbi5wc3dwX19lcnJvci1tc2cgYSB7XG4gIGNvbG9yOiAjQ0NDO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLyohIFBob3RvU3dpcGUgRGVmYXVsdCBVSSBDU1MgYnkgRG1pdHJ5IFNlbWVub3YgfCBwaG90b3N3aXBlLmNvbSB8IE1JVCBsaWNlbnNlICovXG4vKlxuXG5cdENvbnRlbnRzOlxuXG5cdDEuIEJ1dHRvbnNcblx0Mi4gU2hhcmUgbW9kYWwgYW5kIGxpbmtzXG5cdDMuIEluZGV4IGluZGljYXRvciAoXCIxIG9mIFhcIiBjb3VudGVyKVxuXHQ0LiBDYXB0aW9uXG5cdDUuIExvYWRpbmcgaW5kaWNhdG9yXG5cdDYuIEFkZGl0aW9uYWwgc3R5bGVzIChyb290IGVsZW1lbnQsIHRvcCBiYXIsIGlkbGUgc3RhdGUsIGhpZGRlbiBzdGF0ZSwgZXRjLilcblxuKi9cbi8qXG5cblx0MS4gQnV0dG9uc1xuXG4gKi9cbi8qIDxidXR0b24+IGNzcyByZXNldCAqL1xuLnBzd3BfX2J1dHRvbiB7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGZsb2F0OiByaWdodDtcbiAgb3BhY2l0eTogMC43NTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ucHN3cF9fYnV0dG9uOmZvY3VzLCAucHN3cF9fYnV0dG9uOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnBzd3BfX2J1dHRvbjphY3RpdmUge1xuICBvdXRsaW5lOiBub25lO1xuICBvcGFjaXR5OiAwLjk7XG59XG5cbi5wc3dwX19idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi8qIHBzd3BfX3VpLS1vdmVyLWNsb3NlIGNsYXNzIGl0IGFkZGVkIHdoZW4gbW91c2UgaXMgb3ZlciBlbGVtZW50IHRoYXQgc2hvdWxkIGNsb3NlIGdhbGxlcnkgKi9cbi5wc3dwX191aS0tb3Zlci1jbG9zZSAucHN3cF9fYnV0dG9uLS1jbG9zZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5wc3dwX19idXR0b24sXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdDpiZWZvcmUsXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQ6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogdXJsKGRlZmF1bHQtc2tpbi5wbmcpIDAgMCBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMjY0cHggODhweDtcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogNDRweDtcbn1cblxuQG1lZGlhICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMSksICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDEuMDkzNzUpLCAobWluLXJlc29sdXRpb246IDEwNWRwaSksIChtaW4tcmVzb2x1dGlvbjogMS4xZHBweCkge1xuICAvKiBTZXJ2ZSBTVkcgc3ByaXRlIGlmIGJyb3dzZXIgc3VwcG9ydHMgU1ZHIGFuZCByZXNvbHV0aW9uIGlzIG1vcmUgdGhhbiAxMDVkcGkgKi9cbiAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLFxuLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdDpiZWZvcmUsXG4ucHN3cC0tc3ZnIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChkZWZhdWx0LXNraW4uc3ZnKTtcbiAgfVxuXG4gIC5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4ucHN3cC0tc3ZnIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgfVxufVxuLnBzd3BfX2J1dHRvbi0tY2xvc2Uge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00NHB4O1xufVxuXG4ucHN3cF9fYnV0dG9uLS1zaGFyZSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00NHB4IC00NHB4O1xufVxuXG4ucHN3cF9fYnV0dG9uLS1mcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wc3dwLS1zdXBwb3J0cy1mcyAucHN3cF9fYnV0dG9uLS1mcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucHN3cC0tZnMgLnBzd3BfX2J1dHRvbi0tZnMge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDRweCAwO1xufVxuXG4ucHN3cF9fYnV0dG9uLS16b29tIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTg4cHggMDtcbn1cblxuLnBzd3AtLXpvb20tYWxsb3dlZCAucHN3cF9fYnV0dG9uLS16b29tIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5wc3dwLS16b29tZWQtaW4gLnBzd3BfX2J1dHRvbi0tem9vbSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMzJweCAwO1xufVxuXG4vKiBubyBhcnJvd3Mgb24gdG91Y2ggc2NyZWVucyAqL1xuLnBzd3AtLXRvdWNoIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3AtLXRvdWNoIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLypcblx0QXJyb3cgYnV0dG9ucyBoaXQgYXJlYVxuXHQoaWNvbiBpcyBhZGRlZCB0byA6YmVmb3JlIHBzZXVkby1lbGVtZW50KVxuKi9cbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC01MHB4O1xuICB3aWR0aDogNzBweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCB7XG4gIGxlZnQ6IDA7XG59XG5cbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gIHJpZ2h0OiAwO1xufVxuXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdDpiZWZvcmUsXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgdG9wOiAzNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGhlaWdodDogMzBweDtcbiAgd2lkdGg6IDMycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQ6YmVmb3JlIHtcbiAgbGVmdDogNnB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTM4cHggLTQ0cHg7XG59XG5cbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodDpiZWZvcmUge1xuICByaWdodDogNnB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTRweCAtNDRweDtcbn1cblxuLypcblxuXHQyLiBTaGFyZSBtb2RhbC9wb3B1cCBhbmQgbGlua3NcblxuICovXG4ucHN3cF9fY291bnRlcixcbi5wc3dwX19zaGFyZS1tb2RhbCB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5wc3dwX19zaGFyZS1tb2RhbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMTBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxNjAwO1xuICBvcGFjaXR5OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1vdXQ7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbn1cblxuLnBzd3BfX3NoYXJlLW1vZGFsLS1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucHN3cF9fc2hhcmUtdG9vbHRpcCB7XG4gIHotaW5kZXg6IDE2MjA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbiAgdG9wOiA1NnB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgcmlnaHQ6IDQ0cHg7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAycHggNXB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDZweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuMjVzO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXM7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xufVxuXG4ucHN3cF9fc2hhcmUtdG9vbHRpcCBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDhweCAxMnB4O1xuICBjb2xvcjogIzAwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xufVxuXG4ucHN3cF9fc2hhcmUtdG9vbHRpcCBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLnBzd3BfX3NoYXJlLXRvb2x0aXAgYTpmaXJzdC1jaGlsZCB7XG4gIC8qIHJvdW5kIGNvcm5lcnMgb24gdGhlIGZpcnN0L2xhc3QgbGlzdCBpdGVtICovXG4gIGJvcmRlci1yYWRpdXM6IDJweCAycHggMCAwO1xufVxuXG4ucHN3cF9fc2hhcmUtdG9vbHRpcCBhOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMnB4IDJweDtcbn1cblxuLnBzd3BfX3NoYXJlLW1vZGFsLS1mYWRlLWluIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnBzd3BfX3NoYXJlLW1vZGFsLS1mYWRlLWluIC5wc3dwX19zaGFyZS10b29sdGlwIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLyogaW5jcmVhc2Ugc2l6ZSBvZiBzaGFyZSBsaW5rcyBvbiB0b3VjaCBkZXZpY2VzICovXG4ucHN3cC0tdG91Y2ggLnBzd3BfX3NoYXJlLXRvb2x0aXAgYSB7XG4gIHBhZGRpbmc6IDE2cHggMTJweDtcbn1cblxuYS5wc3dwX19zaGFyZS0tZmFjZWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMTJweDtcbiAgcmlnaHQ6IDE1cHg7XG4gIGJvcmRlcjogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjRkZGO1xuICAtd2Via2l0LXBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtbW96LXBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuYS5wc3dwX19zaGFyZS0tZmFjZWJvb2s6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjM0U1QzlBO1xuICBjb2xvcjogI0ZGRjtcbn1cblxuYS5wc3dwX19zaGFyZS0tZmFjZWJvb2s6aG92ZXI6YmVmb3JlIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzNFNUM5QTtcbn1cblxuYS5wc3dwX19zaGFyZS0tdHdpdHRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICM1NUFDRUU7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG5hLnBzd3BfX3NoYXJlLS1waW50ZXJlc3Q6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjQ0NDO1xuICBjb2xvcjogI0NFMjcyRDtcbn1cblxuYS5wc3dwX19zaGFyZS0tZG93bmxvYWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjREREO1xufVxuXG4vKlxuXG5cdDMuIEluZGV4IGluZGljYXRvciAoXCIxIG9mIFhcIiBjb3VudGVyKVxuXG4gKi9cbi5wc3dwX19jb3VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGhlaWdodDogNDRweDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogNDRweDtcbiAgY29sb3I6ICNGRkY7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIHBhZGRpbmc6IDAgMTBweDtcbn1cblxuLypcblxuXHQ0LiBDYXB0aW9uXG5cbiAqL1xuLnBzd3BfX2NhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDQ0cHg7XG59XG5cbi5wc3dwX19jYXB0aW9uIHNtYWxsIHtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBjb2xvcjogI0JCQjtcbn1cblxuLnBzd3BfX2NhcHRpb25fX2NlbnRlciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1heC13aWR0aDogNDIwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBmb250LXNpemU6IDEzcHg7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogI0NDQztcbn1cblxuLnBzd3BfX2NhcHRpb24tLWVtcHR5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogRmFrZSBjYXB0aW9uIGVsZW1lbnQsIHVzZWQgdG8gY2FsY3VsYXRlIGhlaWdodCBvZiBuZXh0L3ByZXYgaW1hZ2UgKi9cbi5wc3dwX19jYXB0aW9uLS1mYWtlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKlxuXG5cdDUuIExvYWRpbmcgaW5kaWNhdG9yIChwcmVsb2FkZXIpXG5cblx0WW91IGNhbiBwbGF5IHdpdGggaXQgaGVyZSAtIGh0dHA6Ly9jb2RlcGVuLmlvL2RpbXNlbWVub3YvcGVuL3l5QldvUlxuXG4gKi9cbi5wc3dwX19wcmVsb2FkZXIge1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTIycHg7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLW91dDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLW91dDtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG4gIGRpcmVjdGlvbjogbHRyO1xufVxuXG4ucHN3cF9fcHJlbG9hZGVyX19pY24ge1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBtYXJnaW46IDEycHg7XG59XG5cbi5wc3dwX19wcmVsb2FkZXItLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5wc3dwX19wcmVsb2FkZXItLWFjdGl2ZSAucHN3cF9fcHJlbG9hZGVyX19pY24ge1xuICAvKiBXZSB1c2UgLmdpZiBpbiBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgQ1NTIGFuaW1hdGlvbiAqL1xuICBiYWNrZ3JvdW5kOiB1cmwocHJlbG9hZGVyLmdpZikgMCAwIG5vLXJlcGVhdDtcbn1cblxuLnBzd3AtLWNzc19hbmltYXRpb24gLnBzd3BfX3ByZWxvYWRlci0tYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnBzd3AtLWNzc19hbmltYXRpb24gLnBzd3BfX3ByZWxvYWRlci0tYWN0aXZlIC5wc3dwX19wcmVsb2FkZXJfX2ljbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBjbG9ja3dpc2UgNTAwbXMgbGluZWFyIGluZmluaXRlO1xuICBhbmltYXRpb246IGNsb2Nrd2lzZSA1MDBtcyBsaW5lYXIgaW5maW5pdGU7XG59XG5cbi5wc3dwLS1jc3NfYW5pbWF0aW9uIC5wc3dwX19wcmVsb2FkZXItLWFjdGl2ZSAucHN3cF9fcHJlbG9hZGVyX19kb251dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBkb251dC1yb3RhdGUgMTAwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpIGluZmluaXRlO1xuICBhbmltYXRpb246IGRvbnV0LXJvdGF0ZSAxMDAwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSkgaW5maW5pdGU7XG59XG5cbi5wc3dwLS1jc3NfYW5pbWF0aW9uIC5wc3dwX19wcmVsb2FkZXJfX2ljbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNzU7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMTVweDtcbiAgdG9wOiAxNXB4O1xuICBtYXJnaW46IDA7XG59XG5cbi5wc3dwLS1jc3NfYW5pbWF0aW9uIC5wc3dwX19wcmVsb2FkZXJfX2N1dCB7XG4gIC8qIFxuICBcdFRoZSBpZGVhIG9mIGFuaW1hdGluZyBpbm5lciBjaXJjbGUgaXMgYmFzZWQgb24gUG9seW1lciAoXCJtYXRlcmlhbFwiKSBsb2FkaW5nIGluZGljYXRvciBcbiAgXHQgYnkgS2VhbnUgTGVlIGh0dHBzOi8vYmxvZy5rZWFudWxlZS5jb20vMjAxNC8xMC8yMC90aGUtdGFsZS1vZi10aHJlZS1zcGlubmVycy5odG1sXG4gICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDdweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucHN3cC0tY3NzX2FuaW1hdGlvbiAucHN3cF9fcHJlbG9hZGVyX19kb251dCB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgYm9yZGVyOiAycHggc29saWQgI0ZGRjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgbWFyZ2luOiAwO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgLnBzd3BfX3ByZWxvYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdG9wOiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBjbG9ja3dpc2Uge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuQGtleWZyYW1lcyBjbG9ja3dpc2Uge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGRvbnV0LXJvdGF0ZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTQwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTQwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGRvbnV0LXJvdGF0ZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTQwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTQwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG59XG4vKlxuXG5cdDYuIEFkZGl0aW9uYWwgc3R5bGVzXG5cbiAqL1xuLyogcm9vdCBlbGVtZW50IG9mIFVJICovXG4ucHN3cF9fdWkge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhdXRvO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xuICB6LWluZGV4OiAxNTUwO1xufVxuXG4vKiB0b3AgYmxhY2sgYmFyIHdpdGggYnV0dG9ucyBhbmQgXCIxIG9mIFhcIiBpbmRpY2F0b3IgKi9cbi5wc3dwX190b3AtYmFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGhlaWdodDogNDRweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wc3dwX19jYXB0aW9uLFxuLnBzd3BfX3RvcC1iYXIsXG4ucHN3cC0taGFzX21vdXNlIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3AtLWhhc19tb3VzZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lsbC1jaGFuZ2U6IG9wYWNpdHk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcbn1cblxuLyogcHN3cC0taGFzX21vdXNlIGNsYXNzIGlzIGFkZGVkIG9ubHkgd2hlbiB0d28gc3Vic2VxdWVudCBtb3VzZW1vdmUgZXZlbnRzIG9jY3VyICovXG4ucHN3cC0taGFzX21vdXNlIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3AtLWhhc19tb3VzZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4ucHN3cF9fdG9wLWJhcixcbi5wc3dwX19jYXB0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuXG4vKiBwc3dwX191aS0tZml0IGNsYXNzIGlzIGFkZGVkIHdoZW4gbWFpbiBpbWFnZSBcImZpdHNcIiBiZXR3ZWVuIHRvcCBiYXIgYW5kIGJvdHRvbSBiYXIgKGNhcHRpb24pICovXG4ucHN3cF9fdWktLWZpdCAucHN3cF9fdG9wLWJhcixcbi5wc3dwX191aS0tZml0IC5wc3dwX19jYXB0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuXG4vKiBwc3dwX191aS0taWRsZSBjbGFzcyBpcyBhZGRlZCB3aGVuIG1vdXNlIGlzbid0IG1vdmluZyBmb3Igc2V2ZXJhbCBzZWNvbmRzIChKUyBvcHRpb24gdGltZVRvSWRsZSkgKi9cbi5wc3dwX191aS0taWRsZSAucHN3cF9fdG9wLWJhciB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5wc3dwX191aS0taWRsZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwX191aS0taWRsZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICBvcGFjaXR5OiAwO1xufVxuXG4vKlxuXHRwc3dwX191aS0taGlkZGVuIGNsYXNzIGlzIGFkZGVkIHdoZW4gY29udHJvbHMgYXJlIGhpZGRlblxuXHRlLmcuIHdoZW4gdXNlciB0YXBzIHRvIHRvZ2dsZSB2aXNpYmlsaXR5IG9mIGNvbnRyb2xzXG4qL1xuLnBzd3BfX3VpLS1oaWRkZW4gLnBzd3BfX3RvcC1iYXIsXG4ucHN3cF9fdWktLWhpZGRlbiAucHN3cF9fY2FwdGlvbixcbi5wc3dwX191aS0taGlkZGVuIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3BfX3VpLS1oaWRkZW4gLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgLyogRm9yY2UgcGFpbnQgJiBjcmVhdGUgY29tcG9zaXRpb24gbGF5ZXIgZm9yIGNvbnRyb2xzLiAqL1xuICBvcGFjaXR5OiAwLjAwMTtcbn1cblxuLyogcHN3cF9fdWktLW9uZS1zbGlkZSBjbGFzcyBpcyBhZGRlZCB3aGVuIHRoZXJlIGlzIGp1c3Qgb25lIGl0ZW0gaW4gZ2FsbGVyeSAqL1xuLnBzd3BfX3VpLS1vbmUtc2xpZGUgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4ucHN3cF9fdWktLW9uZS1zbGlkZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQsXG4ucHN3cF9fdWktLW9uZS1zbGlkZSAucHN3cF9fY291bnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wc3dwX19lbGVtZW50LS1kaXNhYmxlZCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnBzd3AtLW1pbmltYWwtLWRhcmsgLnBzd3BfX3RvcC1iYXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBQaG90b1N3aXBlIChodHRwOi8vcGhvdG9zd2lwZS5jb20vKVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItY2xhc3MtcGF0dGVybiAqL1xuLnBzd3Age1xuICB6LWluZGV4OiAxMDAwMDA7XG59XG5cbi5wc3dwX19idXR0b24sXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdDo6YmVmb3JlLFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0OjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS92ZW5kb3IvcGhvdG9zd2lwZS1kZWZhdWx0LXNraW4ucG5nXCIpO1xufVxuXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbkBtZWRpYSAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjEpLCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjA5Mzc1KSwgKG1pbi1yZXNvbHV0aW9uOiAxMDVkcGkpLCAobWluLXJlc29sdXRpb246IDEuMWRwcHgpIHtcbiAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLFxuLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdDo6YmVmb3JlLFxuLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQ6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnLWxvYWQoXCIuLi9tZWRpYS92ZW5kb3IvcGhvdG9zd2lwZS1kZWZhdWx0LXNraW4uc3ZnXCIpO1xuICB9XG5cbiAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG59XG4ucHN3cF9fcHJlbG9hZGVyLS1hY3RpdmUgLnBzd3BfX3ByZWxvYWRlcl9faWNuIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvdmVuZG9yL3Bob3Rvc3dpcGUtcHJlbG9hZGVyLmdpZlwiKTtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogUG9zdCBQYXNzd29yZCBGb3JtXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ucG9zdC1wYXNzd29yZC1mb3JtIC51c2VyLWNvbnRlbnRfX3RleHQge1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLnBvc3QtcGFzc3dvcmQtZm9ybV9faW5wdXQge1xuICBtYXJnaW4tdG9wOiAwLjVlbTtcbn1cblxuLyoqXG4gKiBQV0EgSW5zdGFsbCBQcm9tcHQgMS4wLjJcbiAqIFByb21wdCB1c2VycyB0byBhZGQgeW91ciBQV0EgdG8gdGhlaXIgaG9tZSBzY3JlZW4sIHNpbmNlIEFwcGxlIHdvbuKAmXQuXG4gKiBodHRwczovL2dpdGh1Yi5jb20vSmFjb2JEQi9wd2EtaW5zdGFsbC1wcm9tcHQvXG4gKlxuICogQ29weXJpZ2h0IDIwMTggSmFjb2IgQmVhcmNlXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlXG4gKlxuICogUmVsZWFzZWQgb246IE5vdmVtYmVyIDYsIDIwMThcbiAqL1xuLnB3YS1pbnN0YWxsLXByb21wdF9fY29udGFpbmVyIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbGVmdDogLTk5OWVtO1xuICBwYWRkaW5nOiAzMHB4O1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogLTk5OWVtO1xuICB0cmFuc2l0aW9uOiBsZWZ0IDBzIDAuMTVzLCB0b3AgMHMgMC4xNXMsIHZpc2liaWxpdHkgMHMgMC4xNXM7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDAwMDtcbn1cblxuLnB3YS1pbnN0YWxsLXByb21wdF9fY29udGFpbmVyLmlzLWFjdGl2ZSB7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLnB3YS1pbnN0YWxsLXByb21wdF9fb3ZlcmxheSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm9yZGVyOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1pbmRlbnQ6IC05OTllbTtcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMDtcbn1cblxuLnB3YS1pbnN0YWxsLXByb21wdF9fY29udGFpbmVyLmlzLWFjdGl2ZSAucHdhLWluc3RhbGwtcHJvbXB0X19vdmVybGF5IHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnB3YS1pbnN0YWxsLXByb21wdCB7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm94LXNoYWRvdzogMHB4IDRweCA4cHggcmdiYSgwLCAwLCAwLCAwLjEyNSk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiAjNDI0MjQyO1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgbWF4LXdpZHRoOiAzMjBweDtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNSUpO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzLCB0cmFuc2Zvcm0gMC4xNXMgZWFzZS1pbi1vdXQ7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX2NvbnRhaW5lci5pcy1hY3RpdmUgLnB3YS1pbnN0YWxsLXByb21wdCB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHQ6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgdmlld0JveD0nMCAwIDEyOCAxMjgnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGZpbGw9JyUyM0ZGRkZGRicgZD0nTTY0LjE5Nyw1MC40N0M3OS42OTYsMzQuOTUgOTUuMjU5LDE5LjUwMiAxMTAuNTk3LDMuODI0QzExNC40MTEsMC4xODIgMTE0LjU2NSwxLjAyMiAxMTcuNzA3LDEuMjRDMTI0LjI5OSwyLjE2NyAxMjcuNzIzLDEwLjY4NyAxMjMuNDM1LDE2LjA3OEMxMDguNDUzLDMyLjQ3IDkyLjk5Nyw0OC4zOTkgNzcuMzg3LDY0LjE3NEM5Mi41NzEsODAuMDEgMTA3LjY4NSw5NS45MTcgMTIzLjAyNCwxMTEuNTk1QzEyOS4xOTUsMTE4LjM0OSAxMjAuNDMyLDEzMi41MjcgMTExLjAzNSwxMjQuNzE2Qzk0Ljk5MiwxMDkuNDAzIDc5LjQwOCw5My42MTEgNjMuOTc5LDc3LjY1QzQ4LjQ4NSw5My4xNjkgMzIuOTE3LDEwOC42MTggMTcuNTg0LDEyNC4yOTZDMTAuODM3LDEzMC43MzQgLTIuNDExLDEyMS4wMzEgNC43NDcsMTEyLjA0MkMxOS43MjgsOTUuNjUgMzUuMTc5LDc5LjcxNiA1MC43OTUsNjMuOTQ1QzM1LjYwNSw0OC4xMSAyMC40OTEsMzIuMTk4IDUuMTU3LDE2LjUyNUMwLjA4NSwxMC45NzYgMi45MTIsMC41ODYgMTIuMjY3LDEuMjRDMTQuMDY5LDEuNDkxIDE1LjcyMywyLjIyNyAxNy4xNDEsMy40MDRDMzMuMTg0LDE4LjcxNyA0OC43NjgsMzQuNTA5IDY0LjE5Nyw1MC40N1onIC8lM0UlM0Mvc3ZnJTNFJTBBXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICBib3JkZXI6IDA7XG4gIGJvdHRvbTogMTAwJTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTZweDtcbiAgbWFyZ2luOiAwIDAgMTZweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxNnB4O1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0X19pY29uX19jb250YWluZXIge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHZpZXdCb3g9JzAgMCA3MCA3MCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzRSUzQ3BhdGggZmlsbD0nJTIzRjBGMEYwJyBkPSdNNjUsMTdDNjUsMTAuMzc3IDU5LjYyMyw1IDUzLDVMMTcsNUMxMC4zNzcsNSA1LDEwLjM3NyA1LDE3TDUsNTNDNSw1OS42MjMgMTAuMzc3LDY1IDE3LDY1TDUzLDY1QzU5LjYyMyw2NSA2NSw1OS42MjMgNjUsNTNMNjUsMTdaJyAvJTNFJTNDL3N2ZyUzRSUwQVwiKSBjZW50ZXIgY2VudGVyLzcwcHggNzBweCByZXBlYXQteDtcbiAgbWFyZ2luOiA0MHB4IDAgMDtcbn1cblxuLnB3YS1pbnN0YWxsLXByb21wdF9faWNvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDYwcHg7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX2NvbnRlbnQge1xuICBwYWRkaW5nOiAxMHB4IDM1cHg7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX3RpdGxlIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBtYXJnaW46IDAgMCAyMHB4O1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0X190ZXh0IHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgbWFyZ2luOiAwIDAgNDZweDtcbn1cblxuLnB3YS1pbnN0YWxsLXByb21wdF9fZ3VpZGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDA7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX2d1aWRlX19pY29uIHtcbiAgbWFyZ2luOiAwIDJweCA2cHg7XG4gIHdpZHRoOiAyMHB4O1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBQV0EgSW5zdGFsbCBQcm9tcHQgKGh0dHBzOi8vZ2l0aHViLmNvbS9KYWNvYkRCL3B3YS1pbnN0YWxsLXByb21wdClcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBrZXlmcmFtZXMgc2Nyb2xsLWhpbnQtYXBwZWFyIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0MHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA1MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuLnNjcm9sbC1oaW50LmlzLXJpZ2h0LXNjcm9sbGFibGUge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKDAsIDAsIDAsIDAuMTUpIDAsIHJnYmEoMCwgMCwgMCwgMCkgMTZweCwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG5cbi5zY3JvbGwtaGludC5pcy1yaWdodC1zY3JvbGxhYmxlLmlzLWxlZnQtc2Nyb2xsYWJsZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgwLCAwLCAwLCAwLjE1KSAwLCByZ2JhKDAsIDAsIDAsIDApIDE2cHgsIHJnYmEoMCwgMCwgMCwgMCkpLCBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKDAsIDAsIDAsIDAuMTUpIDAsIHJnYmEoMCwgMCwgMCwgMCkgMTZweCwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG5cbi5zY3JvbGwtaGludC5pcy1sZWZ0LXNjcm9sbGFibGUge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMCwgMCwgMCwgMC4xNSkgMCwgcmdiYSgwLCAwLCAwLCAwKSAxNnB4LCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cblxuLnNjcm9sbC1oaW50LWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYyg1MCUgLSAyNXB4KTtcbiAgbGVmdDogY2FsYyg1MCUgLSA2MHB4KTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEyMHB4O1xuICBoZWlnaHQ6IDgwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xuICBvcGFjaXR5OiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMjBweCAxMHB4IDEwcHggMTBweDtcbn1cblxuLnNjcm9sbC1oaW50LWljb24td3JhcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnNjcm9sbC1oaW50LXRleHQge1xuICBmb250LXNpemU6IDEwcHg7XG4gIGNvbG9yOiAjRkZGO1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi5zY3JvbGwtaGludC1pY29uLXdyYXAuaXMtYWN0aXZlIC5zY3JvbGwtaGludC1pY29uIHtcbiAgb3BhY2l0eTogMC44O1xufVxuXG4uc2Nyb2xsLWhpbnQtaWNvbjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGNvbG9yOiAjRkZGO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJeU5TNDNOeUlnYUdWcFoyaDBQU0l6TUM0MU1pSWdkbWxsZDBKdmVEMGlNQ0F3SURJMUxqYzNJRE13TGpVeUlqNDhkR2wwYkdVKzQ0S2k0NEs3NDRPRDQ0T0lJRE04TDNScGRHeGxQanhuSUdsa1BTTGpnNnpqZ3FUamc2VGpnN3hmTWlJZ1pHRjBZUzF1WVcxbFBTTGpnNnpqZ3FUamc2VGpnN3dnTWlJK1BHY2dhV1E5SXVPRHJPT0NwT09EcE9PRHZGOHhMVElpSUdSaGRHRXRibUZ0WlQwaTQ0T3M0NEtrNDRPazQ0TzhJREVpUGp4d1lYUm9JR1E5SWsweU1TNHpNeXd6TUM0MU1rZzNMamcxUVRFdU5UVXNNUzQxTlN3d0xEQXNNU3cyTGpNc01qbGhNVEl1TkRZc01USXVORFlzTUN3d0xEQXRMall6TFRRdU5ESXNNalV1TVRZc01qVXVNVFlzTUN3d0xEQXROQzR5TlMwMWJDMHVNRFl0TGpBMlFUVXNOU3d3TERBc01Td3dMREUxTGpnMllUTXVOalFzTXk0Mk5Dd3dMREFzTVN3eExqRTNMVEl1TmpJc015NDJNeXd6TGpZekxEQXNNQ3d4TERVdU1UUXVNRGRXTXk0M04yRXpMamMzTERNdU56Y3NNQ3d4TERFc055NDFOQ3d3VmpndU16TmhNeTR6TlN3ekxqTTFMREFzTUN3eExERXVNallzTUN3ekxETXNNQ3d3TERFc01pd3hMakl5TERNdU5Td3pMalVzTUN3d0xERXNNaTB1TURZc015NHlNU3d6TGpJeExEQXNNQ3d4TERJc01TNDFOQ3d6TGpjMExETXVOelFzTUN3d0xERXNNeXd1TkRkQk5DNHlNU3cwTGpJeExEQXNNQ3d4TERJMUxqYzBMREUxWXpBc0xqRXhMREFzTGpJM0xEQXNMalEyWVRFNUxqSTJMREU1TGpJMkxEQXNNQ3d4TFM0NE5DdzNZeTB1TVRRdU16Z3RMak0yTGpneExTNDFOaXd4TGpJeWJDMHVNVEV1TWpKak1Dd3VNRGN0TGpBNUxqRTBMUzR4TkM0eU1XRTNMakV6TERjdU1UTXNNQ3d3TERBdE1TNHhOeXd5TGpFM1l5MHVNRFl1TlRZdExqQTJMREl1TVRVdExqQTFMREl1TnpGQk1TNDFOU3d4TGpVMUxEQXNNQ3d4TERJeExqTXpMRE13TGpVeVdrMDRMall4TERJNExqSXhhREV5WXpBdExqY3hMREF0TVM0M01TNHdOeTB5TGpJellUZ3VOelFzT0M0M05Dd3dMREFzTVN3eExqVTVMVE11TWpWc0xqQTJMUzR4TW1FeE1Dd3hNQ3d3TERBc01Dd3VORFl0TVN3eE5pNDRMREUyTGpnc01Dd3dMREFzTGpjdE5pNHhNbU13TFM0eU15d3dMUzQwTVN3d0xTNDFOR2d3WVRJc01pd3dMREFzTUMwdU5qUXRNUzQxTWl3eExqTXpMREV1TXpNc01Dd3dMREF0TVM0MU5TNHdPQ3d4TGpFekxERXVNVE1zTUN3d0xERXRNUzR4T0M0eU9Dd3hMakUxTERFdU1UVXNNQ3d3TERFdExqYzRMUzQ1TkN3eExqSTJMREV1TWpZc01Dd3dMREF0TGpjMUxURXVNVEVzTVN3eExEQXNNQ3d3TFRFdU1URXVNamhzTFM0eExqRmhNUzR4TlN3eExqRTFMREFzTUN3eExURXVNVGt1TWprc01TNHhOaXd4TGpFMkxEQXNNQ3d4TFM0M09DMHVPVFZqTFM0d09TMHVOamd0TGpJeExTNDNOeTB1TnkwdU9EZGhMamd5TGpneUxEQXNNQ3d3TFRFc0xqUTRMREV1TVRZc01TNHhOaXd3TERBc01TMHlMakUyTFM0MU9GWXpMamMzWVRFdU5EWXNNUzQwTml3d0xERXNNQzB5TGpreUxEQjJOeTQ0Tld3d0xEUXVNek5oTVM0eE55d3hMakUzTERBc01Dd3hMUzQ0TXl3eExqRXhMREV1TVRVc01TNHhOU3d3TERBc01TMHhMakl0TGpNMWJDMHhMUzQ1TVdNdExqUTNMUzQwTWkwdU56TXRMalkyTFM0NE5DMHVOemRoTVM0ek5Td3hMak0xTERBc01Dd3dMVEl0TGpFeVRESXVOeXd4TldFeExqTXlMREV1TXpJc01Dd3dMREF0TGpNNUxERkJNaTQxTnl3eUxqVTNMREFzTUN3d0xETXNNVGN1T0RWc01Dd3dZVEkzTGpJMExESTNMakkwTERBc01Dd3hMRFF1Tnl3MUxqWXlRVEV5TGpZekxERXlMall6TERBc01Dd3hMRGd1TmpFc01qZ3VNakZhVFRJekxqSXNNak11TXpWYVRUWXVOVEVzTVRZdU5UbGFJaUJtYVd4c1BTSWpabVptSWk4K1BDOW5Qand2Wno0OEwzTjJaejQ9KTtcbn1cblxuLnNjcm9sbC1oaW50LWljb246YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMzRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhkcFpIUm9QU0l6TXk0eU9TSWdhR1ZwWjJoMFBTSXhNaTR3TWlJZ2RtbGxkMEp2ZUQwaU1DQXdJRE16TGpJNUlERXlMakF5SWo0OGRHbDBiR1UrNDRLaTQ0Szc0NE9ENDRPSUlERThMM1JwZEd4bFBqeG5JR2xrUFNMamc2empncVRqZzZUamc3eGZNaUlnWkdGMFlTMXVZVzFsUFNMamc2empncVRqZzZUamc3d2dNaUkrUEdjZ2FXUTlJdU9Eck9PQ3BPT0RwT09EdkY4eExUSWlJR1JoZEdFdGJtRnRaVDBpNDRPczQ0S2s0NE9rNDRPOElERWlQanhzYVc1bElIZ3hQU0l4TGpnMUlpQjVNVDBpTmk0d01TSWdlREk5SWpFd0xqUWlJSGt5UFNJMkxqQXhJaUJtYVd4c1BTSWpabVptSWk4K1BIQmhkR2dnWkQwaVRURXdMalFzTnk0eE4wZ3hMamcxWVRFdU1UWXNNUzR4Tml3d0xERXNNU3d3TFRJdU16RklNVEF1TkdFeExqRTJMREV1TVRZc01Dd3hMREVzTUN3eUxqTXhXaUlnWm1sc2JEMGlJMlptWmlJdlBqeHdZWFJvSUdROUlrMDNMalFzTVRKaE1TNHhOU3d4TGpFMUxEQXNNQ3d4TFM0M01pMHVNalZzTFRZdU1qVXROVUV4TGpJc01TNHlMREFzTUN3eExEQXNOUzQ0Tnl3eExqRTBMREV1TVRRc01Dd3dMREVzTGpRMkxEVk1OaTQzTGpJelFURXVNVFlzTVM0eE5pd3dMREFzTVN3NExqRXNNaTR3T0V3ekxEVXVPVEVzT0M0eE1pd3hNRUV4TGpFMkxERXVNVFlzTUN3d0xERXNOeTQwTERFeVdpSWdabWxzYkQwaUkyWm1aaUl2UGp4c2FXNWxJSGd4UFNJek1TNDBOU0lnZVRFOUlqWXVNREVpSUhneVBTSXlNaTQ0T1NJZ2VUSTlJall1TURFaUlHWnBiR3c5SWlObVptWWlMejQ4Y0dGMGFDQmtQU0pOTXpFdU5EVXNOeTR4TjBneU1pNDRPV0V4TGpFMkxERXVNVFlzTUN3eExERXNNQzB5TGpNeGFEZ3VOVFpoTVM0eE5pd3hMakUyTERBc01Dd3hMREFzTWk0ek1Wb2lJR1pwYkd3OUlpTm1abVlpTHo0OGNHRjBhQ0JrUFNKTk1qVXVPU3d4TW1FeExqRTRMREV1TVRnc01Dd3dMREV0TGpreExTNDBNMEV4TGpFM0xERXVNVGNzTUN3d0xERXNNalV1TVRjc01UQnNOUzR3T1MwMExqQTFUREkxTGpJc01pNHdPRUV4TGpFMkxERXVNVFlzTUN3d0xERXNNall1TlRrdU1qTk1Nekl1T0RRc05XRXhMakUyTERFdU1UWXNNQ3d3TERFc0xqUTFMamt4TERFdU1UUXNNUzR4TkN3d0xEQXNNUzB1TkRNdU9USnNMVFl1TWpRc05VRXhMakUzTERFdU1UY3NNQ3d3TERFc01qVXVPU3d4TWxvaUlHWnBiR3c5SWlObVptWWlMejQ4TDJjK1BDOW5Qand2YzNablBnPT0pO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyLjRzO1xufVxuXG4uc2Nyb2xsLWhpbnQtaWNvbi13cmFwLmlzLWFjdGl2ZSAuc2Nyb2xsLWhpbnQtaWNvbjphZnRlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zY3JvbGwtaGludC1pY29uLXdyYXAuaXMtYWN0aXZlIC5zY3JvbGwtaGludC1pY29uOmJlZm9yZSB7XG4gIGFuaW1hdGlvbjogc2Nyb2xsLWhpbnQtYXBwZWFyIDEuMnMgbGluZWFyO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAyO1xufVxuXG4uc2Nyb2xsLWhpbnQtaWNvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG5cbi5zY3JvbGwtaGludC1pY29uLXdoaXRlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXlOUzQzTnlJZ2FHVnBaMmgwUFNJek1DNDFNaUlnZG1sbGQwSnZlRDBpTUNBd0lESTFMamMzSURNd0xqVXlJajQ4ZEdsMGJHVSs0NEtpNDRLNzQ0T0Q0NE9JSURROEwzUnBkR3hsUGp4bklHbGtQU0xqZzZ6amdxVGpnNlRqZzd4Zk1pSWdaR0YwWVMxdVlXMWxQU0xqZzZ6amdxVGpnNlRqZzd3Z01pSStQR2NnYVdROUl1T0RyT09DcE9PRHBPT0R2Rjh4TFRJaUlHUmhkR0V0Ym1GdFpUMGk0NE9zNDRLazQ0T2s0NE84SURFaVBqeHdZWFJvSUdROUlrMHlNUzR6TXl3ek1DNDFNa2czTGpnMVFURXVOVFVzTVM0MU5Td3dMREFzTVN3MkxqTXNNamxoTVRJdU5EWXNNVEl1TkRZc01Dd3dMREF0TGpZekxUUXVORElzTWpVdU1UWXNNalV1TVRZc01Dd3dMREF0TkM0eU5TMDFiQzB1TURZdExqQTJRVFVzTlN3d0xEQXNNU3d3TERFMUxqZzJZVE11TmpRc015NDJOQ3d3TERBc01Td3hMakUzTFRJdU5qSXNNeTQyTXl3ekxqWXpMREFzTUN3eExEVXVNVFF1TURkV015NDNOMkV6TGpjM0xETXVOemNzTUN3eExERXNOeTQxTkN3d1ZqZ3VNek5oTXk0ek5Td3pMak0xTERBc01Dd3hMREV1TWpZc01Dd3pMRE1zTUN3d0xERXNNaXd4TGpJeUxETXVOU3d6TGpVc01Dd3dMREVzTWkwdU1EWXNNeTR5TVN3ekxqSXhMREFzTUN3eExESXNNUzQxTkN3ekxqYzBMRE11TnpRc01Dd3dMREVzTXl3dU5EZEJOQzR5TVN3MExqSXhMREFzTUN3eExESTFMamMwTERFMVl6QXNMakV4TERBc0xqSTNMREFzTGpRMllURTVMakkyTERFNUxqSTJMREFzTUN3eExTNDROQ3czWXkwdU1UUXVNemd0TGpNMkxqZ3hMUzQxTml3eExqSXliQzB1TVRFdU1qSmpNQ3d1TURjdExqQTVMakUwTFM0eE5DNHlNV0UzTGpFekxEY3VNVE1zTUN3d0xEQXRNUzR4Tnl3eUxqRTNZeTB1TURZdU5UWXRMakEyTERJdU1UVXRMakExTERJdU56RkJNUzQxTlN3eExqVTFMREFzTUN3eExESXhMak16TERNd0xqVXlXazA0TGpZeExESTRMakl4YURFeVl6QXRMamN4TERBdE1TNDNNUzR3TnkweUxqSXpZVGd1TnpRc09DNDNOQ3d3TERBc01Td3hMalU1TFRNdU1qVnNMakEyTFM0eE1tRXhNQ3d4TUN3d0xEQXNNQ3d1TkRZdE1Td3hOaTQ0TERFMkxqZ3NNQ3d3TERBc0xqY3ROaTR4TW1Nd0xTNHlNeXd3TFM0ME1Td3dMUzQxTkdnd1lUSXNNaXd3TERBc01DMHVOalF0TVM0MU1pd3hMak16TERFdU16TXNNQ3d3TERBdE1TNDFOUzR3T0N3eExqRXpMREV1TVRNc01Dd3dMREV0TVM0eE9DNHlPQ3d4TGpFMUxERXVNVFVzTUN3d0xERXRMamM0TFM0NU5Dd3hMakkyTERFdU1qWXNNQ3d3TERBdExqYzFMVEV1TVRFc01Td3hMREFzTUN3d0xURXVNVEV1TWpoc0xTNHhMakZoTVM0eE5Td3hMakUxTERBc01Dd3hMVEV1TVRrdU1qa3NNUzR4Tml3eExqRTJMREFzTUN3eExTNDNPQzB1T1RWakxTNHdPUzB1TmpndExqSXhMUzQzTnkwdU55MHVPRGRoTGpneUxqZ3lMREFzTUN3d0xURXNMalE0TERFdU1UWXNNUzR4Tml3d0xEQXNNUzB5TGpFMkxTNDFPRll6TGpjM1lURXVORFlzTVM0ME5pd3dMREVzTUMweUxqa3lMREIyTnk0NE5Xd3dMRFF1TXpOaE1TNHhOeXd4TGpFM0xEQXNNQ3d4TFM0NE15d3hMakV4TERFdU1UVXNNUzR4TlN3d0xEQXNNUzB4TGpJdExqTTFiQzB4TFM0NU1XTXRMalEzTFM0ME1pMHVOek10TGpZMkxTNDROQzB1TnpkaE1TNHpOU3d4TGpNMUxEQXNNQ3d3TFRJdExqRXlUREl1Tnl3eE5XRXhMak15TERFdU16SXNNQ3d3TERBdExqTTVMREZCTWk0MU55d3lMalUzTERBc01Dd3dMRE1zTVRjdU9EVnNNQ3d3WVRJM0xqSTBMREkzTGpJMExEQXNNQ3d4TERRdU55dzFMall5UVRFeUxqWXpMREV5TGpZekxEQXNNQ3d4TERndU5qRXNNamd1TWpGYVRUSXpMaklzTWpNdU16VmFUVFl1TlRFc01UWXVOVGxhSWk4K1BDOW5Qand2Wno0OEwzTjJaejQ9KTtcbn1cblxuLnNjcm9sbC1oaW50LWljb24td2hpdGU6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhkcFpIUm9QU0l6TXk0eU9TSWdhR1ZwWjJoMFBTSXhNaTR3TWlJZ2RtbGxkMEp2ZUQwaU1DQXdJRE16TGpJNUlERXlMakF5SWo0OGRHbDBiR1UrNDRLaTQ0Szc0NE9ENDRPSUlESThMM1JwZEd4bFBqeG5JR2xrUFNMamc2empncVRqZzZUamc3eGZNaUlnWkdGMFlTMXVZVzFsUFNMamc2empncVRqZzZUamc3d2dNaUkrUEdjZ2FXUTlJdU9Eck9PQ3BPT0RwT09EdkY4eExUSWlJR1JoZEdFdGJtRnRaVDBpNDRPczQ0S2s0NE9rNDRPOElERWlQanhzYVc1bElIZ3hQU0l4TGpnMUlpQjVNVDBpTmk0d01TSWdlREk5SWpFd0xqUWlJSGt5UFNJMkxqQXhJaTgrUEhCaGRHZ2daRDBpVFRFd0xqUXNOeTR4TjBneExqZzFZVEV1TVRZc01TNHhOaXd3TERFc01Td3dMVEl1TXpGSU1UQXVOR0V4TGpFMkxERXVNVFlzTUN3eExERXNNQ3d5TGpNeFdpSXZQanh3WVhSb0lHUTlJazAzTGpRc01USmhNUzR4TlN3eExqRTFMREFzTUN3eExTNDNNaTB1TWpWc0xUWXVNalV0TlVFeExqSXNNUzR5TERBc01Dd3hMREFzTlM0NE55d3hMakUwTERFdU1UUXNNQ3d3TERFc0xqUTJMRFZNTmk0M0xqSXpRVEV1TVRZc01TNHhOaXd3TERBc01TdzRMakVzTWk0d09Fd3pMRFV1T1RFc09DNHhNaXd4TUVFeExqRTJMREV1TVRZc01Dd3dMREVzTnk0MExERXlXaUl2UGp4c2FXNWxJSGd4UFNJek1TNDBOU0lnZVRFOUlqWXVNREVpSUhneVBTSXlNaTQ0T1NJZ2VUSTlJall1TURFaUx6NDhjR0YwYUNCa1BTSk5NekV1TkRVc055NHhOMGd5TWk0NE9XRXhMakUyTERFdU1UWXNNQ3d4TERFc01DMHlMak14YURndU5UWmhNUzR4Tml3eExqRTJMREFzTUN3eExEQXNNaTR6TVZvaUx6NDhjR0YwYUNCa1BTSk5NalV1T1N3eE1tRXhMakU0TERFdU1UZ3NNQ3d3TERFdExqa3hMUzQwTTBFeExqRTNMREV1TVRjc01Dd3dMREVzTWpVdU1UY3NNVEJzTlM0d09TMDBMakExVERJMUxqSXNNaTR3T0VFeExqRTJMREV1TVRZc01Dd3dMREVzTWpZdU5Ua3VNak5NTXpJdU9EUXNOV0V4TGpFMkxERXVNVFlzTUN3d0xERXNMalExTGpreExERXVNVFFzTVM0eE5Dd3dMREFzTVMwdU5ETXVPVEpzTFRZdU1qUXNOVUV4TGpFM0xERXVNVGNzTUN3d0xERXNNalV1T1N3eE1sb2lMejQ4TDJjK1BDOW5Qand2YzNablBnPT0pO1xufVxuXG4uc2Nyb2xsLWhpbnQtaWNvbi13aGl0ZSAuc2Nyb2xsLWhpbnQtdGV4dCB7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBTY3JvbGxIaW50IChodHRwczovL2FwcGxlcGxlLmdpdGh1Yi5pby9zY3JvbGwtaGludC8pXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1jbGFzcy1wYXR0ZXJuICovXG4uc2Nyb2xsLWhpbnQtaWNvbi13cmFwIHtcbiAgZm9udC1mYW1pbHk6IFwiaWJtLXBsZXgtc2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBTZWFyY2ggRm9ybVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNlYXJjaC1mb3JtX19jb250YWluZXIge1xuICBtYXJnaW46IDBlbSAwZW0gMC45Mzc1ZW07XG59XG5cbi5zZWFyY2gtZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnNlYXJjaC1mb3JtX19pbnB1dCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDNlbTtcbn1cblxuLnNlYXJjaC1mb3JtX19idXR0b24ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3R0b206IDAuMTI1cmVtO1xuICBjb2xvcjogIzIxMjEyMTtcbiAgZm9udC1zaXplOiAxZW07XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMGVtIDFlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMC4xMjVyZW07XG4gIHRvcDogMC4xMjVyZW07XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzO1xufVxuLnNlYXJjaC1mb3JtX19idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY29sb3I6ICM3YzYyMDA7XG59XG5cbi8qIGV4cGFuZGFibGUgdmFyaWFudCAqL1xuLnNlYXJjaC1mb3JtX19jb250YWluZXItLWV4cGFuZGFibGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtOTk5ZW07XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMsIHRvcCAwcyAwLjE1cywgdmlzaWJpbGl0eSAwcyAwLjE1cztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogOTk5O1xufVxuLnNlYXJjaC1mb3JtX19jb250YWluZXItLWV4cGFuZGFibGUuaXMtYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLnNlYXJjaC1mb3JtX19jb250YWluZXItLWV4cGFuZGFibGUgLnNlYXJjaC1mb3JtIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFNraXAgTGlua3NcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5za2lwLWxpbmtzIHtcbiAgYmFja2dyb3VuZDogIzk1NzYwMDtcbiAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQgIzdjNjIwMDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGZvbnQtZmFtaWx5OiBcImJyb3RoZXJzXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZWZ0OiAtOTk5ZW07XG4gIHBhZGRpbmc6IDAuNWVtIDAuNzVlbTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRvcDogLTk5OWVtO1xuICB6LWluZGV4OiA5OTk7XG59XG4uc2tpcC1saW5rczpmb2N1cyB7XG4gIGxlZnQ6IDEuMjVlbTtcbiAgdG9wOiAxLjI1ZW07XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi8qKlxuICogU3dpcGVyIDguNC40XG4gKiBNb3N0IG1vZGVybiBtb2JpbGUgdG91Y2ggc2xpZGVyIGFuZCBmcmFtZXdvcmsgd2l0aCBoYXJkd2FyZSBhY2NlbGVyYXRlZCB0cmFuc2l0aW9uc1xuICogaHR0cHM6Ly9zd2lwZXJqcy5jb21cbiAqXG4gKiBDb3B5cmlnaHQgMjAxNC0yMDIyIFZsYWRpbWlyIEtoYXJsYW1waWRpXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlXG4gKlxuICogUmVsZWFzZWQgb246IE9jdG9iZXIgMTIsIDIwMjJcbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcInN3aXBlci1pY29uc1wiO1xuICBzcmM6IHVybChcImRhdGE6YXBwbGljYXRpb24vZm9udC13b2ZmO2NoYXJzZXQ9dXRmLTg7YmFzZTY0LCBkMDlHUmdBQkFBQUFBQVpnQUJBQUFBQUFEQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQkdSbFJOQUFBR1JBQUFBQm9BQUFBY2k2cUhrVWRFUlVZQUFBV2dBQUFBSXdBQUFDUUFZQUJYUjFCUFV3QUFCaFFBQUFBdUFBQUFOdUFZNyt4SFUxVkNBQUFGeEFBQUFGQUFBQUJtMmZQY3pVOVRMeklBQUFIY0FBQUFTZ0FBQUdCUDlWNVJZMjFoY0FBQUFrUUFBQUNJQUFBQll0NkYwY0JqZG5RZ0FBQUN6QUFBQUFRQUFBQUVBQkVCUkdkaGMzQUFBQVdZQUFBQUNBQUFBQWovL3dBRFoyeDVaZ0FBQXl3QUFBRE1BQUFEMk1IdHJ5Vm9aV0ZrQUFBQmJBQUFBREFBQUFBMkUyK2VvV2hvWldFQUFBR2NBQUFBSHdBQUFDUUM5Z0R6YUcxMGVBQUFBaWdBQUFBWkFBQUFyZ0prQUJGc2IyTmhBQUFDMEFBQUFGb0FBQUJhRlFBVUdHMWhlSEFBQUFHOEFBQUFId0FBQUNBQWNBQkFibUZ0WlFBQUEvZ0FBQUU1QUFBQ1h2RmRCd2x3YjNOMEFBQUZOQUFBQUdJQUFBQ0U1czc0aFhqYVkyQmtZR0FBWXBmNUh1L2orVzIrTW5Bek1ZREF6YVg2UWpENi80Ly9CeGo1R0E4QXVSd01ZR2tBUHl3TDEzamFZMkJrWUdBODhQOEFneDRqKy84ZlFEWWZBMUFFQldnREFJQjJCT29BZU5wallHUmdZTkJoNEdkZ1lnQUJFTW5JQUJKellOQURDUUFBQ1dnQXNRQjQybU5nWWZ6Q09JR0JsWUdCMFljeGpZR0J3UjFLZjJXUVpHaGhZR0JpWUdWbWdBRkdCaVFRa09hYXd0REFvTUJReFhqZy93RUdQY1lEREE0d05VQTJDQ2d3c0FBQU80RUw2Z0FBZU5wajJNMGd5QUFDcXhnR05XQmtaMkQ0L3dNQSt4a0RkZ0FBQUhqYVkyQmdZR2FBWUJrR1JnWVFpQUh5R01GOEZnWUhJTTNEd01IQUJHUXJNT2d5V0RMRU0xVDkvdzhVQmZFTWdMekUvLy8vUC81Ly9mL1YveHYrcjRlYUFBZU1iQXh3SVVZbUlNSEVnS1lBWWpVY3NEQXdzTEt4YzNCeWNmUHc4akVRQS9nWkJBU0ZoRVZFeGNRbEpLV2taV1RsNUJVVWxaUlZWTlhVTlRRWkJnTUFBTVIrRStnQUVRRkVBQUFBS2dBcUFDb0FOQUErQUVnQVVnQmNBR1lBY0FCNkFJUUFqZ0NZQUtJQXJBQzJBTUFBeWdEVUFONEE2QUR5QVB3QkJnRVFBUm9CSkFFdUFUZ0JRZ0ZNQVZZQllBRnFBWFFCZmdHSUFaSUJuQUdtQWJJQnpnSHNBQUI0MnUyTk1RNkNVQXlHVzU2OHg5QW5lWVlnbTRNSmJoS0ZhRXhJT0FWWDhBcGV3U3Q0QmljNEFmZUFpZDNWT0JpeER4ZlBZRXphNU8rWGZpMDRZQURnZ2lVSVVMQ3VFSks4VmhPNGJTdnBkbmt0SEk1UUNZdGRpMnNsOFpuWGFIbHFVck5LemRLY1Q4Y2pscStyd1pTdklWY3pOaWV6c2ZuUC91em5tZlBGQk5PRE0ySzdNVFE0NVlFQVpxR1A4MUFtR0djRjNpUHFPb3AwcjFTUFRhVGJWa2ZVZTRIWGo5N3dZRSt5TndXWXh3V3U0djF1Z1dIZ28zUzFYZFpFVnFXTTdFVDBjZm5MR3hXZmtnUjQybzJQdldyRE1CU0ZqL0lITGFGMHpLalJnZGlWTXdTY05SQW9XVW9INzhZMmljQi95SVkwOUFuNkFIMkJkdS9VQit5eG9wWXNoUWlFdm52dTBkVVJnRHQ4UWVDOFBEdzdGcGppM2ZFQTR6L1BFSjZZT0I1aEtoNGRqM0V2WGh4UHFIL1NLVVkzcko3c3JaNEZabmgxUE1BdFBod1A2ZmwyUE1KTVBEZ2VRNHJZOFlUNkd6YW8wZUFFQTQwOUR1Z2dtVG5Gbk9jU0NpRWlMTWd4Q2lUSTZDcTVEWlVkM1FtcDEwdk8wTGFMVGQyY2pONGZPdW1sYzdsVVliU1FjWkZrdXRSRzdnNkpLWkt5MFJtZExZNjgwQ0RuRUorVU1rcEZGZTFSTjdueGRWcFhyQzRhVHRuYXVyT25ZZXJjWmcyWVZtTE4vZC9nY3pmRWltckUvZnMvYk91cTI5Wm1uOHRsb09SYVhnWmdHYTc4eU85L2NuWG0yQnBhR3ZxMjVEdjlTNEU5KzVTSWM5UHF1cEpLaFlGU1NsNDcrUWNyMW1ZTkFBQUFlTnB0dzBjS3drQUFBTURaSkE4UTdPVUp2a0xzUGZaNnpGVkVSUHk4cUhoMllFUiszaS9CUDgzdklCTEx5U3NvS2ltcnFLcXBhMmhwNitqcTZSc1lHaG1ibUpxWlN5MHNyYXh0Yk8zc0hSeWRuRU1VNHVSNnl4N0pKWHZlUDdXckR5Y0FBQUFBQUFILy93QUNlTnBqWUdSZ1lPQUJZaGtnWmdKQ1pnWk5Ca1lHTFFadElKc0ZMTVlBQUF3M0FMZ0FlTm9saXpFS2dEQVFCQ2NoUmJDMnNGRVIwWUQ2cVZRaUJDdi9IOWV6R0k2WjVYQkF3OENCSy9tNWlRUVZhdVZiWExuT3JNWnYyb0xkS0ZhOFBqdXJ1MmhKekdhYm1PU0x6Tk16dnV0cEIzTjQybU5nWkdCZzRHS1FZekJoWU14SkxNbGo0R0JnQVlvdy9QL1BBSkpoTE02c1NvV0tmV0NBQXdEQWpnYlJBQUI0Mm1OZ1lHQmtBSUliQ1pvNUlQcm1VbjBoR0EwQU84RUZUUUFBXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbjpyb290IHtcbiAgLS1zd2lwZXItdGhlbWUtY29sb3I6ICMwMDdhZmY7XG59XG5cbi5zd2lwZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIC8qIEZpeCBvZiBXZWJraXQgZmxpY2tlcmluZyAqL1xuICB6LWluZGV4OiAxO1xufVxuXG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLnN3aXBlci13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4uc3dpcGVyLWFuZHJvaWQgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItd3JhcHBlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwLCAwKTtcbn1cblxuLnN3aXBlci1wb2ludGVyLWV2ZW50cyB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5zd2lwZXItcG9pbnRlci1ldmVudHMuc3dpcGVyLXZlcnRpY2FsIHtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teDtcbn1cblxuLnN3aXBlci1zbGlkZSB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbn1cblxuLnN3aXBlci1zbGlkZS1pbnZpc2libGUtYmxhbmsge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi8qIEF1dG8gSGVpZ2h0ICovXG4uc3dpcGVyLWF1dG9oZWlnaHQsXG4uc3dpcGVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLnN3aXBlci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlciB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbn1cblxuLnN3aXBlci1iYWNrZmFjZS1oaWRkZW4gLnN3aXBlci1zbGlkZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKiAzRCBFZmZlY3RzICovXG4uc3dpcGVyLTNkLCAuc3dpcGVyLTNkLnN3aXBlci1jc3MtbW9kZSAuc3dpcGVyLXdyYXBwZXIge1xuICBwZXJzcGVjdGl2ZTogMTIwMHB4O1xufVxuXG4uc3dpcGVyLTNkIC5zd2lwZXItd3JhcHBlcixcbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3csXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItM2QgLnN3aXBlci1jdWJlLXNoYWRvdyB7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG5cbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3csXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMTA7XG59XG5cbi5zd2lwZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3cge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cblxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cblxuLnN3aXBlci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuXG4uc3dpcGVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG5cbi8qIENTUyBNb2RlICovXG4uc3dpcGVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbiAgLyogRm9yIEZpcmVmb3ggKi9cbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAvKiBGb3IgSW50ZXJuZXQgRXhwbG9yZXIgYW5kIEVkZ2UgKi9cbn1cblxuLnN3aXBlci1jc3MtbW9kZSA+IC5zd2lwZXItd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc3dpcGVyLWNzcy1tb2RlID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gIHNjcm9sbC1zbmFwLWFsaWduOiBzdGFydCBzdGFydDtcbn1cblxuLnN3aXBlci1ob3Jpem9udGFsLnN3aXBlci1jc3MtbW9kZSA+IC5zd2lwZXItd3JhcHBlciB7XG4gIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xufVxuXG4uc3dpcGVyLXZlcnRpY2FsLnN3aXBlci1jc3MtbW9kZSA+IC5zd2lwZXItd3JhcHBlciB7XG4gIHNjcm9sbC1zbmFwLXR5cGU6IHkgbWFuZGF0b3J5O1xufVxuXG4uc3dpcGVyLWNlbnRlcmVkID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBmbGV4LXNocmluazogMDtcbiAgb3JkZXI6IDk5OTk7XG59XG5cbi5zd2lwZXItY2VudGVyZWQuc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1iZWZvcmUpO1xufVxuXG4uc3dpcGVyLWNlbnRlcmVkLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKTtcbn1cblxuLnN3aXBlci1jZW50ZXJlZC5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWJlZm9yZSk7XG59XG5cbi5zd2lwZXItY2VudGVyZWQuc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWFmdGVyKTtcbn1cblxuLnN3aXBlci1jZW50ZXJlZCA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGUge1xuICBzY3JvbGwtc25hcC1hbGlnbjogY2VudGVyIGNlbnRlcjtcbn1cblxuLnN3aXBlci1mYWRlLnN3aXBlci1mcmVlLW1vZGUgLnN3aXBlci1zbGlkZSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbn1cblxuLnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cblxuLnN3aXBlci1mYWRlIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uc3dpcGVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUsIC5zd2lwZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuXG46cm9vdCB7XG4gIC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZTogNDRweDtcbiAgLypcbiAgLS1zd2lwZXItbmF2aWdhdGlvbi1jb2xvcjogdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKTtcbiAgKi9cbn1cblxuLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItYnV0dG9uLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogY2FsYyh2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKSAvIDQ0ICogMjcpO1xuICBoZWlnaHQ6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuICBtYXJnaW4tdG9wOiBjYWxjKDBweCAtIHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpIC8gMik7XG4gIHotaW5kZXg6IDEwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xufVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tZGlzYWJsZWQsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjM1O1xuICBjdXJzb3I6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24taGlkZGVuLFxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWhpZGRlbiB7XG4gIG9wYWNpdHk6IDA7XG4gIGN1cnNvcjogYXV0bztcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi5zd2lwZXItbmF2aWdhdGlvbi1kaXNhYmxlZCAuc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1uYXZpZ2F0aW9uLWRpc2FibGVkIC5zd2lwZXItYnV0dG9uLW5leHQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5zd2lwZXItYnV0dG9uLXByZXY6YWZ0ZXIsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyIHtcbiAgZm9udC1mYW1pbHk6IHN3aXBlci1pY29ucztcbiAgZm9udC1zaXplOiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGZvbnQtdmFyaWFudDogaW5pdGlhbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgbGVmdDogMTBweDtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi5zd2lwZXItYnV0dG9uLXByZXY6YWZ0ZXIsXG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyIHtcbiAgY29udGVudDogXCJwcmV2XCI7XG59XG5cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgcmlnaHQ6IDEwcHg7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi5zd2lwZXItYnV0dG9uLW5leHQ6YWZ0ZXIsXG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyIHtcbiAgY29udGVudDogXCJuZXh0XCI7XG59XG5cbi5zd2lwZXItYnV0dG9uLWxvY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG46cm9vdCB7XG4gIC8qXG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3I6IHZhcigtLXN3aXBlci10aGVtZS1jb2xvcik7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemU6IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtd2lkdGg6IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaGVpZ2h0OiA4cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yOiAjMDAwO1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1vcGFjaXR5OiAwLjI7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LW9wYWNpdHk6IDE7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwOiA0cHg7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXZlcnRpY2FsLWdhcDogNnB4O1xuICAqL1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogMzAwbXMgb3BhY2l0eTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgei1pbmRleDogMTA7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1oaWRkZW4ge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tZGlzYWJsZWQgPiAuc3dpcGVyLXBhZ2luYXRpb24sIC5zd2lwZXItcGFnaW5hdGlvbi5zd2lwZXItcGFnaW5hdGlvbi1kaXNhYmxlZCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogQ29tbW9uIFN0eWxlcyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uLFxuLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSxcbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLFxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCB7XG4gIGJvdHRvbTogMTBweDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIEJ1bGxldHMgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IDA7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbWFpbiB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldiB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0IHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0LW5leHQge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgd2lkdGg6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC13aWR0aCwgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsIDhweCkpO1xuICBoZWlnaHQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1oZWlnaHQsIHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1zaXplLCA4cHgpKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1jb2xvciwgIzAwMCk7XG4gIG9wYWNpdHk6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1pbmFjdGl2ZS1vcGFjaXR5LCAwLjIpO1xufVxuXG5idXR0b24uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1jbGlja2FibGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldDpvbmx5LWNoaWxkIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIG9wYWNpdHk6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1vcGFjaXR5LCAxKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xufVxuXG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMsXG4uc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIC01MCUsIDApO1xufVxuXG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCxcbi5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBtYXJnaW46IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC12ZXJ0aWNhbC1nYXAsIDZweCkgMDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMsXG4uc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB3aWR0aDogOHB4O1xufVxuXG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsXG4uc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyB0b3A7XG59XG5cbi5zd2lwZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQsXG4uc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBtYXJnaW46IDAgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwLCA0cHgpO1xufVxuXG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMsXG4uc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyB7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCxcbi5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIGxlZnQ7XG59XG5cbi5zd2lwZXItaG9yaXpvbnRhbC5zd2lwZXItcnRsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyByaWdodDtcbn1cblxuLyogUHJvZ3Jlc3MgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCB0b3A7XG59XG5cbi5zd2lwZXItcnRsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDtcbn1cblxuLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbCwgLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG59XG5cbi5zd2lwZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIsIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbCwgLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLW9wcG9zaXRlLCAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSB7XG4gIHdpZHRoOiA0cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tbG9jayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFN3aXBlciAoaHR0cDovL2lkYW5nZXJvLnVzL3N3aXBlci8pXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uc3dpcGVyLXNsaWRlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1ncm93OiAxO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnN3aXBlcl9fcGljdHVyZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zd2lwZXJfX3BpY3R1cmU6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctYm90dG9tOiAxNTguMTMzMzMzMzMzMyU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnN3aXBlci1jb250YWluZXItLWhlaWdodC1maXhlZCAuc3dpcGVyX19waWN0dXJlOjphZnRlciB7XG4gIHBhZGRpbmctYm90dG9tOiAzNy4wNjI1ZW07XG59XG4uc3dpcGVyX19waWN0dXJlIC5zd2lwZXJfX3ZpZGVvIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc3dpcGVyX19pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zd2lwZXJfX2NhcHRpb24ge1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogMS4xNzE4NzVyZW0gMS41NjI1cmVtO1xufVxuXG4uc3dpcGVyX19jYXB0aW9uX19pbm5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDg5LjY4NzVyZW07XG59XG5cbi5zd2lwZXJfX3RpdGxlIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuXG4uc3dpcGVyX19zdWJ0aXRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRDFGMjU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL3RhZ2xpbmUtdGV4dHVyZS1tb2JpbGUucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJvcmRlci1ib3R0b206IDAuMTg3NWVtIHNvbGlkICNGRkZGRkY7XG4gIGJvcmRlci10b3A6IDAuMTg3NWVtIHNvbGlkICNGRkZGRkY7XG4gIHBhZGRpbmc6IDIuMDYyNWVtIDEuMjVlbSAxLjc1ZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc3dpcGVyX19zdWJ0aXRsZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvdGFnbGluZS10ZXh0dXJlLWRlc2t0b3AucG5nXCIpO1xuICAgIHBhZGRpbmc6IDJlbSAxLjc1ZW0gMS43NWVtO1xuICB9XG59XG4uc3dpcGVyX19zdWJ0aXRsZSAudGl0bGUsIC5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBmb3JtID4gaDMsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCAuc3dpcGVyX19zdWJ0aXRsZSBmb3JtID4gaDMsIC5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSA+IGgyLCAud29vY29tbWVyY2UtYWNjb3VudCAuc3dpcGVyX19zdWJ0aXRsZSAud29vY29tbWVyY2UgPiBoMiwgLnN3aXBlcl9fc3VidGl0bGUgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBoMi53b29jb21tZXJjZS1jb2x1bW5fX3RpdGxlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIC5zd2lwZXJfX3N1YnRpdGxlIGgyLndvb2NvbW1lcmNlLWNvbHVtbl9fdGl0bGUsIC5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgaDIud29vY29tbWVyY2Utb3JkZXItZGV0YWlsc19fdGl0bGUsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLnN3aXBlcl9fc3VidGl0bGUgaDIud29vY29tbWVyY2Utb3JkZXItZGV0YWlsc19fdGl0bGUsIC5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZSAuY2hlY2tvdXQgaDMsIC53b29jb21tZXJjZSAuY2hlY2tvdXQgLnN3aXBlcl9fc3VidGl0bGUgaDMsIC5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZSAucHJvZHVjdCAucmVsYXRlZCA+IGgyLCAud29vY29tbWVyY2UgLnByb2R1Y3QgLnN3aXBlcl9fc3VidGl0bGUgLnJlbGF0ZWQgPiBoMixcbi5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZSAucHJvZHVjdCAudXBzZWxscyA+IGgyLFxuLndvb2NvbW1lcmNlIC5wcm9kdWN0IC5zd2lwZXJfX3N1YnRpdGxlIC51cHNlbGxzID4gaDIsIC5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZSBoMS5wYWdlLXRpdGxlLCAud29vY29tbWVyY2UgLnN3aXBlcl9fc3VidGl0bGUgaDEucGFnZS10aXRsZSwgLnN3aXBlcl9fc3VidGl0bGUgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIGgyLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgLnN3aXBlcl9fc3VidGl0bGUgaDIsXG4uc3dpcGVyX19zdWJ0aXRsZSAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMgaDIsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMgLnN3aXBlcl9fc3VidGl0bGUgaDIsXG4uc3dpcGVyX19zdWJ0aXRsZSAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyLWRvd25sb2FkcyBoMixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXItZG93bmxvYWRzIC5zd2lwZXJfX3N1YnRpdGxlIGgyLCAuc3dpcGVyX19zdWJ0aXRsZSAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAud29vY29tbWVyY2UtbG9vcC1jYXRlZ29yeV9fdGl0bGUsIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZS1sb29wLWNhdGVnb3J5X190aXRsZSxcbi5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLFxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnN3aXBlcl9fc3VidGl0bGUgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsXG4uc3dpcGVyX19zdWJ0aXRsZSAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBoMyxcbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5zd2lwZXJfX3N1YnRpdGxlIGgzLCAuc3dpcGVyX19zdWJ0aXRsZSAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwgaDIsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyAud29vY29tbWVyY2UtVGFicy1wYW5lbCAuc3dpcGVyX19zdWJ0aXRsZSBoMiwgLnN3aXBlcl9fc3VidGl0bGUgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC5wcm9kdWN0X3RpdGxlLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgLnN3aXBlcl9fc3VidGl0bGUgLnByb2R1Y3RfdGl0bGUsIC5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyBoMiwgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5zd2lwZXJfX3N1YnRpdGxlIGgyLFxuLnN3aXBlcl9fc3VidGl0bGUgLndvb2NvbW1lcmNlLXBhZ2UgLmNhcnQtY29sbGF0ZXJhbHMgaDIsXG4ud29vY29tbWVyY2UtcGFnZSAuY2FydC1jb2xsYXRlcmFscyAuc3dpcGVyX19zdWJ0aXRsZSBoMiB7XG4gIGNvbG9yOiAjRkZENTM2O1xuICBmb250LXNpemU6IDEuMzc1ZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyNDA5MDkwOTFlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zd2lwZXJfX3N1YnRpdGxlIC50aXRsZSwgLnN3aXBlcl9fc3VidGl0bGUgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IGZvcm0gPiBoMywgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IC5zd2lwZXJfX3N1YnRpdGxlIGZvcm0gPiBoMywgLnN3aXBlcl9fc3VidGl0bGUgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlID4gaDIsIC53b29jb21tZXJjZS1hY2NvdW50IC5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZSA+IGgyLCAuc3dpcGVyX19zdWJ0aXRsZSAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIGgyLndvb2NvbW1lcmNlLWNvbHVtbl9fdGl0bGUsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLnN3aXBlcl9fc3VidGl0bGUgaDIud29vY29tbWVyY2UtY29sdW1uX190aXRsZSwgLnN3aXBlcl9fc3VidGl0bGUgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBoMi53b29jb21tZXJjZS1vcmRlci1kZXRhaWxzX190aXRsZSwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciAuc3dpcGVyX19zdWJ0aXRsZSBoMi53b29jb21tZXJjZS1vcmRlci1kZXRhaWxzX190aXRsZSwgLnN3aXBlcl9fc3VidGl0bGUgLndvb2NvbW1lcmNlIC5jaGVja291dCBoMywgLndvb2NvbW1lcmNlIC5jaGVja291dCAuc3dpcGVyX19zdWJ0aXRsZSBoMywgLnN3aXBlcl9fc3VidGl0bGUgLndvb2NvbW1lcmNlIC5wcm9kdWN0IC5yZWxhdGVkID4gaDIsIC53b29jb21tZXJjZSAucHJvZHVjdCAuc3dpcGVyX19zdWJ0aXRsZSAucmVsYXRlZCA+IGgyLFxuLnN3aXBlcl9fc3VidGl0bGUgLndvb2NvbW1lcmNlIC5wcm9kdWN0IC51cHNlbGxzID4gaDIsXG4ud29vY29tbWVyY2UgLnByb2R1Y3QgLnN3aXBlcl9fc3VidGl0bGUgLnVwc2VsbHMgPiBoMiwgLnN3aXBlcl9fc3VidGl0bGUgLndvb2NvbW1lcmNlIGgxLnBhZ2UtdGl0bGUsIC53b29jb21tZXJjZSAuc3dpcGVyX19zdWJ0aXRsZSBoMS5wYWdlLXRpdGxlLCAuc3dpcGVyX19zdWJ0aXRsZSAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgaDIsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyAuc3dpcGVyX19zdWJ0aXRsZSBoMixcbi5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXItZGV0YWlscyBoMixcbi53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXItZGV0YWlscyAuc3dpcGVyX19zdWJ0aXRsZSBoMixcbi5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXItZG93bmxvYWRzIGgyLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlci1kb3dubG9hZHMgLnN3aXBlcl9fc3VidGl0bGUgaDIsIC5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLWNhdGVnb3J5X190aXRsZSwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnN3aXBlcl9fc3VidGl0bGUgLndvb2NvbW1lcmNlLWxvb3AtY2F0ZWdvcnlfX3RpdGxlLFxuLnN3aXBlcl9fc3VidGl0bGUgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUsXG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAuc3dpcGVyX19zdWJ0aXRsZSAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSxcbi5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGgzLFxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnN3aXBlcl9fc3VidGl0bGUgaDMsIC5zd2lwZXJfX3N1YnRpdGxlIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyAud29vY29tbWVyY2UtVGFicy1wYW5lbCBoMiwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIC5zd2lwZXJfX3N1YnRpdGxlIGgyLCAuc3dpcGVyX19zdWJ0aXRsZSAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgLnByb2R1Y3RfdGl0bGUsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCAuc3dpcGVyX19zdWJ0aXRsZSAucHJvZHVjdF90aXRsZSwgLnN3aXBlcl9fc3VidGl0bGUgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIGgyLCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLnN3aXBlcl9fc3VidGl0bGUgaDIsXG4uc3dpcGVyX19zdWJ0aXRsZSAud29vY29tbWVyY2UtcGFnZSAuY2FydC1jb2xsYXRlcmFscyBoMixcbi53b29jb21tZXJjZS1wYWdlIC5jYXJ0LWNvbGxhdGVyYWxzIC5zd2lwZXJfX3N1YnRpdGxlIGgyIHtcbiAgICBmb250LXNpemU6IDIuNWVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjI1ODI1ZW07XG4gIH1cbn1cbi5zd2lwZXJfX3N1YnRpdGxlIC5zcGFjZXIge1xuICBtYXJnaW46IDBlbSAwLjNlbTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zd2lwZXJfX3N1YnRpdGxlIC5zcGFjZXIge1xuICAgIG1hcmdpbjogMGVtIDAuNzI3MjcyNzI3M2VtO1xuICB9XG59XG5cbi5zd2lwZXJfX3VzZXItY29udGVudCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4uc3dpcGVyLWJ1dHRvbiB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6ICNCQjBEMTI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAzLjEyNWVtO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzO1xuICB3aWR0aDogMWVtO1xuICB6LWluZGV4OiA5OTk7XG59XG4uc3dpcGVyLWJ1dHRvbi5zd2lwZXItYnV0dG9uLS1wcmV2LCAuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24uc3dpcGVyLWJ1dHRvbi0tbmV4dCB7XG4gIGxlZnQ6IDA7XG59XG4uc3dpcGVyLWJ1dHRvbi5zd2lwZXItYnV0dG9uLS1uZXh0LCAuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24uc3dpcGVyLWJ1dHRvbi0tcHJldiB7XG4gIHJpZ2h0OiAwO1xufVxuLnN3aXBlci1jb250YWluZXI6aG92ZXIgLnN3aXBlci1idXR0b24ge1xuICBvcGFjaXR5OiAwLjU7XG59XG4uc3dpcGVyLWNvbnRhaW5lcjpob3ZlciAuc3dpcGVyLWJ1dHRvbjpob3ZlciwgLnN3aXBlci1jb250YWluZXI6aG92ZXIgLnN3aXBlci1idXR0b246Zm9jdXMge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24sXG4uc3dpcGVyLXBhZ2luYXRpb24tY3VzdG9tLFxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgYm90dG9tOiBhdXRvO1xuICB0b3A6IDA7XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGhlaWdodDogMC42MjVlbTtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cztcbiAgd2lkdGg6IDAuNjI1ZW07XG59XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiAxLjI1ZW0gMC4zMTI1ZW07XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0JCMEQxMjtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogVHJpYmUgRXZlbnRzIChodHRwczovL3RoZWV2ZW50c2NhbGVuZGFyLmNvbS8pXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1jbGFzcy1wYXR0ZXJuLCBzZWxlY3Rvci1tYXgtaWQsIHNlbGVjdG9yLW1heC10eXBlLCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUgKi9cbi8qIGN1c3RvbSBwcm9wZXJ0aWVzICovXG46cm9vdCB7XG4gIC0tdGVjLWNvbG9yLXRleHQtcHJpbWFyeTogIzIxMjEyMTtcbiAgLS10ZWMtY29sb3ItdGV4dC1wcmltYXJ5LWxpZ2h0OiByZ2JhKDMzLCAzMywgMzMsIDAuNjIpO1xuICAtLXRlYy1jb2xvci10ZXh0LXNlY29uZGFyeTogIzQ4NDg0ODtcbiAgLS10ZWMtY29sb3ItdGV4dC1kaXNhYmxlZDogcmdiYSg3MiwgNzIsIDcyLCAwLjQpO1xuICAtLXRlYy1jb2xvci1pY29uLXByaW1hcnk6ICMyMTIxMjE7XG4gIC0tdGVjLWNvbG9yLWljb24tcHJpbWFyeS1hbHQ6ICMzOTM5Mzk7XG4gIC0tdGVjLWNvbG9yLWljb24tc2Vjb25kYXJ5OiAjNDg0ODQ4O1xuICAtLXRlYy1jb2xvci1pY29uLWFjdGl2ZTogIzIxMjEyMTtcbiAgLS10ZWMtY29sb3ItaWNvbi1kaXNhYmxlZDogcmdiYSg3MiwgNzIsIDcyLCAwLjQpO1xuICAtLXRlYy1jb2xvci1pY29uLWZvY3VzOiAjQkIwRDEyO1xuICAtLXRlYy1jb2xvci1pY29uLWVycm9yOiAjQzYyODI4O1xuICAtLXRlYy1jb2xvci1ldmVudC1pY29uOiAjMjEyMTIxO1xuICAtLXRlYy1jb2xvci1ldmVudC1pY29uLWhvdmVyOiAjQkIwRDEyO1xuICAtLXRlYy1jb2xvci1hY2NlbnQtcHJpbWFyeTogI0JCMEQxMjtcbiAgLS10ZWMtY29sb3ItYWNjZW50LXByaW1hcnktaG92ZXI6IHJnYmEoMTg3LCAxMywgMTgsIDAuOCk7XG4gIC0tdGVjLWNvbG9yLWFjY2VudC1wcmltYXJ5LWFjdGl2ZTogcmdiYSgxODcsIDEzLCAxOCwgMC45KTtcbiAgLS10ZWMtY29sb3ItYWNjZW50LXByaW1hcnktYmFja2dyb3VuZDogcmdiYSgxODcsIDEzLCAxOCwgMC4wNyk7XG4gIC0tdGVjLWNvbG9yLWFjY2VudC1zZWNvbmRhcnk6ICMyMTIxMjE7XG4gIC0tdGVjLWNvbG9yLWFjY2VudC1zZWNvbmRhcnktaG92ZXI6IHJnYmEoMzMsIDMzLCAzMywgMC44KTtcbiAgLS10ZWMtY29sb3ItYWNjZW50LXNlY29uZGFyeS1hY3RpdmU6IHJnYmEoMzMsIDMzLCAzMywgMC45KTtcbiAgLS10ZWMtY29sb3ItYWNjZW50LXNlY29uZGFyeS1iYWNrZ3JvdW5kOiByZ2JhKDMzLCAzMywgMzMsIDAuMDcpO1xuICAtLXRlYy1jb2xvci1saW5rLWFjY2VudC1ob3ZlcjogcmdiYSgxODcsIDEzLCAxOCwgMC44KTtcbiAgLS10ZWMtY29sb3ItYm9yZGVyLWRlZmF1bHQ6ICM0ODQ4NDg7XG4gIC0tdGVjLWNvbG9yLWJvcmRlci1zZWNvbmRhcnk6ICM1NzU3NTc7XG4gIC0tdGVjLWNvbG9yLWJvcmRlci10ZXJ0aWFyeTogYmxhY2s7XG4gIC0tdGVjLWNvbG9yLWJvcmRlci1ob3ZlcjogIzQ4NDg0ODtcbiAgLS10ZWMtY29sb3ItYm9yZGVyLWFjdGl2ZTogIzIxMjEyMTtcbiAgLS10ZWMtY29sb3ItYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgLS10ZWMtY29sb3ItYmFja2dyb3VuZC10cmFuc3BhcmVudDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICAtLXRlYy1jb2xvci1iYWNrZ3JvdW5kLXNlY29uZGFyeTogI2Y3ZjdmNztcbiAgLS10ZWMtY29sb3ItYmFja2dyb3VuZC1tZXNzYWdlczogcmdiYSgzMywgMzMsIDMzLCAwLjA3KTtcbiAgLS10ZWMtY29sb3ItYmFja2dyb3VuZC1zZWNvbmRhcnktaG92ZXI6ICNlZmVmZWY7XG4gIC0tdGVjLWNvbG9yLWJhY2tncm91bmQtZXJyb3I6IHJnYmEoMTk4LCA0MCwgNDAsIDAuMDgpO1xuICAtLXRlYy1jb2xvci1ib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMTQpO1xuICAtLXRlYy1jb2xvci1ib3gtc2hhZG93LXNlY29uZGFyeTogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAtLXRlYy1jb2xvci1zY3JvbGwtdHJhY2s6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIC0tdGVjLWNvbG9yLXNjcm9sbC1iYXI6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgLS10ZWMtY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LW11bHRpZGF5OiByZ2JhKDE4NywgMTMsIDE4LCAwLjI0KTtcbiAgLS10ZWMtY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5LW11bHRpZGF5LWhvdmVyOiByZ2JhKDE4NywgMTMsIDE4LCAwLjM0KTtcbiAgLS10ZWMtY29sb3ItYmFja2dyb3VuZC1zZWNvbmRhcnktbXVsdGlkYXk6IHJnYmEoMzMsIDMzLCAzMywgMC4yNCk7XG4gIC0tdGVjLWNvbG9yLWJhY2tncm91bmQtc2Vjb25kYXJ5LW11bHRpZGF5LWhvdmVyOiByZ2JhKDMzLCAzMywgMzMsIDAuMzQpO1xuICAtLXRlYy1jb2xvci1hY2NlbnQtcHJpbWFyeS13ZWVrLWV2ZW50OiByZ2JhKDE4NywgMTMsIDE4LCAwLjEpO1xuICAtLXRlYy1jb2xvci1hY2NlbnQtcHJpbWFyeS13ZWVrLWV2ZW50LWhvdmVyOiByZ2JhKDE4NywgMTMsIDE4LCAwLjIpO1xuICAtLXRlYy1jb2xvci1hY2NlbnQtcHJpbWFyeS13ZWVrLWV2ZW50LWZlYXR1cmVkOiByZ2JhKDE4NywgMTMsIDE4LCAwLjA0KTtcbiAgLS10ZWMtY29sb3ItYWNjZW50LXByaW1hcnktd2Vlay1ldmVudC1mZWF0dXJlZC1ob3ZlcjogcmdiYSgxODcsIDEzLCAxOCwgMC4xNCk7XG4gIC0tdGVjLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IGlibS1wbGV4LXNhbnMsIHNhbnMtc2VyaWY7XG59XG5cbi8qIGNvbnRhaW5lciAqL1xuI3RyaWJlLWV2ZW50cy1wZy10ZW1wbGF0ZSxcbi50cmliZS1ldmVudHMgLnRyaWJlLWV2ZW50cy1sLWNvbnRhaW5lcixcbi50cmliZS1jb21tb24tLWJyZWFrcG9pbnQtbWVkaXVtLnRyaWJlLWV2ZW50cyAudHJpYmUtZXZlbnRzLWwtY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xufVxuXG4vKiBsaW5rcyAqL1xuLnRyaWJlLWNvbW1vbiAudHJpYmUtY29tbW9uLWFuY2hvci10aGluLWFsdDphY3RpdmUsIC50cmliZS1jb21tb24gLnRyaWJlLWNvbW1vbi1hbmNob3ItdGhpbi1hbHQ6Zm9jdXMsIC50cmliZS1jb21tb24gLnRyaWJlLWNvbW1vbi1hbmNob3ItdGhpbi1hbHQ6aG92ZXIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiBjdXJyZW50Q29sb3I7XG59XG5cbi50cmliZS1ldmVudHMtcHJvIC50cmliZS1ldmVudHMtcHJvLW9yZ2FuaXplcl9fbWV0YS1lbWFpbC1saW5rLFxuLnRyaWJlLWV2ZW50cy1wcm8gLnRyaWJlLWV2ZW50cy1wcm8tb3JnYW5pemVyX19tZXRhLXdlYnNpdGUtbGluayB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbn1cblxuLyogaWNhbCBsaW5rICovXG4udHJpYmUtZXZlbnRzIC50cmliZS1ldmVudHMtYy1pY2FsIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC50cmliZS1ldmVudHMtZ2NhbDpub3QoOmxhc3QtY2hpbGQpLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLnRyaWJlLWV2ZW50cy1pY2FsOm5vdCg6bGFzdC1jaGlsZCksXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWljczpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjI1ZW07XG59XG5cbi8qIHBhZ2luYXRpb24gKi9cbi50cmliZS1ldmVudHMtc3ViLW5hdiB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qIGxpc3QgKi9cbi50cmliZS1ldmVudHMgLnRyaWJlLWV2ZW50cy1jYWxlbmRhci1saXN0X19tb250aC1zZXBhcmF0b3Ige1xuICB3aWR0aDogMTAwJTtcbn1cblxuLyogbW9udGggbW9iaWxlICovXG4udHJpYmUtZXZlbnRzIC50cmliZS1ldmVudHMtY2FsZW5kYXItbW9udGhfX3dlZWsge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnRyaWJlLWV2ZW50cyAudHJpYmUtZXZlbnRzLWNhbGVuZGFyLW1vbnRoLW5hdiB7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cblxuLyogZGF5ICovXG4udHJpYmUtZXZlbnRzIC50cmliZS1ldmVudHMtY2FsZW5kYXItZGF5X190aW1lLXNlcGFyYXRvciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiBzaW5nbGUgKi9cbi50cmliZS1ldmVudHMtYmFjayB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi50cmliZS1ldmVudHMtc2NoZWR1bGUge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLnRyaWJlLWV2ZW50cy1zY2hlZHVsZSBoMiB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5zaW5nbGUtdHJpYmVfZXZlbnRzIC50cmliZS1ldmVudHMtc2NoZWR1bGUgLnRyaWJlLWV2ZW50cy1kaXZpZGVyIHtcbiAgbWFyZ2luOiAwIDAuMjVlbTtcbn1cblxuLnRyaWJlLWV2ZW50cy1jb250ZW50IGEge1xuICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG4udHJpYmUtZXZlbnRzLXNpbmdsZSB1bC50cmliZS1yZWxhdGVkLWV2ZW50cyAucmVjdXJyaW5naW5mbyB7XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuICBtYXJnaW4tdG9wOiAwLjVlbTtcbn1cblxuI3RyaWJlLWV2ZW50cy1mb290ZXIgLnRyaWJlLWV2ZW50cy1zdWItbmF2LFxuI3RyaWJlLWV2ZW50cy1oZWFkZXIgLnRyaWJlLWV2ZW50cy1zdWItbmF2IHtcbiAgcGFkZGluZzogMDtcbn1cblxuLnRyaWJlLWV2ZW50cy1ldmVudC1pbWFnZSBpbWcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qIFBybzogT3JnYW5pemVyICovXG4udHJpYmUtZXZlbnRzLXBybyAudHJpYmUtZXZlbnRzLXByby1vcmdhbml6ZXJfX21ldGEtZW1haWwsXG4udHJpYmUtZXZlbnRzLXBybyAudHJpYmUtZXZlbnRzLXByby1vcmdhbml6ZXJfX21ldGEtcGhvbmUsXG4udHJpYmUtZXZlbnRzLXBybyAudHJpYmUtZXZlbnRzLXByby1vcmdhbml6ZXJfX21ldGEtd2Vic2l0ZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFdvb0NvbW1lcmNlIChodHRwczovL3dvb2NvbW1lcmNlLmNvbS8pXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1tYXgtaWQsIHNlbGVjdG9yLW1heC10eXBlLCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHNlbGVjdG9yLWNsYXNzLXBhdHRlcm4gKi9cbi8qIHZhcmlhYmxlcyBhbmQgaGVscGVycyAqL1xuLyogcGhvdG9zd2lwZS5jc3MgKi9cbi53b29jb21tZXJjZS1wYWdlIC5wc3dwIHtcbiAgZm9udC1mYW1pbHk6IFwiaWJtLXBsZXgtc2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuLndvb2NvbW1lcmNlLXBhZ2UgLnBzd3AgLnBzd3BfX2NhcHRpb24ge1xuICBmb250LXNpemU6IDEuMjVlbTtcbn1cblxuLyogc2VsZWN0Mi5jc3MgKi9cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgZm9udC1mYW1pbHk6IFwiaWJtLXBsZXgtc2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0cyA+IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMge1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG59XG5cbi8qIHdvb2NvbW1lcmNlLWxheW91dC5jc3MgKi9cbi53b29jb21tZXJjZSAjY29udGVudCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmlucHV0LXRleHQsXG4ud29vY29tbWVyY2UgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5pbnB1dC10ZXh0LFxuLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5pbnB1dC10ZXh0LFxuLndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5pbnB1dC10ZXh0IHtcbiAgd2lkdGg6IDcuNWVtO1xufVxuXG4ud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgaDIsXG4ud29vY29tbWVyY2UtcGFnZSAuY2FydC1jb2xsYXRlcmFscyBoMiB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG59XG5cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi8qIHdvb2NvbW1lcmNlLmNzcyAqL1xuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1icmVhZGNydW1iIHtcbiAgZm9udC1mYW1pbHk6IFwiaWJtLXBsZXgtc2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgcC5wcmljZSxcbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBzcGFuLnByaWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiaWJtLXBsZXgtc2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaSBhIHtcbiAgZm9udC1mYW1pbHk6IFwiaWJtLXBsZXgtc2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIGgyIHtcbiAgZm9udC1zaXplOiAxLjVlbTtcbn1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCBkaXYucXVhbnRpdHkge1xuICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xufVxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCBkaXYucXVhbnRpdHkgLnF0eSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi53b29jb21tZXJjZSBzcGFuLm9uc2FsZSB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG59XG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnZhcmlhdGlvbnMgbGFiZWwge1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG59XG5cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLWNhdGVnb3J5X190aXRsZSxcbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLFxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgaDMge1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNWVtO1xuICBwYWRkaW5nOiAwO1xufVxuXG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAucHJpY2Uge1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG59XG5cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IHtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cblxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlcmluZyB7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDA7XG59XG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyaW5nIHNlbGVjdCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLndvb2NvbW1lcmNlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIGEsXG4ud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgc3Bhbixcbi53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBhLFxuLndvb2NvbW1lcmNlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIHNwYW4ge1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG59XG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdCxcbi53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS5hbHQudHJpYmUtZXZlbnRzLWdjYWwsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYS5hbHQudHJpYmUtZXZlbnRzLWdjYWwsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS5hbHQudHJpYmUtZXZlbnRzLWljYWwsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYS5hbHQudHJpYmUtZXZlbnRzLWljYWwsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS5hbHQudHJpYmUtZXZlbnRzLWljcyxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBhLmFsdC50cmliZS1ldmVudHMtaWNzLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGJ1dHRvbi5hbHQudHJpYmUtZXZlbnRzLWdjYWwsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYnV0dG9uLmFsdC50cmliZS1ldmVudHMtZ2NhbCxcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBidXR0b24uYWx0LnRyaWJlLWV2ZW50cy1pY2FsLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGJ1dHRvbi5hbHQudHJpYmUtZXZlbnRzLWljYWwsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYnV0dG9uLmFsdC50cmliZS1ldmVudHMtaWNzLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGJ1dHRvbi5hbHQudHJpYmUtZXZlbnRzLWljcyxcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0LFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGlucHV0LmFsdC50cmliZS1ldmVudHMtZ2NhbCxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBpbnB1dC5hbHQudHJpYmUtZXZlbnRzLWdjYWwsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgaW5wdXQuYWx0LnRyaWJlLWV2ZW50cy1pY2FsLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGlucHV0LmFsdC50cmliZS1ldmVudHMtaWNhbCxcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBpbnB1dC5hbHQudHJpYmUtZXZlbnRzLWljcyxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBpbnB1dC5hbHQudHJpYmUtZXZlbnRzLWljcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCQjBEMTI7XG59XG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDpob3Zlcixcbi53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQ6aG92ZXIsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS5hbHQudHJpYmUtZXZlbnRzLWdjYWw6aG92ZXIsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYS5hbHQudHJpYmUtZXZlbnRzLWdjYWw6aG92ZXIsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS5hbHQudHJpYmUtZXZlbnRzLWljYWw6aG92ZXIsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYS5hbHQudHJpYmUtZXZlbnRzLWljYWw6aG92ZXIsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS5hbHQudHJpYmUtZXZlbnRzLWljczpob3Zlcixcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBhLmFsdC50cmliZS1ldmVudHMtaWNzOmhvdmVyLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmhvdmVyLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGJ1dHRvbi5hbHQudHJpYmUtZXZlbnRzLWdjYWw6aG92ZXIsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYnV0dG9uLmFsdC50cmliZS1ldmVudHMtZ2NhbDpob3Zlcixcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBidXR0b24uYWx0LnRyaWJlLWV2ZW50cy1pY2FsOmhvdmVyLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGJ1dHRvbi5hbHQudHJpYmUtZXZlbnRzLWljYWw6aG92ZXIsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYnV0dG9uLmFsdC50cmliZS1ldmVudHMtaWNzOmhvdmVyLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGJ1dHRvbi5hbHQudHJpYmUtZXZlbnRzLWljczpob3Zlcixcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0OmhvdmVyLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGlucHV0LmFsdC50cmliZS1ldmVudHMtZ2NhbDpob3Zlcixcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBpbnB1dC5hbHQudHJpYmUtZXZlbnRzLWdjYWw6aG92ZXIsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgaW5wdXQuYWx0LnRyaWJlLWV2ZW50cy1pY2FsOmhvdmVyLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGlucHV0LmFsdC50cmliZS1ldmVudHMtaWNhbDpob3Zlcixcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBpbnB1dC5hbHQudHJpYmUtZXZlbnRzLWljczpob3Zlcixcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBpbnB1dC5hbHQudHJpYmUtZXZlbnRzLWljczpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhMzBiMTE7XG59XG5cbi53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3Qge1xuICBwYWRkaW5nOiAwO1xufVxuXG4ud29vY29tbWVyY2UgI3Jldmlld3MgI2NvbW1lbnRzIG9sLmNvbW1lbnRsaXN0IGxpIC5jb21tZW50LXRleHQgcC5tZXRhIHtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG59XG5cbi53b29jb21tZXJjZSBhLmFkZGVkX3RvX2NhcnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiaWJtLXBsZXgtc2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdC5kaXNhYmxlZCxcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0LmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6ZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDpkaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmRpc2FibGVkW2Rpc2FibGVkXTpob3Zlcixcbi53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQuZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS5hbHQuZGlzYWJsZWQudHJpYmUtZXZlbnRzLWdjYWwsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYS5hbHQuZGlzYWJsZWQudHJpYmUtZXZlbnRzLWdjYWwsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS5hbHQuZGlzYWJsZWQudHJpYmUtZXZlbnRzLWljYWwsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYS5hbHQuZGlzYWJsZWQudHJpYmUtZXZlbnRzLWljYWwsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS5hbHQuZGlzYWJsZWQudHJpYmUtZXZlbnRzLWljcyxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBhLmFsdC5kaXNhYmxlZC50cmliZS1ldmVudHMtaWNzLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdC5kaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBhLmFsdC5kaXNhYmxlZC50cmliZS1ldmVudHMtZ2NhbDpob3Zlcixcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBhLmFsdC5kaXNhYmxlZC50cmliZS1ldmVudHMtZ2NhbDpob3Zlcixcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBhLmFsdC5kaXNhYmxlZC50cmliZS1ldmVudHMtaWNhbDpob3Zlcixcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBhLmFsdC5kaXNhYmxlZC50cmliZS1ldmVudHMtaWNhbDpob3Zlcixcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBhLmFsdC5kaXNhYmxlZC50cmliZS1ldmVudHMtaWNzOmhvdmVyLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGEuYWx0LmRpc2FibGVkLnRyaWJlLWV2ZW50cy1pY3M6aG92ZXIsXG4ud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGEuYWx0LnRyaWJlLWV2ZW50cy1nY2FsOmRpc2FibGVkLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGEuYWx0LnRyaWJlLWV2ZW50cy1nY2FsOmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGEuYWx0LnRyaWJlLWV2ZW50cy1pY2FsOmRpc2FibGVkLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGEuYWx0LnRyaWJlLWV2ZW50cy1pY2FsOmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGEuYWx0LnRyaWJlLWV2ZW50cy1pY3M6ZGlzYWJsZWQsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYS5hbHQudHJpYmUtZXZlbnRzLWljczpkaXNhYmxlZCxcbi53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQ6ZGlzYWJsZWQ6aG92ZXIsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS5hbHQudHJpYmUtZXZlbnRzLWdjYWw6ZGlzYWJsZWQ6aG92ZXIsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYS5hbHQudHJpYmUtZXZlbnRzLWdjYWw6ZGlzYWJsZWQ6aG92ZXIsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS5hbHQudHJpYmUtZXZlbnRzLWljYWw6ZGlzYWJsZWQ6aG92ZXIsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYS5hbHQudHJpYmUtZXZlbnRzLWljYWw6ZGlzYWJsZWQ6aG92ZXIsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS5hbHQudHJpYmUtZXZlbnRzLWljczpkaXNhYmxlZDpob3Zlcixcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBhLmFsdC50cmliZS1ldmVudHMtaWNzOmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS5hbHQudHJpYmUtZXZlbnRzLWdjYWw6ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGEuYWx0LnRyaWJlLWV2ZW50cy1nY2FsOmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBhLmFsdC50cmliZS1ldmVudHMtaWNhbDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYS5hbHQudHJpYmUtZXZlbnRzLWljYWw6ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGEuYWx0LnRyaWJlLWV2ZW50cy1pY3M6ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGEuYWx0LnRyaWJlLWV2ZW50cy1pY3M6ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdDpkaXNhYmxlZFtkaXNhYmxlZF06aG92ZXIsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYS5hbHQudHJpYmUtZXZlbnRzLWdjYWw6ZGlzYWJsZWRbZGlzYWJsZWRdOmhvdmVyLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGEuYWx0LnRyaWJlLWV2ZW50cy1nY2FsOmRpc2FibGVkW2Rpc2FibGVkXTpob3Zlcixcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBhLmFsdC50cmliZS1ldmVudHMtaWNhbDpkaXNhYmxlZFtkaXNhYmxlZF06aG92ZXIsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYS5hbHQudHJpYmUtZXZlbnRzLWljYWw6ZGlzYWJsZWRbZGlzYWJsZWRdOmhvdmVyLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGEuYWx0LnRyaWJlLWV2ZW50cy1pY3M6ZGlzYWJsZWRbZGlzYWJsZWRdOmhvdmVyLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGEuYWx0LnRyaWJlLWV2ZW50cy1pY3M6ZGlzYWJsZWRbZGlzYWJsZWRdOmhvdmVyLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGJ1dHRvbi5hbHQuZGlzYWJsZWQudHJpYmUtZXZlbnRzLWdjYWwsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYnV0dG9uLmFsdC5kaXNhYmxlZC50cmliZS1ldmVudHMtZ2NhbCxcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBidXR0b24uYWx0LmRpc2FibGVkLnRyaWJlLWV2ZW50cy1pY2FsLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGJ1dHRvbi5hbHQuZGlzYWJsZWQudHJpYmUtZXZlbnRzLWljYWwsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYnV0dG9uLmFsdC5kaXNhYmxlZC50cmliZS1ldmVudHMtaWNzLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGJ1dHRvbi5hbHQuZGlzYWJsZWQudHJpYmUtZXZlbnRzLWljcyxcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBidXR0b24uYWx0LmRpc2FibGVkLnRyaWJlLWV2ZW50cy1nY2FsOmhvdmVyLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGJ1dHRvbi5hbHQuZGlzYWJsZWQudHJpYmUtZXZlbnRzLWdjYWw6aG92ZXIsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYnV0dG9uLmFsdC5kaXNhYmxlZC50cmliZS1ldmVudHMtaWNhbDpob3Zlcixcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBidXR0b24uYWx0LmRpc2FibGVkLnRyaWJlLWV2ZW50cy1pY2FsOmhvdmVyLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGJ1dHRvbi5hbHQuZGlzYWJsZWQudHJpYmUtZXZlbnRzLWljczpob3Zlcixcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBidXR0b24uYWx0LmRpc2FibGVkLnRyaWJlLWV2ZW50cy1pY3M6aG92ZXIsXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQ6ZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYnV0dG9uLmFsdC50cmliZS1ldmVudHMtZ2NhbDpkaXNhYmxlZCxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBidXR0b24uYWx0LnRyaWJlLWV2ZW50cy1nY2FsOmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGJ1dHRvbi5hbHQudHJpYmUtZXZlbnRzLWljYWw6ZGlzYWJsZWQsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYnV0dG9uLmFsdC50cmliZS1ldmVudHMtaWNhbDpkaXNhYmxlZCxcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBidXR0b24uYWx0LnRyaWJlLWV2ZW50cy1pY3M6ZGlzYWJsZWQsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYnV0dG9uLmFsdC50cmliZS1ldmVudHMtaWNzOmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGJ1dHRvbi5hbHQudHJpYmUtZXZlbnRzLWdjYWw6ZGlzYWJsZWQ6aG92ZXIsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYnV0dG9uLmFsdC50cmliZS1ldmVudHMtZ2NhbDpkaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBidXR0b24uYWx0LnRyaWJlLWV2ZW50cy1pY2FsOmRpc2FibGVkOmhvdmVyLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGJ1dHRvbi5hbHQudHJpYmUtZXZlbnRzLWljYWw6ZGlzYWJsZWQ6aG92ZXIsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYnV0dG9uLmFsdC50cmliZS1ldmVudHMtaWNzOmRpc2FibGVkOmhvdmVyLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGJ1dHRvbi5hbHQudHJpYmUtZXZlbnRzLWljczpkaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYnV0dG9uLmFsdC50cmliZS1ldmVudHMtZ2NhbDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYnV0dG9uLmFsdC50cmliZS1ldmVudHMtZ2NhbDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYnV0dG9uLmFsdC50cmliZS1ldmVudHMtaWNhbDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgYnV0dG9uLmFsdC50cmliZS1ldmVudHMtaWNhbDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgYnV0dG9uLmFsdC50cmliZS1ldmVudHMtaWNzOmRpc2FibGVkW2Rpc2FibGVkXSxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBidXR0b24uYWx0LnRyaWJlLWV2ZW50cy1pY3M6ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmRpc2FibGVkW2Rpc2FibGVkXTpob3Zlcixcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBidXR0b24uYWx0LnRyaWJlLWV2ZW50cy1nY2FsOmRpc2FibGVkW2Rpc2FibGVkXTpob3Zlcixcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBidXR0b24uYWx0LnRyaWJlLWV2ZW50cy1nY2FsOmRpc2FibGVkW2Rpc2FibGVkXTpob3Zlcixcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBidXR0b24uYWx0LnRyaWJlLWV2ZW50cy1pY2FsOmRpc2FibGVkW2Rpc2FibGVkXTpob3Zlcixcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBidXR0b24uYWx0LnRyaWJlLWV2ZW50cy1pY2FsOmRpc2FibGVkW2Rpc2FibGVkXTpob3Zlcixcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBidXR0b24uYWx0LnRyaWJlLWV2ZW50cy1pY3M6ZGlzYWJsZWRbZGlzYWJsZWRdOmhvdmVyLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGJ1dHRvbi5hbHQudHJpYmUtZXZlbnRzLWljczpkaXNhYmxlZFtkaXNhYmxlZF06aG92ZXIsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdC5kaXNhYmxlZCxcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBpbnB1dC5hbHQuZGlzYWJsZWQudHJpYmUtZXZlbnRzLWdjYWwsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgaW5wdXQuYWx0LmRpc2FibGVkLnRyaWJlLWV2ZW50cy1nY2FsLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGlucHV0LmFsdC5kaXNhYmxlZC50cmliZS1ldmVudHMtaWNhbCxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBpbnB1dC5hbHQuZGlzYWJsZWQudHJpYmUtZXZlbnRzLWljYWwsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgaW5wdXQuYWx0LmRpc2FibGVkLnRyaWJlLWV2ZW50cy1pY3MsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgaW5wdXQuYWx0LmRpc2FibGVkLnRyaWJlLWV2ZW50cy1pY3MsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdC5kaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBpbnB1dC5hbHQuZGlzYWJsZWQudHJpYmUtZXZlbnRzLWdjYWw6aG92ZXIsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgaW5wdXQuYWx0LmRpc2FibGVkLnRyaWJlLWV2ZW50cy1nY2FsOmhvdmVyLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGlucHV0LmFsdC5kaXNhYmxlZC50cmliZS1ldmVudHMtaWNhbDpob3Zlcixcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBpbnB1dC5hbHQuZGlzYWJsZWQudHJpYmUtZXZlbnRzLWljYWw6aG92ZXIsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgaW5wdXQuYWx0LmRpc2FibGVkLnRyaWJlLWV2ZW50cy1pY3M6aG92ZXIsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgaW5wdXQuYWx0LmRpc2FibGVkLnRyaWJlLWV2ZW50cy1pY3M6aG92ZXIsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDpkaXNhYmxlZCxcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBpbnB1dC5hbHQudHJpYmUtZXZlbnRzLWdjYWw6ZGlzYWJsZWQsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgaW5wdXQuYWx0LnRyaWJlLWV2ZW50cy1nY2FsOmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGlucHV0LmFsdC50cmliZS1ldmVudHMtaWNhbDpkaXNhYmxlZCxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBpbnB1dC5hbHQudHJpYmUtZXZlbnRzLWljYWw6ZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgaW5wdXQuYWx0LnRyaWJlLWV2ZW50cy1pY3M6ZGlzYWJsZWQsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgaW5wdXQuYWx0LnRyaWJlLWV2ZW50cy1pY3M6ZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDpkaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBpbnB1dC5hbHQudHJpYmUtZXZlbnRzLWdjYWw6ZGlzYWJsZWQ6aG92ZXIsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgaW5wdXQuYWx0LnRyaWJlLWV2ZW50cy1nY2FsOmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGlucHV0LmFsdC50cmliZS1ldmVudHMtaWNhbDpkaXNhYmxlZDpob3Zlcixcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBpbnB1dC5hbHQudHJpYmUtZXZlbnRzLWljYWw6ZGlzYWJsZWQ6aG92ZXIsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgaW5wdXQuYWx0LnRyaWJlLWV2ZW50cy1pY3M6ZGlzYWJsZWQ6aG92ZXIsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgaW5wdXQuYWx0LnRyaWJlLWV2ZW50cy1pY3M6ZGlzYWJsZWQ6aG92ZXIsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgaW5wdXQuYWx0LnRyaWJlLWV2ZW50cy1nY2FsOmRpc2FibGVkW2Rpc2FibGVkXSxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC53b29jb21tZXJjZSBpbnB1dC5hbHQudHJpYmUtZXZlbnRzLWdjYWw6ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGlucHV0LmFsdC50cmliZS1ldmVudHMtaWNhbDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgaW5wdXQuYWx0LnRyaWJlLWV2ZW50cy1pY2FsOmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBpbnB1dC5hbHQudHJpYmUtZXZlbnRzLWljczpkaXNhYmxlZFtkaXNhYmxlZF0sXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgaW5wdXQuYWx0LnRyaWJlLWV2ZW50cy1pY3M6ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQ6ZGlzYWJsZWRbZGlzYWJsZWRdOmhvdmVyLFxuLndvb2NvbW1lcmNlIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIGlucHV0LmFsdC50cmliZS1ldmVudHMtZ2NhbDpkaXNhYmxlZFtkaXNhYmxlZF06aG92ZXIsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAud29vY29tbWVyY2UgaW5wdXQuYWx0LnRyaWJlLWV2ZW50cy1nY2FsOmRpc2FibGVkW2Rpc2FibGVkXTpob3Zlcixcbi53b29jb21tZXJjZSAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBpbnB1dC5hbHQudHJpYmUtZXZlbnRzLWljYWw6ZGlzYWJsZWRbZGlzYWJsZWRdOmhvdmVyLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGlucHV0LmFsdC50cmliZS1ldmVudHMtaWNhbDpkaXNhYmxlZFtkaXNhYmxlZF06aG92ZXIsXG4ud29vY29tbWVyY2UgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgaW5wdXQuYWx0LnRyaWJlLWV2ZW50cy1pY3M6ZGlzYWJsZWRbZGlzYWJsZWRdOmhvdmVyLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLndvb2NvbW1lcmNlIGlucHV0LmFsdC50cmliZS1ldmVudHMtaWNzOmRpc2FibGVkW2Rpc2FibGVkXTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCQjBEMTI7XG59XG5cbi53b29jb21tZXJjZSAuc3Rhci1yYXRpbmcge1xuICBjb2xvcjogI0YwOEUwMTtcbn1cblxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZyAuc3Rhci1yYXRpbmcge1xuICBtYXJnaW4tdG9wOiAwLjI1ZW07XG59XG4ud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLndvb2NvbW1lcmNlICNyZXZpZXdfZm9ybSAjcmVzcG9uZCBsYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVlbTtcbn1cbi53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgbGFiZWwgc3Bhbi5yZXF1aXJlZCB7XG4gIGNvbG9yOiAjQzYyODI4O1xufVxuLndvb2NvbW1lcmNlIHAuc3RhcnMge1xuICBjb2xvcjogIzIxMjEyMTtcbn1cbi53b29jb21tZXJjZSBwLnN0YXJzOmhvdmVyLCAud29vY29tbWVyY2UgcC5zdGFycy5zZWxlY3RlZCB7XG4gIGNvbG9yOiAjRjA4RTAxO1xufVxuLndvb2NvbW1lcmNlIHAuc3RhcnMgYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4ud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cbi53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGQsXG4ud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRoIHtcbiAgYm9yZGVyOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0cjpudGgtY2hpbGQoMm4pIHRkLFxuLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfYXR0cmlidXRlcyB0cjpudGgtY2hpbGQoMm4pIHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VCRTlFQjtcbn1cbi53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGQge1xuICBwYWRkaW5nOiA4cHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi53b29jb21tZXJjZSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGQgcCB7XG4gIHBhZGRpbmc6IDA7XG59XG4ud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRoIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIHtcbiAgZm9udC1mYW1pbHk6IFwiaWJtLXBsZXgtc2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUgdGZvb3QgdGgge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIC5xdWFudGl0eSAucXR5IHtcbiAgd2lkdGg6IDZlbTtcbn1cblxuLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IGxhYmVsIHtcbiAgZm9udC1mYW1pbHk6IFwiaWJtLXBsZXgtc2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4ud29vY29tbWVyY2UgdWwub3JkZXJfZGV0YWlscyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFQkU5RUI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNGRkZGRkYgNTAlLCB0cmFuc3BhcmVudCA1MCUpLCBsaW5lYXItZ3JhZGllbnQoMjI1ZGVnLCAjRkZGRkZGIDUwJSwgdHJhbnNwYXJlbnQgNTAlKSwgbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjRkZGRkZGIDUwJSwgdHJhbnNwYXJlbnQgNTAlKSwgbGluZWFyLWdyYWRpZW50KC00NWRlZywgI0ZGRkZGRiA1MCUsIHRyYW5zcGFyZW50IDUwJSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBsZWZ0LCB0b3AgbGVmdCwgYm90dG9tIGxlZnQsIGJvdHRvbSBsZWZ0O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtc2l6ZTogMWVtIDFlbTtcbiAgZm9udC1mYW1pbHk6IFwiaWJtLXBsZXgtc2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBwYWRkaW5nOiAyZW0gMDtcbn1cbi53b29jb21tZXJjZSB1bC5vcmRlcl9kZXRhaWxzIGxpIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjREZEQ0RFO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGZsb2F0OiBub25lO1xuICBwYWRkaW5nOiAwLjc1ZW0gMS4yNWVtO1xufVxuXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgaDIsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMgaDIsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyLWRvd25sb2FkcyBoMiB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG59XG5cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMWVtICFpbXBvcnRhbnQ7XG59XG5cbi53b29jb21tZXJjZS1lcnJvcixcbi53b29jb21tZXJjZS1pbmZvLFxuLndvb2NvbW1lcmNlLW1lc3NhZ2Uge1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG59XG4ud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIC50aXRsZSBoMywgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgZm9ybSA+IGgzIGgzLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgLmFkZHJlc3NlcyBmb3JtID4gaDMgaDMsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlID4gaDIgaDMsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBoMi53b29jb21tZXJjZS1jb2x1bW5fX3RpdGxlIGgzLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgaDIud29vY29tbWVyY2UtY29sdW1uX190aXRsZSBoMywgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIGgyLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHNfX3RpdGxlIGgzLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgaDIud29vY29tbWVyY2Utb3JkZXItZGV0YWlsc19fdGl0bGUgaDMsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlIC5jaGVja291dCBoMyBoMywgLndvb2NvbW1lcmNlIC5jaGVja291dCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGgzIGgzLCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIC53b29jb21tZXJjZSAucHJvZHVjdCAucmVsYXRlZCA+IGgyIGgzLCAud29vY29tbWVyY2UgLnByb2R1Y3QgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAucmVsYXRlZCA+IGgyIGgzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgLnByb2R1Y3QgLnVwc2VsbHMgPiBoMiBoMyxcbi53b29jb21tZXJjZSAucHJvZHVjdCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIC51cHNlbGxzID4gaDIgaDMsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlIGgxLnBhZ2UtdGl0bGUgaDMsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGgxLnBhZ2UtdGl0bGUgaDMsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIGgyIGgzLCAud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBoMiBoMyxcbi53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlLXBhZ2UgLmNhcnQtY29sbGF0ZXJhbHMgaDIgaDMsXG4ud29vY29tbWVyY2UtcGFnZSAuY2FydC1jb2xsYXRlcmFscyAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGgyIGgzLCAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCAucHJvZHVjdF90aXRsZSBoMywgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLnByb2R1Y3RfdGl0bGUgaDMsIC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIGgyIGgzLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWwgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBoMiBoMywgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAud29vY29tbWVyY2UtbG9vcC1jYXRlZ29yeV9fdGl0bGUgaDMsIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlLWxvb3AtY2F0ZWdvcnlfX3RpdGxlIGgzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSBoMyxcbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUgaDMsXG4ud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGgzIGgzLFxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBoMyBoMywgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWN1c3RvbWVyLWRldGFpbHMgaDIgaDMsIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGgyIGgzLFxuLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMgaDIgaDMsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMgLndvb2NvbW1lcmNlLWFjY291bnQgLmFkZHJlc3NlcyBoMiBoMyxcbi53b29jb21tZXJjZS1hY2NvdW50IC5hZGRyZXNzZXMgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlci1kb3dubG9hZHMgaDIgaDMsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyLWRvd25sb2FkcyAud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGgyIGgzIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4jYWRkX3BheW1lbnRfbWV0aG9kICNwYXltZW50LFxuLndvb2NvbW1lcmNlLWNhcnQgI3BheW1lbnQsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgI3BheW1lbnQge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4jYWRkX3BheW1lbnRfbWV0aG9kICNwYXltZW50IHVsLnBheW1lbnRfbWV0aG9kcyxcbi53b29jb21tZXJjZS1jYXJ0ICNwYXltZW50IHVsLnBheW1lbnRfbWV0aG9kcyxcbi53b29jb21tZXJjZS1jaGVja291dCAjcGF5bWVudCB1bC5wYXltZW50X21ldGhvZHMge1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG4gIHBhZGRpbmc6IDA7XG59XG5cbiNhZGRfcGF5bWVudF9tZXRob2QgI3BheW1lbnQgdWwucGF5bWVudF9tZXRob2RzIGxpOm5vdCg6bGFzdC1jaGlsZCksXG4ud29vY29tbWVyY2UtY2FydCAjcGF5bWVudCB1bC5wYXltZW50X21ldGhvZHMgbGk6bm90KDpsYXN0LWNoaWxkKSxcbi53b29jb21tZXJjZS1jaGVja291dCAjcGF5bWVudCB1bC5wYXltZW50X21ldGhvZHMgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRkZGRkZGO1xufVxuXG4jYWRkX3BheW1lbnRfbWV0aG9kICNwYXltZW50IHVsLnBheW1lbnRfbWV0aG9kcyBsaSA+IGlucHV0LFxuLndvb2NvbW1lcmNlLWNhcnQgI3BheW1lbnQgdWwucGF5bWVudF9tZXRob2RzIGxpID4gaW5wdXQsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgI3BheW1lbnQgdWwucGF5bWVudF9tZXRob2RzIGxpID4gaW5wdXQge1xuICBsZWZ0OiAtOTk5ZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuI2FkZF9wYXltZW50X21ldGhvZCAjcGF5bWVudCBkaXYucGF5bWVudF9ib3gsXG4ud29vY29tbWVyY2UtY2FydCAjcGF5bWVudCBkaXYucGF5bWVudF9ib3gsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgI3BheW1lbnQgZGl2LnBheW1lbnRfYm94IHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgbWFyZ2luOiAwO1xufVxuI2FkZF9wYXltZW50X21ldGhvZCAjcGF5bWVudCBkaXYucGF5bWVudF9ib3g6OmJlZm9yZSxcbi53b29jb21tZXJjZS1jYXJ0ICNwYXltZW50IGRpdi5wYXltZW50X2JveDo6YmVmb3JlLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0ICNwYXltZW50IGRpdi5wYXltZW50X2JveDo6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI2FkZF9wYXltZW50X21ldGhvZCAjcGF5bWVudCBkaXYucGF5bWVudF9ib3ggcDpmaXJzdC1jaGlsZCxcbi53b29jb21tZXJjZS1jYXJ0ICNwYXltZW50IGRpdi5wYXltZW50X2JveCBwOmZpcnN0LWNoaWxkLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0ICNwYXltZW50IGRpdi5wYXltZW50X2JveCBwOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuI2FkZF9wYXltZW50X21ldGhvZCAjcGF5bWVudCAucGF5bWVudF9tZXRob2RfcGF5cGFsIC5hYm91dF9wYXlwYWwsXG4ud29vY29tbWVyY2UtY2FydCAjcGF5bWVudCAucGF5bWVudF9tZXRob2RfcGF5cGFsIC5hYm91dF9wYXlwYWwsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgI3BheW1lbnQgLnBheW1lbnRfbWV0aG9kX3BheXBhbCAuYWJvdXRfcGF5cGFsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogY3VzdG9tICovXG4ud29vY29tbWVyY2VfX2FyY2hpdmUtcmVzdWx0cyB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuXG4ud29vY29tbWVyY2UgLnByb2R1Y3QgLnJlbGF0ZWQgPiBoMixcbi53b29jb21tZXJjZSAucHJvZHVjdCAudXBzZWxscyA+IGgyIHtcbiAgZm9udC1zaXplOiAxLjVlbTtcbn1cblxuLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgLmNvbDItc2V0IC5jb2wtMSxcbi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jb2wyLXNldCAuY29sLTIsXG4ud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jb2wyLXNldCAuY29sLTEsXG4ud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jb2wyLXNldCAuY29sLTIge1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0LFxuLndvb2NvbW1lcmNlLXBhZ2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAud29vY29tbWVyY2UgZm9ybS53b29jb21tZXJjZS1jaGVja291dCAjY3VzdG9tZXJfZGV0YWlscyxcbi53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgI2N1c3RvbWVyX2RldGFpbHMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogNC4zNDc4JTtcbiAgICB3aWR0aDogNDcuODI2MSU7XG4gIH1cbiAgLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgI29yZGVyX3Jldmlldyxcbi53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0ICNvcmRlcl9yZXZpZXdfaGVhZGluZyxcbi53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgI29yZGVyX3Jldmlldyxcbi53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQgI29yZGVyX3Jldmlld19oZWFkaW5nIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHdpZHRoOiA0Ny44MjYxJTtcbiAgfVxufVxuLndvb2NvbW1lcmNlIC5jaGVja291dCBoMyB7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xufVxuXG4jYWRkX3BheW1lbnRfbWV0aG9kICNwYXltZW50IHVsLnBheW1lbnRfbWV0aG9kcyBsaSA+IGxhYmVsLFxuLndvb2NvbW1lcmNlLWNhcnQgI3BheW1lbnQgdWwucGF5bWVudF9tZXRob2RzIGxpID4gbGFiZWwsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgI3BheW1lbnQgdWwucGF5bWVudF9tZXRob2RzIGxpID4gbGFiZWwge1xuICBiYWNrZ3JvdW5kOiAjREZEQ0RFO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBhZGRpbmc6IDAuNWVtIDFlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cywgY29sb3IgMC4xNXM7XG59XG4jYWRkX3BheW1lbnRfbWV0aG9kICNwYXltZW50IHVsLnBheW1lbnRfbWV0aG9kcyBsaSA+IGlucHV0OmNoZWNrZWQgKyBsYWJlbCxcbi53b29jb21tZXJjZS1jYXJ0ICNwYXltZW50IHVsLnBheW1lbnRfbWV0aG9kcyBsaSA+IGlucHV0OmNoZWNrZWQgKyBsYWJlbCxcbi53b29jb21tZXJjZS1jaGVja291dCAjcGF5bWVudCB1bC5wYXltZW50X21ldGhvZHMgbGkgPiBpbnB1dDpjaGVja2VkICsgbGFiZWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQkIwRDEyO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbiNhZGRfcGF5bWVudF9tZXRob2QgI3BheW1lbnQgdWwucGF5bWVudF9tZXRob2RzIGxpID4gbGFiZWwgaW1nLFxuLndvb2NvbW1lcmNlLWNhcnQgI3BheW1lbnQgdWwucGF5bWVudF9tZXRob2RzIGxpID4gbGFiZWwgaW1nLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0ICNwYXltZW50IHVsLnBheW1lbnRfbWV0aG9kcyBsaSA+IGxhYmVsIGltZyB7XG4gIG1heC1oZWlnaHQ6IDMycHg7XG59XG5cbi53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgaDIud29vY29tbWVyY2Utb3JkZXItZGV0YWlsc19fdGl0bGUge1xuICBmb250LXNpemU6IDEuNWVtO1xufVxuXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIGgyLndvb2NvbW1lcmNlLWNvbHVtbl9fdGl0bGUge1xuICBmb250LXNpemU6IDEuMjVlbTtcbn1cblxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlID4gaDIge1xuICBmb250LXNpemU6IDEuMjVlbTtcbn1cblxuLndvb2NvbW1lcmNlIGZvcm0ubG9naW4sXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4ud29vY29tbWVyY2UgZm9ybS5sb2dpbiBsYWJlbC53b29jb21tZXJjZS1mb3JtLWxvZ2luX19yZW1lbWJlcm1lLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgbGFiZWwud29vY29tbWVyY2UtZm9ybS1sb2dpbl9fcmVtZW1iZXJtZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xufVxuLndvb2NvbW1lcmNlIGZvcm0ubG9naW4gaW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQud29vY29tbWVyY2UtZm9ybV9faW5wdXQtY2hlY2tib3gsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveCB7XG4gIG1hcmdpbjogMCAwLjVlbSAwIDA7XG59XG4ud29vY29tbWVyY2UtQWRkcmVzcy10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgZm9ybSA+IGgzIHtcbiAgZm9udC1zaXplOiAxLjVlbTtcbn1cblxuLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlIGZpZWxkc2V0IGxlZ2VuZCB7XG4gIHBhZGRpbmc6IDAgMC41ZW07XG59XG5cbi53b29jb21tZXJjZS12YXJpYXRpb24tYWRkLXRvLWNhcnQge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFdQIENhcHRpb25cblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi53cC1jYXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuLndwLWNhcHRpb246bm90KC5hbGlnbmxlZnQpIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLndwLWNhcHRpb246bm90KC5hbGlnbnJpZ2h0KSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4ud3AtY2FwdGlvbi1pbWFnZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cbi53cC1jYXB0aW9uLWltYWdlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbn1cblxuLndwLWNhcHRpb24tdGV4dCB7XG4gIGNvbG9yOiAjMjEyMTIxO1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiAxLjc1ZW07XG4gIG1hcmdpbjogMC44NzVlbSAwZW0gMS43NWVtO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBXUCBHYWxsZXJ5XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4ud3AtYmxvY2stZ2FsbGVyeSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLmdhbGxlcnksXG4uYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtZ2FwOiAxLjg3NXJlbTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZ2FsbGVyeS1jb2x1bW5zLTEsXG4ud3AtYmxvY2stZ2FsbGVyeS5jb2x1bW5zLTEgPiAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgfVxuXG4gIC5nYWxsZXJ5LWNvbHVtbnMtMixcbi53cC1ibG9jay1nYWxsZXJ5LmNvbHVtbnMtMiA+IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICB9XG5cbiAgLmdhbGxlcnktY29sdW1ucy0zLFxuLndwLWJsb2NrLWdhbGxlcnkuY29sdW1ucy0zID4gLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gIH1cblxuICAuZ2FsbGVyeS1jb2x1bW5zLTQsXG4ud3AtYmxvY2stZ2FsbGVyeS5jb2x1bW5zLTQgPiAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgfVxuXG4gIC5nYWxsZXJ5LWNvbHVtbnMtNSxcbi53cC1ibG9jay1nYWxsZXJ5LmNvbHVtbnMtNSA+IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpO1xuICB9XG5cbiAgLmdhbGxlcnktY29sdW1ucy02LFxuLndwLWJsb2NrLWdhbGxlcnkuY29sdW1ucy02ID4gLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7XG4gIH1cblxuICAuZ2FsbGVyeS1jb2x1bW5zLTcsXG4ud3AtYmxvY2stZ2FsbGVyeS5jb2x1bW5zLTcgPiAuYmxvY2tzLWdhbGxlcnktZ3JpZCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcbiAgfVxuXG4gIC5nYWxsZXJ5LWNvbHVtbnMtOCxcbi53cC1ibG9jay1nYWxsZXJ5LmNvbHVtbnMtOCA+IC5ibG9ja3MtZ2FsbGVyeS1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg4LCAxZnIpO1xuICB9XG5cbiAgLmdhbGxlcnktY29sdW1ucy05LFxuLndwLWJsb2NrLWdhbGxlcnkuY29sdW1ucy05ID4gLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDksIDFmcik7XG4gIH1cbn1cbi5nYWxsZXJ5LWl0ZW0sXG4uYmxvY2tzLWdhbGxlcnktaXRlbSB7XG4gIGNvbHVtbi1zcGFuOiBzcGFuIDE7XG4gIG1hcmdpbjogMDtcbn1cbi5nYWxsZXJ5LWl0ZW0gZmlndXJlLFxuLmJsb2Nrcy1nYWxsZXJ5LWl0ZW0gZmlndXJlIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuLmdhbGxlcnktaXRlbSBpbWcsXG4uYmxvY2tzLWdhbGxlcnktaXRlbSBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLypcbjxkaXYgY2xhc3M9XCJsb2NhdGlvbl9fdGl0bGVcIj5cbiAgICA8ZGl2IGNsYXNzPVwibG9jYXRpb25fX2xpbmUgbG9jYXRpb25fX2xpbmUtLWZpcnN0XCI+XG4gICAgICAgIDxociBjbGFzcz1cImJhbm5lcl9fbGluZV9fbGluZVwiIC8+XG4gICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXN0YXJcIj48L2k+XG4gICAgPC9kaXY+XG4gICAgPGgyIGNsYXNzPVwidGl0bGUgdGl0bGUtLWRlY29yYXRlZFwiPlxuICAgICAgICA8P3BocCBfZShcIk9GUEQgRmlyZSBTdGF0aW9uc1wiLCBcIm9mcGRcIik7ID8+XG4gICAgPC9oMj5cbiAgICA8ZGl2IGNsYXNzPVwibG9jYXRpb25fX2xpbmUgbG9jYXRpb25fX2xpbmUtLWxhc3RcIj5cbiAgICAgICAgPGhyIGNsYXNzPVwiYmFubmVyX19saW5lX19saW5lXCIgLz5cbiAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtc3RhclwiPjwvaT5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmxvY2F0aW9uX19ibG9jayB7XG4gICAgcGFkZGluZy1ib3R0b206IDQuNjg3NWVtO1xuICB9XG59XG4ubG9jYXRpb25fX2Jsb2NrIC5sb2NhdGlvbl9fcm93IHtcbiAgZ3JpZC1nYXA6IDBlbSAyLjc1ZW07XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmxvY2F0aW9uX19ibG9jayAubG9jYXRpb25fX3RpdGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZ3JpZC1nYXA6IDFlbTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDIuMjVlbTtcbn1cbi5sb2NhdGlvbl9fYmxvY2sgLmxvY2F0aW9uX19saW5lIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6ICNGRkNBMDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdyaWQtZ2FwOiAwLjI1ZW07XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiA5LjkzNzVlbTtcbn1cbi5sb2NhdGlvbl9fYmxvY2sgLmxvY2F0aW9uX19saW5lX19saW5lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0JCMEQxMjtcbiAgYm9yZGVyOiBub25lO1xuICBmbGV4OiAxIDAgYXV0bztcbiAgaGVpZ2h0OiAwLjE4NzVlbTtcbn1cbi5sb2NhdGlvbl9fYmxvY2sgLmxvY2F0aW9uX190aXRsZV9fdGV4dCB7XG4gIGNvbG9yOiAjQkIwRDEyO1xuICBmb250LXNpemU6IDIuMjVlbTtcbn1cbi5sb2NhdGlvbl9fYmxvY2sgLmxvY2F0aW9uX19jb2wge1xuICBmbGV4OiAwIDEgMTguNzVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG59XG4ubG9jYXRpb25fX2Jsb2NrIC5sb2NhdGlvbl9faW1hZ2VfX3dyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVlbTtcbn1cbi5sb2NhdGlvbl9fYmxvY2sgLmxvY2F0aW9uX19pbWFnZSB7XG4gIGJvcmRlcjogMC4xODc1ZW0gc29saWQgI0ZGQ0EwMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG4ubG9jYXRpb25fX2Jsb2NrIC5sb2NhdGlvbl9fdGV4dCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjEyNWVtO1xufVxuXG4ub3ZlcmxheV9fYmxvY2sge1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAwcmVtIDEuNTYyNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogOTk5O1xufVxuLm92ZXJsYXlfX2Jsb2NrLm92ZXJsYXlfX2Jsb2NrLS1hbGlnbi1ib3R0b20ge1xuICBib3R0b206IDEuNWVtO1xufVxuLm92ZXJsYXlfX2Jsb2NrIC5kaXZpZGVyIHtcbiAgbWFyZ2luOiAwLjkzNzVlbSAwZW07XG59XG5cbi5vdmVybGF5X19ibG9jay0tbW9iaWxlIC5jb2wtLXRleHQge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4ubmV3c19faW1hZ2VfX3dyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRDUzNjtcbiAgbGVmdDogMS4xMjVlbTtcbiAgcGFkZGluZzogMC44MTI1ZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAzO1xufVxuLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IC50aXRsZSwgLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IC53b29jb21tZXJjZSAuY2FydC1jb2xsYXRlcmFscyBoMiwgLndvb2NvbW1lcmNlIC5jYXJ0LWNvbGxhdGVyYWxzIC5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSBoMixcbi5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSAud29vY29tbWVyY2UtcGFnZSAuY2FydC1jb2xsYXRlcmFscyBoMixcbi53b29jb21tZXJjZS1wYWdlIC5jYXJ0LWNvbGxhdGVyYWxzIC5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSBoMiwgLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IC53b29jb21tZXJjZSBkaXYucHJvZHVjdCAucHJvZHVjdF90aXRsZSwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSAucHJvZHVjdF90aXRsZSwgLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IC53b29jb21tZXJjZSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyAud29vY29tbWVyY2UtVGFicy1wYW5lbCBoMiwgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIC53b29jb21tZXJjZS1UYWJzLXBhbmVsIC5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSBoMiwgLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLWNhdGVnb3J5X190aXRsZSwgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IC53b29jb21tZXJjZS1sb29wLWNhdGVnb3J5X190aXRsZSxcbi5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSxcbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSxcbi5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSAud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBoMyxcbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSBoMywgLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IC53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBoMiwgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIC5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSBoMixcbi5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMgaDIsXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMgLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IGgyLFxuLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXItZG93bmxvYWRzIGgyLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlci1kb3dubG9hZHMgLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IGgyLCAubmV3c19faW1hZ2VfX3dyYXBwZXIgLm5ld3NfX292ZXJsYXkgLndvb2NvbW1lcmNlIGgxLnBhZ2UtdGl0bGUsIC53b29jb21tZXJjZSAubmV3c19faW1hZ2VfX3dyYXBwZXIgLm5ld3NfX292ZXJsYXkgaDEucGFnZS10aXRsZSwgLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IC53b29jb21tZXJjZSAucHJvZHVjdCAucmVsYXRlZCA+IGgyLCAud29vY29tbWVyY2UgLnByb2R1Y3QgLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IC5yZWxhdGVkID4gaDIsXG4ubmV3c19faW1hZ2VfX3dyYXBwZXIgLm5ld3NfX292ZXJsYXkgLndvb2NvbW1lcmNlIC5wcm9kdWN0IC51cHNlbGxzID4gaDIsXG4ud29vY29tbWVyY2UgLnByb2R1Y3QgLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IC51cHNlbGxzID4gaDIsIC5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSAud29vY29tbWVyY2UgLmNoZWNrb3V0IGgzLCAud29vY29tbWVyY2UgLmNoZWNrb3V0IC5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSBoMywgLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgaDIud29vY29tbWVyY2Utb3JkZXItZGV0YWlsc19fdGl0bGUsIC53b29jb21tZXJjZSAud29vY29tbWVyY2Utb3JkZXIgLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IGgyLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHNfX3RpdGxlLCAubmV3c19faW1hZ2VfX3dyYXBwZXIgLm5ld3NfX292ZXJsYXkgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBoMi53b29jb21tZXJjZS1jb2x1bW5fX3RpdGxlLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIC5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSBoMi53b29jb21tZXJjZS1jb2x1bW5fX3RpdGxlLCAubmV3c19faW1hZ2VfX3dyYXBwZXIgLm5ld3NfX292ZXJsYXkgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlID4gaDIsIC53b29jb21tZXJjZS1hY2NvdW50IC5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSAud29vY29tbWVyY2UgPiBoMiwgLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19vdmVybGF5IC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBmb3JtID4gaDMsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCAubmV3c19faW1hZ2VfX3dyYXBwZXIgLm5ld3NfX292ZXJsYXkgZm9ybSA+IGgzIHtcbiAgY29sb3I6ICM5NTc2MDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBtYXJnaW46IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5uZXdzX19pbWFnZV9fd3JhcHBlciAubmV3c19fb3ZlcmxheSAudGl0bGUtLXNtYWxsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcImlibS1wbGV4LXNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjY2NjY2NjY2NjdlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLm5ld3NfX2ltYWdlX193cmFwcGVyIC5uZXdzX19pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0ODQ4NDg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvZXZlbnRzLWJhY2tncm91bmQucG5nXCIpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIHBhZGRpbmc6IDMuMTg3NWVtIDEuNTYyNWVtIDQuNjI1ZW07XG4gIH1cbn1cbi5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3M6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgyMDgsIDIwOCwgMjA4LCAwKSAzOSUsICM1OTU5NTkgODclKTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC5jb250ZW50X19pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIHBhZGRpbmc6IDMuNjg3NWVtIDMuNDM3NWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLmNvbnRlbnRfX2lubmVyIHtcbiAgICBwYWRkaW5nOiAwLjY4NzVlbSAwZW07XG4gIH1cbn1cbi5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRpdGxlLS1uZXdzIHtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS40Mzc1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRpdGxlLS1uZXdzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjcxODc1ZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnN3aXBlci1zbGlkZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi42MjVlbTtcbiAgfVxufVxuLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAudGl0bGUtLW5ld3Mtc2xpZGUge1xuICBmb250LWZhbWlseTogXCJpYm0tcGxleC1zYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4xMjVlbTtcbn1cbi5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnN3aXBlci1jb250YWluZXJfX3dyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnN3aXBlci1jb250YWluZXJfX3dyYXBwZXIge1xuICAgIHBhZGRpbmc6IDBlbSAzLjc1ZW07XG4gIH1cbn1cbi5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnN3aXBlci1jb250YWluZXIge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnN3aXBlci13cmFwcGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG4uY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC5zd2lwZXItYnV0dG9uIHtcbiAgb3BhY2l0eTogMTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAuc3dpcGVyLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAuc3dpcGVyLWJ1dHRvbi5zd2lwZXItYnV0dG9uLS1wcmV2IHtcbiAgbGVmdDogMGVtO1xufVxuLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAuc3dpcGVyLWJ1dHRvbi5zd2lwZXItYnV0dG9uLS1uZXh0IHtcbiAgcmlnaHQ6IDBlbTtcbn1cbi5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnN3aXBlci1idXR0b24gLnN2Zy1pbmxpbmUtLWZhIHtcbiAgbWFyZ2luLWJvdHRvbTogMi43ZW07XG59XG4uY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC5uZXdzX19idXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAubmV3c19fYnV0dG9uIHtcbiAgICBib3R0b206IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IC0xLjExMTExMTExMTFlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAubmV3c19fYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAubmV3c19fYnV0dG9uOjpiZWZvcmUge1xuICBib3JkZXItYm90dG9tOiAwLjExMTExMTExMTFlbSBzb2xpZCAjQkIwRDEyO1xuICBib3JkZXItcmlnaHQ6IDAuMTExMTExMTExMWVtIHNvbGlkICNCQjBEMTI7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGhlaWdodDogMC41NTU1NTU1NTU2ZW07XG4gIGxlZnQ6IDAuNTU1NTU1NTU1NmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cztcbiAgd2lkdGg6IDAuNTU1NTU1NTU1NmVtO1xufVxuLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAuYnV0dG9uW2hyZWZdOmZvY3VzOjpiZWZvcmUsIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgW2hyZWZdLnRyaWJlLWV2ZW50cy1nY2FsOmZvY3VzOjpiZWZvcmUsIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgW2hyZWZdLnRyaWJlLWV2ZW50cy1nY2FsOmZvY3VzOjpiZWZvcmUsXG4uY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIFtocmVmXS50cmliZS1ldmVudHMtaWNhbDpmb2N1czo6YmVmb3JlLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyBbaHJlZl0udHJpYmUtZXZlbnRzLWljYWw6Zm9jdXM6OmJlZm9yZSxcbi5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgW2hyZWZdLnRyaWJlLWV2ZW50cy1pY3M6Zm9jdXM6OmJlZm9yZSxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgW2hyZWZdLnRyaWJlLWV2ZW50cy1pY3M6Zm9jdXM6OmJlZm9yZSxcbi5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLmJ1dHRvbltocmVmXTpob3Zlcjo6YmVmb3JlLFxuLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBbaHJlZl0udHJpYmUtZXZlbnRzLWdjYWw6aG92ZXI6OmJlZm9yZSxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgW2hyZWZdLnRyaWJlLWV2ZW50cy1nY2FsOmhvdmVyOjpiZWZvcmUsXG4uY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIFtocmVmXS50cmliZS1ldmVudHMtaWNhbDpob3Zlcjo6YmVmb3JlLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyBbaHJlZl0udHJpYmUtZXZlbnRzLWljYWw6aG92ZXI6OmJlZm9yZSxcbi5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgW2hyZWZdLnRyaWJlLWV2ZW50cy1pY3M6aG92ZXI6OmJlZm9yZSxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgW2hyZWZdLnRyaWJlLWV2ZW50cy1pY3M6aG92ZXI6OmJlZm9yZSxcbi5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLmJ1dHRvbltocmVmXTphY3RpdmU6OmJlZm9yZSxcbi5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgW2hyZWZdLnRyaWJlLWV2ZW50cy1nY2FsOmFjdGl2ZTo6YmVmb3JlLFxuLnRyaWJlLWV2ZW50cy1jYWwtbGlua3MgLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyBbaHJlZl0udHJpYmUtZXZlbnRzLWdjYWw6YWN0aXZlOjpiZWZvcmUsXG4uY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC50cmliZS1ldmVudHMtY2FsLWxpbmtzIFtocmVmXS50cmliZS1ldmVudHMtaWNhbDphY3RpdmU6OmJlZm9yZSxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgW2hyZWZdLnRyaWJlLWV2ZW50cy1pY2FsOmFjdGl2ZTo6YmVmb3JlLFxuLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAudHJpYmUtZXZlbnRzLWNhbC1saW5rcyBbaHJlZl0udHJpYmUtZXZlbnRzLWljczphY3RpdmU6OmJlZm9yZSxcbi50cmliZS1ldmVudHMtY2FsLWxpbmtzIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgW2hyZWZdLnRyaWJlLWV2ZW50cy1pY3M6YWN0aXZlOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICNGRkZGRkY7XG59XG4uY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC50ZXh0LS1uZXdzIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNWVtO1xufVxuLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAudGV4dC0tbmV3cyAubGluaywgLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAudGV4dC0tbmV3cyAudXNlci1jb250ZW50IGFbaHJlZl49XCJ0ZWw6XCJdOm5vdCgubGluayksIC51c2VyLWNvbnRlbnQgLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAudGV4dC0tbmV3cyBhW2hyZWZePVwidGVsOlwiXTpub3QoLmxpbmspLCAuY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC50ZXh0LS1uZXdzIC50cmliZS1ldmVudHMtY29udGVudCBhLCAudHJpYmUtZXZlbnRzLWNvbnRlbnQgLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAudGV4dC0tbmV3cyBhLCAuY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC50ZXh0LS1uZXdzIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiBhLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LW5hdmlnYXRpb24gLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAudGV4dC0tbmV3cyBhLCAuY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC50ZXh0LS1uZXdzIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBhLCAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAudGV4dC0tbmV3cyBhLCAuY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC50ZXh0LS1uZXdzIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhIGEsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRleHQtLW5ld3MgYSwgLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAudGV4dC0tbmV3cyAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zLCAud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRleHQtLW5ld3MgLnJlc2V0X3ZhcmlhdGlvbnMsIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRleHQtLW5ld3MgLndvb2NvbW1lcmNlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIGEsIC53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSAuY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC50ZXh0LS1uZXdzIGEsIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRleHQtLW5ld3MgLndvb2NvbW1lcmNlIGEuYWRkZWRfdG9fY2FydCwgLndvb2NvbW1lcmNlIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRleHQtLW5ld3MgYS5hZGRlZF90b19jYXJ0LCAuY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC50ZXh0LS1uZXdzIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcgLndvb2NvbW1lcmNlLXJldmlldy1saW5rLCAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRleHQtLW5ld3MgLndvb2NvbW1lcmNlLXJldmlldy1saW5rLCAuY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC50ZXh0LS1uZXdzIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIGEsIC53b29jb21tZXJjZSB0YWJsZS5zaG9wX3RhYmxlIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRleHQtLW5ld3MgYSwgLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAudGV4dC0tbmV3cyAud29vY29tbWVyY2UtZXJyb3IgYSwgLndvb2NvbW1lcmNlLWVycm9yIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRleHQtLW5ld3MgYSxcbi5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRleHQtLW5ld3MgLndvb2NvbW1lcmNlLWluZm8gYSxcbi53b29jb21tZXJjZS1pbmZvIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRleHQtLW5ld3MgYSxcbi5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRleHQtLW5ld3MgLndvb2NvbW1lcmNlLW1lc3NhZ2UgYSxcbi53b29jb21tZXJjZS1tZXNzYWdlIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRleHQtLW5ld3MgYSwgLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAudGV4dC0tbmV3cyAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCBhLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCAuY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC50ZXh0LS1uZXdzIGEsXG4uY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC50ZXh0LS1uZXdzIC53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIGEsXG4ud29vY29tbWVyY2UgZm9ybS5yZWdpc3RlciBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCAuY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1uZXdzIC50ZXh0LS1uZXdzIGEsIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3MgLnRleHQtLW5ld3MgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgYSwgLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQgLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0tbmV3cyAudGV4dC0tbmV3cyBhIHtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBMYXlvdXRcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFBhZ2VcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbjpyb290IHtcbiAgYWNjZW50LWNvbG9yOiAjOTU3NjAwO1xufVxuXG5odG1sLFxuYm9keSB7XG4gIGJhY2tncm91bmQ6ICNFMEUwRTA7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucGFnZV9fY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZDogI0UwRTBFMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG92ZXJmbG93OiBjbGlwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnBhZ2VfX2NvbnRhaW5lciAjY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMCBhdXRvO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLnBhZ2VfX2NvbnRhaW5lciAuY29udGVudC1ibG9jayB7XG4gIGZsZXg6IDEgMCBhdXRvO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBBbGVydFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmFsZXJ0LWJsb2NrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmFsZXJ0LWJsb2NrIHtcbiAgYmFja2dyb3VuZDogI0M2MjgyODtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMS41NjI1cmVtO1xufVxuLmFsZXJ0LWJsb2NrLmlzLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYWxlcnRfX2lubmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogODkuNjg3NXJlbTtcbn1cblxuLmFsZXJ0X19idXR0b24ge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGNvbG9yOiAjQzYyODI4O1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgaGVpZ2h0OiAyZW07XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMmVtO1xufVxuXG4uYWxlcnRfX3VzZXItY29udGVudCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBIZWFkZXJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5oZWFkZXItYmxvY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhlYWRlcl9faW5uZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiA5Mi44MTI1cmVtO1xuICBwYWRkaW5nOiAxLjk1MzEyNXJlbSAxLjU2MjVyZW07XG59XG5cbi5oZWFkZXJfX2xvd2VyLS1pbnRlcm5hbCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2Jhbm5lci1pbnRlcm5hbC5qcGdcIik7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cbi5oZWFkZXJfX2xvd2VyLS1pbnRlcm5hbDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbn1cbi5oZWFkZXJfX2xvd2VyLS1pbnRlcm5hbCAuaGVhZGVyX19pbm5lciB7XG4gIHotaW5kZXg6IDM7XG59XG5cbi5oZWFkZXJfX2xvd2VyOm5vdCguaGVhZGVyX19sb3dlci0taW50ZXJuYWwpIHtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAxMDAlO1xufVxuLmhlYWRlcl9fbG93ZXIgLmhlYWRlcl9faW5uZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMmVtO1xuICBwYWRkaW5nLXRvcDogMi44MTI1ZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5oZWFkZXJfX2xvd2VyIC5oZWFkZXJfX2lubmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMi44MTI1ZW07XG4gICAgcGFkZGluZy10b3A6IDIuNWVtO1xuICB9XG59XG5cbi5oZWFkZXJfX2xvZ28ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiA1LjYyNWVtO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuaGVhZGVyX19sb2dvIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG4ubG9nby0tbW9iaWxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IC0wLjM3NWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG4ubG9nby0tbW9iaWxlIC5sb2dvX19pbWFnZSB7XG4gIGxlZnQ6IDUwJTtcbiAgbWF4LXdpZHRoOiA0Ljg3NWVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmhlYWRlcl9fbG9nby0tdGV4dCxcbi5oZWFkZXJfX2xvZ28tLWRpdmlkZXIge1xuICBtYXgtd2lkdGg6IDQ1LjYyNWVtO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA4OS45Mzc1ZW0pIHtcbiAgLmhlYWRlcl9fbG9nby0tdGV4dCxcbi5oZWFkZXJfX2xvZ28tLWRpdmlkZXIge1xuICAgIG1heC13aWR0aDogMzcuNWVtO1xuICB9XG59XG5cbi5oZWFkZXJfX3NlYXJjaC1mb3JtIHtcbiAgcGFkZGluZzogMGVtIDEuNTYyNWVtO1xufVxuLmhlYWRlcl9fc2VhcmNoLWZvcm0gLnNlYXJjaC1mb3JtX19pbnB1dCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjE2LCAyMTYsIDIxNiwgMC4xKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwLjQzNzVlbTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uaGVhZGVyX19zZWFyY2gtZm9ybSAuc2VhcmNoLWZvcm1fX2J1dHRvbiB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICByaWdodDogMS41NjI1ZW07XG59XG5cbi5oZWFkZXJfX3NlYXJjaC1mb3JtX19jb250YWluZXIuaXMtYWN0aXZlIHtcbiAgei1pbmRleDogOTk5OTtcbn1cbi5oZWFkZXJfX3NlYXJjaC1mb3JtX19jb250YWluZXIuaXMtYWN0aXZlOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbn1cbi5oZWFkZXJfX3NlYXJjaC1mb3JtX19jb250YWluZXIuaXMtYWN0aXZlIC5zZWFyY2gtZm9ybV9faW5wdXQge1xuICB6LWluZGV4OiA5OTk5OTk7XG59XG5cbi5zZWFyY2gtZm9ybV9fY29udGFpbmVyLS1leHBhbmRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0JCMEQxMjtcbn1cblxuLnNlYXJjaC1hY3RpdmUge1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG59XG5cbi5oZWFkZXJfX3VwcGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvaGVhZGVyLXRleHR1cmUucG5nXCIpO1xuICBib3JkZXItYm90dG9tOiAzcHggc29saWQgIzk1NzYwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmhlYWRlcl9fdXBwZXIgLmhlYWRlcl9faW5uZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMC42MjVlbTtcbiAgcGFkZGluZy10b3A6IDAuNjI1ZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5oZWFkZXJfX3VwcGVyIC5oZWFkZXJfX2lubmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1ZW07XG4gICAgcGFkZGluZy10b3A6IDAuOTM3NWVtO1xuICB9XG59XG5cbi5oZWFkZXJfX3RpdGxlLnRpdGxlLS1oMyB7XG4gIGZvbnQtc2l6ZTogMS41NjI1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMyZW07XG59XG4uaGVhZGVyX190aXRsZS50aXRsZS0taDQge1xuICBmb250LXNpemU6IDEuMTI1ZW07XG59XG4uaGVhZGVyX190aXRsZSAubGluaywgLmhlYWRlcl9fdGl0bGUgLnVzZXItY29udGVudCBhW2hyZWZePVwidGVsOlwiXTpub3QoLmxpbmspLCAudXNlci1jb250ZW50IC5oZWFkZXJfX3RpdGxlIGFbaHJlZl49XCJ0ZWw6XCJdOm5vdCgubGluayksIC5oZWFkZXJfX3RpdGxlIC50cmliZS1ldmVudHMtY29udGVudCBhLCAudHJpYmUtZXZlbnRzLWNvbnRlbnQgLmhlYWRlcl9fdGl0bGUgYSwgLmhlYWRlcl9fdGl0bGUgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1uYXZpZ2F0aW9uIGEsIC53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiAuaGVhZGVyX190aXRsZSBhLCAuaGVhZGVyX190aXRsZSAud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UtTXlBY2NvdW50LWNvbnRlbnQgYSwgLndvb2NvbW1lcmNlLWFjY291bnQgLndvb2NvbW1lcmNlLU15QWNjb3VudC1jb250ZW50IC5oZWFkZXJfX3RpdGxlIGEsIC5oZWFkZXJfX3RpdGxlIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhIGEsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSBkaXYucHJvZHVjdF9tZXRhIC5oZWFkZXJfX3RpdGxlIGEsIC5oZWFkZXJfX3RpdGxlIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnMsIC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLmhlYWRlcl9fdGl0bGUgLnJlc2V0X3ZhcmlhdGlvbnMsIC5oZWFkZXJfX3RpdGxlIC53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB1bCBsaSBhLCAud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgLmhlYWRlcl9fdGl0bGUgYSwgLmhlYWRlcl9fdGl0bGUgLndvb2NvbW1lcmNlIGEuYWRkZWRfdG9fY2FydCwgLndvb2NvbW1lcmNlIC5oZWFkZXJfX3RpdGxlIGEuYWRkZWRfdG9fY2FydCwgLmhlYWRlcl9fdGl0bGUgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1wcm9kdWN0LXJhdGluZyAud29vY29tbWVyY2UtcmV2aWV3LWxpbmssIC53b29jb21tZXJjZSAud29vY29tbWVyY2UtcHJvZHVjdC1yYXRpbmcgLmhlYWRlcl9fdGl0bGUgLndvb2NvbW1lcmNlLXJldmlldy1saW5rLCAuaGVhZGVyX190aXRsZSAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSBhLCAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSAuaGVhZGVyX190aXRsZSBhLCAuaGVhZGVyX190aXRsZSAud29vY29tbWVyY2UtZXJyb3IgYSwgLndvb2NvbW1lcmNlLWVycm9yIC5oZWFkZXJfX3RpdGxlIGEsXG4uaGVhZGVyX190aXRsZSAud29vY29tbWVyY2UtaW5mbyBhLFxuLndvb2NvbW1lcmNlLWluZm8gLmhlYWRlcl9fdGl0bGUgYSxcbi5oZWFkZXJfX3RpdGxlIC53b29jb21tZXJjZS1tZXNzYWdlIGEsXG4ud29vY29tbWVyY2UtbWVzc2FnZSAuaGVhZGVyX190aXRsZSBhLCAuaGVhZGVyX190aXRsZSAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCBhLCAud29vY29tbWVyY2UgZm9ybS5sb2dpbiBwLndvb2NvbW1lcmNlLUxvc3RQYXNzd29yZCAuaGVhZGVyX190aXRsZSBhLFxuLmhlYWRlcl9fdGl0bGUgLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIgcC53b29jb21tZXJjZS1Mb3N0UGFzc3dvcmQgYSxcbi53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIC5oZWFkZXJfX3RpdGxlIGEsIC5oZWFkZXJfX3RpdGxlIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IGEsIC53b29jb21tZXJjZS1wcml2YWN5LXBvbGljeS10ZXh0IC5oZWFkZXJfX3RpdGxlIGEge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTmF2aWdhdGlvblxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLm5hdmlnYXRpb24tYmxvY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDQ7XG59XG5cbi5uYXZpZ2F0aW9uX19pbm5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDg5LjY4NzVyZW07XG4gIG1heC13aWR0aDogY2FsYyg4OS42ODc1cmVtICsgMS42ZW0pO1xufVxuXG4ubmF2aWdhdGlvbl9fZmlndXJlIHtcbiAgbWFyZ2luOiAwZW0gMGVtIDAuNWVtO1xufVxuXG4ubmF2aWdhdGlvbl9faW1hZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIGZseW91dCB2YXJpYW50ICovXG4ubmF2aWdhdGlvbi1ibG9jay0tZmx5b3V0IHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm90dG9tOiA5OTllbTtcbiAgbGVmdDogLTk5OWVtO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogLTk5OWVtO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMHMgMC4yNXMsIGxlZnQgMHMgMC4yNXMsIHRvcCAwcyAwLjI1cywgdmlzaWJpbGl0eSAwcyAwLjI1cztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWR0aDogMTAwdnc7XG4gIHotaW5kZXg6IDEwMDAwMTtcbn1cbi5uYXZpZ2F0aW9uLWJsb2NrLS1mbHlvdXQgLm5hdmlnYXRpb25fX2Nsb3NlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAyZW07XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIHBhZGRpbmc6IDAuNjI1ZW0gMC43ODEyNWVtO1xuICB3aWR0aDogMTAwJTtcbn1cbi5uYXZpZ2F0aW9uLWJsb2NrLS1mbHlvdXQgLm5hdmlnYXRpb25fX2Nsb3NlX19idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5uYXZpZ2F0aW9uLWJsb2NrLS1mbHlvdXQgLm5hdmlnYXRpb25fX2lubmVyIHtcbiAgYmFja2dyb3VuZDogI0JCMEQxMjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBlbSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cztcbiAgd2lkdGg6IDIwZW07XG4gIHotaW5kZXg6IDI7XG59XG4ubmF2aWdhdGlvbi1ibG9jay0tZmx5b3V0IC5uYXZpZ2F0aW9uX19vdmVybGF5IHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgYm9yZGVyOiAwO1xuICBjb250ZW50OiBcIlwiO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IC05OTllbTtcbiAgbWFyZ2luOiAwO1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OWVtO1xuICB0cmFuc2l0aW9uOiBsZWZ0IDBzIDAuMjVzLCB0b3AgMHMgMC4xNXMsIG9wYWNpdHkgMC4yNXMsIHZpc2liaWxpdHkgMHMgMC4yNXM7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG59XG4ubWVudS1hY3RpdmUgLm5hdmlnYXRpb24tYmxvY2stLWZseW91dCB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB0cmFuc2l0aW9uOiBub25lO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLm1lbnUtYWN0aXZlIC5uYXZpZ2F0aW9uLWJsb2NrLS1mbHlvdXQgLm5hdmlnYXRpb25fX2lubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xufVxuLm1lbnUtYWN0aXZlIC5uYXZpZ2F0aW9uLWJsb2NrLS1mbHlvdXQgLm5hdmlnYXRpb25fX292ZXJsYXkge1xuICBsZWZ0OiAwO1xuICBvcGFjaXR5OiAxO1xuICB0b3A6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXM7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4ubmF2aWdhdGlvbi1ibG9jay0tZmx5b3V0IC5tZW51LWxpc3QtLW5hdmlnYXRpb24ge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG4ubmF2aWdhdGlvbi1ibG9jay0tZmx5b3V0IC5tZW51LWl0ZW0ge1xuICBjb2xvcjogI0ZGQ0EwMDtcbn1cbi5uYXZpZ2F0aW9uLWJsb2NrLS1mbHlvdXQgLm1lbnUtbGlzdF9fbGluayB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIHBhZGRpbmc6IDAuNDE2NjY2NjY2N2VtIDAuNWVtIDAuNTgzMzMzMzMzM2VtO1xufVxuLm5hdmlnYXRpb24tYmxvY2stLWZseW91dCAubWVudS1saXN0X190b2dnbGUge1xuICBwYWRkaW5nLXJpZ2h0OiAyLjM0Mzc1ZW07XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEhlcm9cblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5oZXJvLWJsb2NrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzO1xufVxuLmhlcm8tYmxvY2sge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaGVyby1ibG9jayAuc3dpcGVyLXdyYXBwZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgMC44MykgNDElLCByZ2JhKDAsIDAsIDAsIDAuMzIpIDU0JSwgcmdiYSgwLCAwLCAwLCAwLjM3KSA3MCUsIHJnYmEoMCwgMCwgMCwgMC44MykgODAlKTtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDk5O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlcm8tYmxvY2sgLnN3aXBlci13cmFwcGVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDBkZWcsIHJnYmEoMCwgMCwgMCwgMC4xNSkgNTUlLCByZ2JhKDAsIDAsIDAsIDAuODMpIDg2JSk7XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ29udGVudFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLmNvbnRlbnQtYmxvY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG4uY29udGVudC1ibG9jayB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIHBhZGRpbmc6IDMuMTI1cmVtIDEuNTYyNXJlbTtcbn1cblxuLmNvbnRlbnRfX2lubmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogODkuNjg3NXJlbTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbnRlbnRfX3JvdyAuY29sLWNvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYuNWVtO1xuICB9XG59XG5cbi5jb250ZW50X19zaWRlYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0JCMEQxMjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KC04OGRlZywgI0VEMUYyNSAzJSwgI0JCMEQxMiA4NCUpO1xuICBwYWRkaW5nOiAyZW0gMy4zNzVlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLmNvbnRlbnRfX3NpZGViYXIge1xuICAgIG1hcmdpbjogNmVtIC0xLjU2MjVlbSAtMy4xMjVlbTtcbiAgfVxufVxuLmNvbnRlbnRfX3NpZGViYXIgLm1lbnUtbGlzdF9fbGluayB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIGNvbG9yOiAjRkZDQTAwO1xuICBmb250LWZhbWlseTogXCJicm90aGVyc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBwYWRkaW5nOiAwZW0gMGVtIDAuNTgzMzMzMzMzM2VtO1xufVxuLmNvbnRlbnRfX3NpZGViYXIgLm1lbnUtbGlzdF9fbGluazpob3Zlcixcbi5jb250ZW50X19zaWRlYmFyIC5tZW51LWxpc3RfX2xpbms6Zm9jdXMge1xuICBjb2xvcjogI2ZmY2YxYTtcbn1cbi5jb250ZW50X19zaWRlYmFyIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2xpbmsge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBzdmctbG9hZChcIi4uL21lZGlhL3ZlbmRvci9mYXMtYW5nbGUtcmlnaHQuc3ZnXCIsIGZpbGw9I0Y3M0I0MSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuICBib3JkZXItYm90dG9tOiAwLjA2MjVlbSBzb2xpZCAjRUQxRjI1O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1mYW1pbHk6IFwiaWJtLXBsZXgtc2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuODg4ODg4ODg4OWVtO1xuICBwYWRkaW5nOiAwLjU2MjVlbSAwZW0gMC41NjI1ZW0gMWVtO1xufVxuLmNvbnRlbnRfX3NpZGViYXIgLm1lbnUtbGlzdC0tY2hpbGQgLm1lbnUtbGlzdF9fbGluazpob3Zlcixcbi5jb250ZW50X19zaWRlYmFyIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2xpbms6Zm9jdXMge1xuICBjb2xvcjogI0ZGQ0EwMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb250ZW50X19zaWRlYmFyIHtcbiAgICBwYWRkaW5nOiAyZW0gMS41ZW07XG4gIH1cbn1cblxuLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0taG9tZSB7XG4gIHBhZGRpbmctYm90dG9tOiA2LjI1ZW07XG4gIHBhZGRpbmctdG9wOiA4LjI1ZW07XG59XG4uY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1ob21lIC50aXRsZS0taDIge1xuICBmb250LXNpemU6IDEuODc1ZW07XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLWhvbWUge1xuICAgIHBhZGRpbmctYm90dG9tOiAzLjU2MjVlbTtcbiAgICBwYWRkaW5nLXRvcDogNC40Mzc1ZW07XG4gIH1cbiAgLmNvbnRlbnQtYmxvY2suY29udGVudC1ibG9jay0taG9tZSAudGl0bGUtLWgyIHtcbiAgICBmb250LXNpemU6IDEuNjI1ZW07XG4gIH1cbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogRm9vdGVyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uZm9vdGVyLWJsb2NrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuLmZvb3Rlci1ibG9jayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2Zvb3Rlci10ZXh0dXJlX21vYmlsZS5wbmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAxMDAlO1xuICBwYWRkaW5nOiAzLjYyNXJlbSAxLjU2MjVyZW0gMy41NjI1cmVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmZvb3Rlci1ibG9jayB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvZm9vdGVyLXRleHR1cmUucG5nXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBwYWRkaW5nOiA0LjA2MjVyZW0gMS41NjI1cmVtIDByZW07XG4gIH1cbn1cbi5mb290ZXItYmxvY2sgLmhhbmRvcmdlbCB7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi5mb290ZXItYmxvY2sgLmhhbmRvcmdlbF9fY29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFRDFGMjU7XG59XG4uZm9vdGVyLWJsb2NrIC5oYW5kb3JnZWxfX2NvbnRlbnQtLW9wZW5lZCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNTYyNWVtO1xufVxuLmZvb3Rlci1ibG9jayAubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3QtLWNoaWxkOjphZnRlcixcbi5mb290ZXItYmxvY2sgLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiAubWVudS1saXN0LS1jaGlsZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5mb290ZXItYmxvY2sgLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuZm9vdGVyLWJsb2NrIC5tZW51LWxpc3QtLW5hdmlnYXRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uZm9vdGVyLWJsb2NrIC5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdC0tY2hpbGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUQxRjI1O1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi5mb290ZXItYmxvY2sgLm1lbnUtbGlzdC0tY2hpbGQgLm1lbnUtbGlzdF9fbGluayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4uZm9vdGVyLWJsb2NrIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2xpbms6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiLVwiO1xuICBtYXJnaW4tcmlnaHQ6IDAuMzMzMzMzMzMzM2VtO1xufVxuLmZvb3Rlci1ibG9jayAuZm9vdGVyX19uYXYtYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uZm9vdGVyLWJsb2NrIC5tZW51LWxpc3RfX2l0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiBhdXRvO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuZm9vdGVyLWJsb2NrIC5mb290ZXJfX3NpdGVtYXAtLW1vYmlsZSB7XG4gICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG59XG4uZm9vdGVyLWJsb2NrIC5tZW51LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxIDEgMCU7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5mb290ZXItYmxvY2sgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICBmbGV4OiAwIDEgMTYuMDcxNDI4NTcxNGVtO1xufVxuLmZvb3Rlci1ibG9jayAubWVudS1saXN0X19saW5rIHtcbiAgZmxleDogMSAxIGF1dG87XG59XG5cbi5mb290ZXJfX2lubmVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogODkuNjg3NXJlbTtcbn1cblxuLmZvb3Rlcl9fbG93ZXIge1xuICBiYWNrZ3JvdW5kOiAjQkIwRDEyO1xuICBwYWRkaW5nOiAyZW0gMS43NWVtO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3Rlcl9fbG93ZXIge1xuICAgIHBhZGRpbmc6IDEuMzc1ZW0gMy40Mzc1ZW0gMC42ODc1ZW07XG4gIH1cbn1cblxuLmZvb3Rlcl9fZGl2aWRlciB7XG4gIGJhY2tncm91bmQ6ICNFRDFGMjU7XG4gIGhlaWdodDogMC4xODc1ZW07XG4gIG1hcmdpbjogMC45Mzc1ZW0gMGVtO1xufVxuXG4uZm9vdGVyX190aXRsZS50aXRsZS0taDMge1xuICBmb250LXNpemU6IDEuNTYyNWVtO1xufVxuLmZvb3Rlcl9fdGl0bGUudGl0bGUtLWg0IHtcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuZm9vdGVyX190aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5mb290ZXJfX3RleHQudGV4dC0tc21hbGwge1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNTcxNDI4NTcxNGVtO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuZm9vdGVyX190ZXh0LnRleHQtLXNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuNzVlbTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuZm9vdGVyX190ZXh0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLmZvb3Rlcl9fbGluayB7XG4gIGNvbG9yOiAjRkZDQTAwO1xufVxuLmZvb3Rlcl9fbGluazpob3ZlciB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIE1vZHVsZVxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogTGF5b3V0XG4gIFxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogTW9kdWxlXG4gIFxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICAgKiBTd2lwZXIgKGh0dHA6Ly9pZGFuZ2Vyby51cy9zd2lwZXIvKVxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5zd2lwZXJfX3BpY3R1cmU6OmFmdGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzcuNSU7XG4gIH1cbiAgLnN3aXBlci1jb250YWluZXItLWhlaWdodC1maXhlZCAuc3dpcGVyX19waWN0dXJlOjphZnRlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDI0ZW07XG4gIH1cblxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIExheW91dFxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDhlbSkge1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIE1vZHVsZVxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogQ29sdW1uc1xuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC5jb2x1bW5zLS0yIHtcbiAgICBjb2x1bW5zOiAyO1xuICB9XG5cbiAgLmNvbHVtbnMtLTMge1xuICAgIGNvbHVtbnM6IDM7XG4gIH1cblxuICAuY29sdW1ucy0tNCB7XG4gICAgY29sdW1uczogNDtcbiAgfVxuXG4gIC5jb2x1bW5zLS01IHtcbiAgICBjb2x1bW5zOiA1O1xuICB9XG5cbiAgLmNvbHVtbnMtLTYge1xuICAgIGNvbHVtbnM6IDY7XG4gIH1cblxuICAuY29sdW1ucy0tNyB7XG4gICAgY29sdW1uczogNztcbiAgfVxuXG4gIC5jb2x1bW5zLS04IHtcbiAgICBjb2x1bW5zOiA4O1xuICB9XG5cbiAgLmNvbHVtbnMtLTkge1xuICAgIGNvbHVtbnM6IDk7XG4gIH1cblxuICAuY29sdW1ucy0tMTAge1xuICAgIGNvbHVtbnM6IDEwO1xuICB9XG5cbiAgLmNvbHVtbnMtLTExIHtcbiAgICBjb2x1bW5zOiAxMTtcbiAgfVxuXG4gIC5jb2x1bW5zLS0xMiB7XG4gICAgY29sdW1uczogMTI7XG4gIH1cblxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIExheW91dFxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTMuMzEyNWVtKSB7XG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogTW9kdWxlXG4gIFxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICAgKiBMYXlvdXRcbiAgXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICAgKiBNb2R1bGVcbiAgXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIExheW91dFxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG59XG5AbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIE1vZHVsZVxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogU3dpcGVyIChodHRwOi8vaWRhbmdlcm8udXMvc3dpcGVyLylcbiAgXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuICAuc3dpcGVyX19waWN0dXJlOjphZnRlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDM3LjU1MjA4MzMzMzMlO1xuICB9XG4gIC5zd2lwZXItY29udGFpbmVyLS1oZWlnaHQtZml4ZWQgLnN3aXBlcl9fcGljdHVyZTo6YWZ0ZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA0NS4wNjI1ZW07XG4gIH1cblxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIExheW91dFxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG59XG5AbWVkaWEgKG1pbi13aWR0aDogODBlbSkge1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIE1vZHVsZVxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogTGF5b3V0XG4gIFxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA4NS4zNzVlbSkge1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIE1vZHVsZVxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogTWVudSBMaXN0XG4gIFxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiAgLyogbmF2aWdhdGlvbiB2YXJpYW50ICovXG4gIC5tZW51LWxpc3QtLW5hdmlnYXRpb24ge1xuICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjIyMjIyMjIyMjJlbTtcbiAgfVxuICAubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3RfX2xpbmssXG4ubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3RfX3RvZ2dsZSB7XG4gICAgcGFkZGluZzogMC4zODg4ODg4ODg5ZW0gMS4xMTExMTExMTExZW0gMC41ZW07XG4gIH1cblxuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIExheW91dFxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTBlbSkge1xuICAvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gICAqIE1vZHVsZVxuICBcXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4gIC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAgICogTGF5b3V0XG4gIFxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbn0iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEhlbHBlcnNcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gaW1wb3J0c1xuXG5AaW1wb3J0IFwiX21peGluc1wiO1xuQGltcG9ydCBcIl9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJfdmFyaWFibGVzXCI7XG5cbi8vIGdlbmVyaWMgaGVscGVyc1xuXG4uX19kYXJrIHtcbiAgICBjb2xvcjogY29sb3IoXCJkYXJrXCIpICFpbXBvcnRhbnQ7XG59XG5cbi5fX2xpZ2h0IHtcbiAgICBjb2xvcjogY29sb3IoXCJsaWdodFwiKSAhaW1wb3J0YW50O1xufVxuXG4uX19pbmhlcml0IHtcbiAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xufVxuXG4uX19iaWcge1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtICFpbXBvcnRhbnQ7XG59XG5cbi5fX3NtYWxsIHtcbiAgICBmb250LXNpemU6IDAuNzVlbSAhaW1wb3J0YW50O1xufVxuXG4uX19ib2xkIHtcbiAgICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG59XG5cbi5fX2l0YWxpYyB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljICFpbXBvcnRhbnQ7XG59XG5cbi5fX3VuZGVybGluZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWltcG9ydGFudDtcbn1cblxuLl9fbG93ZXJjYXNlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlICFpbXBvcnRhbnQ7XG59XG5cbi5fX3VwcGVyY2FzZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xufVxuXG4uX190ZXh0Y2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cblxuLl9fdGV4dGxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLl9fdGV4dHJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4uX19ub3dyYXAge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbn1cblxuLl9fY2VudGVyIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG4uX19sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xufVxuXG4uX19yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5fX25vbWFyZ2luIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuLl9fbm9wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5fX25vdHJhbnNmb3JtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLl9fbm90cmFuc2l0aW9uIHtcbiAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5fX2Jsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4uX19mbGV4IHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG59XG5cbi5fX2lubGluZSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG59XG5cbi5fX3Zpc3VhbGx5aGlkZGVuIHtcbiAgICBsZWZ0OiAtOTk5ZW0gIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICB0b3A6IC05OTllbSAhaW1wb3J0YW50O1xufVxuXG4uX19wcmltYXJ5IHtcbiAgICBjb2xvcjogY29sb3IoXCJwcmltYXJ5XCIpICFpbXBvcnRhbnQ7XG59XG5cbi5fX2FjY2VudCB7XG4gICAgY29sb3I6IGNvbG9yKFwiYWNjZW50XCIpICFpbXBvcnRhbnQ7XG59XG5cbi5fX3RlcnRpYXJ5IHtcbiAgICBjb2xvcjogY29sb3IoXCJ0ZXJ0aWFyeVwiKSAhaW1wb3J0YW50O1xufVxuXG4uX19lcnJvciB7XG4gICAgY29sb3I6IGNvbG9yKFwiZXJyb3JcIikgIWltcG9ydGFudDtcbn1cblxuLyogXCJ2aXNpYmxlXCIgY2xhc3NlcyAqL1xuXG5AZWFjaCAkbmFtZSwgJHNpemUgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaW5jbHVkZSBzbWFsbGVyLXRoYW4oJG5hbWUpIHtcbiAgICAgICAgLl9fdmlzaWJsZS0jeyRuYW1lfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIFwiaGlkZGVuXCIgY2xhc3NlcyAtLSBOT1RFOiBJdCBpcyBpbXBvcnRhbnQgdGhhdCBfX2hpZGRlbiBjbGFzc2VzIGNvbWUgYWZ0ZXIgX192aXNpYmxlIGZvciBvdmVycmlkZSBwdXJwb3NlcyAqL1xuXG5AZWFjaCAkbmFtZSwgJHNpemUgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaW5jbHVkZSBsYXJnZXItdGhhbigkbmFtZSkge1xuICAgICAgICAuX19oaWRkZW4tI3skbmFtZX0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNaXhpbnNcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4vLyBudGgtY2hpbGQ6IGh0dHBzOi8vcGF1bHVuZC5jby51ay9udGgtY2hpbGQtc2Fzcy1taXhpbnNcblxuQG1peGluIGZpcnN0LWNoaWxkKCkge1xuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIGxhc3QtY2hpbGQoKSB7XG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBldmVuKCkge1xuICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5AbWl4aW4gb2RkKCkge1xuICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBmaXJzdCgkbnVtKSB7XG4gICAgQGlmICRudW0gPT0gMSB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAZWxzZSB7XG4gICAgICAgICY6bnRoLWNoaWxkKC1uICsgI3skbnVtfSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBsYXN0KCRudW0pIHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKC1uICsgI3skbnVtfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBhZnRlcigkbnVtKSB7XG4gICAgJjpudGgtY2hpbGQobisjeyRudW0gKyAxfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBmcm9tLWVuZCgkbnVtKSB7XG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRudW19KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuQG1peGluIGJldHdlZW4oJGZpcnN0LCAkbGFzdCkge1xuICAgICY6bnRoLWNoaWxkKG4rI3skZmlyc3R9KTpudGgtY2hpbGQoLW4rI3skbGFzdH0pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG5AbWl4aW4gYWxsLWJ1dCgkbnVtKSB7XG4gICAgJjpub3QoOm50aC1jaGlsZCgjeyRudW19KSkge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbkBtaXhpbiBlYWNoKCRudW0pIHtcbiAgICAmOm50aC1jaGlsZCgjeyRudW19bikge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG59XG5cbi8vIGxheWVyc1xuXG5AbWl4aW4gbGF5ZXIoJGxheWVyLW5hbWUpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogbWFwLWdldCgkbGF5ZXJzLCAkbGF5ZXItbmFtZSk7XG59XG5cbi8vIFNjYWxlIGR5bmFtaWNhbGx5IHVudGlsIGEgZ2l2ZW4gdmlld3BvcnRcblxuQG1peGluIHZpZXdwb3J0LXNjYWxlKCRzaXplOiAxNiwgJGJhc2U6IDEwMjQsICRtaW4td2lkdGg6IDAsICRtYXgtd2lkdGg6IG51bGwpIHtcbiAgICAkbWF4LXdpZHRoOiBpZigkbWF4LXdpZHRoID09IG51bGwsICRiYXNlLCAkbWF4LXdpZHRoKTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IHJlbWlmeSgkbWluLXdpZHRoLCAxNikpIGFuZCAobWF4LXdpZHRoOiByZW1pZnkoJG1heC13aWR0aCwgMTYpKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogKCRzaXplIC8gJGJhc2UpICogMTAwdnc7XG4gICAgfVxufVxuXG4vLyBDcmVhdGUgYSBtZWRpYSBxdWVyeSByZWxhdGl2ZSB0byBhIGJyZWFrIHBvaW50IHZhcmlhYmxlXG5cbkBtaXhpbiBzbWFsbGVyLXRoYW4oJHBvaW50LW5hbWUsICRpbmNsdXNpdmU6IGZhbHNlKSB7XG4gICAgJHdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHBvaW50LW5hbWUpO1xuXG4gICAgQGlmICRpbmNsdXNpdmUgPT0gZmFsc2Uge1xuICAgICAgICAkd2lkdGg6ICR3aWR0aCAtIG1hdGguZGl2KDEsIDE2KTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHdpZHRoKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbn1cblxuLy8gQ3JlYXRlIGEgbWVkaWEgcXVlcnkgcmVsYXRpdmUgdG8gYSBicmVhayBwb2ludCB2YXJpYWJsZVxuXG5AbWl4aW4gbGFyZ2VyLXRoYW4oJHBvaW50LW5hbWUsICRpbmNsdXNpdmU6IHRydWUpIHtcbiAgICAkd2lkdGg6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkcG9pbnQtbmFtZSk7XG5cbiAgICBAaWYgJGluY2x1c2l2ZSA9PSBmYWxzZSB7XG4gICAgICAgICR3aWR0aDogJHdpZHRoICsgbWF0aC5kaXYoMSwgMTYpO1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkd2lkdGgpIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG4vLyBTY2FsZSBmb250IHNpemUgYmFzZWQgb24gVlcgdW5pdHNcblxuQG1peGluIGZvbnQtc2NhbGUoJHNpemUsICRwb2ludC1uYW1lKSB7XG4gICAgJHdpZHRoOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHBvaW50LW5hbWUpO1xuXG4gICAgZm9udC1zaXplOiBtYXRoLmRpdigkc2l6ZSwgc3RyaXAtdW5pdCgkd2lkdGggKiAxNikpICogMTAwdnc7XG59XG5cbi8vIEZ1bGwgV2lkdGggQ29udGFpbmVycyBpbiBMaW1pdGVkIFdpZHRoIFBhcmVudHNcblxuQG1peGluIGZ1bGwtYmxlZWQge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLTUwdnc7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNTB2dztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICB3aWR0aDogMTAwdnc7XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogRnVuY3Rpb25zXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qXG4gKiBSZXRyaWV2ZSBhIGNvbG9yIHZhcmlhYmxlXG4gKlxuICogQHBhcmFtICB7c3RyaW5nfSAgJGNvbG9yIC0gVGhlIG5hbWUgb2YgdGhlIGNvbG9yIGFzIGRlZmluZWQgaW4gX3ZhcmlhYmxlc1xuICogQHBhcmFtICB7c3RyaW5nfSAgJHRvbmUgIC0gVGhlIHZhcmlhbnQgb2YgdGhlIGNvbG9yIChzaGFkZXxiYXNlfHRpbnQpXG4gKi9cbkBmdW5jdGlvbiBjb2xvcigkY29sb3IsICR0b25lOiBiYXNlKSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KG1hcC1nZXQoJGNvbG9ycywgJGNvbG9yKSwgJHRvbmUpO1xufVxuXG4vKlxuICogUmVtb3ZlIHRoZSB1bml0IG9mIGEgbGVuZ3RoXG4gKlxuICogQHBhcmFtICB7TnVtYmVyfSAgJG51bWJlclxuICovXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtYmVyKSB7XG4gICAgQHJldHVybiBpZih0eXBlLW9mKCRudW1iZXIpID09IFwibnVtYmVyXCIgYW5kIG5vdCB1bml0bGVzcygkbnVtYmVyKSwgbWF0aC5kaXYoJG51bWJlciwgKCRudW1iZXIgKiAwICsgMSkpLCAkbnVtYmVyKTtcbn1cblxuLypcbiAqIENvbnZlcnQgUFggdW5pdHMgaW4gdG8gRU0gb3IgUkVNLCByZWxhdGl2ZSB0byBhIHNwZWNpZmllZCBiYXNlIHNpemVzXG4gKlxuICogQHBhcmFtICB7TnVtYmVyfSAgJHNpemUgLSBBcnJheSBvZiB1cCB0byBmb3VyIHNpemVzIGluIFBYIHVuaXRzXG4gKiBAcGFyYW0gIHtOdW1iZXJ9ICAkYmFzZSAtIEZvbnQgc2l6ZSB0byBiYXNlIGNhbGN1bGF0aW9ucyBvZmYgb2ZcbiAqIEBwYXJhbSAge1N0cmluZ30gICR1bml0IC0gRWl0aGVyIFwiZW1cIiBvciBcInJlbVwiXG4gKi9cbkBmdW5jdGlvbiByZW1pZnkoJHNpemVzOiAoJHNpemUxLCAkc2l6ZTIsICRzaXplMywgJHNpemU0KSwgJGJhc2U6IG51bGwsICR1bml0OiBudWxsKSB7XG4gICAgJHVuaXQ6IGlmKCR1bml0ID09IG51bGwsIGlmKCRiYXNlID09IG51bGwsIHJlbSwgZW0pLCAkdW5pdCk7XG4gICAgJGJhc2U6IGlmKCRiYXNlID09IG51bGwsIDE2LCBzdHJpcC11bml0KCRiYXNlKSk7XG4gICAgJG91dHB1dDogXCJcIjtcblxuICAgIEBlYWNoICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICRzaXplOiBzdHJpcC11bml0KCRzaXplKTtcblxuICAgICAgICBAaWYgdHlwZS1vZigkc2l6ZSkgPT0gXCJudW1iZXJcIiB7XG4gICAgICAgICAgICAvLyBhZGQgYXMgc3BhY2UgaWYgJG91dHB1dCBhbHJlYWR5IGhhcyBhIHZhbHVlXG4gICAgICAgICAgICAkb3V0cHV0OiBpZigkb3V0cHV0ID09IFwiXCIsIFwiXCIsICRvdXRwdXQgKyBcIiBcIik7XG4gICAgICAgICAgICAvLyBjYWxjdWxhdGUsIGFwcGVuZCB2YWx1ZSB0byAkb3V0cHV0XG4gICAgICAgICAgICAkb3V0cHV0OiAkb3V0cHV0ICsgbWF0aC5kaXYoc3RyaXAtdW5pdCgkc2l6ZSksIHN0cmlwLXVuaXQoJGJhc2UpKSArICR1bml0O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgLy8gcGFzcyB0aGUgdmFsdWUgdGhyb3VnaCB1bmNoYW5nZWQgaWYgJHNpemUgaXMgbm90IGEgbnVtYmVyXG4gICAgICAgICAgICAkb3V0cHV0OiAkb3V0cHV0ICsgXCIgXCIgKyAkc2l6ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gaWYodHlwZS1vZigkb3V0cHV0KSA9PSBcInN0cmluZ1wiLCB1bnF1b3RlKCRvdXRwdXQpLCAkb3V0cHV0KTtcbn1cblxuLypcbiAqIENvbnZlcnQgUGhvdG9zaG9wIGxlYWRpbmcgdG8gQ1NTIGxpbmUtaGVpZ2h0XG4gKlxuICogQHBhcmFtICB7TnVtYmVyfSAgJHNpemUgLSBWYWx1ZSBvZiBMZWFkaW5nIGluIFBob3Rvc2hvcCdzIENoYXJhY3RlciBQYW5lbFxuICogQHBhcmFtICB7TnVtYmVyfSAgJGJhc2UgLSBWYWx1ZSBvZiBGb250IFNpemUgaW4gUGhvdG9zaG9wJ3MgQ2hhcmFjdGVyIFBhbmVsXG4gKi9cbkBmdW5jdGlvbiBsZWFkaW5nKCRzaXplLCAkYmFzZTogbnVsbCkge1xuICAgICRiYXNlOiBpZigkYmFzZSA9PSBudWxsLCAxNiwgc3RyaXAtdW5pdCgkYmFzZSkpO1xuICAgICRvdXRwdXQ6ICRiYXNlICsgKHN0cmlwLXVuaXQoJHNpemUpIC8gMik7XG5cbiAgICBAcmV0dXJuICRvdXRwdXQ7XG59XG5cbi8qXG4gKiBDb252ZXJ0IFBob3Rvc2hvcCB0cmFja2luZyB0byBDU1MgbGV0dGVyLXNwYWNpbmdcbiAqXG4gKiBAcGFyYW0gIHtOdW1iZXJ9ICAkc2l6ZSAtIFZhbHVlIG9mIFRyYWNraW5nIGluIFBob3Rvc2hvcCdzIENoYXJhY3RlciBQYW5lbFxuICogQHBhcmFtICB7TnVtYmVyfSAgJGJhc2UgLSBWYWx1ZSBvZiBGb250IFNpemUgaW4gUGhvdG9zaG9wJ3MgQ2hhcmFjdGVyIFBhbmVsXG4gKi9cbkBmdW5jdGlvbiB0cmFja2luZygkc2l6ZSwgJGJhc2U6IG51bGwpIHtcbiAgICAkYmFzZTogaWYoJGJhc2UgPT0gbnVsbCwgMTYsIHN0cmlwLXVuaXQoJGJhc2UpKTtcbiAgICAkb3V0cHV0OiAoJHNpemUgLyAxMDAwKSAqIHN0cmlwLXVuaXQoJGJhc2UpO1xuXG4gICAgQHJldHVybiAkb3V0cHV0O1xufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG5AdXNlIFwic2FzczptYXRoXCI7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIENvbG9yc1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4kY29sb3JzOiAoXG4gICAgXCJwcmltYXJ5XCI6IChcbiAgICAgICAgdGludDogI0VEMUYyNSxcbiAgICAgICAgYmFzZTogICNCQjBEMTIsXG4gICAgICAgIHNoYWRlOiBkYXJrZW4oI0JCMEQxMiwgNSUpLFxuICAgICksXG4gICAgXCJzZWNvbmRhcnlcIjogKFxuICAgICAgICB0aW50OiAgI0ZGQ0EwMCxcbiAgICAgICAgYmFzZTogICM5NTc2MDAsXG4gICAgICAgIHNoYWRlOiBkYXJrZW4oIzk1NzYwMCwgNSUpLFxuICAgICksXG4gICAgXCJ0ZXJ0aWFyeVwiOiAoXG4gICAgICAgIHRpbnQ6ICBsaWdodGVuKCNFRDFGMjUsIDUlKSxcbiAgICAgICAgYmFzZTogICNFRDFGMjUsXG4gICAgICAgIHNoYWRlOiBkYXJrZW4oI0VEMUYyNSwgNSUpLFxuICAgICksXG4gICAgXCJxdWF0ZXJuYXJ5XCI6IChcbiAgICAgICAgdGludDogIGxpZ2h0ZW4oI0ZGRDUzNiwgNSUpLFxuICAgICAgICBiYXNlOiAgI0ZGRDUzNixcbiAgICAgICAgc2hhZGU6IGRhcmtlbigjRkZENTM2LCA1JSksXG4gICAgKSxcbiAgICBcInF1aW5hcnlcIjogKFxuICAgICAgICB0aW50OiAgI0Y3M0I0MSxcbiAgICAgICAgYmFzZTogICNGNzNCNDEsXG4gICAgICAgIHNoYWRlOiAjRjczQjQxLFxuICAgICksXG4gICAgXCJzZW5hcnlcIjogKFxuICAgICAgICB0aW50OiAgI0ZGQzI0NixcbiAgICAgICAgYmFzZTogICNGRjkxMDAsXG4gICAgICAgIHNoYWRlOiAjQzU2MjAwLFxuICAgICksXG4gICAgXCJhY2NlbnRcIjogKFxuICAgICAgICB0aW50OiAjRkZDQTAwLFxuICAgICAgICBiYXNlOiAjOTU3NjAwLFxuICAgICAgICBzaGFkZTogZGFya2VuKCM5NTc2MDAsIDUlKSxcbiAgICApLFxuICAgIFwiZXJyb3JcIjogKFxuICAgICAgICB0aW50OiAgI0ZGNUY1MixcbiAgICAgICAgYmFzZTogICNDNjI4MjgsXG4gICAgICAgIHNoYWRlOiAjOEUwMDAwLFxuICAgICksXG4gICAgXCJzdWNjZXNzXCI6IChcbiAgICAgICAgdGludDogICM1MkZGQTIsXG4gICAgICAgIGJhc2U6ICAjMjhDNjY1LFxuICAgICAgICBzaGFkZTogIzAwOEUzNyxcbiAgICApLFxuICAgIFwiZm9yZWdyb3VuZFwiOiAoXG4gICAgICAgIHRpbnQ6ICAjNDg0ODQ4LFxuICAgICAgICBiYXNlOiAgIzIxMjEyMSxcbiAgICAgICAgc2hhZGU6ICMwMDAwMDAsXG4gICAgKSxcbiAgICBcImJhY2tncm91bmRcIjogKFxuICAgICAgICB0aW50OiAgI0ZGRkZGRixcbiAgICAgICAgYmFzZTogICNGRkZGRkYsXG4gICAgICAgIHNoYWRlOiAjQ0NDQ0NDLFxuICAgICksXG4gICAgXCJwYWdlLWJhY2tncm91bmRcIjogKFxuICAgICAgICB0aW50OiAgI0VFRUVFRSxcbiAgICAgICAgYmFzZTogICNFMEUwRTAsXG4gICAgICAgIHNoYWRlOiAjOTA5MDkwLFxuICAgICksXG4gICAgXCJsaWdodFwiOiAoXG4gICAgICAgIHRpbnQ6ICAjRkZGRkZGLFxuICAgICAgICBiYXNlOiAgI0ZGRkZGRixcbiAgICAgICAgc2hhZGU6ICNEOEQ4RDgsXG4gICAgKSxcbiAgICBcImRhcmtcIjogKFxuICAgICAgICB0aW50OiAgIzRBNEE0QSxcbiAgICAgICAgYmFzZTogICMwMDAwMDAsXG4gICAgICAgIHNoYWRlOiAjMDAwMDAwLFxuICAgICksXG4pO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBGb250c1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4kaGVhZGluZy1mb250OiBcImJyb3RoZXJzXCIsIHNhbnMtc2VyaWY7XG4kYm9keS1mb250OiBcImlibS1wbGV4LXNhbnNcIiwgc2Fucy1zZXJpZjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogV2lkdGhzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbiRzaXRlLXdpZHRoOiAxNDM1O1xuJGNvbHVtbi1nYXA6IDMwO1xuJGNvbnRlbnQtcGFkZGluZzogMjU7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIENvbHVtbiBDb3VudFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4kY29sdW1uLWNvdW50OiAxMjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQnJlYWsgUG9pbnRzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbiR4eHhsLWJyZWFrOiBtYXRoLmRpdigxNDQwZW0sIDE2KTtcbiR4eGwtYnJlYWs6ICBtYXRoLmRpdigxMzY2ZW0sIDE2KTtcbiR4bC1icmVhazogICBtYXRoLmRpdigxMjgwZW0sIDE2KTtcbiRsLWJyZWFrOiAgICBtYXRoLmRpdigxMDI0ZW0sIDE2KTtcbiRtLWJyZWFrOiAgICBtYXRoLmRpdig5NjBlbSwgMTYpO1xuJHMtYnJlYWs6ICAgIG1hdGguZGl2KDg1M2VtLCAxNik7XG4keHMtYnJlYWs6ICAgbWF0aC5kaXYoNzY4ZW0sIDE2KTtcbiR4eHMtYnJlYWs6ICBtYXRoLmRpdig2NDBlbSwgMTYpO1xuJHh4eHMtYnJlYWs6IG1hdGguZGl2KDQ4MGVtLCAxNik7XG5cbiRicmVha3BvaW50czogKFxuICAgIHh4eHM6ICR4eHhzLWJyZWFrLFxuICAgIHh4czogICR4eHMtYnJlYWssXG4gICAgeHM6ICAgJHhzLWJyZWFrLFxuICAgIHM6ICAgICRzLWJyZWFrLFxuICAgIG06ICAgICRtLWJyZWFrLFxuICAgIGw6ICAgICRsLWJyZWFrLFxuICAgIHhsOiAgICR4bC1icmVhayxcbiAgICB4eGw6ICAkeHhsLWJyZWFrLFxuICAgIHh4eGw6ICR4eHhsLWJyZWFrLFxuKTtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTGF5ZXJzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbiRsYXllcnM6IChcbiAgICBoZWFkZXI6IDUsXG4gICAgbmF2aWdhdGlvbjogNCxcbiAgICBoZXJvOiAzLFxuICAgIGNvbnRlbnQ6IDIsXG4gICAgZm9vdGVyOiAxLFxuKTtcbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQmFzZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AaW1wb3J0IFwiLi4vYmFzZS9ub3JtYWxpemUvbm9ybWFsaXplXCI7XG5AaW1wb3J0IFwiLi4vYmFzZS9zZWxlY3Rpb24vc2VsZWN0aW9uXCI7XG5AaW1wb3J0IFwiLi4vYmFzZS9hbGlnbi9hbGlnblwiO1xuQGltcG9ydCBcIi4uL2Jhc2UvZGl2aWRlci9kaXZpZGVyXCI7XG5AaW1wb3J0IFwiLi4vYmFzZS9ncmlkL2dyaWRcIjtcbkBpbXBvcnQgXCIuLi9iYXNlL2xpbmsvbGlua1wiO1xuQGltcG9ydCBcIi4uL2Jhc2UvYnV0dG9uL2J1dHRvblwiO1xuQGltcG9ydCBcIi4uL2Jhc2UvaW5wdXQvaW5wdXRcIjtcbkBpbXBvcnQgXCIuLi9iYXNlL3RpdGxlL3RpdGxlXCI7XG5AaW1wb3J0IFwiLi4vYmFzZS90ZXh0L3RleHRcIjtcbkBpbXBvcnQgXCIuLi9iYXNlL2Jsb2NrcXVvdGUvYmxvY2txdW90ZVwiO1xuQGltcG9ydCBcIi4uL2Jhc2UvdXNlci1jb250ZW50L3VzZXItY29udGVudFwiO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNb2R1bGVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGltcG9ydCBcIi4uL21vZHVsZS9hY2Nlc3NpYmxlLXBvZXRyeS9hY2Nlc3NpYmxlLXBvZXRyeVwiO1xuQGltcG9ydCBcIi4uL21vZHVsZS9hcnRpY2xlL2FydGljbGVcIjtcbkBpbXBvcnQgXCIuLi9tb2R1bGUvaGFuZG9yZ2VsL2hhbmRvcmdlbFwiO1xuQGltcG9ydCBcIi4uL21vZHVsZS9pZnJhbWUvaWZyYW1lXCI7XG5AaW1wb3J0IFwiLi4vbW9kdWxlL2xvZ28vbG9nb1wiO1xuQGltcG9ydCBcIi4uL21vZHVsZS9tZW51LWxpc3QvbWVudS1saXN0XCI7XG5AaW1wb3J0IFwiLi4vbW9kdWxlL25pbmphLWZvcm1zL25pbmphLWZvcm1zXCI7XG5AaW1wb3J0IFwiLi4vbW9kdWxlL3BhbmVsLXRvZ2dsZS9wYW5lbC10b2dnbGVcIjtcbkBpbXBvcnQgXCIuLi9tb2R1bGUvcGhvdG9zd2lwZS9waG90b3N3aXBlXCI7XG5AaW1wb3J0IFwiLi4vbW9kdWxlL3Bvc3QtcGFzc3dvcmQtZm9ybS9wb3N0LXBhc3N3b3JkLWZvcm1cIjtcbkBpbXBvcnQgXCIuLi9tb2R1bGUvcHdhLWluc3RhbGwtcHJvbXB0L3B3YS1pbnN0YWxsLXByb21wdFwiO1xuQGltcG9ydCBcIi4uL21vZHVsZS9zY3JvbGwtaGludC9zY3JvbGwtaGludFwiO1xuQGltcG9ydCBcIi4uL21vZHVsZS9zZWFyY2gtZm9ybS9zZWFyY2gtZm9ybVwiO1xuQGltcG9ydCBcIi4uL21vZHVsZS9za2lwLWxpbmtzL3NraXAtbGlua3NcIjtcbkBpbXBvcnQgXCIuLi9tb2R1bGUvc3dpcGVyL3N3aXBlclwiO1xuQGltcG9ydCBcIi4uL21vZHVsZS90cmliZS1ldmVudHMvdHJpYmUtZXZlbnRzXCI7XG5AaW1wb3J0IFwiLi4vbW9kdWxlL3dvb2NvbW1lcmNlL3dvb2NvbW1lcmNlXCI7XG5AaW1wb3J0IFwiLi4vbW9kdWxlL3dwLWNhcHRpb24vd3AtY2FwdGlvblwiO1xuQGltcG9ydCBcIi4uL21vZHVsZS93cC1nYWxsZXJ5L3dwLWdhbGxlcnlcIjtcbkBpbXBvcnQgXCIuLi9tb2R1bGUvbG9jYXRpb24vbG9jYXRpb25cIjtcbkBpbXBvcnQgXCIuLi9tb2R1bGUvb3ZlcmxheS9vdmVybGF5XCI7XG5AaW1wb3J0IFwiLi4vbW9kdWxlL25ld3MvbmV3c1wiO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBMYXlvdXRcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGltcG9ydCBcIi4uL2xheW91dC9wYWdlL3BhZ2VcIjtcbkBpbXBvcnQgXCIuLi9sYXlvdXQvYWxlcnQvYWxlcnRcIjtcbkBpbXBvcnQgXCIuLi9sYXlvdXQvaGVhZGVyL2hlYWRlclwiO1xuQGltcG9ydCBcIi4uL2xheW91dC9uYXZpZ2F0aW9uL25hdmlnYXRpb25cIjtcbkBpbXBvcnQgXCIuLi9sYXlvdXQvaGVyby9oZXJvXCI7XG5AaW1wb3J0IFwiLi4vbGF5b3V0L2NvbnRlbnQvY29udGVudFwiO1xuQGltcG9ydCBcIi4uL2xheW91dC9mb290ZXIvZm9vdGVyXCI7XG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjEgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuICovXG5cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyogU2VjdGlvbnNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cblxubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogMSAqL1xuICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqL1xuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gKi9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDsgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTsgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgcGFkZGluZzogMDsgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAqL1xuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gKi9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7IC8qIDIgKi9cbn1cblxuLyogSW50ZXJhY3RpdmVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBNaXNjXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBOb3JtYWxpemVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCwgc2VsZWN0b3ItbWF4LXR5cGUsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSAqL1xuXG4vKiBUaGVzZSBzdHlsZXMgYXJlIGludGVuZGVkIHRvIGJlIGdsb2JhbCAqL1xuXG4vLyBWZW5kb3JcblxuQHVzZSBcIm5vcm1hbGl6ZS5jc3Mvbm9ybWFsaXplXCI7XG5cbi8vIEN1c3RvbVxuXG4vLyAgQ2hhbmdlIHRoZSBib3gtc2l6aW5nIG9mIGFsbCBlbGVtZW50c1xuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8vIHJlbW92ZSBvcGluaW9uYXRlZCBkZWZhdWx0IHN0eWxlcyBvbiBidXR0b25zLCBpbnB1dHMsIGFuZCBzZWxlY3RzXG5cbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8vIGJlIGV4dHJhIHNwZWNpZmljIGZvciBzZWFyY2ggZmllbGRzLCBhcyBub3JtYWxpemUgcmVzZXRzIHRoZW1cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIFNldCBtYXgtaGVpZ2h0IGFuZCBtYXgtd2lkdGggdG8gMTAwJSBvbiBTVkdzIHRvIGZpeCBhIGJ1ZyBpbiBTYWZhcmkgKGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9hLzEyNjMxMzI2LzY1NDQ4MClcblxuc3ZnIHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbn1cblxuLyogUmVtb3ZlIG91dGxpbmUgZm9yIG5vbi1rZXlib2FyZCA6Zm9jdXMgKi9cblxuKjpmb2N1czpub3QoLmZvY3VzLXZpc2libGUpIHtcbiAgICBvdXRsaW5lOiBub25lO1xufVxuXG4vLyByZW1vdmUgZml4ZWQgaGVpZ2h0IGZyb20gaW1hZ2VzXG5cbmltZyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBTZWxlY3Rpb25cblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuOjpzZWxlY3Rpb24ge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihcImFjY2VudFwiKTtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwibGlnaHRcIik7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG5AdXNlIFwic2FzczptYXRoXCI7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEFsaWdubWVudFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uYWxpZ25jZW50ZXIge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG59XG5cbi5hbGlnbmxlZnQge1xuICAgICYge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW1pZnkoMjQsIDE2KTtcbiAgICAgICAgbWF4LXdpZHRoOiBtYXRoLmRpdigxMDAlLCAzKTtcbiAgICB9XG59XG5cbi5hbGlnbnJpZ2h0IHtcbiAgICAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtaWZ5KDI0LCAxNik7XG4gICAgICAgIG1heC13aWR0aDogbWF0aC5kaXYoMTAwJSwgMyk7XG4gICAgfVxufVxuXG4uYWxpZ25sZWZ0LFxuLmFsaWducmlnaHQge1xuICAgIEBpbmNsdWRlIHNtYWxsZXItdGhhbih4cykge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIERpdmlkZXJcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmRpdmlkZXIge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcihcInByaW1hcnlcIik7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDIpO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgzMiAwLCAxNik7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLmRpdmlkZXItLXZlcnRpY2FsIHtcbiAgICAmIHtcbiAgICAgICAgaGVpZ2h0OiByZW1pZnkoNDMsIDE2KTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAzMSwgMTYpO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDMsIDE2KTtcbiAgICB9XG59XG5cbi5kaXZpZGVyLS1wYWdlLWJhY2tncm91bmQge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcihcInBhZ2UtYmFja2dyb3VuZFwiLCBcInNoYWRlXCIpO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogR3JpZCAoYmFzZWQgbG9vc2VseSBvbiBodHRwczovL3Y0LWFscGhhLmdldGJvb3RzdHJhcC5jb20vbGF5b3V0L2dyaWQvKVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AdXNlIFwic2FzczptYXRoXCI7XG5cbi5yb3cge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuXG4gICAgJiA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBmbGV4LXNocmluazogMTtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cblxuICAgICYgPiAuY29sLS1ncm93LTAge1xuICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgfVxuXG4gICAgJiA+IC5jb2wtLXNocmluay0wIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgfVxufVxuXG4ucm93LS1kaXNwbGF5LWdyaWQge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgkY29sdW1uLWNvdW50LCAxZnIpO1xuICAgIH1cblxuICAgICYucm93LS1lcXVhbCB7XG4gICAgICAgIGdyaWQtYXV0by1jb2x1bW5zOiAxZnI7XG4gICAgICAgIGdyaWQtYXV0by1yb3dzOiAxZnI7XG4gICAgfVxufVxuXG4ucm93LS1wYWRkZWQsXG4uaXMtc3R5bGUtcm93LXBhZGRlZCB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtaWZ5KCRjb2x1bW4tZ2FwICogLTEsIDE2KTtcbiAgICB9XG5cbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtaWZ5KCRjb2x1bW4tZ2FwLCAxNik7XG4gICAgfVxufVxuXG4ucm93LS1wYWRkZWQtdGlnaHQsXG4uaXMtc3R5bGUtcm93LXBhZGRlZC10aWdodCB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtaWZ5KCRjb2x1bW4tZ2FwICogLTAuNzUsIDE2KTtcbiAgICB9XG5cbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtaWZ5KCRjb2x1bW4tZ2FwICogMC43NSwgMTYpO1xuICAgIH1cbn1cblxuLnJvdy0tcGFkZGVkLWxvb3NlLFxuLmlzLXN0eWxlLXJvdy1wYWRkZWQtbG9vc2Uge1xuICAgICYge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbWlmeSgkY29sdW1uLWdhcCAqIC0xLjI1LCAxNik7XG4gICAgfVxuXG4gICAgPiBbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbWlmeSgkY29sdW1uLWdhcCAqIDEuMjUsIDE2KTtcbiAgICB9XG59XG5cbi5yb3ctLXdyYXAtbm8ge1xuICAgICYge1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICB9XG59XG5cbi5yb3ctLXdyYXAtcmV2ZXJzZSB7XG4gICAgJiB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcC1yZXZlcnNlO1xuICAgIH1cbn1cblxuLnJvdy0tY2VudGVyIHtcbiAgICAmIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxufVxuXG4ucm93LS1hbGlnbi1zdGFydCB7XG4gICAgJiB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbn1cblxuLnJvdy0tYWxpZ24tY2VudGVyIHtcbiAgICAmIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG59XG5cbi5yb3ctLWFsaWduLWVuZCB7XG4gICAgJiB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICB9XG59XG5cbi5yb3ctLWFsaWduLXN0cmV0Y2gge1xuICAgICYge1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG59XG5cbi5yb3ctLWp1c3RpZnktc3RhcnQge1xuICAgICYge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxufVxuXG4ucm93LS1qdXN0aWZ5LWNlbnRlciB7XG4gICAgJiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbn1cblxuLnJvdy0tanVzdGlmeS1lbmQge1xuICAgICYge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIH1cbn1cblxuLnJvdy0tanVzdGlmeS1hcm91bmQge1xuICAgICYge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICB9XG59XG5cbi5yb3ctLWp1c3RpZnktYmV0d2VlbiB7XG4gICAgJiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG59XG5cbi5yb3ctLWRpcmVjdGlvbi1jb2x1bW4ge1xuICAgICYge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbn1cblxuLnJvdy0tZGlyZWN0aW9uLXJldmVyc2Uge1xuICAgICY6bm90KC5yb3ctLWRpcmVjdGlvbi1jb2x1bW4pIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIH1cblxuICAgICYucm93LS1kaXJlY3Rpb24tY29sdW1uIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIH1cbn1cblxuLmNvbC1hdXRvIHtcbiAgICAmIHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICB9XG59XG5cbkBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbi1jb3VudCB7XG4gICAgLmNvbC0jeyRpfSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IG1hdGguZGl2KCRpLCAkY29sdW1uLWNvdW50KSAqIDEwMCU7XG4gICAgICAgIGdyaWQtY29sdW1uOiBzcGFuICRpO1xuICAgIH1cbn1cblxuQGVhY2ggJG5hbWUsICRzaXplIGluICRicmVha3BvaW50cyB7XG4gICAgQGluY2x1ZGUgbGFyZ2VyLXRoYW4oJG5hbWUpIHtcbiAgICAgICAgLmNvbC0jeyRuYW1lfS1hdXRvIHtcbiAgICAgICAgICAgICYge1xuICAgICAgICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW4tY291bnQge1xuICAgICAgICAgICAgLmNvbC0jeyRuYW1lfS0jeyRpfSB7XG4gICAgICAgICAgICAgICAgZmxleC1iYXNpczogbWF0aC5kaXYoJGksICRjb2x1bW4tY291bnQpICogMTAwJTtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogc3BhbiAkaTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmNvbC0tZGl2aWRlIHtcbiAgICAmIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiByZW1pZnkoMywgMTYpIHNvbGlkIGNvbG9yKFwicGFnZS1iYWNrZ3JvdW5kXCIsIFwic2hhZGVcIik7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMzEsIDE2KTtcbiAgICAgICAgd2lkdGg6IDNweDtcbiAgICB9XG59XG5cbi5jb2wtLWp1c3RpZnktZW5kIHtcbiAgICAmIHtcbiAgICAgICAganVzdGlmeS1zZWxmOiBmbGV4LWVuZDtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIExpbmtcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmxpbmsge1xuICAgICYge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwicHJpbWFyeVwiLCBcInRpbnRcIik7XG4gICAgfVxufVxuXG4vKiBpbmhlcml0IHZhcmlhbnQgKi9cblxuLmxpbmstLWluaGVyaXQge1xuICAgICYge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBCdXR0b25cblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmJ1dHRvbiB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKFwicHJpbWFyeVwiKTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjb2xvcjogY29sb3IoXCJsaWdodFwiKTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxOCwgMTYpO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtaWZ5KDIyLCAxOCk7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgNDMgMTkgMCwgMTgpO1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMjAgMjIgMjAgNDUsIDE4KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXM7XG4gICAgfVxuXG4gICAgZW0geyAvL3N0eWxlbGludC1kaXNhYmxlLWxpbmVcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKFwicHJpbWFyeVwiLCBcInRpbnRcIik7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJwcmltYXJ5XCIsIFwidGludFwiKTtcbiAgICB9XG59XG5cbi5idXR0b24tLWFsdCB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKFwiZGFya1wiKTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKFwiZGFya1wiLCBcInRpbnRcIik7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJkYXJrXCIsIFwidGludFwiKTtcbiAgICB9XG59XG5cbi5idXR0b24tLWJsb2NrIHtcbiAgICAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLyogZGlzYWJsZWQgdmFyaWFudCAqL1xuXG4uYnV0dG9uLS1kaXNhYmxlZCB7XG4gICAgJiB7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBJbnB1dFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4kZm9udC1zaXplOiAxNjtcbiRpY29uLXNpemU6IDAuNzVlbTtcblxuJHBhZGRpbmctYm90dG9tOiAxMDtcbiRwYWRkaW5nLWxlZnQ6ICAgMTU7XG4kcGFkZGluZy1yaWdodDogIDE1O1xuJHBhZGRpbmctdG9wOiAgICAxMDtcblxuLmlucHV0IHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogY29sb3IoXCJiYWNrZ3JvdW5kXCIpO1xuICAgICAgICBib3JkZXI6IHJlbWlmeSgyKSBzb2xpZCBjb2xvcihcImJhY2tncm91bmRcIiwgXCJzaGFkZVwiKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4yNWVtO1xuICAgICAgICBjb2xvcjogY29sb3IoXCJmb3JlZ3JvdW5kXCIpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KCRmb250LXNpemUsIDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMTApO1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoJHBhZGRpbmctdG9wICRwYWRkaW5nLXJpZ2h0ICRwYWRkaW5nLWJvdHRvbSAkcGFkZGluZy1sZWZ0LCAkZm9udC1zaXplKTtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMsIGJhY2tncm91bmQtc2l6ZSAwLjE1cywgYm9yZGVyLWNvbG9yIDAuMTVzLCBjb2xvciAwLjE1cztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJjpub3QoLmlucHV0LS1kaXNhYmxlZCk6YWN0aXZlLFxuICAgICY6bm90KC5pbnB1dC0tZGlzYWJsZWQpOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcihcImFjY2VudFwiKTtcbiAgICB9XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImZvcmVncm91bmRcIiwgXCJ0aW50XCIpO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuLyogZXJyb3IgdmFyaWFudCAqL1xuXG4uaW5wdXQtLWVycm9yIHtcbiAgICAmIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcihcImVycm9yXCIpO1xuICAgIH1cbn1cblxuLyogc3VjY2VzcyB2YXJpYW50ICovXG5cbi5pbnB1dC0tc3VjY2VzcyB7XG4gICAgJiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogY29sb3IoXCJzdWNjZXNzXCIpO1xuICAgIH1cbn1cblxuLyogc2VsZWN0IHZhcmlhbnQgKi9cblxuLmlucHV0LS1zZWxlY3Qge1xuICAgICYge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIC8vIHJlbW92ZSBGaXJlZm94IGRlZmF1bHQgc3R5bGVzICYgYXJyb3dcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDAuMDFweDtcbiAgICAgICAgLy8gcmVtb3ZlIElFIGRlZmF1bHQgc3R5bGVzICYgYXJyb3dcbiAgICAgICAgJjo6LW1zLWV4cGFuZCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICB9XG59XG5cbi5pbnB1dC0tc2VsZWN0LWFycm93IHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnLWxvYWQoXCIuLi9tZWRpYS92ZW5kb3IvZmFzLXNvcnQuc3ZnXCIsIGZpbGw9I3tjb2xvcihcImZvcmVncm91bmRcIil9KTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IHJlbWlmeSgkcGFkZGluZy1yaWdodCwgJGZvbnQtc2l6ZSk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGljb24tc2l6ZTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygjeyRpY29uLXNpemV9ICsgI3tyZW1pZnkoJHBhZGRpbmctcmlnaHQgKiAyLCAkZm9udC1zaXplKX0pO1xuICAgIH1cbn1cblxuLyogdG9nZ2xlIHZhcmlhbnRzICovXG5cbi5pbnB1dC0tdG9nZ2xlIHtcbiAgICAmIHtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiByZW1pZnkoMSk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBoZWlnaHQ6ICRpY29uLXNpemUgKiAyO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHdpZHRoOiAkaWNvbi1zaXplICogMjtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGljb24tc2l6ZTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogLTk5OWVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cywgbGVmdCAwcyAwLjE1cywgdHJhbnNmb3JtIDAuMTVzO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmOmNoZWNrZWQ6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cywgdHJhbnNmb3JtIDAuMTVzO1xuICAgIH1cblxuICAgICYgKyAudGV4dC0tbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KCRmb250LXNpemUsIDE2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRpY29uLXNpemUgKiAyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoMTApO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbn1cblxuLmlucHV0LS10b2dnbGUtY2hlY2tib3gge1xuICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKFwiYWNjZW50XCIpO1xuICAgICAgICBib3JkZXItY29sb3I6IGNvbG9yKFwiYWNjZW50XCIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnLWxvYWQoXCIuLi9tZWRpYS92ZW5kb3IvZmFzLWNoZWNrLnN2Z1wiLCBmaWxsPSN7Y29sb3IoXCJsaWdodFwiKX0pO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgfVxuXG4gICAgJjpjaGVja2VkOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIH1cbn1cblxuLmlucHV0LS10b2dnbGUtcmFkaW8ge1xuICAgICYge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmctbG9hZChcIi4uL21lZGlhL3ZlbmRvci9mYXMtY2lyY2xlLnN2Z1wiLCBmaWxsPSN7Y29sb3IoXCJhY2NlbnRcIil9KTtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB9XG5cbiAgICAmOmNoZWNrZWQ6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG59XG5cbi8qIGRpc2FibGVkIHZhcmlhbnQgKi9cblxuLmlucHV0LS1kaXNhYmxlZCB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1peChjb2xvcihcImJhY2tncm91bmRcIiksIGNvbG9yKFwiYmFja2dyb3VuZFwiLCBcInNoYWRlXCIpKTtcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgICAgb3BhY2l0eTogMC42O1xuICAgIH1cbn1cblxuLyogc2VsZWN0IGJyb3dzZXIgdmFyaWFudHMgKi9cblxuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItbWF4LXR5cGUsIHNlbGVjdG9yLW5vLXZlbmRvci1wcmVmaXgsIHNlbGVjdG9yLXR5cGUtbm8tdW5rbm93biAqL1xuXG4vKiBJRSAqL1xuXzotbXMtaW5wdXQtcGxhY2Vob2xkZXIsXG46cm9vdCAuaW5wdXQtLXNlbGVjdCB7XG4gICAgJiB7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgkcGFkZGluZy10b3AsICRmb250LXNpemUpIGNhbGMoI3tyZW1pZnkoJHBhZGRpbmctbGVmdCwgJGZvbnQtc2l6ZSl9IC0gM3B4KSBjYWxjKCN7cmVtaWZ5KCRwYWRkaW5nLWJvdHRvbSwgJGZvbnQtc2l6ZSl9IC0gMnB4KTtcbiAgICB9XG59XG5cbl86LW1zLWlucHV0LXBsYWNlaG9sZGVyLFxuOnJvb3QgLmlucHV0LS1zZWxlY3QtYXJyb3cge1xuICAgICYge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCN7JGljb24tc2l6ZX0gKyAje3JlbWlmeSgkcGFkZGluZy1yaWdodCAqIDIsICRmb250LXNpemUpfSAtIDNweCk7XG4gICAgfVxufVxuXG4vKiBDaHJvbWUgICovXG5Ac3VwcG9ydHMgKC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZSkgYW5kIChmb250LXN0cmV0Y2g6IG5vcm1hbCkgYW5kIChub3QoLW1zLWFjY2VsZXJhdG9yOiB0cnVlKSkge1xuICAgIC5pbnB1dC0tc2VsZWN0IHtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KCRwYWRkaW5nLXRvcCwgJGZvbnQtc2l6ZSkgcmVtaWZ5KCRwYWRkaW5nLXJpZ2h0LCAkZm9udC1zaXplKSByZW1pZnkoJHBhZGRpbmctYm90dG9tLCAkZm9udC1zaXplKSByZW1pZnkoJHBhZGRpbmctbGVmdCwgJGZvbnQtc2l6ZSk7XG4gICAgfVxuXG4gICAgLmlucHV0LS1zZWxlY3QtYXJyb3cge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCN7JGljb24tc2l6ZX0gKyAje3JlbWlmeSgkcGFkZGluZy1yaWdodCAqIDIsICRmb250LXNpemUpfSk7XG4gICAgfVxufVxuXG4vKiBTYWZhcmkgKi9cbl86Oi13ZWJraXQtZnVsbC1wYWdlLW1lZGlhLFxuXzpmdXR1cmUsXG46cm9vdCAuaW5wdXQtLXNlbGVjdCB7XG4gICAgJiB7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgkcGFkZGluZy10b3AsICRmb250LXNpemUpIHJlbWlmeSgkcGFkZGluZy1yaWdodCwgJGZvbnQtc2l6ZSkgcmVtaWZ5KCRwYWRkaW5nLWJvdHRvbSwgJGZvbnQtc2l6ZSkgcmVtaWZ5KCRwYWRkaW5nLWxlZnQsICRmb250LXNpemUpO1xuICAgIH1cbn1cblxuXzo6LXdlYmtpdC1mdWxsLXBhZ2UtbWVkaWEsXG5fOmZ1dHVyZSxcbjpyb290IC5pbnB1dC0tc2VsZWN0LWFycm93IHtcbiAgICAmIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygjeyRpY29uLXNpemV9ICsgI3tyZW1pZnkoJHBhZGRpbmctcmlnaHQgKiAyLCAkZm9udC1zaXplKX0pO1xuICAgIH1cbn1cblxuLyogRWRnZSAqL1xuQHN1cHBvcnRzICgtbXMtaW1lLWFsaWduOiBhdXRvKSB7XG4gICAgLmlucHV0LS1zZWxlY3Qge1xuICAgICAgICBwYWRkaW5nOiBjYWxjKCN7cmVtaWZ5KCRwYWRkaW5nLXRvcCwgJGZvbnQtc2l6ZSl9IC0gMXB4KSBjYWxjKCN7cmVtaWZ5KCRwYWRkaW5nLXJpZ2h0LCAkZm9udC1zaXplKX0gLSAycHgpIGNhbGMoI3tyZW1pZnkoJHBhZGRpbmctYm90dG9tLCAkZm9udC1zaXplKX0gLSAxcHgpIGNhbGMoI3tyZW1pZnkoJHBhZGRpbmctbGVmdCwgJGZvbnQtc2l6ZSl9IC0gMnB4KTtcbiAgICB9XG5cbiAgICAuaW5wdXQtLXNlbGVjdC1hcnJvdyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IGNhbGMoI3skaWNvbi1zaXplfSArICN7cmVtaWZ5KCRwYWRkaW5nLXJpZ2h0ICogMiwgJGZvbnQtc2l6ZSl9IC0gMnB4KTtcbiAgICB9XG59XG5cbi8qIEZpcmVmb3ggKi9cbkAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoXCJcIikge1xuICAgIC5pbnB1dC0tc2VsZWN0IHtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KCRwYWRkaW5nLXRvcCwgJGZvbnQtc2l6ZSkgY2FsYygje3JlbWlmeSgkcGFkZGluZy1yaWdodCwgJGZvbnQtc2l6ZSl9IC0gNHB4KSByZW1pZnkoJHBhZGRpbmctYm90dG9tLCAkZm9udC1zaXplKSBjYWxjKCN7cmVtaWZ5KCRwYWRkaW5nLWxlZnQsICRmb250LXNpemUpfSAtIDRweCk7XG4gICAgfVxuXG4gICAgLmlucHV0LS1zZWxlY3QtYXJyb3cge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCN7JGljb24tc2l6ZX0gKyAje3JlbWlmeSgkcGFkZGluZy1yaWdodCAqIDIsICRmb250LXNpemUpfSAtIDRweCk7XG4gICAgfVxufVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFRpdGxlXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi50aXRsZSB7XG4gICAgJiB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImRhcmtcIik7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSg0OCwgMTYpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtaWZ5KDU3LjYsIDQ4KTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDEwKTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG59XG5cbi50aXRsZS0taDIge1xuICAgICYge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgzMiwgMTYpO1xuICAgIH1cbn1cblxuLnRpdGxlLS1oMyB7XG4gICAgJiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDI1LCAxNik7XG4gICAgfVxufVxuXG4udGl0bGUtLWg0IHtcbiAgICAmIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjAsIDE2KTtcbiAgICB9XG59XG5cbi50aXRsZS0taDUge1xuICAgICYge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxOCwgMTYpO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cbn1cblxuLnRpdGxlLS1oNiB7XG4gICAgJiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2LCAxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4vKiBmb250IHZhcmlhbnQgKi9cbi50aXRsZS0tdXBwZXJjYXNlIHtcbiAgICAmIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLyogZm9udCB2YXJpYW50ICovXG4udGl0bGUtLWJvZHkge1xuICAgICYge1xuICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxufVxuXG4vKiBjb2xvciB2YXJpYW50cyAqL1xuLnRpdGxlLS1saWdodCB7XG4gICAgJiB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImxpZ2h0XCIpO1xuICAgIH1cbn1cblxuLnRpdGxlLS1wcmltYXJ5IHtcbiAgICAmIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwicHJpbWFyeVwiKTtcbiAgICB9XG59XG5cbi50aXRsZS0tc2Vjb25kYXJ5IHtcbiAgICAmIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwic2Vjb25kYXJ5XCIsIFwidGludFwiKTtcbiAgICB9XG59XG5cbi50aXRsZS0tdGVydGlhcnkge1xuICAgICYge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJ0ZXJ0aWFyeVwiKTtcbiAgICB9XG59XG5cbi8qIGRpdmlkZXIgdmFyaWFudCAqL1xuXG4udGl0bGUtLWRpdmlkZXIge1xuICAgICYge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKFwiYmFja2dyb3VuZFwiLCBcInNoYWRlXCIpO1xuICAgICAgICBjb250ZW50OiBcIlxcMDAyMFwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxleDogMSAxIDAlO1xuICAgICAgICBoZWlnaHQ6IHJlbWlmeSgxKTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbWlmeSgxNiwgMTYpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbWlmeSgxNiwgMTYpO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogVGV4dFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4udGV4dCB7XG4gICAgJiB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImZvcmVncm91bmRcIik7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbWlmeSgyMiwgMTYpO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMjMsIDE2KTtcbiAgICB9XG5cbiAgICAudGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIH1cbn1cblxuLyogbGFiZWwgdmFyaWFudCAqL1xuXG4udGV4dC0tbGFiZWwge1xuICAgICYge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxufVxuXG4vKiBsaXN0IHZhcmlhbnQgKi9cblxuLnRleHQtLWxpc3Qge1xuICAgICYge1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAwIDAgMzIsIDE2KTtcbiAgICB9XG5cbiAgICAudGV4dF9fbGlzdC1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbWlmeSgyMiwgMTYpO1xuICAgIH1cblxuICAgIC50ZXh0X19saXN0LWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgyNCwgMTYpO1xuXG4gICAgICAgIEBpbmNsdWRlIGxhcmdlci10aGFuKGwpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgxMCwgMTYpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRleHRfX2xpc3QtaXRlbTo6bWFya2VyIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwicGFnZS1iYWNrZ3JvdW5kXCIsIFwic2hhZGVcIik7XG4gICAgfVxufVxuXG4vKiBsaXN0IG9yZGVyZWQgdmFyaWFudCAqL1xuXG4udGV4dC0tbGlzdC1vcmRlcmVkIHtcbiAgICAmIHtcbiAgICAgICAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbiAgICB9XG59XG5cbi8qIGxpc3QgdW5vcmRlcmVkIHZhcmlhbnQgKi9cblxuLnRleHQtLWxpc3QtdW5vcmRlcmVkIHtcbiAgICAmIHtcbiAgICAgICAgbGlzdC1zdHlsZTogZGlzYztcbiAgICB9XG59XG5cbi8qIHRhYmxlIHZhcmlhbnQgKi9cblxuLnRleHRfX3RhYmxlX19jb250YWluZXIsXG4ud3AtYmxvY2stdGFibGUge1xuICAgICYge1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMzIsIDE2KTtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLnRleHQtLXRhYmxlIHtcbiAgICAmIHtcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC50ZXh0X19oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gICAgfVxuXG4gICAgLnRleHRfX2hlYWRlciAudGV4dF9fY2VsbCB7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKFwicHJpbWFyeVwiKTtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwibGlnaHRcIik7XG4gICAgfVxuXG4gICAgLnRleHRfX2JvZHkge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7XG4gICAgfVxuXG4gICAgLnRleHRfX3JvdzpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgYmFja2dyb3VuZDogY29sb3IoXCJwYWdlLWJhY2tncm91bmRcIik7XG4gICAgfVxuXG4gICAgLnRleHRfX2Zvb3RlciB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImZvcmVncm91bmRcIiwgXCJ0aW50XCIpO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1mb290ZXItZ3JvdXA7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG5cbiAgICAudGV4dF9fcm93IHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgIH1cblxuICAgIC50ZXh0X19jZWxsIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBtaW4td2lkdGg6IHJlbWlmeSgxMjUsIDE2KTtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDEwIDE1LCAxNik7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgfVxuXG4gICAgLnRleHRfX2hlYWRlciAudGV4dF9fY2VsbCxcbiAgICAudGV4dF9fYm9keSAudGV4dF9fY2VsbC0taGVhZGluZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuXG4gICAgLnRleHRfX2JvZHkgLnRleHRfX2NlbGwtLWhlYWRpbmcge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cblxuICAgIC50ZXh0X19oZWFkZXIgKyAudGV4dF9fYm9keSA+IC50ZXh0X19yb3c6Zmlyc3QtY2hpbGQgPiAudGV4dF9fY2VsbCB7XG4gICAgICAgIGJvcmRlci10b3A6IHJlbWlmeSgyKSBzb2xpZCBtaXgoY29sb3IoXCJwcmltYXJ5XCIsIFwidGludFwiKSwgY29sb3IoXCJiYWNrZ3JvdW5kXCIpKTtcbiAgICB9XG5cbiAgICA+IC50ZXh0X19yb3c6bnRoLWNoaWxkKGV2ZW4pIC50ZXh0X19jZWxsLFxuICAgIC50ZXh0X19ib2R5IC50ZXh0X19yb3c6bnRoLWNoaWxkKGV2ZW4pIC50ZXh0X19jZWxsIHtcbiAgICAgICAgYmFja2dyb3VuZDogbWl4KGNvbG9yKFwicHJpbWFyeVwiLCBcInRpbnRcIiksIGNvbG9yKFwiYmFja2dyb3VuZFwiKSk7XG4gICAgfVxuXG4gICAgPiAudGV4dF9fcm93Om50aC1jaGlsZChldmVuKSAudGV4dF9fY2VsbDpmaXJzdC1jaGlsZCxcbiAgICAudGV4dF9fYm9keSAudGV4dF9fcm93Om50aC1jaGlsZChldmVuKSAudGV4dF9fY2VsbDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHJlbWlmeSg2KTtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogcmVtaWZ5KDYpO1xuICAgIH1cblxuICAgID4gLnRleHRfX3JvdzpudGgtY2hpbGQoZXZlbikgLnRleHRfX2NlbGw6bGFzdC1jaGlsZCxcbiAgICAudGV4dF9fYm9keSAudGV4dF9fcm93Om50aC1jaGlsZChldmVuKSAudGV4dF9fY2VsbDpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHJlbWlmeSg2KTtcbiAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHJlbWlmeSg2KTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIEJsb2NrcXVvdGVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmJsb2NrcXVvdGUge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihcInBhZ2UtYmFja2dyb3VuZFwiLCBcInRpbnRcIik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbWlmeSgxMywgMTYpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoNTAgMCwgMTYpO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMjYgMzcsIDE2KTtcblxuICAgICAgICBAaW5jbHVkZSBsYXJnZXItdGhhbihsKSB7XG4gICAgICAgICAgICBtYXJnaW46IHJlbWlmeSg2MiAwLCAxNik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFVzZXIgQ29udGVudFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4udXNlci1jb250ZW50IHtcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHNlbGVjdG9yLW1heC10eXBlICovXG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvLyB0ZWwgbGlua3NcblxuICAgIGFbaHJlZl49XCJ0ZWw6XCJdOm5vdCgubGluaykge1xuICAgICAgICBAZXh0ZW5kIC5saW5rO1xuICAgIH1cblxuICAgIC8vIGltYWdlc1xuXG4gICAgaW1nOm5vdCguYWxpZ25jZW50ZXIpOm5vdCguYWxpZ25sZWZ0KTpub3QoLmFsaWducmlnaHQpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLnRpdGxlLS1oMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDQwLCAxNik7XG4gICAgfVxuXG4gICAgLnRpdGxlLS1oMiB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImRhcmtcIik7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDM2LCAxNik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgxNiwgMzYpO1xuICAgIH1cblxuICAgIC50aXRsZS0taDMge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgzMiwgMTYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoMTQsIDMyKTtcbiAgICB9XG5cbiAgICAudGl0bGUtLWg0LFxuICAgIC50aXRsZS0taDUsXG4gICAgLnRpdGxlLS1oNiB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImRhcmtcIik7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDI2LCAxNik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgxNCwgMjYpO1xuICAgIH1cblxuICAgIC5jb2x1bW5zIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoNjIsIDE2KTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLnRleHQtLWxpc3Qge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50ZXh0LS1saXN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDYyLCAxNik7XG4gICAgfVxuXG4gICAgLnRleHQtLWxpc3QgLnRleHRfX2xpc3QtaXRlbSAudGV4dF9fbGlzdC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtaWZ5KDE2LCAxNik7XG4gICAgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICAgIEBpbmNsdWRlIHNtYWxsZXItdGhhbihsKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2LCAxNik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnV0dG9uOjpiZWZvcmUge1xuICAgICAgICBib3JkZXItYm90dG9tOiByZW1pZnkoMiwgMTgpIHNvbGlkIGNvbG9yKFwicXVpbmFyeVwiKTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiByZW1pZnkoMiwgMTgpIHNvbGlkIGNvbG9yKFwicXVpbmFyeVwiKTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgaGVpZ2h0OiByZW1pZnkoMTAsIDE4KTtcbiAgICAgICAgbGVmdDogcmVtaWZ5KDEwLCAxOCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDEwLCAxOCk7XG4gICAgfVxuXG4gICAgLmJ1dHRvbjpmb2N1czo6YmVmb3JlLFxuICAgIC5idXR0b246aG92ZXI6OmJlZm9yZSxcbiAgICAuYnV0dG9uOmFjdGl2ZTo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcihcImxpZ2h0XCIpO1xuICAgIH1cblxuICAgIC5kaXZpZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJxdWF0ZXJuYXJ5XCIpO1xuICAgICAgICBtYXJnaW46IHJlbWlmeSg3MCAwLCAxNik7XG4gICAgfVxuXG4gICAgLmdhbGxlcnkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoNDIsIDE2KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBzbWFsbGVyLXRoYW4obCkge1xuICAgICAgICAudGV4dC0tbGlzdCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoNDIsIDE2KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aXRsZS0taDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjYsIDE2KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgyMywgMjYpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpdGxlLS1oMyB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyNiwgMTYpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDIxLCAyNik7XG4gICAgICAgIH1cblxuICAgICAgICAudGl0bGUtLWg0LFxuICAgICAgICAudGl0bGUtLWg1LFxuICAgICAgICAudGl0bGUtLWg2IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDIyLCAxNik7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoMTYsIDIyKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIHN0eWxlbGludC1lbmFibGUgKi9cbn1cblxuLmZyb250cGFnZSAudXNlci1jb250ZW50IHtcbiAgICAudGl0bGUtLWgyIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwiZGFya1wiKTtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMzAsIDE2KTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICAudGl0bGUtLWgzIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjgsIDE2KTtcbiAgICB9XG59XG5cbi8qIGxpZ2h0IHZhcmlhbnQgKi9cblxuLnVzZXItY29udGVudC0tbGlnaHQge1xuICAgIC8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgc2VsZWN0b3ItbWF4LXR5cGUgKi9cblxuICAgIC51c2VyLWNvbnRlbnRfX2xpbmssXG4gICAgLnVzZXItY29udGVudF9fdGl0bGUsXG4gICAgLnVzZXItY29udGVudF9fdGV4dCxcbiAgICAud3AtY2FwdGlvbi10ZXh0IHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwibGlnaHRcIik7XG4gICAgfVxuXG4gICAgLyogc3R5bGVsaW50LWVuYWJsZSAqL1xufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBBY2Nlc3NpYmxlIFBvZXRyeSAoaHR0cHM6Ly93b3JkcHJlc3Mub3JnL3BsdWdpbnMvYWNjZXNzaWJsZS1wb2V0cnkvKVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUgKi9cblxuYm9keS5hY3dwLW1vbm9jaHJvbWUge1xuICAgICYge1xuICAgICAgICBmaWx0ZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi5hY3dwLXRvb2xiYXIge1xuICAgICYge1xuICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgICB9XG59XG5cbi5hY3dwLWZvb3RlciB7XG4gICAgJiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBBcnRpY2xlXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5hcnRpY2xlX19maWd1cmUge1xuICAgICYge1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDAgMzAsIDE2KTtcbiAgICB9XG59XG5cbi5hcnRpY2xlX19maWd1cmVfX2ltYWdlIHtcbiAgICAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLmFydGljbGVfX3RpdGxlIHtcbiAgICAmIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwicHJpbWFyeVwiKTtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMzYsIDE2KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDMxLCAzNik7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgQGluY2x1ZGUgc21hbGxlci10aGFuKGwpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDI2LCAxNik7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoNTQsIDI2KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmFydGljbGVfX3VzZXItY29udGVudCAuYmxvY2txdW90ZTpmaXJzdC1jaGlsZCB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxufVxuXG4vKiBwb3N0LWV4Y2VycHQgdmFyaWFudCAqL1xuXG4uYXJ0aWNsZS0tcG9zdC1leGNlcnB0IHtcbiAgICAmICsgJiB7XG4gICAgICAgIGJvcmRlci10b3A6IHJlbWlmeSgxKSBzb2xpZCBjb2xvcihcImJhY2tncm91bmRcIiwgXCJzaGFkZVwiKTtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbWlmeSgxNiwgMTYpO1xuICAgIH1cblxuICAgIC5hcnRpY2xlX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDM2LCAxNik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSg4LCAzNik7XG5cbiAgICAgICAgQGluY2x1ZGUgc21hbGxlci10aGFuKGwpIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTgsIDE2KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSg0LCAxOCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYXJ0aWNsZV9faGVhZGVyID4gLmFydGljbGVfX3RpdGxlOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5hcnRpY2xlX19oZWFkZXIgPiAuYXJ0aWNsZV9fdGl0bGU6bm90KDpsYXN0LWNoaWxkKSArICoge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoOCwgMTYpO1xuICAgIH1cblxuICAgIC50aXRsZV9fbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGxhcmdlci10aGFuKG0pIHtcbiAgICAgICAgICAgIGNvbG9yOiBjb2xvcihcImRhcmtcIik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGl0bGVfX2xpbms6aG92ZXIge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgIH1cblxuICAgIC5hcnRpY2xlX19saW5rIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwicHJpbWFyeVwiKTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2LCAxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAgICAgQGluY2x1ZGUgc21hbGxlci10aGFuKGwpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE0LCAxNik7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoNTIsIDE0KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hcnRpY2xlX19saW5rOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwicHJpbWFyeVwiLCBcInRpbnRcIik7XG4gICAgfVxuXG4gICAgLmFydGljbGVfX3RleHQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoMTIsIDE2KTtcblxuICAgICAgICBAaW5jbHVkZSBzbWFsbGVyLXRoYW4obCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTQsIDE2KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSg0LCAxNCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBWYXJpYWJsZXNcblxuJGhhbmRvcmdlbC1ib3JkZXItY29sb3I6ICNlZWUgIWRlZmF1bHQ7XG4kaGFuZG9yZ2VsLWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4kaGFuZG9yZ2VsX19oZWFkZXJfX2J1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJGhhbmRvcmdlbF9faGVhZGVyLS1vcGVuX19idXR0b24tYmFja2dyb3VuZC1jb2xvcjogI2VlZSAhZGVmYXVsdDtcbiRoYW5kb3JnZWxfX2hlYWRlci0tZm9jdXNfX2J1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yOiAjZGZkZmRmICFkZWZhdWx0O1xuXG4kaGFuZG9yZ2VsX19oZWFkZXJfX2J1dHRvbi1wYWRkaW5nOiAyMHB4IDI0cHggIWRlZmF1bHQ7XG4kaGFuZG9yZ2VsX19jb250ZW50X19pbm5lci1wYWRkaW5nOiAyMHB4IDI0cHggIWRlZmF1bHQ7XG5cbiRoYW5kb3JnZWxfX2NvbnRlbnQtYmFja2dyb3VuZDogI2ZmZiAhZGVmYXVsdDtcblxuLy8gVmFyaWFibGVzIGZvciBjbG9zaW5nIHRyYW5zaXRpb25cblxuJGhhbmRvcmdlbF9fY29udGVudC10cmFuc2l0aW9uLW9wYWNpdHktdGltZTogMC4xcyAhZGVmYXVsdDtcbiRoYW5kb3JnZWxfX2NvbnRlbnQtdHJhbnNpdGlvbi1vcGFjaXR5LW1ldGhvZDogZWFzZSAhZGVmYXVsdDtcblxuJGhhbmRvcmdlbF9fY29udGVudC10cmFuc2l0aW9uLWhlaWdodC10aW1lOiAwLjFzICFkZWZhdWx0O1xuJGhhbmRvcmdlbF9fY29udGVudC10cmFuc2l0aW9uLWhlaWdodC1kZWxheTogJGhhbmRvcmdlbF9fY29udGVudC10cmFuc2l0aW9uLW9wYWNpdHktdGltZSAhZGVmYXVsdDtcbiRoYW5kb3JnZWxfX2NvbnRlbnQtdHJhbnNpdGlvbi1oZWlnaHQtbWV0aG9kOiBlYXNlICFkZWZhdWx0O1xuXG4kaGFuZG9yZ2VsX19oZWFkZXJfX2J1dHRvbi10cmFuc2l0aW9uLWJhY2tncm91bmQtY29sb3ItdGltZTogMC4ycyAhZGVmYXVsdDtcbiRoYW5kb3JnZWxfX2hlYWRlcl9fYnV0dG9uLXRyYW5zaXRpb24tYmFja2dyb3VuZC1jb2xvci1tZXRob2Q6IGVhc2UgIWRlZmF1bHQ7XG5cbiRoYW5kb3JnZWxfX2NvbnRlbnQtdHJhbnNpdGlvbjogaGVpZ2h0ICRoYW5kb3JnZWxfX2NvbnRlbnQtdHJhbnNpdGlvbi1oZWlnaHQtdGltZVxuICAkaGFuZG9yZ2VsX19jb250ZW50LXRyYW5zaXRpb24taGVpZ2h0LW1ldGhvZCAkaGFuZG9yZ2VsX19jb250ZW50LXRyYW5zaXRpb24taGVpZ2h0LWRlbGF5ICFkZWZhdWx0O1xuXG4kaGFuZG9yZ2VsX19oZWFkZXJfX2J1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yXG4gICRoYW5kb3JnZWxfX2hlYWRlcl9fYnV0dG9uLXRyYW5zaXRpb24tYmFja2dyb3VuZC1jb2xvci10aW1lXG4gICRoYW5kb3JnZWxfX2hlYWRlcl9fYnV0dG9uLXRyYW5zaXRpb24tYmFja2dyb3VuZC1jb2xvci1tZXRob2QgIWRlZmF1bHQ7XG5cbiRoYW5kb3JnZWxfX2NvbnRlbnRfX2lubmVyLXRyYW5zaXRpb246IG9wYWNpdHkgJGhhbmRvcmdlbF9fY29udGVudC10cmFuc2l0aW9uLW9wYWNpdHktdGltZVxuICAkaGFuZG9yZ2VsX19jb250ZW50LXRyYW5zaXRpb24tb3BhY2l0eS1tZXRob2QgIWRlZmF1bHQ7XG5cbi8vIFZhcmlhYmxlcyBmb3Igb3BlbmluZyB0cmFuc2l0aW9uXG5cbiRoYW5kb3JnZWxfX2NvbnRlbnQtLW9wZW4tdHJhbnNpdGlvbi1oZWlnaHQtdGltZTogMC4ycyAhZGVmYXVsdDtcbiRoYW5kb3JnZWxfX2NvbnRlbnQtLW9wZW4tdHJhbnNpdGlvbi1oZWlnaHQtbWV0aG9kOiBlYXNlICFkZWZhdWx0O1xuXG4kaGFuZG9yZ2VsX19jb250ZW50LS1vcGVuLXRyYW5zaXRpb24tb3BhY2l0eS10aW1lOiAwLjNzICFkZWZhdWx0O1xuJGhhbmRvcmdlbF9fY29udGVudC0tb3Blbi10cmFuc2l0aW9uLW9wYWNpdHktbWV0aG9kOiBlYXNlICFkZWZhdWx0O1xuXG4kaGFuZG9yZ2VsX19jb250ZW50LS1vcGVuLXRyYW5zaXRpb246IGhlaWdodCAkaGFuZG9yZ2VsX19jb250ZW50LS1vcGVuLXRyYW5zaXRpb24taGVpZ2h0LXRpbWVcbiAgJGhhbmRvcmdlbF9fY29udGVudC0tb3Blbi10cmFuc2l0aW9uLWhlaWdodC1tZXRob2QgIWRlZmF1bHQ7XG5cbiRoYW5kb3JnZWxfX2NvbnRlbnQtLW9wZW5lZF9faW5uZXItdHJhbnNpdGlvbjogb3BhY2l0eVxuICAkaGFuZG9yZ2VsX19jb250ZW50LS1vcGVuLXRyYW5zaXRpb24tb3BhY2l0eS10aW1lXG4gICRoYW5kb3JnZWxfX2NvbnRlbnQtLW9wZW4tdHJhbnNpdGlvbi1vcGFjaXR5LW1ldGhvZCAhZGVmYXVsdDtcblxuLmhhbmRvcmdlbCB7XG4gICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlcjogJGhhbmRvcmdlbC1ib3JkZXItd2lkdGggc29saWQgJGhhbmRvcmdlbC1ib3JkZXItY29sb3I7XG4gICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgfVxuXG4gICZfX2hlYWRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgJl9faGVhZGVyLS1vcGVuICZfX2hlYWRlcl9fYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFuZG9yZ2VsX19oZWFkZXItLW9wZW5fX2J1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yO1xuICB9XG5cbiAgJl9faGVhZGVyLS1mb2N1cyAmX19oZWFkZXJfX2J1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhhbmRvcmdlbF9faGVhZGVyLS1mb2N1c19fYnV0dG9uLWJhY2tncm91bmQtY29sb3I7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gICZfX2hlYWRlcl9fYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAkaGFuZG9yZ2VsX19oZWFkZXJfX2J1dHRvbi1wYWRkaW5nO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogJGhhbmRvcmdlbC1ib3JkZXItd2lkdGggc29saWQgJGhhbmRvcmdlbC1ib3JkZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhhbmRvcmdlbF9faGVhZGVyX19idXR0b24tYmFja2dyb3VuZC1jb2xvcjtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB0cmFuc2l0aW9uOiAkaGFuZG9yZ2VsX19oZWFkZXJfX2J1dHRvbi10cmFuc2l0aW9uO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgJl9fY29udGVudCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItdG9wOiAkaGFuZG9yZ2VsLWJvcmRlci13aWR0aCBzb2xpZCAkaGFuZG9yZ2VsLWJvcmRlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGFuZG9yZ2VsX19jb250ZW50LWJhY2tncm91bmQ7XG4gICAgdHJhbnNpdGlvbjogJGhhbmRvcmdlbF9fY29udGVudC10cmFuc2l0aW9uO1xuXG4gICAgJi0tb3BlbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRyYW5zaXRpb246ICRoYW5kb3JnZWxfX2NvbnRlbnQtLW9wZW4tdHJhbnNpdGlvbjtcbiAgICB9XG5cbiAgICAmLS1vcGVuZWQge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuICB9XG5cbiAgJl9fY29udGVudF9faW5uZXIge1xuICAgIHBhZGRpbmc6ICRoYW5kb3JnZWxfX2NvbnRlbnRfX2lubmVyLXBhZGRpbmc7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiAkaGFuZG9yZ2VsX19jb250ZW50X19pbm5lci10cmFuc2l0aW9uO1xuICB9XG5cbiAgJl9fY29udGVudC0tb3BlbmVkICZfX2NvbnRlbnRfX2lubmVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246ICRoYW5kb3JnZWxfX2NvbnRlbnQtLW9wZW5lZF9faW5uZXItdHJhbnNpdGlvbjtcbiAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBIYW5kb3JnZWwgKGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL2hhbmRvcmdlbClcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gVmVuZG9yXG5cbkB1c2UgXCJoYW5kb3JnZWwvc3JjL3Njc3Mvc3R5bGVcIjtcblxuLy8gQ3VzdG9tXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIGlmcmFtZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uaWZyYW1lX19jb250YWluZXIge1xuICAgICYge1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgPiAuaWZyYW1lIHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBMb2dvXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5sb2dvIHtcbiAgICAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cztcbiAgICB9XG5cbiAgICAmW2hyZWZdOmZvY3VzLFxuICAgICZbaHJlZl06aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgfVxufVxuXG4ubG9nb19faW1hZ2Uge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4ubG9nb19fdGV4dCB7XG4gICAgJiB7XG4gICAgICAgIEBpbmNsdWRlIGxhcmdlci10aGFuKGwpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW1pZnkoMTMsIDE2KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmxvZ28ubG9nby0tZGl2aWRlciB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCBjb2xvcihcInByaW1hcnlcIik7XG4gICAgbWFyZ2luOiByZW1pZnkoNiBhdXRvLCAxNik7XG5cbiAgICBAaW5jbHVkZSBsYXJnZXItdGhhbih4cykge1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgxNCBhdXRvLCAxNik7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNZW51IExpc3RcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PSBHTE9CQUwgVkFSSUFOVFMgPT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5tZW51LWxpc3RfX2NvbnRhaW5lciB7XG4gICAgJiB7XG4gICAgICAgIGNsZWFyOiBmaXg7XG4gICAgfVxufVxuXG4ubWVudS1saXN0IHtcbiAgICAmIHtcbiAgICAgICAgY2xlYXI6IGZpeDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxufVxuXG4ubWVudS1saXN0X19pdGVtIHtcbiAgICAmIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG59XG5cbi5tZW51LWxpc3RfX2xpbmsge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5tZW51LWxpc3RfX3RvZ2dsZSB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLnRvZ2dsZV9faWNvbiB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cztcbiAgICB9XG5cbiAgICAubWVudS1saXN0X19pdGVtLmlzLWFjdGl2ZSA+ICYgLnRvZ2dsZV9faWNvbiB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAgIH1cbn1cblxuLyogYWNjb3JkaW9uIHZhcmlhbnQgKi9cblxuLm1lbnUtbGlzdC0tYWNjb3JkaW9uIHtcbiAgICAubWVudS1saXN0X19pdGVtLS1wYXJlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuXG4gICAgLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50ID4gLm1lbnUtbGlzdF9fbGluayB7XG4gICAgICAgIGZsZXg6IDEgMSAwJTtcbiAgICB9XG59XG5cbi8qIGNoaWxkIHZhcmlhbnQgKi9cblxuLm1lbnUtbGlzdC0tY2hpbGQge1xuICAgICYge1xuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLm1lbnUtbGlzdF9faXRlbSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbn1cblxuLyogY2hpbGQgYWNjb3JkaW9uIHZhcmlhbnQgKi9cblxuLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1hY2NvcmRpb24ge1xuICAgICYge1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjE1cywgdmlzaWJpbGl0eSAwcyAwLjE1cyAhaW1wb3J0YW50OyAvLyBATk9URSAhaW1wb3J0YW50IHJlcXVpcmVkIHRvIG92ZXJyaWRlIHRyYW5zaXRpb24tdG8tZnJvbS1hdXRvIGlubGluZSBzdHlsZVxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50LmlzLWFjdGl2ZSA+ICYge1xuICAgICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4xNXMgIWltcG9ydGFudDsgLy8gQE5PVEUgIWltcG9ydGFudCByZXF1aXJlZCB0byBvdmVycmlkZSB0cmFuc2l0aW9uLXRvLWZyb20tYXV0byBpbmxpbmUgc3R5bGVcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG59XG5cbi8qIGNoaWxkIG92ZXJsYXkgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLW92ZXJsYXkge1xuICAgICYge1xuICAgICAgICBsZWZ0OiAtOTk5ZW07XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtOTk5ZW07XG4gICAgICAgIHRyYW5zaXRpb246IGxlZnQgMHMgMC4xNXMsIG9wYWNpdHkgMC4xNXMsIHRvcCAwcyAwLjE1cywgdmlzaWJpbGl0eSAwcyAwLjE1cztcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudDpob3ZlciA+ICYsXG4gICAgLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50LmlzLWFjdGl2ZSA+ICYge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXM7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLy8gbXVzdCBiZSBzZXBhcmF0ZSBmcm9tIHRoZSBhYm92ZSBydWxlcyBmb3IgZmFsbGJhY2sgcmVhc29uc1xuXG4gICAgLm5vLWphdmFzY3JpcHQgLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50OmZvY3VzLXdpdGhpbiA+ICYge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXM7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxufVxuXG4vKiBjaGlsZCBvdmVybGF5IGRlcHRoIDIgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLW92ZXJsYXkubWVudS1saXN0LS1kZXB0aC0yIHtcbiAgICAubWVudS1saXN0X19pdGVtLS1wYXJlbnQ6aG92ZXIgPiAmLFxuICAgIC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudC5pcy1hY3RpdmUgPiAmIHtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgIC8vIG11c3QgYmUgc2VwYXJhdGUgZnJvbSB0aGUgYWJvdmUgcnVsZXMgZm9yIGZhbGxiYWNrIHJlYXNvbnNcblxuICAgIC5uby1qYXZhc2NyaXB0IC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudDpmb2N1cy13aXRoaW4gPiAmIHtcbiAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgIH1cbn1cblxuLyogY2hpbGQgb3ZlcmxheSByZXZlcnNlIHZhcmlhbnQgKi9cblxuLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1vdmVybGF5Lm1lbnUtbGlzdC0tcmV2ZXJzZSB7XG4gICAgJiB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiA5OTllbTtcbiAgICAgICAgdHJhbnNpdGlvbjogcmlnaHQgMHMgMC4xNXMsIG9wYWNpdHkgMC4xNXMsIHRvcCAwcyAwLjE1cywgdmlzaWJpbGl0eSAwcyAwLjE1cztcbiAgICB9XG5cbiAgICAubWVudS1saXN0X19pdGVtLS1wYXJlbnQ6aG92ZXIgPiAmLFxuICAgIC5tZW51LWxpc3RfX2l0ZW0tLXBhcmVudC5pcy1hY3RpdmUgPiAmIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXM7XG4gICAgfVxuXG4gICAgLy8gbXVzdCBiZSBzZXBhcmF0ZSBmcm9tIHRoZSBhYm92ZSBydWxlc2V0IGZvciBmYWxsYmFjayByZWFzb25zXG5cbiAgICAubm8tamF2YXNjcmlwdCAubWVudS1saXN0X19pdGVtLS1wYXJlbnQ6Zm9jdXMtd2l0aGluID4gJiB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzO1xuICAgIH1cbn1cblxuLyogY2hpbGQgb3ZlcmxheSByZXZlcnNlIGRlcHRoIDIgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLW92ZXJsYXkubWVudS1saXN0LS1yZXZlcnNlLm1lbnUtbGlzdC0tZGVwdGgtMiB7XG4gICAgLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50OmhvdmVyID4gJixcbiAgICAubWVudS1saXN0X19pdGVtLS1wYXJlbnQuaXMtYWN0aXZlID4gJiB7XG4gICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgLy8gbXVzdCBiZSBzZXBhcmF0ZSBmcm9tIHRoZSBhYm92ZSBydWxlc2V0IGZvciBmYWxsYmFjayByZWFzb25zXG5cbiAgICAubm8tamF2YXNjcmlwdCAubWVudS1saXN0X19pdGVtLS1wYXJlbnQ6Zm9jdXMtd2l0aGluID4gJiB7XG4gICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxufVxuXG4vKiBkaXNwbGF5LWZsZXggdmFyaWFudCAqL1xuXG4ubWVudS1saXN0LS1kaXNwbGF5LWZsZXgge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgICY6bm90KC5tZW51LWxpc3QtLWp1c3RpZnktYmV0d2Vlbikge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgID4gLm1lbnUtbGlzdF9faXRlbSB7XG4gICAgICAgIGZsZXg6IDEgMSAwJTtcbiAgICB9XG5cbiAgICAmOm5vdCgubWVudS1saXN0LS1qdXN0aWZ5LWJldHdlZW4pOm5vdCgubWVudS1saXN0LS1qdXN0aWZ5LWNlbnRlcikgPiAubWVudS1saXN0X19pdGVtIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cbn1cblxuLyoganVzdGlmeS1zdGFydCB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QtLWp1c3RpZnktc3RhcnQge1xuICAgICYge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgPiAubWVudS1saXN0X19pdGVtIHtcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxufVxuXG4vKiBqdXN0aWZ5LWNlbnRlciB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QtLWp1c3RpZnktY2VudGVyIHtcbiAgICAmIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgPiAubWVudS1saXN0X19pdGVtIHtcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxufVxuXG4vKiBqdXN0aWZ5LWVuZCB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QtLWp1c3RpZnktZW5kIHtcbiAgICAmIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG5cbiAgICA+IC5tZW51LWxpc3RfX2l0ZW0ge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG59XG5cbi8qIGp1c3RpZnktYmV0d2VlbiB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QtLWp1c3RpZnktYmV0d2VlbiB7XG4gICAgJiB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICA+IC5tZW51LWxpc3RfX2l0ZW0ge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG59XG5cbi8qIHZlcnRpY2FsIHZhcmlhbnQgKi9cblxuLm1lbnUtbGlzdC0tdmVydGljYWwge1xuICAgID4gLm1lbnUtbGlzdF9faXRlbSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PSBDVVNUT00gVkFSSUFOVFMgPT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIG1lZ2EgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0X19jb250YWluZXItLW1lZ2Ege1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBsZWZ0OiAtOTk5ZW07XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtOTk5ZW07XG4gICAgICAgIHRyYW5zaXRpb246IGxlZnQgMHMgMC4xNXMsIG9wYWNpdHkgMC4xNXMsIHRvcCAwcyAwLjE1cywgdmlzaWJpbGl0eSAwcyAwLjE1cztcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW0tLW1lZ2EubWVudS1saXN0X19pdGVtLS1wYXJlbnQ6aG92ZXIgPiAmLFxuICAgIC5tZW51LWxpc3RfX2l0ZW0tLW1lZ2EubWVudS1saXN0X19pdGVtLS1wYXJlbnQuaXMtYWN0aXZlID4gJiB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cztcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAvLyBtdXN0IGJlIHNlcGFyYXRlIGZyb20gdGhlIGFib3ZlIHJ1bGVzZXQgZm9yIGZhbGxiYWNrIHJlYXNvbnNcblxuICAgIC5uby1qYXZhc2NyaXB0IC5tZW51LWxpc3RfX2l0ZW0tLW1lZ2EubWVudS1saXN0X19pdGVtLS1wYXJlbnQ6Zm9jdXMtd2l0aGluID4gJiB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cztcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAubWVudS1saXN0Lm1lbnUtbGlzdC0tZGVwdGgtMSB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3QubWVudS1saXN0LS1kZXB0aC0yIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgfVxufVxuXG4vKiBtZWdhIHJldmVyc2UgdmFyaWFudCAqL1xuXG4ubWVudS1saXN0X19jb250YWluZXItLW1lZ2EubWVudS1saXN0LS1yZXZlcnNlIHsgLy8gdGVjaG5pY2FsbHkgbm90IGEgdmFsaWQgY2xhc3MgbmFtZSwgYnV0IGl0J3MgZWFzaWVyIHRoaXMgd2F5XG4gICAgJiB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiA5OTllbTtcbiAgICAgICAgdHJhbnNpdGlvbjogcmlnaHQgMHMgMC4xNXMsIG9wYWNpdHkgMC4xNXMsIHRvcCAwcyAwLjE1cywgdmlzaWJpbGl0eSAwcyAwLjE1cztcbiAgICB9XG5cbiAgICAubWVudS1saXN0X19pdGVtLS1tZWdhLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50OmhvdmVyID4gJixcbiAgICAubWVudS1saXN0X19pdGVtLS1tZWdhLm1lbnUtbGlzdF9faXRlbS0tcGFyZW50LmlzLWFjdGl2ZSA+ICYge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cztcbiAgICB9XG5cbiAgICAvLyBtdXN0IGJlIHNlcGFyYXRlIGZyb20gdGhlIGFib3ZlIHJ1bGVzZXQgZm9yIGZhbGxiYWNrIHJlYXNvbnNcblxuICAgIC5uby1qYXZhc2NyaXB0IC5tZW51LWxpc3RfX2l0ZW0tLW1lZ2EubWVudS1saXN0X19pdGVtLS1wYXJlbnQ6Zm9jdXMtd2l0aGluID4gJiB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgIH1cbn1cblxuLyogbWV0YSB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QtLW1ldGEge1xuICAgICYge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJmb3JlZ3JvdW5kXCIsIFwidGludFwiKTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE0LCAxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMCAxNCwgMTQpO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtaWZ5KDIwLCAxNCk7XG4gICAgfVxuXG4gICAgLm1lbnUtbGlzdF9fbGluayB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImZvcmVncm91bmRcIiwgXCJ0aW50XCIpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLm1lbnUtbGlzdF9fbGluazpob3ZlciB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImZvcmVncm91bmRcIiwgXCJ0aW50XCIpO1xuICAgIH1cbn1cblxuLyogbmF2aWdhdGlvbiB2YXJpYW50ICovXG5cbi5tZW51LWxpc3QtLW5hdmlnYXRpb24ge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTQsIDE2KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW1pZnkoMjAsIDE0KTtcbiAgICB9XG5cbiAgICAubWVudS1saXN0X19saW5rLFxuICAgIC5tZW51LWxpc3RfX3RvZ2dsZSB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgY29sb3I6IGNvbG9yKFwibGlnaHRcIik7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW1pZnkoNyA4IDksIDE0KTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW0ge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXM7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyLFxuICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihcInByaW1hcnlcIiwgXCJzaGFkZVwiKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2xpbmsge1xuICAgICAgICAuc3ZnLWlubGluZS0tZmEge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbWlmeSg4LCAxOCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWVudS1saXN0X19pdGVtLmlzLWFjdGl2ZSxcbiAgICAubWVudS1saXN0X19pdGVtOmZvY3VzLXdpdGhpbixcbiAgICAubWVudS1saXN0X19pdGVtOmhvdmVyIHtcbiAgICAgICAgPiAubWVudS1saXN0X19saW5rLFxuICAgICAgICA+IC5tZW51LWxpc3RfX3RvZ2dsZSB7XG4gICAgICAgICAgICBjb2xvcjogY29sb3IoXCJsaWdodFwiLCBcInRpbnRcIik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBjaGlsZCAqL1xuXG4gICAgLm1lbnUtbGlzdC0tY2hpbGQge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKFwicHJpbWFyeVwiLCBcInNoYWRlXCIpO1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTgsIDE4KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW1pZnkoMTIsIDE4KTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1lbnUtbGlzdC0tY2hpbGQgLm1lbnUtbGlzdF9fbGluayxcbiAgICAubWVudS1saXN0LS1jaGlsZCAubWVudS1saXN0X190b2dnbGUge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJsaWdodFwiKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cztcbiAgICB9XG5cbiAgICAubWVudS1saXN0LS1jaGlsZCAubWVudS1saXN0X19pdGVtLmlzLWFjdGl2ZSxcbiAgICAubWVudS1saXN0LS1jaGlsZCAubWVudS1saXN0X19pdGVtOmZvY3VzLXdpdGhpbixcbiAgICAubWVudS1saXN0LS1jaGlsZCAubWVudS1saXN0X19pdGVtOmhvdmVyIHtcbiAgICAgICAgPiAubWVudS1saXN0X19saW5rLFxuICAgICAgICA+IC5tZW51LWxpc3RfX3RvZ2dsZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudGl6ZShjb2xvcihcImxpZ2h0XCIpLCAwLjgpO1xuICAgICAgICAgICAgY29sb3I6IGNvbG9yKFwibGlnaHRcIik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBjaGlsZCBkZXB0aC0yICovXG5cbiAgICAubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLWRlcHRoLTIge1xuICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oY29sb3IoXCJwcmltYXJ5XCIsIFwic2hhZGVcIiksIDEwKTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuXG4gICAgLyogbWVnYSAqL1xuXG4gICAgLm1lbnUtbGlzdF9fY29udGFpbmVyLS1tZWdhIHtcbiAgICAgICAgYmFja2dyb3VuZDogY29sb3IoXCJwcmltYXJ5XCIsIFwic2hhZGVcIik7XG4gICAgfVxuXG4gICAgLm1lbnUtbGlzdC0tY2hpbGQubWVudS1saXN0LS1kZXB0aC0xLm1lbnUtbGlzdC0tbWVnYSB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgICAgIHdpZHRoOiByZW1pZnkoMjcwLCAxOCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiByZW1pZnkoMSkgc29saWQgZGFya2VuKGNvbG9yKFwicHJpbWFyeVwiLCBcInNoYWRlXCIpLCAxMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBtZWdhIGRlcHRoLTIgKi9cblxuICAgIC5tZW51LWxpc3QtLWNoaWxkLm1lbnUtbGlzdC0tZGVwdGgtMi5tZW51LWxpc3QtLW1lZ2Ege1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIG92ZXJsYXkgKi9cblxuICAgIC5tZW51LWxpc3QtLW92ZXJsYXkge1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDI3MCwgMTgpO1xuICAgIH1cblxuICAgIC8qIG92ZXJsYXkgZGVwdGgtMiAqL1xuXG4gICAgLm1lbnUtbGlzdC0tb3ZlcmxheS5tZW51LWxpc3QtLWRlcHRoLTIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoI3tyZW1pZnkoLTEyLCAxOCl9KTtcbiAgICB9XG59XG5cbi8qIHBhZ2luYXRpb24gdmFyaWFudCAqL1xuXG4ubWVudS1saXN0LS1wYWdpbmF0aW9uIHtcbiAgICAmIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE0LCAxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuXG4gICAgLm1lbnUtbGlzdF9faXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW1pZnkoOCwgMTQpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2xpbmstLWN1cnJlbnQge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJmb3JlZ3JvdW5kXCIpO1xuICAgICAgICBjdXJzb3I6IGF1dG87XG4gICAgfVxufVxuXG4vKiBzdWJtZW51IHZhcmlhbnQgKi9cblxuLm1lbnUtbGlzdC0tc3VibWVudSB7XG4gICAgJiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxOCwgMTYpO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2xpbmsge1xuICAgICAgICBib3JkZXItYm90dG9tOiByZW1pZnkoMikgc29saWQgY29sb3IoXCJiYWNrZ3JvdW5kXCIsIFwic2hhZGVcIik7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSg5IDAsIDE4KTtcbiAgICB9XG5cbiAgICAubWVudS1saXN0LS1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSg0LjUgMCwgMTgpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2xpbmsge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmctbG9hZChcIi4uL21lZGlhL3ZlbmRvci9mYXMtYW5nbGUtcmlnaHQuc3ZnXCIsIGZpbGw9I3tjb2xvcihcImxpZ2h0XCIsIFwic2hhZGVcIil9KTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmVtaWZ5KDAgMTEsIDE4KTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiByZW1pZnkoMTMuNSAxMy41LCAxOCk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSg0LjUgMCA0LjUgMTgsIDE4KTtcbiAgICB9XG5cbiAgICAubWVudS1saXN0LS1jaGlsZC5tZW51LWxpc3QtLWRlcHRoLTIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbWlmeSgxOCwgMTgpO1xuICAgIH1cbn1cblxuLyogbGlnaHQgdmFyaWFudCAqL1xuLm1lbnUtbGlzdC0tbGlnaHQge1xuICAgIC5tZW51LWxpc3RfX2xpbmsge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJsaWdodFwiKTtcbiAgICB9XG5cbiAgICAubWVudS1saXN0X19saW5rOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwic2Vjb25kYXJ5XCIsIFwidGludFwiKTtcbiAgICB9XG59XG5cbi8qIHNvY2lhbCB2YXJpYW50ICovXG4ubWVudS1saXN0LS1zb2NpYWwge1xuICAgICYge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyMCwgMTYpO1xuICAgICAgICBncmlkLWdhcDogcmVtaWZ5KDAgMTQsIDIwKTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgQGluY2x1ZGUgc21hbGxlci10aGFuKHh4bCkge1xuICAgICAgICAgICAgZ3JpZC1nYXA6IHJlbWlmeSgwIDgsIDIwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIHNtYWxsZXItdGhhbihsKSB7XG4gICAgICAgICAgICBncmlkLWdhcDogcmVtaWZ5KDAgMTQsIDIwKTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1lbnUtbGlzdF9faXRlbSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgIEBpbmNsdWRlIHNtYWxsZXItdGhhbihsKSB7XG4gICAgICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTmluamEgRm9ybXNcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3ItY2xhc3MtcGF0dGVybiAqL1xuXG4vLyBob25leXBvdCBmaWVsZCBmaXhcblxuLm5mLWZvcm0taHAge1xuICAgICYge1xuICAgICAgICBsZWZ0OiAtOTk5ZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtOTk5ZW07XG4gICAgfVxufVxuXG4vLyBkYXRlIGZpZWxkIGZpeFxuXG4ubmYtZmllbGQtY29udGFpbmVyIHtcbiAgICAucGlrYWRheV9fY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4vLyBsaXN0IGZpZWxkIGZpeFxuXG4ubmYtZmllbGQtY29udGFpbmVyIHtcbiAgICAubGlzdC1jaGVja2JveCxcbiAgICAubGlzdC1yYWRpbyB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2LCAxNik7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi8vIGxhYmVsIGFsaWdubWVudFxuXG4ubmYtZmllbGQtY29udGFpbmVyIHtcbiAgICAvLyBjb21iaW5lZFxuXG4gICAgJi5sYWJlbC1hYm92ZSAuZmllbGQtd3JhcCxcbiAgICAmLmxhYmVsLXJpZ2h0IC5maWVsZC13cmFwLFxuICAgICYubGFiZWwtYmVsb3cgLmZpZWxkLXdyYXAsXG4gICAgJi5sYWJlbC1sZWZ0IC5maWVsZC13cmFwIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgJi5sYWJlbC1yaWdodCAuZmllbGQtd3JhcCAubmYtZmllbGQtbGFiZWwsXG4gICAgJi5sYWJlbC1sZWZ0IC5maWVsZC13cmFwIC5uZi1maWVsZC1sYWJlbCB7XG4gICAgICAgIGZsZXg6IDEgMSAwJTtcbiAgICB9XG5cbiAgICAmLmxhYmVsLWFib3ZlIC5maWVsZC13cmFwIC5uZi1maWVsZC1lbGVtZW50LFxuICAgICYubGFiZWwtYmVsb3cgLmZpZWxkLXdyYXAgLm5mLWZpZWxkLWVsZW1lbnQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmLmxhYmVsLXJpZ2h0IC5maWVsZC13cmFwIC5uZi1maWVsZC1lbGVtZW50LFxuICAgICYubGFiZWwtbGVmdCAuZmllbGQtd3JhcCAubmYtZmllbGQtZWxlbWVudCB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIH1cblxuICAgICYubGFiZWwtcmlnaHQgLmNoZWNrYm94LXdyYXAgLm5mLWZpZWxkLWVsZW1lbnQsXG4gICAgJi5sYWJlbC1sZWZ0IC5jaGVja2JveC13cmFwIC5uZi1maWVsZC1lbGVtZW50IHtcbiAgICAgICAgZmxleDogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBhYm92ZVxuXG4gICAgJi5sYWJlbC1hYm92ZSAuZmllbGQtd3JhcCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuXG4gICAgLy8gYmVsb3dcblxuICAgICYubGFiZWwtYmVsb3cgLmZpZWxkLXdyYXAge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cblxuICAgICYubGFiZWwtYmVsb3cgLmZpZWxkLXdyYXAgLm5mLWZpZWxkLWxhYmVsIHtcbiAgICAgICAgb3JkZXI6IDI7XG4gICAgfVxuXG4gICAgJi5sYWJlbC1iZWxvdyAuZmllbGQtd3JhcCAubmYtZmllbGQtZWxlbWVudCB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgIH1cblxuICAgIC8vIHJpZ2h0XG5cbiAgICAmLmxhYmVsLXJpZ2h0IC5maWVsZC13cmFwIC5uZi1maWVsZC1sYWJlbCB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgIH1cblxuICAgICYubGFiZWwtcmlnaHQgLmZpZWxkLXdyYXAgLm5mLWZpZWxkLWVsZW1lbnQge1xuICAgICAgICBvcmRlcjogMTtcbiAgICB9XG5cbiAgICAvLyBoaWRkZW5cblxuICAgICYubGFiZWwtaGlkZGVuIC5maWVsZC13cmFwIC5uZi1maWVsZC1sYWJlbCB7XG4gICAgICAgIGxlZnQ6IC05OTllbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC05OTllbTtcbiAgICB9XG59XG5cbi8vIHJlQ0FQVENIQSBsYXllcmluZyBmaXhcblxuLmdyZWNhcHRjaGEtYmFkZ2Uge1xuICAgICYge1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgfVxufVxuXG4vLyBjb2x1bW4gZWRnZSBhbGlnbm1lbnQgZml4XG5cbi5uZi1yb3cge1xuICAgIC5uZi1oYXMtY29sdW1ucyAmIHtcbiAgICAgICAgbWFyZ2luOiAwIC01cHg7XG4gICAgfVxufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBPcGluaW9uYXRlZCBUd2Vha3NcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLm5mLWZvcm0tY29udCB7XG4gICAgLmlzLW9mZmxpbmUgJiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuaXMtb2ZmbGluZSAmOjpiZWZvcmUge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudGl6ZShjb2xvcihcImJhY2tncm91bmRcIiksIDAuMjUpO1xuICAgICAgICBjb250ZW50OiBcIlNvcnJ5LCBpdCBsb29rcyBsaWtlIHlvdVxcJ3JlIG9mZmxpbmUuIFBsZWFzZSByZWNvbm5lY3QgdG8gdGhlIGludGVybmV0IHRvIHVzZSB0aGlzIGZvcm0uXCI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyMCwgMTYpO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoJGNvbnRlbnQtcGFkZGluZywgMjApO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi8vIHJlcXVpcmVkIGluZGljYXRvciBmaXhcblxuLm5pbmphLWZvcm1zLXJlcS1zeW1ib2wge1xuICAgICYge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJlcnJvclwiKTtcbiAgICB9XG59XG5cbi8vIGhlbHAgdG9vbHRpcCBmaXhcblxuLm5pbmphLWZvcm1zLWhlbHAtc3ltYm9sIHtcbiAgICAmIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxufVxuXG4ubmluamEtZm9ybXMtaGVscC10b29sdGlwIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogY29sb3IoXCJkYXJrXCIsIFwidGludFwiKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtaWZ5KDYsIDE0KTtcbiAgICAgICAgYm90dG9tOiAxMzAlO1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNCwgMTYpO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgxMCwgMTQpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoNTAlKTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cywgdHJhbnNmb3JtIDAuMTVzO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDIwMCwgMTQpO1xuICAgIH1cblxuICAgIC5uaW5qYS1mb3Jtcy1oZWxwLXN5bWJvbC5pcy1hY3RpdmUgJiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiByZW1pZnkoNiwgMTYpIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmlnaHQ6IHJlbWlmeSg2LCAxNikgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci10b3A6IHJlbWlmeSg2LCAxNikgc29saWQgY29sb3IoXCJkYXJrXCIsIFwidGludFwiKTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cblxuICAgIC5uaW5qYS1mb3Jtcy11c2VyLWNvbnRlbnQgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbi8vIGxpc3QgZmllbGQgZml4XG5cbi5uZi1maWVsZC1jb250YWluZXIge1xuICAgIC5saXN0LWNoZWNrYm94LFxuICAgIC5saXN0LXJhZGlvIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcbiAgICB9XG59XG5cbi8vIHByb2R1Y3QgZmllbGQgZml4XG5cbi5uZi1wcm9kdWN0LXF1YW50aXR5IHtcbiAgICAubmYtaW5wdXQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbn1cblxuLy8gc3RhcnMgZmllbGQgZml4XG5cbi5uZi1maWVsZC1jb250YWluZXIge1xuICAgIC5zdGFycyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgyNCwgMTYpO1xuICAgIH1cbn1cblxuLy8gZXJyb3IgZml4XG5cbi5uZi1lcnJvci1tc2cge1xuICAgICYge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJlcnJvclwiLCBcInRpbnRcIik7XG4gICAgfVxufVxuXG4ubmYtZXJyb3IgLmlucHV0IHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAuaW5wdXQtLWVycm9yICFvcHRpb25hbDtcbiAgICB9XG59XG5cbi8vIHN1Y2Nlc3MgZml4XG5cbi5uZi1wYXNzIC5pbnB1dCB7XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgLmlucHV0LS1zdWNjZXNzICFvcHRpb25hbDtcbiAgICB9XG59XG5cbi8vIHJlQ0FQVENIQSBmaXhcblxuLm5mLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgLmctcmVjYXB0Y2hhOm5vdChbZGF0YS1zaXplPVwiaW52aXNpYmxlXCJdKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgyNCwgMTYpO1xuICAgIH1cbn1cblxuLy8gbGFiZWwgZGlzcGxheVxuXG4ubmYtZmllbGQtY29udGFpbmVyIHtcbiAgICAudGV4dC0tbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxufVxuXG4vLyBsYWJlbCBhbGlnbm1lbnRcblxuLm5mLWZpZWxkLWNvbnRhaW5lciB7XG4gICAgLy8gYWJvdmVcblxuICAgICYubGFiZWwtYWJvdmUgLm5mLWZpZWxkLWxhYmVsID4gLnRleHQtLWxhYmVsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDQsIDE2KTtcbiAgICB9XG5cbiAgICAvLyBiZWxvd1xuXG4gICAgJi5sYWJlbC1iZWxvdyAubmYtZmllbGQtbGFiZWwgPiAudGV4dC0tbGFiZWwge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW1pZnkoNCwgMTYpO1xuICAgIH1cblxuICAgICYubGFiZWwtYmVsb3cgLm5mLWZpZWxkLWVsZW1lbnQgLmlucHV0LFxuICAgICYubGFiZWwtYmVsb3cgLm5mLWZpZWxkLWVsZW1lbnQgLnN0YXJzLFxuICAgICYubGFiZWwtYmVsb3cgLmxpc3QtY2hlY2tib3gsXG4gICAgJi5sYWJlbC1iZWxvdyAubGlzdC1yYWRpbyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgIH1cblxuICAgIC8vIGxlZnRcblxuICAgICYubGFiZWwtbGVmdCAubmYtZmllbGQtbGFiZWwgPiAudGV4dC0tbGFiZWwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbWlmeSgxMCwgMTYpO1xuICAgIH1cblxuICAgIC8vIHJpZ2h0XG5cbiAgICAmLmxhYmVsLXJpZ2h0IC5uZi1maWVsZC1sYWJlbCA+IC50ZXh0LS1sYWJlbCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW1pZnkoMTAsIDE2KTtcbiAgICB9XG5cbiAgICAvLyBjaGVja2JveC9yYWRpbyBsaXN0c1xuXG4gICAgJi5saXN0Y2hlY2tib3gtY29udGFpbmVyIC5pbnB1dC0tdG9nZ2xlLFxuICAgICYubGlzdHJhZGlvLWNvbnRhaW5lciAuaW5wdXQtLXRvZ2dsZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtaWZ5KDYsIDE2KTtcbiAgICB9XG59XG5cbi8vIGZsYXRwaWNrciBmaXhcblxuLmZsYXRwaWNrci1jYWxlbmRhciB7XG4gICAgJiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogUGFuZWwgVG9nZ2xlXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5wYW5lbC10b2dnbGUge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImFjY2VudFwiKTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyNCwgMTYpO1xuICAgICAgICBoZWlnaHQ6IHJlbWlmeSg0MCwgMjQpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IHJlbWlmeSg0MCwgMjQpO1xuXG4gICAgICAgIEBpbmNsdWRlIHNtYWxsZXItdGhhbihsKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyNywgMTYpO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW1pZnkoMzQsIDI3KTtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ucGFuZWwtdG9nZ2xlLS1saWdodCB7XG4gICAgJiB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImxpZ2h0XCIpO1xuICAgIH1cbn1cbiIsIi8qISBQaG90b1N3aXBlIG1haW4gQ1NTIGJ5IERtaXRyeSBTZW1lbm92IHwgcGhvdG9zd2lwZS5jb20gfCBNSVQgbGljZW5zZSAqL1xuLypcblx0U3R5bGVzIGZvciBiYXNpYyBQaG90b1N3aXBlIGZ1bmN0aW9uYWxpdHkgKHNsaWRpbmcgYXJlYSwgb3Blbi9jbG9zZSB0cmFuc2l0aW9ucylcbiovXG4vKiBwc3dwID0gcGhvdG9zd2lwZSAqL1xuLnBzd3Age1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xuICB6LWluZGV4OiAxNTAwO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIGNyZWF0ZSBzZXBhcmF0ZSBsYXllciwgdG8gYXZvaWQgcGFpbnQgb24gd2luZG93Lm9uc2Nyb2xsIGluIHdlYmtpdC9ibGluayAqL1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3V0bGluZTogbm9uZTsgfVxuICAucHN3cCAqIHtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gIC5wc3dwIGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG5cbi8qIHN0eWxlIGlzIGFkZGVkIHdoZW4gSlMgb3B0aW9uIHNob3dIaWRlT3BhY2l0eSBpcyBzZXQgdG8gdHJ1ZSAqL1xuLnBzd3AtLWFuaW1hdGVfb3BhY2l0eSB7XG4gIC8qIDAuMDAxLCBiZWNhdXNlIG9wYWNpdHk6MCBkb2Vzbid0IHRyaWdnZXIgUGFpbnQgYWN0aW9uLCB3aGljaCBjYXVzZXMgbGFnIGF0IHN0YXJ0IG9mIHRyYW5zaXRpb24gKi9cbiAgb3BhY2l0eTogMC4wMDE7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICAvKiBmb3Igb3Blbi9jbG9zZSB0cmFuc2l0aW9uICovXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpOyB9XG5cbi5wc3dwLS1vcGVuIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnBzd3AtLXpvb20tYWxsb3dlZCAucHN3cF9faW1nIHtcbiAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cbiAgY3Vyc29yOiAtd2Via2l0LXpvb20taW47XG4gIGN1cnNvcjogLW1vei16b29tLWluO1xuICBjdXJzb3I6IHpvb20taW47IH1cblxuLnBzd3AtLXpvb21lZC1pbiAucHN3cF9faW1nIHtcbiAgLyogYXV0b3ByZWZpeGVyOiBvZmYgKi9cbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gIGN1cnNvcjogLW1vei1ncmFiO1xuICBjdXJzb3I6IGdyYWI7IH1cblxuLnBzd3AtLWRyYWdnaW5nIC5wc3dwX19pbWcge1xuICAvKiBhdXRvcHJlZml4ZXI6IG9mZiAqL1xuICBjdXJzb3I6IC13ZWJraXQtZ3JhYmJpbmc7XG4gIGN1cnNvcjogLW1vei1ncmFiYmluZztcbiAgY3Vyc29yOiBncmFiYmluZzsgfVxuXG4vKlxuXHRCYWNrZ3JvdW5kIGlzIGFkZGVkIGFzIGEgc2VwYXJhdGUgZWxlbWVudC5cblx0QXMgYW5pbWF0aW5nIG9wYWNpdHkgaXMgbXVjaCBmYXN0ZXIgdGhhbiBhbmltYXRpbmcgcmdiYSgpIGJhY2tncm91bmQtY29sb3IuXG4qL1xuLnBzd3BfX2JnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIG9wYWNpdHk6IDA7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5OyB9XG5cbi5wc3dwX19zY3JvbGwtd3JhcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5wc3dwX19jb250YWluZXIsXG4ucHN3cF9fem9vbS13cmFwIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDsgfVxuXG4vKiBQcmV2ZW50IHNlbGVjdGlvbiBhbmQgdGFwIGhpZ2hsaWdodHMgKi9cbi5wc3dwX19jb250YWluZXIsXG4ucHN3cF9faW1nIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTsgfVxuXG4ucHN3cF9fem9vbS13cmFwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgLyogZm9yIG9wZW4vY2xvc2UgdHJhbnNpdGlvbiAqL1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDMzM21zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMjIsIDEpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTsgfVxuXG4ucHN3cF9fYmcge1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgLyogZm9yIG9wZW4vY2xvc2UgdHJhbnNpdGlvbiAqL1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTsgfVxuXG4ucHN3cC0tYW5pbWF0ZWQtaW4gLnBzd3BfX2JnLFxuLnBzd3AtLWFuaW1hdGVkLWluIC5wc3dwX196b29tLXdyYXAge1xuICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IG5vbmU7IH1cblxuLnBzd3BfX2NvbnRhaW5lcixcbi5wc3dwX196b29tLXdyYXAge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4ucHN3cF9faXRlbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5wc3dwX19pbWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRvcDogMDtcbiAgbGVmdDogMDsgfVxuXG4vKlxuXHRzdHJldGNoZWQgdGh1bWJuYWlsIG9yIGRpdiBwbGFjZWhvbGRlciBlbGVtZW50IChzZWUgYmVsb3cpXG5cdHN0eWxlIGlzIGFkZGVkIHRvIGF2b2lkIGZsaWNrZXJpbmcgaW4gd2Via2l0L2JsaW5rIHdoZW4gbGF5ZXJzIG92ZXJsYXBcbiovXG4ucHN3cF9faW1nLS1wbGFjZWhvbGRlciB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi8qXG5cdGRpdiBlbGVtZW50IHRoYXQgbWF0Y2hlcyBzaXplIG9mIGxhcmdlIGltYWdlXG5cdGxhcmdlIGltYWdlIGxvYWRzIG9uIHRvcCBvZiBpdFxuKi9cbi5wc3dwX19pbWctLXBsYWNlaG9sZGVyLS1ibGFuayB7XG4gIGJhY2tncm91bmQ6ICMyMjI7IH1cblxuLnBzd3AtLWllIC5wc3dwX19pbWcge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwOyB9XG5cbi8qXG5cdEVycm9yIG1lc3NhZ2UgYXBwZWFycyB3aGVuIGltYWdlIGlzIG5vdCBsb2FkZWRcblx0KEpTIG9wdGlvbiBlcnJvck1zZyBjb250cm9scyBtYXJrdXApXG4qL1xuLnBzd3BfX2Vycm9yLW1zZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIG1hcmdpbi10b3A6IC04cHg7XG4gIGNvbG9yOiAjQ0NDOyB9XG5cbi5wc3dwX19lcnJvci1tc2cgYSB7XG4gIGNvbG9yOiAjQ0NDO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuIiwiLyohIFBob3RvU3dpcGUgRGVmYXVsdCBVSSBDU1MgYnkgRG1pdHJ5IFNlbWVub3YgfCBwaG90b3N3aXBlLmNvbSB8IE1JVCBsaWNlbnNlICovXG4vKlxuXG5cdENvbnRlbnRzOlxuXG5cdDEuIEJ1dHRvbnNcblx0Mi4gU2hhcmUgbW9kYWwgYW5kIGxpbmtzXG5cdDMuIEluZGV4IGluZGljYXRvciAoXCIxIG9mIFhcIiBjb3VudGVyKVxuXHQ0LiBDYXB0aW9uXG5cdDUuIExvYWRpbmcgaW5kaWNhdG9yXG5cdDYuIEFkZGl0aW9uYWwgc3R5bGVzIChyb290IGVsZW1lbnQsIHRvcCBiYXIsIGlkbGUgc3RhdGUsIGhpZGRlbiBzdGF0ZSwgZXRjLilcblxuKi9cbi8qXG5cdFxuXHQxLiBCdXR0b25zXG5cbiAqL1xuLyogPGJ1dHRvbj4gY3NzIHJlc2V0ICovXG4ucHN3cF9fYnV0dG9uIHtcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogNDRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBvcGFjaXR5OiAwLjc1O1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5wc3dwX19idXR0b246Zm9jdXMsIC5wc3dwX19idXR0b246aG92ZXIge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLnBzd3BfX2J1dHRvbjphY3RpdmUge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgb3BhY2l0eTogMC45OyB9XG4gIC5wc3dwX19idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwOyB9XG5cbi8qIHBzd3BfX3VpLS1vdmVyLWNsb3NlIGNsYXNzIGl0IGFkZGVkIHdoZW4gbW91c2UgaXMgb3ZlciBlbGVtZW50IHRoYXQgc2hvdWxkIGNsb3NlIGdhbGxlcnkgKi9cbi5wc3dwX191aS0tb3Zlci1jbG9zZSAucHN3cF9fYnV0dG9uLS1jbG9zZSB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnBzd3BfX2J1dHRvbixcbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0OmJlZm9yZSxcbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiB1cmwoZGVmYXVsdC1za2luLnBuZykgMCAwIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAyNjRweCA4OHB4O1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4OyB9XG5cbkBtZWRpYSAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjEpLCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAxLjA5Mzc1KSwgKG1pbi1yZXNvbHV0aW9uOiAxMDVkcGkpLCAobWluLXJlc29sdXRpb246IDEuMWRwcHgpIHtcbiAgLyogU2VydmUgU1ZHIHNwcml0ZSBpZiBicm93c2VyIHN1cHBvcnRzIFNWRyBhbmQgcmVzb2x1dGlvbiBpcyBtb3JlIHRoYW4gMTA1ZHBpICovXG4gIC5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbixcbiAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdDpiZWZvcmUsXG4gIC5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRlZmF1bHQtc2tpbi5zdmcpOyB9XG4gIC5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4gIC5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kOiBub25lOyB9IH1cblxuLnBzd3BfX2J1dHRvbi0tY2xvc2Uge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC00NHB4OyB9XG5cbi5wc3dwX19idXR0b24tLXNoYXJlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ0cHggLTQ0cHg7IH1cblxuLnBzd3BfX2J1dHRvbi0tZnMge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wc3dwLS1zdXBwb3J0cy1mcyAucHN3cF9fYnV0dG9uLS1mcyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5wc3dwLS1mcyAucHN3cF9fYnV0dG9uLS1mcyB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00NHB4IDA7IH1cblxuLnBzd3BfX2J1dHRvbi0tem9vbSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04OHB4IDA7IH1cblxuLnBzd3AtLXpvb20tYWxsb3dlZCAucHN3cF9fYnV0dG9uLS16b29tIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnBzd3AtLXpvb21lZC1pbiAucHN3cF9fYnV0dG9uLS16b29tIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEzMnB4IDA7IH1cblxuLyogbm8gYXJyb3dzIG9uIHRvdWNoIHNjcmVlbnMgKi9cbi5wc3dwLS10b3VjaCAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwLS10b3VjaCAucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLypcblx0QXJyb3cgYnV0dG9ucyBoaXQgYXJlYVxuXHQoaWNvbiBpcyBhZGRlZCB0byA6YmVmb3JlIHBzZXVkby1lbGVtZW50KVxuKi9cbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC01MHB4O1xuICB3aWR0aDogNzBweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0IHtcbiAgbGVmdDogMDsgfVxuXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQge1xuICByaWdodDogMDsgfVxuXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdDpiZWZvcmUsXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHRvcDogMzVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBoZWlnaHQ6IDMwcHg7XG4gIHdpZHRoOiAzMnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQ6YmVmb3JlIHtcbiAgbGVmdDogNnB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTM4cHggLTQ0cHg7IH1cblxuLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0OmJlZm9yZSB7XG4gIHJpZ2h0OiA2cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC05NHB4IC00NHB4OyB9XG5cbi8qXG5cblx0Mi4gU2hhcmUgbW9kYWwvcG9wdXAgYW5kIGxpbmtzXG5cbiAqL1xuLnBzd3BfX2NvdW50ZXIsXG4ucHN3cF9fc2hhcmUtbW9kYWwge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4ucHN3cF9fc2hhcmUtbW9kYWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTYwMDtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2Utb3V0O1xuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1vdXQ7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTsgfVxuXG4ucHN3cF9fc2hhcmUtbW9kYWwtLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnBzd3BfX3NoYXJlLXRvb2x0aXAge1xuICB6LWluZGV4OiAxNjIwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG4gIHRvcDogNTZweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIHJpZ2h0OiA0NHB4O1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuMjVzO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI1cztcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07IH1cbiAgLnBzd3BfX3NoYXJlLXRvb2x0aXAgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogOHB4IDEycHg7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMThweDsgfVxuICAgIC5wc3dwX19zaGFyZS10b29sdGlwIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICAucHN3cF9fc2hhcmUtdG9vbHRpcCBhOmZpcnN0LWNoaWxkIHtcbiAgICAgIC8qIHJvdW5kIGNvcm5lcnMgb24gdGhlIGZpcnN0L2xhc3QgbGlzdCBpdGVtICovXG4gICAgICBib3JkZXItcmFkaXVzOiAycHggMnB4IDAgMDsgfVxuICAgIC5wc3dwX19zaGFyZS10b29sdGlwIGE6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwIDAgMnB4IDJweDsgfVxuXG4ucHN3cF9fc2hhcmUtbW9kYWwtLWZhZGUtaW4ge1xuICBvcGFjaXR5OiAxOyB9XG4gIC5wc3dwX19zaGFyZS1tb2RhbC0tZmFkZS1pbiAucHN3cF9fc2hhcmUtdG9vbHRpcCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLyogaW5jcmVhc2Ugc2l6ZSBvZiBzaGFyZSBsaW5rcyBvbiB0b3VjaCBkZXZpY2VzICovXG4ucHN3cC0tdG91Y2ggLnBzd3BfX3NoYXJlLXRvb2x0aXAgYSB7XG4gIHBhZGRpbmc6IDE2cHggMTJweDsgfVxuXG5hLnBzd3BfX3NoYXJlLS1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtMTJweDtcbiAgcmlnaHQ6IDE1cHg7XG4gIGJvcmRlcjogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjRkZGO1xuICAtd2Via2l0LXBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtbW96LXBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG5hLnBzd3BfX3NoYXJlLS1mYWNlYm9vazpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICMzRTVDOUE7XG4gIGNvbG9yOiAjRkZGOyB9XG4gIGEucHN3cF9fc2hhcmUtLWZhY2Vib29rOmhvdmVyOmJlZm9yZSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzNFNUM5QTsgfVxuXG5hLnBzd3BfX3NoYXJlLS10d2l0dGVyOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzU1QUNFRTtcbiAgY29sb3I6ICNGRkY7IH1cblxuYS5wc3dwX19zaGFyZS0tcGludGVyZXN0OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0NDQztcbiAgY29sb3I6ICNDRTI3MkQ7IH1cblxuYS5wc3dwX19zaGFyZS0tZG93bmxvYWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjREREOyB9XG5cbi8qXG5cblx0My4gSW5kZXggaW5kaWNhdG9yIChcIjEgb2YgWFwiIGNvdW50ZXIpXG5cbiAqL1xuLnBzd3BfX2NvdW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBmb250LXNpemU6IDEzcHg7XG4gIGxpbmUtaGVpZ2h0OiA0NHB4O1xuICBjb2xvcjogI0ZGRjtcbiAgb3BhY2l0eTogMC43NTtcbiAgcGFkZGluZzogMCAxMHB4OyB9XG5cbi8qXG5cdFxuXHQ0LiBDYXB0aW9uXG5cbiAqL1xuLnBzd3BfX2NhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDQ0cHg7IH1cbiAgLnBzd3BfX2NhcHRpb24gc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBjb2xvcjogI0JCQjsgfVxuXG4ucHN3cF9fY2FwdGlvbl9fY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWF4LXdpZHRoOiA0MjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgcGFkZGluZzogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIGNvbG9yOiAjQ0NDOyB9XG5cbi5wc3dwX19jYXB0aW9uLS1lbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogRmFrZSBjYXB0aW9uIGVsZW1lbnQsIHVzZWQgdG8gY2FsY3VsYXRlIGhlaWdodCBvZiBuZXh0L3ByZXYgaW1hZ2UgKi9cbi5wc3dwX19jYXB0aW9uLS1mYWtlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi8qXG5cblx0NS4gTG9hZGluZyBpbmRpY2F0b3IgKHByZWxvYWRlcilcblxuXHRZb3UgY2FuIHBsYXkgd2l0aCBpdCBoZXJlIC0gaHR0cDovL2NvZGVwZW4uaW8vZGltc2VtZW5vdi9wZW4veXlCV29SXG5cbiAqL1xuLnBzd3BfX3ByZWxvYWRlciB7XG4gIHdpZHRoOiA0NHB4O1xuICBoZWlnaHQ6IDQ0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMjJweDtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2Utb3V0O1xuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1vdXQ7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICBkaXJlY3Rpb246IGx0cjsgfVxuXG4ucHN3cF9fcHJlbG9hZGVyX19pY24ge1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBtYXJnaW46IDEycHg7IH1cblxuLnBzd3BfX3ByZWxvYWRlci0tYWN0aXZlIHtcbiAgb3BhY2l0eTogMTsgfVxuICAucHN3cF9fcHJlbG9hZGVyLS1hY3RpdmUgLnBzd3BfX3ByZWxvYWRlcl9faWNuIHtcbiAgICAvKiBXZSB1c2UgLmdpZiBpbiBicm93c2VycyB0aGF0IGRvbid0IHN1cHBvcnQgQ1NTIGFuaW1hdGlvbiAqL1xuICAgIGJhY2tncm91bmQ6IHVybChwcmVsb2FkZXIuZ2lmKSAwIDAgbm8tcmVwZWF0OyB9XG5cbi5wc3dwLS1jc3NfYW5pbWF0aW9uIC5wc3dwX19wcmVsb2FkZXItLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7IH1cbiAgLnBzd3AtLWNzc19hbmltYXRpb24gLnBzd3BfX3ByZWxvYWRlci0tYWN0aXZlIC5wc3dwX19wcmVsb2FkZXJfX2ljbiB7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IGNsb2Nrd2lzZSA1MDBtcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgICAgICBhbmltYXRpb246IGNsb2Nrd2lzZSA1MDBtcyBsaW5lYXIgaW5maW5pdGU7IH1cbiAgLnBzd3AtLWNzc19hbmltYXRpb24gLnBzd3BfX3ByZWxvYWRlci0tYWN0aXZlIC5wc3dwX19wcmVsb2FkZXJfX2RvbnV0IHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogZG9udXQtcm90YXRlIDEwMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKSBpbmZpbml0ZTtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogZG9udXQtcm90YXRlIDEwMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKSBpbmZpbml0ZTsgfVxuXG4ucHN3cC0tY3NzX2FuaW1hdGlvbiAucHN3cF9fcHJlbG9hZGVyX19pY24ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBvcGFjaXR5OiAwLjc1O1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDE1cHg7XG4gIHRvcDogMTVweDtcbiAgbWFyZ2luOiAwOyB9XG5cbi5wc3dwLS1jc3NfYW5pbWF0aW9uIC5wc3dwX19wcmVsb2FkZXJfX2N1dCB7XG4gIC8qIFxuXHRcdFx0VGhlIGlkZWEgb2YgYW5pbWF0aW5nIGlubmVyIGNpcmNsZSBpcyBiYXNlZCBvbiBQb2x5bWVyIChcIm1hdGVyaWFsXCIpIGxvYWRpbmcgaW5kaWNhdG9yIFxuXHRcdFx0IGJ5IEtlYW51IExlZSBodHRwczovL2Jsb2cua2VhbnVsZWUuY29tLzIwMTQvMTAvMjAvdGhlLXRhbGUtb2YtdGhyZWUtc3Bpbm5lcnMuaHRtbFxuXHRcdCovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDdweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5wc3dwLS1jc3NfYW5pbWF0aW9uIC5wc3dwX19wcmVsb2FkZXJfX2RvbnV0IHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIG1hcmdpbjogMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgLnBzd3BfX3ByZWxvYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdG9wOiBhdXRvO1xuICAgIG1hcmdpbjogMDtcbiAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgY2xvY2t3aXNlIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cblxuQGtleWZyYW1lcyBjbG9ja3dpc2Uge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZG9udXQtcm90YXRlIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfVxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTE0MGRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTQwZGVnKTsgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIGRvbnV0LXJvdGF0ZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xNDBkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE0MGRlZyk7IH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9IH1cblxuLypcblx0XG5cdDYuIEFkZGl0aW9uYWwgc3R5bGVzXG5cbiAqL1xuLyogcm9vdCBlbGVtZW50IG9mIFVJICovXG4ucHN3cF9fdWkge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhdXRvO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xuICB6LWluZGV4OiAxNTUwOyB9XG5cbi8qIHRvcCBibGFjayBiYXIgd2l0aCBidXR0b25zIGFuZCBcIjEgb2YgWFwiIGluZGljYXRvciAqL1xuLnBzd3BfX3RvcC1iYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgaGVpZ2h0OiA0NHB4O1xuICB3aWR0aDogMTAwJTsgfVxuXG4ucHN3cF9fY2FwdGlvbixcbi5wc3dwX190b3AtYmFyLFxuLnBzd3AtLWhhc19tb3VzZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwLS1oYXNfbW91c2UgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMzMzbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yMiwgMSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAzMzNtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIyLCAxKTsgfVxuXG4vKiBwc3dwLS1oYXNfbW91c2UgY2xhc3MgaXMgYWRkZWQgb25seSB3aGVuIHR3byBzdWJzZXF1ZW50IG1vdXNlbW92ZSBldmVudHMgb2NjdXIgKi9cbi5wc3dwLS1oYXNfbW91c2UgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4ucHN3cC0taGFzX21vdXNlIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuLnBzd3BfX3RvcC1iYXIsXG4ucHN3cF9fY2FwdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuXG4vKiBwc3dwX191aS0tZml0IGNsYXNzIGlzIGFkZGVkIHdoZW4gbWFpbiBpbWFnZSBcImZpdHNcIiBiZXR3ZWVuIHRvcCBiYXIgYW5kIGJvdHRvbSBiYXIgKGNhcHRpb24pICovXG4ucHN3cF9fdWktLWZpdCAucHN3cF9fdG9wLWJhcixcbi5wc3dwX191aS0tZml0IC5wc3dwX19jYXB0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpOyB9XG5cbi8qIHBzd3BfX3VpLS1pZGxlIGNsYXNzIGlzIGFkZGVkIHdoZW4gbW91c2UgaXNuJ3QgbW92aW5nIGZvciBzZXZlcmFsIHNlY29uZHMgKEpTIG9wdGlvbiB0aW1lVG9JZGxlKSAqL1xuLnBzd3BfX3VpLS1pZGxlIC5wc3dwX190b3AtYmFyIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4ucHN3cF9fdWktLWlkbGUgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLWxlZnQsXG4ucHN3cF9fdWktLWlkbGUgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgb3BhY2l0eTogMDsgfVxuXG4vKlxuXHRwc3dwX191aS0taGlkZGVuIGNsYXNzIGlzIGFkZGVkIHdoZW4gY29udHJvbHMgYXJlIGhpZGRlblxuXHRlLmcuIHdoZW4gdXNlciB0YXBzIHRvIHRvZ2dsZSB2aXNpYmlsaXR5IG9mIGNvbnRyb2xzXG4qL1xuLnBzd3BfX3VpLS1oaWRkZW4gLnBzd3BfX3RvcC1iYXIsXG4ucHN3cF9fdWktLWhpZGRlbiAucHN3cF9fY2FwdGlvbixcbi5wc3dwX191aS0taGlkZGVuIC5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0LFxuLnBzd3BfX3VpLS1oaWRkZW4gLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0IHtcbiAgLyogRm9yY2UgcGFpbnQgJiBjcmVhdGUgY29tcG9zaXRpb24gbGF5ZXIgZm9yIGNvbnRyb2xzLiAqL1xuICBvcGFjaXR5OiAwLjAwMTsgfVxuXG4vKiBwc3dwX191aS0tb25lLXNsaWRlIGNsYXNzIGlzIGFkZGVkIHdoZW4gdGhlcmUgaXMganVzdCBvbmUgaXRlbSBpbiBnYWxsZXJ5ICovXG4ucHN3cF9fdWktLW9uZS1zbGlkZSAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwX191aS0tb25lLXNsaWRlIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCxcbi5wc3dwX191aS0tb25lLXNsaWRlIC5wc3dwX19jb3VudGVyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ucHN3cF9fZWxlbWVudC0tZGlzYWJsZWQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnBzd3AtLW1pbmltYWwtLWRhcmsgLnBzd3BfX3RvcC1iYXIge1xuICBiYWNrZ3JvdW5kOiBub25lOyB9XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFBob3RvU3dpcGUgKGh0dHA6Ly9waG90b3N3aXBlLmNvbS8pXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWNsYXNzLXBhdHRlcm4gKi9cblxuLy8gVmVuZG9yXG5cbkB1c2UgXCJwaG90b3N3aXBlL2Rpc3QvcGhvdG9zd2lwZS5jc3NcIjtcbkB1c2UgXCJwaG90b3N3aXBlL2Rpc3QvZGVmYXVsdC1za2luL2RlZmF1bHQtc2tpbi5jc3NcIjtcblxuLy8gQ3VzdG9tXG5cbi5wc3dwIHtcbiAgICAmIHtcbiAgICAgICAgei1pbmRleDogMTAwMDAwO1xuICAgIH1cbn1cblxuLnBzd3BfX2J1dHRvbixcbi5wc3dwX19idXR0b24tLWFycm93LS1sZWZ0OjpiZWZvcmUsXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tcmlnaHQ6OmJlZm9yZSB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL3ZlbmRvci9waG90b3N3aXBlLWRlZmF1bHQtc2tpbi5wbmdcIik7XG4gICAgfVxufVxuXG4ucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbi5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxufVxuXG5AbWVkaWEgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS4xKSwgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMS4wOTM3NSksIChtaW4tcmVzb2x1dGlvbjogMTA1ZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAxLjFkcHB4KSB7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmVcbiAgICAucHN3cC0tc3ZnIC5wc3dwX19idXR0b24sXG4gICAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdDo6YmVmb3JlLFxuICAgIC5wc3dwLS1zdmcgLnBzd3BfX2J1dHRvbi0tYXJyb3ctLXJpZ2h0OjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBzdmctbG9hZChcIi4uL21lZGlhL3ZlbmRvci9waG90b3N3aXBlLWRlZmF1bHQtc2tpbi5zdmdcIik7XG4gICAgfVxuXG4gICAgLnBzd3AtLXN2ZyAucHN3cF9fYnV0dG9uLS1hcnJvdy0tbGVmdCxcbiAgICAucHN3cC0tc3ZnIC5wc3dwX19idXR0b24tLWFycm93LS1yaWdodCB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxufVxuXG4ucHN3cF9fcHJlbG9hZGVyLS1hY3RpdmUgLnBzd3BfX3ByZWxvYWRlcl9faWNuIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvdmVuZG9yL3Bob3Rvc3dpcGUtcHJlbG9hZGVyLmdpZlwiKTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKYWNvYiBCZWFyY2UgQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFBvc3QgUGFzc3dvcmQgRm9ybVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ucG9zdC1wYXNzd29yZC1mb3JtIHtcbiAgICAudXNlci1jb250ZW50X190ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgfVxufVxuXG4ucG9zdC1wYXNzd29yZC1mb3JtX19pbnB1dCB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNWVtO1xuICAgIH1cbn1cbiIsIi8qKlxuICogUFdBIEluc3RhbGwgUHJvbXB0IDEuMC4yXG4gKiBQcm9tcHQgdXNlcnMgdG8gYWRkIHlvdXIgUFdBIHRvIHRoZWlyIGhvbWUgc2NyZWVuLCBzaW5jZSBBcHBsZSB3b27igJl0LlxuICogaHR0cHM6Ly9naXRodWIuY29tL0phY29iREIvcHdhLWluc3RhbGwtcHJvbXB0L1xuICpcbiAqIENvcHlyaWdodCAyMDE4IEphY29iIEJlYXJjZVxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZVxuICpcbiAqIFJlbGVhc2VkIG9uOiBOb3ZlbWJlciA2LCAyMDE4XG4gKi9cblxuLnB3YS1pbnN0YWxsLXByb21wdF9fY29udGFpbmVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbGVmdDogLTk5OWVtO1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogLTk5OWVtO1xuICAgIHRyYW5zaXRpb246IGxlZnQgMHMgMC4xNXMsIHRvcCAwcyAwLjE1cywgdmlzaWJpbGl0eSAwcyAwLjE1cztcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMTAwMDAwO1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0X19jb250YWluZXIuaXMtYWN0aXZlIHtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX292ZXJsYXkge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC41KTtcbiAgICBib3JkZXI6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTllbTtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cztcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAwO1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0X19jb250YWluZXIuaXMtYWN0aXZlIC5wd2EtaW5zdGFsbC1wcm9tcHRfX292ZXJsYXkge1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHQge1xuICAgIGJhY2tncm91bmQ6ICNGRkY7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGJveC1zaGFkb3c6IDBweCA0cHggOHB4IHJnYmEoMCwwLDAsMC4xMjUpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgY29sb3I6ICM0MjQyNDI7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gICAgbWF4LXdpZHRoOiAzMjBweDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1JSk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cywgdHJhbnNmb3JtIDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgIHotaW5kZXg6IDE7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX2NvbnRhaW5lci5pcy1hY3RpdmUgLnB3YS1pbnN0YWxsLXByb21wdCB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0OjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgdmlld0JveD0nMCAwIDEyOCAxMjgnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGZpbGw9JyUyM0ZGRkZGRicgZD0nTTY0LjE5Nyw1MC40N0M3OS42OTYsMzQuOTUgOTUuMjU5LDE5LjUwMiAxMTAuNTk3LDMuODI0QzExNC40MTEsMC4xODIgMTE0LjU2NSwxLjAyMiAxMTcuNzA3LDEuMjRDMTI0LjI5OSwyLjE2NyAxMjcuNzIzLDEwLjY4NyAxMjMuNDM1LDE2LjA3OEMxMDguNDUzLDMyLjQ3IDkyLjk5Nyw0OC4zOTkgNzcuMzg3LDY0LjE3NEM5Mi41NzEsODAuMDEgMTA3LjY4NSw5NS45MTcgMTIzLjAyNCwxMTEuNTk1QzEyOS4xOTUsMTE4LjM0OSAxMjAuNDMyLDEzMi41MjcgMTExLjAzNSwxMjQuNzE2Qzk0Ljk5MiwxMDkuNDAzIDc5LjQwOCw5My42MTEgNjMuOTc5LDc3LjY1QzQ4LjQ4NSw5My4xNjkgMzIuOTE3LDEwOC42MTggMTcuNTg0LDEyNC4yOTZDMTAuODM3LDEzMC43MzQgLTIuNDExLDEyMS4wMzEgNC43NDcsMTEyLjA0MkMxOS43MjgsOTUuNjUgMzUuMTc5LDc5LjcxNiA1MC43OTUsNjMuOTQ1QzM1LjYwNSw0OC4xMSAyMC40OTEsMzIuMTk4IDUuMTU3LDE2LjUyNUMwLjA4NSwxMC45NzYgMi45MTIsMC41ODYgMTIuMjY3LDEuMjRDMTQuMDY5LDEuNDkxIDE1LjcyMywyLjIyNyAxNy4xNDEsMy40MDRDMzMuMTg0LDE4LjcxNyA0OC43NjgsMzQuNTA5IDY0LjE5Nyw1MC40N1onIC8lM0UlM0Mvc3ZnJTNFJTBBXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3R0b206IDEwMCU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgbWFyZ2luOiAwIDAgMTZweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDE2cHg7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX2ljb25fX2NvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB2aWV3Qm94PScwIDAgNzAgNzAnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIGZpbGw9JyUyM0YwRjBGMCcgZD0nTTY1LDE3QzY1LDEwLjM3NyA1OS42MjMsNSA1Myw1TDE3LDVDMTAuMzc3LDUgNSwxMC4zNzcgNSwxN0w1LDUzQzUsNTkuNjIzIDEwLjM3Nyw2NSAxNyw2NUw1Myw2NUM1OS42MjMsNjUgNjUsNTkuNjIzIDY1LDUzTDY1LDE3WicgLyUzRSUzQy9zdmclM0UlMEFcIikgY2VudGVyIGNlbnRlciAvIDcwcHggNzBweCByZXBlYXQteDtcbiAgICBtYXJnaW46IDQwcHggMCAwO1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0X19pY29uIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiA2MHB4O1xufVxuXG4ucHdhLWluc3RhbGwtcHJvbXB0X19jb250ZW50IHtcbiAgICBwYWRkaW5nOiAxMHB4IDM1cHg7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbn1cblxuLnB3YS1pbnN0YWxsLXByb21wdF9fdGV4dCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIG1hcmdpbjogMCAwIDQ2cHg7XG59XG5cbi5wd2EtaW5zdGFsbC1wcm9tcHRfX2d1aWRlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbjogMDtcbn1cblxuLnB3YS1pbnN0YWxsLXByb21wdF9fZ3VpZGVfX2ljb24ge1xuICAgIG1hcmdpbjogMCAycHggNnB4O1xuICAgIHdpZHRoOiAyMHB4O1xufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBQV0EgSW5zdGFsbCBQcm9tcHQgKGh0dHBzOi8vZ2l0aHViLmNvbS9KYWNvYkRCL3B3YS1pbnN0YWxsLXByb21wdClcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLy8gVmVuZG9yXG5cbkB1c2UgXCJwd2EtaW5zdGFsbC1wcm9tcHQvc3R5bGVcIjtcbiIsIkBrZXlmcmFtZXMgc2Nyb2xsLWhpbnQtYXBwZWFyIHtcblxuICAwJSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDBweCk7XG4gICAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgNTAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQwcHgpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLnNjcm9sbC1oaW50LmlzLXJpZ2h0LXNjcm9sbGFibGUge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKDAsIDAsIDAsIC4xNSkgMCwgcmdiYSgwLCAwLCAwLCAwKSAxNnB4LCByZ2JhKDAsIDAsIDAsIDApKTtcbn1cblxuLnNjcm9sbC1oaW50LmlzLXJpZ2h0LXNjcm9sbGFibGUuaXMtbGVmdC1zY3JvbGxhYmxlIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDAsIDAsIDAsIC4xNSkgMCwgcmdiYSgwLCAwLCAwLCAwKSAxNnB4LCByZ2JhKDAsIDAsIDAsIDApKSwgbGluZWFyLWdyYWRpZW50KDI3MGRlZywgcmdiYSgwLCAwLCAwLCAuMTUpIDAsIHJnYmEoMCwgMCwgMCwgMCkgMTZweCwgcmdiYSgwLCAwLCAwLCAwKSk7XG59XG5cbi5zY3JvbGwtaGludC5pcy1sZWZ0LXNjcm9sbGFibGUge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMCwgMCwgMCwgLjE1KSAwLCByZ2JhKDAsIDAsIDAsIDApIDE2cHgsIHJnYmEoMCwgMCwgMCwgMCkpO1xufVxuXG4uc2Nyb2xsLWhpbnQtaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDUwJSAtIDI1cHgpO1xuICBsZWZ0OiBjYWxjKDUwJSAtIDYwcHgpO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTIwcHg7XG4gIGhlaWdodDogODBweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcztcbiAgb3BhY2l0eTogMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNyk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMjBweCAxMHB4IDEwcHggMTBweDtcbn1cblxuLnNjcm9sbC1oaW50LWljb24td3JhcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnNjcm9sbC1oaW50LXRleHQge1xuICBmb250LXNpemU6IDEwcHg7XG4gIGNvbG9yOiAjRkZGO1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi5zY3JvbGwtaGludC1pY29uLXdyYXAuaXMtYWN0aXZlIC5zY3JvbGwtaGludC1pY29uIHtcbiAgICBvcGFjaXR5OiAuODtcbn1cblxuLnNjcm9sbC1oaW50LWljb246YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBjb2xvcjogI0ZGRjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXlOUzQzTnlJZ2FHVnBaMmgwUFNJek1DNDFNaUlnZG1sbGQwSnZlRDBpTUNBd0lESTFMamMzSURNd0xqVXlJajQ4ZEdsMGJHVSs0NEtpNDRLNzQ0T0Q0NE9JSURNOEwzUnBkR3hsUGp4bklHbGtQU0xqZzZ6amdxVGpnNlRqZzd4Zk1pSWdaR0YwWVMxdVlXMWxQU0xqZzZ6amdxVGpnNlRqZzd3Z01pSStQR2NnYVdROUl1T0RyT09DcE9PRHBPT0R2Rjh4TFRJaUlHUmhkR0V0Ym1GdFpUMGk0NE9zNDRLazQ0T2s0NE84SURFaVBqeHdZWFJvSUdROUlrMHlNUzR6TXl3ek1DNDFNa2czTGpnMVFURXVOVFVzTVM0MU5Td3dMREFzTVN3MkxqTXNNamxoTVRJdU5EWXNNVEl1TkRZc01Dd3dMREF0TGpZekxUUXVORElzTWpVdU1UWXNNalV1TVRZc01Dd3dMREF0TkM0eU5TMDFiQzB1TURZdExqQTJRVFVzTlN3d0xEQXNNU3d3TERFMUxqZzJZVE11TmpRc015NDJOQ3d3TERBc01Td3hMakUzTFRJdU5qSXNNeTQyTXl3ekxqWXpMREFzTUN3eExEVXVNVFF1TURkV015NDNOMkV6TGpjM0xETXVOemNzTUN3eExERXNOeTQxTkN3d1ZqZ3VNek5oTXk0ek5Td3pMak0xTERBc01Dd3hMREV1TWpZc01Dd3pMRE1zTUN3d0xERXNNaXd4TGpJeUxETXVOU3d6TGpVc01Dd3dMREVzTWkwdU1EWXNNeTR5TVN3ekxqSXhMREFzTUN3eExESXNNUzQxTkN3ekxqYzBMRE11TnpRc01Dd3dMREVzTXl3dU5EZEJOQzR5TVN3MExqSXhMREFzTUN3eExESTFMamMwTERFMVl6QXNMakV4TERBc0xqSTNMREFzTGpRMllURTVMakkyTERFNUxqSTJMREFzTUN3eExTNDROQ3czWXkwdU1UUXVNemd0TGpNMkxqZ3hMUzQxTml3eExqSXliQzB1TVRFdU1qSmpNQ3d1TURjdExqQTVMakUwTFM0eE5DNHlNV0UzTGpFekxEY3VNVE1zTUN3d0xEQXRNUzR4Tnl3eUxqRTNZeTB1TURZdU5UWXRMakEyTERJdU1UVXRMakExTERJdU56RkJNUzQxTlN3eExqVTFMREFzTUN3eExESXhMak16TERNd0xqVXlXazA0TGpZeExESTRMakl4YURFeVl6QXRMamN4TERBdE1TNDNNUzR3TnkweUxqSXpZVGd1TnpRc09DNDNOQ3d3TERBc01Td3hMalU1TFRNdU1qVnNMakEyTFM0eE1tRXhNQ3d4TUN3d0xEQXNNQ3d1TkRZdE1Td3hOaTQ0TERFMkxqZ3NNQ3d3TERBc0xqY3ROaTR4TW1Nd0xTNHlNeXd3TFM0ME1Td3dMUzQxTkdnd1lUSXNNaXd3TERBc01DMHVOalF0TVM0MU1pd3hMak16TERFdU16TXNNQ3d3TERBdE1TNDFOUzR3T0N3eExqRXpMREV1TVRNc01Dd3dMREV0TVM0eE9DNHlPQ3d4TGpFMUxERXVNVFVzTUN3d0xERXRMamM0TFM0NU5Dd3hMakkyTERFdU1qWXNNQ3d3TERBdExqYzFMVEV1TVRFc01Td3hMREFzTUN3d0xURXVNVEV1TWpoc0xTNHhMakZoTVM0eE5Td3hMakUxTERBc01Dd3hMVEV1TVRrdU1qa3NNUzR4Tml3eExqRTJMREFzTUN3eExTNDNPQzB1T1RWakxTNHdPUzB1TmpndExqSXhMUzQzTnkwdU55MHVPRGRoTGpneUxqZ3lMREFzTUN3d0xURXNMalE0TERFdU1UWXNNUzR4Tml3d0xEQXNNUzB5TGpFMkxTNDFPRll6TGpjM1lURXVORFlzTVM0ME5pd3dMREVzTUMweUxqa3lMREIyTnk0NE5Xd3dMRFF1TXpOaE1TNHhOeXd4TGpFM0xEQXNNQ3d4TFM0NE15d3hMakV4TERFdU1UVXNNUzR4TlN3d0xEQXNNUzB4TGpJdExqTTFiQzB4TFM0NU1XTXRMalEzTFM0ME1pMHVOek10TGpZMkxTNDROQzB1TnpkaE1TNHpOU3d4TGpNMUxEQXNNQ3d3TFRJdExqRXlUREl1Tnl3eE5XRXhMak15TERFdU16SXNNQ3d3TERBdExqTTVMREZCTWk0MU55d3lMalUzTERBc01Dd3dMRE1zTVRjdU9EVnNNQ3d3WVRJM0xqSTBMREkzTGpJMExEQXNNQ3d4TERRdU55dzFMall5UVRFeUxqWXpMREV5TGpZekxEQXNNQ3d4TERndU5qRXNNamd1TWpGYVRUSXpMaklzTWpNdU16VmFUVFl1TlRFc01UWXVOVGxhSWlCbWFXeHNQU0lqWm1abUlpOCtQQzluUGp3dlp6NDhMM04yWno0PSk7XG59XG5cbi5zY3JvbGwtaGludC1pY29uOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgd2lkdGg6IDM0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMHB4O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJek15NHlPU0lnYUdWcFoyaDBQU0l4TWk0d01pSWdkbWxsZDBKdmVEMGlNQ0F3SURNekxqSTVJREV5TGpBeUlqNDhkR2wwYkdVKzQ0S2k0NEs3NDRPRDQ0T0lJREU4TDNScGRHeGxQanhuSUdsa1BTTGpnNnpqZ3FUamc2VGpnN3hmTWlJZ1pHRjBZUzF1WVcxbFBTTGpnNnpqZ3FUamc2VGpnN3dnTWlJK1BHY2dhV1E5SXVPRHJPT0NwT09EcE9PRHZGOHhMVElpSUdSaGRHRXRibUZ0WlQwaTQ0T3M0NEtrNDRPazQ0TzhJREVpUGp4c2FXNWxJSGd4UFNJeExqZzFJaUI1TVQwaU5pNHdNU0lnZURJOUlqRXdMalFpSUhreVBTSTJMakF4SWlCbWFXeHNQU0lqWm1abUlpOCtQSEJoZEdnZ1pEMGlUVEV3TGpRc055NHhOMGd4TGpnMVlURXVNVFlzTVM0eE5pd3dMREVzTVN3d0xUSXVNekZJTVRBdU5HRXhMakUyTERFdU1UWXNNQ3d4TERFc01Dd3lMak14V2lJZ1ptbHNiRDBpSTJabVppSXZQanh3WVhSb0lHUTlJazAzTGpRc01USmhNUzR4TlN3eExqRTFMREFzTUN3eExTNDNNaTB1TWpWc0xUWXVNalV0TlVFeExqSXNNUzR5TERBc01Dd3hMREFzTlM0NE55d3hMakUwTERFdU1UUXNNQ3d3TERFc0xqUTJMRFZNTmk0M0xqSXpRVEV1TVRZc01TNHhOaXd3TERBc01TdzRMakVzTWk0d09Fd3pMRFV1T1RFc09DNHhNaXd4TUVFeExqRTJMREV1TVRZc01Dd3dMREVzTnk0MExERXlXaUlnWm1sc2JEMGlJMlptWmlJdlBqeHNhVzVsSUhneFBTSXpNUzQwTlNJZ2VURTlJall1TURFaUlIZ3lQU0l5TWk0NE9TSWdlVEk5SWpZdU1ERWlJR1pwYkd3OUlpTm1abVlpTHo0OGNHRjBhQ0JrUFNKTk16RXVORFVzTnk0eE4wZ3lNaTQ0T1dFeExqRTJMREV1TVRZc01Dd3hMREVzTUMweUxqTXhhRGd1TlRaaE1TNHhOaXd4TGpFMkxEQXNNQ3d4TERBc01pNHpNVm9pSUdacGJHdzlJaU5tWm1ZaUx6NDhjR0YwYUNCa1BTSk5NalV1T1N3eE1tRXhMakU0TERFdU1UZ3NNQ3d3TERFdExqa3hMUzQwTTBFeExqRTNMREV1TVRjc01Dd3dMREVzTWpVdU1UY3NNVEJzTlM0d09TMDBMakExVERJMUxqSXNNaTR3T0VFeExqRTJMREV1TVRZc01Dd3dMREVzTWpZdU5Ua3VNak5NTXpJdU9EUXNOV0V4TGpFMkxERXVNVFlzTUN3d0xERXNMalExTGpreExERXVNVFFzTVM0eE5Dd3dMREFzTVMwdU5ETXVPVEpzTFRZdU1qUXNOVUV4TGpFM0xERXVNVGNzTUN3d0xERXNNalV1T1N3eE1sb2lJR1pwYkd3OUlpTm1abVlpTHo0OEwyYytQQzluUGp3dmMzWm5QZz09KTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1kZWxheTogMi40cztcbn1cblxuLnNjcm9sbC1oaW50LWljb24td3JhcC5pcy1hY3RpdmUgLnNjcm9sbC1oaW50LWljb246YWZ0ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2Nyb2xsLWhpbnQtaWNvbi13cmFwLmlzLWFjdGl2ZSAuc2Nyb2xsLWhpbnQtaWNvbjpiZWZvcmUge1xuICBhbmltYXRpb246IHNjcm9sbC1oaW50LWFwcGVhciAxLjJzIGxpbmVhcjtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMjtcbn1cblxuLnNjcm9sbC1oaW50LWljb24td2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICBib3gtc2hhZG93OiAwIDRweCA1cHggcmdiYSgwLCAwLCAwLCAuNCk7XG59XG5cbi5zY3JvbGwtaGludC1pY29uLXdoaXRlOmJlZm9yZSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSGRwWkhSb1BTSXlOUzQzTnlJZ2FHVnBaMmgwUFNJek1DNDFNaUlnZG1sbGQwSnZlRDBpTUNBd0lESTFMamMzSURNd0xqVXlJajQ4ZEdsMGJHVSs0NEtpNDRLNzQ0T0Q0NE9JSURROEwzUnBkR3hsUGp4bklHbGtQU0xqZzZ6amdxVGpnNlRqZzd4Zk1pSWdaR0YwWVMxdVlXMWxQU0xqZzZ6amdxVGpnNlRqZzd3Z01pSStQR2NnYVdROUl1T0RyT09DcE9PRHBPT0R2Rjh4TFRJaUlHUmhkR0V0Ym1GdFpUMGk0NE9zNDRLazQ0T2s0NE84SURFaVBqeHdZWFJvSUdROUlrMHlNUzR6TXl3ek1DNDFNa2czTGpnMVFURXVOVFVzTVM0MU5Td3dMREFzTVN3MkxqTXNNamxoTVRJdU5EWXNNVEl1TkRZc01Dd3dMREF0TGpZekxUUXVORElzTWpVdU1UWXNNalV1TVRZc01Dd3dMREF0TkM0eU5TMDFiQzB1TURZdExqQTJRVFVzTlN3d0xEQXNNU3d3TERFMUxqZzJZVE11TmpRc015NDJOQ3d3TERBc01Td3hMakUzTFRJdU5qSXNNeTQyTXl3ekxqWXpMREFzTUN3eExEVXVNVFF1TURkV015NDNOMkV6TGpjM0xETXVOemNzTUN3eExERXNOeTQxTkN3d1ZqZ3VNek5oTXk0ek5Td3pMak0xTERBc01Dd3hMREV1TWpZc01Dd3pMRE1zTUN3d0xERXNNaXd4TGpJeUxETXVOU3d6TGpVc01Dd3dMREVzTWkwdU1EWXNNeTR5TVN3ekxqSXhMREFzTUN3eExESXNNUzQxTkN3ekxqYzBMRE11TnpRc01Dd3dMREVzTXl3dU5EZEJOQzR5TVN3MExqSXhMREFzTUN3eExESTFMamMwTERFMVl6QXNMakV4TERBc0xqSTNMREFzTGpRMllURTVMakkyTERFNUxqSTJMREFzTUN3eExTNDROQ3czWXkwdU1UUXVNemd0TGpNMkxqZ3hMUzQxTml3eExqSXliQzB1TVRFdU1qSmpNQ3d1TURjdExqQTVMakUwTFM0eE5DNHlNV0UzTGpFekxEY3VNVE1zTUN3d0xEQXRNUzR4Tnl3eUxqRTNZeTB1TURZdU5UWXRMakEyTERJdU1UVXRMakExTERJdU56RkJNUzQxTlN3eExqVTFMREFzTUN3eExESXhMak16TERNd0xqVXlXazA0TGpZeExESTRMakl4YURFeVl6QXRMamN4TERBdE1TNDNNUzR3TnkweUxqSXpZVGd1TnpRc09DNDNOQ3d3TERBc01Td3hMalU1TFRNdU1qVnNMakEyTFM0eE1tRXhNQ3d4TUN3d0xEQXNNQ3d1TkRZdE1Td3hOaTQ0TERFMkxqZ3NNQ3d3TERBc0xqY3ROaTR4TW1Nd0xTNHlNeXd3TFM0ME1Td3dMUzQxTkdnd1lUSXNNaXd3TERBc01DMHVOalF0TVM0MU1pd3hMak16TERFdU16TXNNQ3d3TERBdE1TNDFOUzR3T0N3eExqRXpMREV1TVRNc01Dd3dMREV0TVM0eE9DNHlPQ3d4TGpFMUxERXVNVFVzTUN3d0xERXRMamM0TFM0NU5Dd3hMakkyTERFdU1qWXNNQ3d3TERBdExqYzFMVEV1TVRFc01Td3hMREFzTUN3d0xURXVNVEV1TWpoc0xTNHhMakZoTVM0eE5Td3hMakUxTERBc01Dd3hMVEV1TVRrdU1qa3NNUzR4Tml3eExqRTJMREFzTUN3eExTNDNPQzB1T1RWakxTNHdPUzB1TmpndExqSXhMUzQzTnkwdU55MHVPRGRoTGpneUxqZ3lMREFzTUN3d0xURXNMalE0TERFdU1UWXNNUzR4Tml3d0xEQXNNUzB5TGpFMkxTNDFPRll6TGpjM1lURXVORFlzTVM0ME5pd3dMREVzTUMweUxqa3lMREIyTnk0NE5Xd3dMRFF1TXpOaE1TNHhOeXd4TGpFM0xEQXNNQ3d4TFM0NE15d3hMakV4TERFdU1UVXNNUzR4TlN3d0xEQXNNUzB4TGpJdExqTTFiQzB4TFM0NU1XTXRMalEzTFM0ME1pMHVOek10TGpZMkxTNDROQzB1TnpkaE1TNHpOU3d4TGpNMUxEQXNNQ3d3TFRJdExqRXlUREl1Tnl3eE5XRXhMak15TERFdU16SXNNQ3d3TERBdExqTTVMREZCTWk0MU55d3lMalUzTERBc01Dd3dMRE1zTVRjdU9EVnNNQ3d3WVRJM0xqSTBMREkzTGpJMExEQXNNQ3d4TERRdU55dzFMall5UVRFeUxqWXpMREV5TGpZekxEQXNNQ3d4TERndU5qRXNNamd1TWpGYVRUSXpMaklzTWpNdU16VmFUVFl1TlRFc01UWXVOVGxhSWk4K1BDOW5Qand2Wno0OEwzTjJaejQ9KTtcbn1cblxuLnNjcm9sbC1oaW50LWljb24td2hpdGU6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhkcFpIUm9QU0l6TXk0eU9TSWdhR1ZwWjJoMFBTSXhNaTR3TWlJZ2RtbGxkMEp2ZUQwaU1DQXdJRE16TGpJNUlERXlMakF5SWo0OGRHbDBiR1UrNDRLaTQ0Szc0NE9ENDRPSUlESThMM1JwZEd4bFBqeG5JR2xrUFNMamc2empncVRqZzZUamc3eGZNaUlnWkdGMFlTMXVZVzFsUFNMamc2empncVRqZzZUamc3d2dNaUkrUEdjZ2FXUTlJdU9Eck9PQ3BPT0RwT09EdkY4eExUSWlJR1JoZEdFdGJtRnRaVDBpNDRPczQ0S2s0NE9rNDRPOElERWlQanhzYVc1bElIZ3hQU0l4TGpnMUlpQjVNVDBpTmk0d01TSWdlREk5SWpFd0xqUWlJSGt5UFNJMkxqQXhJaTgrUEhCaGRHZ2daRDBpVFRFd0xqUXNOeTR4TjBneExqZzFZVEV1TVRZc01TNHhOaXd3TERFc01Td3dMVEl1TXpGSU1UQXVOR0V4TGpFMkxERXVNVFlzTUN3eExERXNNQ3d5TGpNeFdpSXZQanh3WVhSb0lHUTlJazAzTGpRc01USmhNUzR4TlN3eExqRTFMREFzTUN3eExTNDNNaTB1TWpWc0xUWXVNalV0TlVFeExqSXNNUzR5TERBc01Dd3hMREFzTlM0NE55d3hMakUwTERFdU1UUXNNQ3d3TERFc0xqUTJMRFZNTmk0M0xqSXpRVEV1TVRZc01TNHhOaXd3TERBc01TdzRMakVzTWk0d09Fd3pMRFV1T1RFc09DNHhNaXd4TUVFeExqRTJMREV1TVRZc01Dd3dMREVzTnk0MExERXlXaUl2UGp4c2FXNWxJSGd4UFNJek1TNDBOU0lnZVRFOUlqWXVNREVpSUhneVBTSXlNaTQ0T1NJZ2VUSTlJall1TURFaUx6NDhjR0YwYUNCa1BTSk5NekV1TkRVc055NHhOMGd5TWk0NE9XRXhMakUyTERFdU1UWXNNQ3d4TERFc01DMHlMak14YURndU5UWmhNUzR4Tml3eExqRTJMREFzTUN3eExEQXNNaTR6TVZvaUx6NDhjR0YwYUNCa1BTSk5NalV1T1N3eE1tRXhMakU0TERFdU1UZ3NNQ3d3TERFdExqa3hMUzQwTTBFeExqRTNMREV1TVRjc01Dd3dMREVzTWpVdU1UY3NNVEJzTlM0d09TMDBMakExVERJMUxqSXNNaTR3T0VFeExqRTJMREV1TVRZc01Dd3dMREVzTWpZdU5Ua3VNak5NTXpJdU9EUXNOV0V4TGpFMkxERXVNVFlzTUN3d0xERXNMalExTGpreExERXVNVFFzTVM0eE5Dd3dMREFzTVMwdU5ETXVPVEpzTFRZdU1qUXNOVUV4TGpFM0xERXVNVGNzTUN3d0xERXNNalV1T1N3eE1sb2lMejQ4TDJjK1BDOW5Qand2YzNablBnPT0pO1xufVxuXG4uc2Nyb2xsLWhpbnQtaWNvbi13aGl0ZSAuc2Nyb2xsLWhpbnQtdGV4dCB7XG4gIGNvbG9yOiAjMDAwO1xufSIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU2Nyb2xsSGludCAoaHR0cHM6Ly9hcHBsZXBsZS5naXRodWIuaW8vc2Nyb2xsLWhpbnQvKVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1jbGFzcy1wYXR0ZXJuICovXG5cbi8vIFZlbmRvclxuXG5AdXNlIFwic2Nyb2xsLWhpbnQvc2Nzcy9zY3JvbGwtaGludFwiO1xuXG4vLyBDdXN0b21cblxuLnNjcm9sbC1oaW50LWljb24td3JhcCB7XG4gICAgJiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmaXhlcyBpc3N1ZSB3aXRoIHRhYmxlcyB0aGF0IGFyZSB0b28gc2hvcnRcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFNlYXJjaCBGb3JtXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5zZWFyY2gtZm9ybV9fY29udGFpbmVyIHtcbiAgICAmIHtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAwIDE1LCAxNik7XG4gICAgfVxufVxuXG4uc2VhcmNoLWZvcm0ge1xuICAgICYge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxufVxuXG4uc2VhcmNoLWZvcm1fX2lucHV0IHtcbiAgICAmIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE2KTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW1pZnkoNDgsIDE2KTtcbiAgICB9XG59XG5cbi5zZWFyY2gtZm9ybV9fYnV0dG9uIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm90dG9tOiByZW1pZnkoMik7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImZvcmVncm91bmRcIik7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE2LCAxNik7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDAgMTYsIDE2KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogcmVtaWZ5KDIpO1xuICAgICAgICB0b3A6IHJlbWlmeSgyKTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXM7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBjb2xvcjogY29sb3IoXCJhY2NlbnRcIiwgXCJzaGFkZVwiKTtcbiAgICB9XG59XG5cbi8qIGV4cGFuZGFibGUgdmFyaWFudCAqL1xuXG4uc2VhcmNoLWZvcm1fX2NvbnRhaW5lci0tZXhwYW5kYWJsZSB7XG4gICAgJiB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC05OTllbTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cywgdG9wIDBzIDAuMTVzLCB2aXNpYmlsaXR5IDBzIDAuMTVzO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXM7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLnNlYXJjaC1mb3JtIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBTa2lwIExpbmtzXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5za2lwLWxpbmtzIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogY29sb3IoXCJhY2NlbnRcIik7XG4gICAgICAgIGJvcmRlcjogcmVtaWZ5KDEpIHNvbGlkIGNvbG9yKFwiYWNjZW50XCIsIFwic2hhZGVcIik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbWlmeSg0KTtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwibGlnaHRcIik7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsZWZ0OiAtOTk5ZW07XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSg4IDEyLCAxNik7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0b3A6IC05OTllbTtcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgIH1cblxuICAgICY6Zm9jdXMge1xuICAgICAgICBsZWZ0OiByZW1pZnkoMjAsIDE2KTtcbiAgICAgICAgdG9wOiByZW1pZnkoMjAsIDE2KTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG59XG4iLCIvKipcbiAqIFN3aXBlciA4LjQuNFxuICogTW9zdCBtb2Rlcm4gbW9iaWxlIHRvdWNoIHNsaWRlciBhbmQgZnJhbWV3b3JrIHdpdGggaGFyZHdhcmUgYWNjZWxlcmF0ZWQgdHJhbnNpdGlvbnNcbiAqIGh0dHBzOi8vc3dpcGVyanMuY29tXG4gKlxuICogQ29weXJpZ2h0IDIwMTQtMjAyMiBWbGFkaW1pciBLaGFybGFtcGlkaVxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZVxuICpcbiAqIFJlbGVhc2VkIG9uOiBPY3RvYmVyIDEyLCAyMDIyXG4gKi9cblxuQGltcG9ydCAnc3dpcGVyLXZhcnMuc2Nzcyc7XG5AYXQtcm9vdCB7XG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnc3dpcGVyLWljb25zJztcbiAgICBzcmM6IHVybCgnZGF0YTphcHBsaWNhdGlvbi9mb250LXdvZmY7Y2hhcnNldD11dGYtODtiYXNlNjQsIGQwOUdSZ0FCQUFBQUFBWmdBQkFBQUFBQURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCR1JsUk5BQUFHUkFBQUFCb0FBQUFjaTZxSGtVZEVSVVlBQUFXZ0FBQUFJd0FBQUNRQVlBQlhSMUJQVXdBQUJoUUFBQUF1QUFBQU51QVk3K3hIVTFWQ0FBQUZ4QUFBQUZBQUFBQm0yZlBjelU5VEx6SUFBQUhjQUFBQVNnQUFBR0JQOVY1UlkyMWhjQUFBQWtRQUFBQ0lBQUFCWXQ2RjBjQmpkblFnQUFBQ3pBQUFBQVFBQUFBRUFCRUJSR2RoYzNBQUFBV1lBQUFBQ0FBQUFBai8vd0FEWjJ4NVpnQUFBeXdBQUFETUFBQUQyTUh0cnlWb1pXRmtBQUFCYkFBQUFEQUFBQUEyRTIrZW9XaG9aV0VBQUFHY0FBQUFId0FBQUNRQzlnRHphRzEwZUFBQUFpZ0FBQUFaQUFBQXJnSmtBQkZzYjJOaEFBQUMwQUFBQUZvQUFBQmFGUUFVR0cxaGVIQUFBQUc4QUFBQUh3QUFBQ0FBY0FCQWJtRnRaUUFBQS9nQUFBRTVBQUFDWHZGZEJ3bHdiM04wQUFBRk5BQUFBR0lBQUFDRTVzNzRoWGphWTJCa1lHQUFZcGY1SHUvaitXMitNbkF6TVlEQXphWDZRakQ2LzQvL0J4ajVHQThBdVJ3TVlHa0FQeXdMMTNqYVkyQmtZR0E4OFA4QWd4NGorLzhmUURZZkExQUVCV2dEQUlCMkJPb0FlTnBqWUdSZ1lOQmg0R2RnWWdBQkVNbklBQkp6WU5BRENRQUFDV2dBc1FCNDJtTmdZZnpDT0lHQmxZR0IwWWN4allHQndSMUtmMldRWkdoaFlHQmlZR1ZtZ0FGR0JpUVFrT2Fhd3REQW9NQlF4WGpnL3dFR1BjWUREQTR3TlVBMkNDZ3dzQUFBTzRFTDZnQUFlTnBqMk0wZ3lBQUNxeGdHTldCa1oyRDQvd01BK3hrRGRnQUFBSGphWTJCZ1lHYUFZQmtHUmdZUWlBSHlHTUY4RmdZSElNM0R3TUhBQkdRck1PZ3lXRExFTTFUOS93OFVCZkVNZ0x6RS8vLy9QLzUvL2YvVi94dityNGVhQUFlTWJBeHdJVVltSU1IRWdLWUFZalVjc0RBd3NMS3hjM0J5Y2ZQdzhqRVFBL2daQkFTRmhFVkV4Y1FsSktXa1pXVGw1QlVVbFpSVlZOWFVOVFFaQmdNQUFNUitFK2dBRVFGRUFBQUFLZ0FxQUNvQU5BQStBRWdBVWdCY0FHWUFjQUI2QUlRQWpnQ1lBS0lBckFDMkFNQUF5Z0RVQU40QTZBRHlBUHdCQmdFUUFSb0JKQUV1QVRnQlFnRk1BVllCWUFGcUFYUUJmZ0dJQVpJQm5BR21BYklCemdIc0FBQjQydTJOTVE2Q1VBeUdXNTY4eDlBbmVZWWdtNE1KYmhLRmFFeElPQVZYOEFwZXdTdDRCaWM0QWZlQWlkM1ZPQml4RHhmUFlFemE1TytYZmkwNFlBRGdnaVVJVUxDdUVKSzhWaE80YlN2cGRua3RISTVRQ1l0ZGkyc2w4Wm5YYUhscVVyTkt6ZEtjVDhjamxxK3J3WlN2SVZjek5pZXpzZm5QL3V6bm1mUEZCTk9ETTJLN01UUTQ1WUVBWnFHUDgxQW1HR2NGM2lQcU9vcDByMVNQVGFUYlZrZlVlNEhYajk3d1lFK3lOd1dZeHdXdTR2MXVnV0hnbzNTMVhkWkVWcVdNN0VUMGNmbkxHeFdma2dSNDJvMlB2V3JETUJTRmovSUhMYUYwektqUmdkaVZNd1NjTlJBb1dVb0g3OFkyaWNCL3lJWTA5QW42QUgyQmR1L1VCK3l4b3BZc2hRaUV2bnZ1MGRVUmdEdDhRZUM4UER3N0ZwamkzZkVBNHovUEVKNllPQjVoS2g0ZGozRXZYaHhQcUgvU0tVWTNySjdzclo0RlpuaDFQTUF0UGh3UDZmbDJQTUpNUERnZVE0clk4WVQ2R3phbzBlQUVBNDA5RHVnZ21UbkZuT2NTQ2lFaUxNZ3hDaVRJNkNxNURaVWQzUW1wMTB2TzBMYUxUZDJjak40Zk91bWxjN2xVWWJTUWNaRmt1dFJHN2c2SktaS3kwUm1kTFk2ODBDRG5FSitVTWtwRkZlMVJON254ZFZwWHJDNGFUdG5hdXJPblllcmNaZzJZVm1MTi9kL2djemZFaW1yRS9mcy9iT3VxMjlabW44dGxvT1JhWGdaZ0dhNzh5TzkvY25YbTJCcGFHdnEyNUR2OVM0RTkrNVNJYzlQcXVwSktoWUZTU2w0NytRY3IxbVlOQUFBQWVOcHR3MGNLd2tBQUFNRFpKQThRN09VSnZrTHNQZlo2ekZWRVJQeThxSGgyWUVSKzNpL0JQODN2SUJMTHlTc29LaW1ycUtxcGEyaHA2K2pxNlJzWUdobWJtSnFaU3kwc3JheHRiTzNzSFJ5ZG5FTVU0dVI2eXg3SkpYdmVQN1dyRHljQUFBQUFBQUgvL3dBQ2VOcGpZR1JnWU9BQlloa2daZ0pDWmdaTkJrWUdMUVp0SUpzRkxNWUFBQXczQUxnQWVOb2xpekVLZ0RBUUJDY2hSYkMyc0ZFUjBZRDZxVlFpQkN2L0g5ZXpHSTZaNVhCQXc4Q0JLL201aVFRVmF1VmJYTG5Pck1adjJvTGRLRmE4UGp1cnUyaEp6R2FibU9TTHpOTXp2dXRwQjNONDJtTmdaR0JnNEdLUVl6QmhZTXhKTE1sajRHQmdBWW93L1AvUEFKSmhMTTZzU29XS2ZXQ0FBd0RBamdiUkFBQjQybU5nWUdCa0FJSWJDWm81SVBybVVuMGhHQTBBTzhFRlRRQUEnKVxuICAgICAgZm9ybWF0KCd3b2ZmJyk7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gIH1cbn1cbkBhdC1yb290IHtcbiAgOnJvb3Qge1xuICAgIC0tc3dpcGVyLXRoZW1lLWNvbG9yOiAjeyR0aGVtZUNvbG9yfTtcbiAgfVxufVxuLnN3aXBlciB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgLyogRml4IG9mIFdlYmtpdCBmbGlja2VyaW5nICovXG4gIHotaW5kZXg6IDE7XG59XG4uc3dpcGVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5zd2lwZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogZmxleDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cbi5zd2lwZXItYW5kcm9pZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci13cmFwcGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDAsIDApO1xufVxuLnN3aXBlci1wb2ludGVyLWV2ZW50cyB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICYuc3dpcGVyLXZlcnRpY2FsIHtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi14O1xuICB9XG59XG4uc3dpcGVyLXNsaWRlIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xufVxuLnN3aXBlci1zbGlkZS1pbnZpc2libGUtYmxhbmsge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4vKiBBdXRvIEhlaWdodCAqL1xuLnN3aXBlci1hdXRvaGVpZ2h0IHtcbiAgJixcbiAgLnN3aXBlci1zbGlkZSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLnN3aXBlci13cmFwcGVyIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbiAgfVxufVxuLnN3aXBlci1iYWNrZmFjZS1oaWRkZW4gLnN3aXBlci1zbGlkZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLyogM0QgRWZmZWN0cyAqL1xuLnN3aXBlci0zZCB7XG4gICYsXG4gICYuc3dpcGVyLWNzcy1tb2RlIC5zd2lwZXItd3JhcHBlciB7XG4gICAgcGVyc3BlY3RpdmU6IDEyMDBweDtcbiAgfVxuICAuc3dpcGVyLXdyYXBwZXIsXG4gIC5zd2lwZXItc2xpZGUsXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbiAgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wLFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4gIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICAgIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG4gIH1cbiAgLnN3aXBlci1zbGlkZS1zaGFkb3csXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3AsXG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgfVxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdyB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgfVxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgfVxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICB9XG4gIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgfVxuICAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIH1cbn1cblxuLyogQ1NTIE1vZGUgKi9cbi5zd2lwZXItY3NzLW1vZGUge1xuICA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAvKiBGb3IgRmlyZWZveCAqL1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTsgLyogRm9yIEludGVybmV0IEV4cGxvcmVyIGFuZCBFZGdlICovXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlIHtcbiAgICBzY3JvbGwtc25hcC1hbGlnbjogc3RhcnQgc3RhcnQ7XG4gIH1cbn1cbi5zd2lwZXItaG9yaXpvbnRhbC5zd2lwZXItY3NzLW1vZGUge1xuICA+IC5zd2lwZXItd3JhcHBlciB7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gIH1cbn1cbi5zd2lwZXItdmVydGljYWwuc3dpcGVyLWNzcy1tb2RlIHtcbiAgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAgIHNjcm9sbC1zbmFwLXR5cGU6IHkgbWFuZGF0b3J5O1xuICB9XG59XG4uc3dpcGVyLWNlbnRlcmVkIHtcbiAgPiAuc3dpcGVyLXdyYXBwZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgb3JkZXI6IDk5OTk7XG4gIH1cbiAgJi5zd2lwZXItaG9yaXpvbnRhbCB7XG4gICAgPiAuc3dpcGVyLXdyYXBwZXIgPiAuc3dpcGVyLXNsaWRlOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYmVmb3JlKTtcbiAgICB9XG4gICAgPiAuc3dpcGVyLXdyYXBwZXI6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogdmFyKC0tc3dpcGVyLWNlbnRlcmVkLW9mZnNldC1hZnRlcik7XG4gICAgfVxuICB9XG4gICYuc3dpcGVyLXZlcnRpY2FsIHtcbiAgICA+IC5zd2lwZXItd3JhcHBlciA+IC5zd2lwZXItc2xpZGU6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJsb2NrLXN0YXJ0OiB2YXIoLS1zd2lwZXItY2VudGVyZWQtb2Zmc2V0LWJlZm9yZSk7XG4gICAgfVxuICAgID4gLnN3aXBlci13cmFwcGVyOjpiZWZvcmUge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IHZhcigtLXN3aXBlci1jZW50ZXJlZC1vZmZzZXQtYWZ0ZXIpO1xuICAgIH1cbiAgfVxuXG4gID4gLnN3aXBlci13cmFwcGVyID4gLnN3aXBlci1zbGlkZSB7XG4gICAgc2Nyb2xsLXNuYXAtYWxpZ246IGNlbnRlciBjZW50ZXI7XG4gIH1cbn1cblxuXG5cbiIsIi5zd2lwZXItZmFkZSB7XG4gICYuc3dpcGVyLWZyZWUtbW9kZSB7XG4gICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgfVxuICB9XG4gIC5zd2lwZXItc2xpZGUge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gICAgLnN3aXBlci1zbGlkZSB7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbiAgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICAgICYsXG4gICAgJiAuc3dpcGVyLXNsaWRlLWFjdGl2ZSB7XG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgJy4uLy4uL3N3aXBlci12YXJzLnNjc3MnO1xuQGF0LXJvb3Qge1xuICA6cm9vdCB7XG4gICAgLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplOiA0NHB4O1xuICAgIC8qXG4gIC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3I6IHZhcigtLXN3aXBlci10aGVtZS1jb2xvcik7XG4gICovXG4gIH1cbn1cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IGNhbGModmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkgLyA0NCAqIDI3KTtcbiAgaGVpZ2h0OiB2YXIoLS1zd2lwZXItbmF2aWdhdGlvbi1zaXplKTtcbiAgbWFyZ2luLXRvcDogY2FsYygwcHggLSAodmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tc2l6ZSkgLyAyKSk7XG4gIHotaW5kZXg6IDEwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tc3dpcGVyLW5hdmlnYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICAmLnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuMzU7XG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4gICYuc3dpcGVyLWJ1dHRvbi1oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG4gIC5zd2lwZXItbmF2aWdhdGlvbi1kaXNhYmxlZCAmIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgZm9udC1mYW1pbHk6IHN3aXBlci1pY29ucztcbiAgICBmb250LXNpemU6IHZhcigtLXN3aXBlci1uYXZpZ2F0aW9uLXNpemUpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgZm9udC12YXJpYW50OiBpbml0aWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG59XG4uc3dpcGVyLWJ1dHRvbi1wcmV2LFxuLnN3aXBlci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdwcmV2JztcbiAgfVxuICBsZWZ0OiAxMHB4O1xuICByaWdodDogYXV0bztcbn1cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJ25leHQnO1xuICB9XG4gIHJpZ2h0OiAxMHB4O1xuICBsZWZ0OiBhdXRvO1xufVxuXG4uc3dpcGVyLWJ1dHRvbi1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIkBpbXBvcnQgJy4uLy4uL3N3aXBlci12YXJzLnNjc3MnO1xuQGF0LXJvb3Qge1xuICA6cm9vdCB7XG4gICAgLypcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvcjogdmFyKC0tc3dpcGVyLXRoZW1lLWNvbG9yKTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtc2l6ZTogOHB4O1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC13aWR0aDogOHB4O1xuICAtLXN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1oZWlnaHQ6IDhweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaW5hY3RpdmUtY29sb3I6ICMwMDA7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLW9wYWNpdHk6IDAuMjtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eTogMTtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtaG9yaXpvbnRhbC1nYXA6IDRweDtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtdmVydGljYWwtZ2FwOiA2cHg7XG4gICovXG4gIH1cbn1cbi5zd2lwZXItcGFnaW5hdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiAzMDBtcyBvcGFjaXR5O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDtcbiAgJi5zd2lwZXItcGFnaW5hdGlvbi1oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWRpc2FibGVkID4gJixcbiAgJi5zd2lwZXItcGFnaW5hdGlvbi1kaXNhYmxlZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4vKiBDb21tb24gU3R5bGVzICovXG4uc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24sXG4uc3dpcGVyLXBhZ2luYXRpb24tY3VzdG9tLFxuLnN3aXBlci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMsXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsIHtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi8qIEJ1bGxldHMgKi9cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IDA7XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW1haW4ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldiB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2LXByZXYge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dCB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjY2KTtcbiAgfVxuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0LW5leHQge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIH1cbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB3aWR0aDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXdpZHRoLCB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtc2l6ZSwgOHB4KSk7XG4gIGhlaWdodDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhlaWdodCwgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LXNpemUsIDhweCkpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLWNvbG9yLCAjMDAwKTtcbiAgb3BhY2l0eTogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWluYWN0aXZlLW9wYWNpdHksIDAuMik7XG4gIEBhdC1yb290IGJ1dHRvbiN7Jn0ge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cbiAgLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAmIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAmOm9ubHktY2hpbGQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBvcGFjaXR5OiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtb3BhY2l0eSwgMSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLXN3aXBlci1wYWdpbmF0aW9uLWNvbG9yLCB2YXIoLS1zd2lwZXItdGhlbWUtY29sb3IpKTtcbn1cblxuLnN3aXBlci12ZXJ0aWNhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLFxuLnN3aXBlci1wYWdpbmF0aW9uLXZlcnRpY2FsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMge1xuICByaWdodDogMTBweDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAtNTAlLCAwKTtcbiAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgbWFyZ2luOiB2YXIoLS1zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtdmVydGljYWwtZ2FwLCA2cHgpIDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgJi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB3aWR0aDogOHB4O1xuICAgIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdHJhbnNpdGlvbjogMjAwbXMgdHJhbnNmb3JtLCAyMDBtcyB0b3A7XG4gICAgfVxuICB9XG59XG4uc3dpcGVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyxcbi5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMge1xuICAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICBtYXJnaW46IDAgdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWhvcml6b250YWwtZ2FwLCA0cHgpO1xuICB9XG4gICYuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgICB0cmFuc2l0aW9uOiAyMDBtcyB0cmFuc2Zvcm0sIDIwMG1zIGxlZnQ7XG4gICAgfVxuICB9XG59XG4uc3dpcGVyLWhvcml6b250YWwuc3dpcGVyLXJ0bCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIHRyYW5zaXRpb246IDIwMG1zIHRyYW5zZm9ybSwgMjAwbXMgcmlnaHQ7XG59XG4vKiBQcm9ncmVzcyAqL1xuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3IsIHZhcigtLXN3aXBlci10aGVtZS1jb2xvcikpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgfVxuICAuc3dpcGVyLXJ0bCAmIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIH1cbiAgLnN3aXBlci1ob3Jpem9udGFsID4gJixcbiAgJi5zd2lwZXItcGFnaW5hdGlvbi1ob3Jpem9udGFsLFxuICAuc3dpcGVyLXZlcnRpY2FsID4gJi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSxcbiAgJi5zd2lwZXItcGFnaW5hdGlvbi12ZXJ0aWNhbC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA0cHg7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLnN3aXBlci12ZXJ0aWNhbCA+ICYsXG4gICYuc3dpcGVyLXBhZ2luYXRpb24tdmVydGljYWwsXG4gIC5zd2lwZXItaG9yaXpvbnRhbCA+ICYuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItb3Bwb3NpdGUsXG4gICYuc3dpcGVyLXBhZ2luYXRpb24taG9yaXpvbnRhbC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1vcHBvc2l0ZSB7XG4gICAgd2lkdGg6IDRweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gIH1cbn1cbi5zd2lwZXItcGFnaW5hdGlvbi1sb2NrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogU3dpcGVyIChodHRwOi8vaWRhbmdlcm8udXMvc3dpcGVyLylcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4vLyBWZW5kb3JcblxuQHVzZSBcInN3aXBlci9zd2lwZXJcIjtcbkB1c2UgXCJzd2lwZXIvbW9kdWxlcy9hdXRvcGxheS9hdXRvcGxheVwiO1xuQHVzZSBcInN3aXBlci9tb2R1bGVzL2VmZmVjdC1mYWRlL2VmZmVjdC1mYWRlXCI7XG5AdXNlIFwic3dpcGVyL21vZHVsZXMvbmF2aWdhdGlvbi9uYXZpZ2F0aW9uXCI7XG5AdXNlIFwic3dpcGVyL21vZHVsZXMvcGFnaW5hdGlvbi9wYWdpbmF0aW9uXCI7XG5cbi8vIEN1c3RvbVxuXG4uc3dpcGVyLXNsaWRlIHtcbiAgICAmIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG59XG5cbi5zd2lwZXJfX3BpY3R1cmUge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZy1ib3R0b206IG1hdGguZGl2KDU5MywgMzc1KSAqIDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5zd2lwZXItY29udGFpbmVyLS1oZWlnaHQtZml4ZWQgJjo6YWZ0ZXIge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtaWZ5KDU5MywgMTYpO1xuICAgIH1cblxuICAgIC5zd2lwZXJfX3ZpZGVvIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLnN3aXBlcl9faW1hZ2Uge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLnN3aXBlcl9fY2FwdGlvbiB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKFwiZGFya1wiKTtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgoJGNvbnRlbnQtcGFkZGluZyAqIDAuNzUpICRjb250ZW50LXBhZGRpbmcpO1xuICAgIH1cbn1cblxuLnN3aXBlcl9fY2FwdGlvbl9faW5uZXIge1xuICAgICYge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiByZW1pZnkoJHNpdGUtd2lkdGgpO1xuICAgIH1cbn1cblxuLnN3aXBlcl9fdGl0bGUge1xuICAgICYge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJsaWdodFwiKTtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMzIsIDE2KTtcbiAgICB9XG59XG5cbi5zd2lwZXJfX3N1YnRpdGxlIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJwcmltYXJ5XCIsIFwidGludFwiKTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvdGFnbGluZS10ZXh0dXJlLW1vYmlsZS5wbmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogcmVtaWZ5KDMsIDE2KSBzb2xpZCBjb2xvcihcImxpZ2h0XCIpO1xuICAgICAgICBib3JkZXItdG9wOiByZW1pZnkoMywgMTYpIHNvbGlkIGNvbG9yKFwibGlnaHRcIik7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgzMyAyMCAyOCwgMTYpO1xuXG4gICAgICAgIEBpbmNsdWRlIGxhcmdlci10aGFuKGwpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL3RhZ2xpbmUtdGV4dHVyZS1kZXNrdG9wLnBuZ1wiKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbWlmeSgzMiAyOCAyOCwgMTYpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRpdGxlIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwicXVhdGVybmFyeVwiKTtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjIsIDE2KTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHJlbWlmeSgwLjUzLCAyMik7XG5cbiAgICAgICAgQGluY2x1ZGUgbGFyZ2VyLXRoYW4obCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW1pZnkoNDAsIDE2KTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiByZW1pZnkoMTAuMzMsIDQwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zcGFjZXIge1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgwIDEyLCA0MCk7XG5cbiAgICAgICAgQGluY2x1ZGUgbGFyZ2VyLXRoYW4obCkge1xuICAgICAgICAgICAgbWFyZ2luOiByZW1pZnkoMCAxNiwgMjIpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc3dpcGVyX191c2VyLWNvbnRlbnQge1xuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4uc3dpcGVyLWJ1dHRvbiB7XG4gICAgJiB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwicHJpbWFyeVwiKTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSg1MCwgMTYpO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDUwLCA1MCk7XG4gICAgICAgIHotaW5kZXg6IDk5OTtcbiAgICB9XG5cbiAgICAmLnN3aXBlci1idXR0b24tLXByZXYsXG4gICAgLnN3aXBlci1jb250YWluZXItcnRsICYuc3dpcGVyLWJ1dHRvbi0tbmV4dCB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxuXG4gICAgJi5zd2lwZXItYnV0dG9uLS1uZXh0LFxuICAgIC5zd2lwZXItY29udGFpbmVyLXJ0bCAmLnN3aXBlci1idXR0b24tLXByZXYge1xuICAgICAgICByaWdodDogMDtcbiAgICB9XG5cbiAgICAuc3dpcGVyLWNvbnRhaW5lcjpob3ZlciAmIHtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgIH1cblxuICAgIC5zd2lwZXItY29udGFpbmVyOmhvdmVyICY6aG92ZXIsXG4gICAgLnN3aXBlci1jb250YWluZXI6aG92ZXIgJjpmb2N1cyB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24sXG4uc3dpcGVyLXBhZ2luYXRpb24tY3VzdG9tLFxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbCA+IC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIHtcbiAgICAmIHtcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnRpemUoY29sb3IoXCJkYXJrXCIpLCAwLjUpO1xuICAgICAgICBoZWlnaHQ6IHJlbWlmeSgxMCwgMTYpO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDEwLCAxNik7XG4gICAgfVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDIwIDUsIDE2KTtcbiAgICB9XG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogVHJpYmUgRXZlbnRzIChodHRwczovL3RoZWV2ZW50c2NhbGVuZGFyLmNvbS8pXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLWNsYXNzLXBhdHRlcm4sIHNlbGVjdG9yLW1heC1pZCwgc2VsZWN0b3ItbWF4LXR5cGUsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSAqL1xuXG4vKiBjdXN0b20gcHJvcGVydGllcyAqL1xuXG46cm9vdCB7XG4gICAgLS10ZWMtY29sb3ItdGV4dC1wcmltYXJ5OiAje2NvbG9yKFwiZm9yZWdyb3VuZFwiKX07XG4gICAgLS10ZWMtY29sb3ItdGV4dC1wcmltYXJ5LWxpZ2h0OiAje3RyYW5zcGFyZW50aXplKGNvbG9yKFwiZm9yZWdyb3VuZFwiKSwgMC4zOCl9O1xuICAgIC0tdGVjLWNvbG9yLXRleHQtc2Vjb25kYXJ5OiAje2NvbG9yKFwiZm9yZWdyb3VuZFwiLCBcInRpbnRcIil9O1xuICAgIC0tdGVjLWNvbG9yLXRleHQtZGlzYWJsZWQ6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJmb3JlZ3JvdW5kXCIsIFwidGludFwiKSwgMC42KX07XG4gICAgLS10ZWMtY29sb3ItaWNvbi1wcmltYXJ5OiAje2NvbG9yKFwiZm9yZWdyb3VuZFwiKX07XG4gICAgLS10ZWMtY29sb3ItaWNvbi1wcmltYXJ5LWFsdDogI3tsaWdodGVuKGNvbG9yKFwiZm9yZWdyb3VuZFwiKSwgOS40MSl9O1xuICAgIC0tdGVjLWNvbG9yLWljb24tc2Vjb25kYXJ5OiAje2NvbG9yKFwiZm9yZWdyb3VuZFwiLCBcInRpbnRcIil9O1xuICAgIC0tdGVjLWNvbG9yLWljb24tYWN0aXZlOiAje2NvbG9yKFwiZm9yZWdyb3VuZFwiKX07XG4gICAgLS10ZWMtY29sb3ItaWNvbi1kaXNhYmxlZDogI3t0cmFuc3BhcmVudGl6ZShjb2xvcihcImZvcmVncm91bmRcIiwgXCJ0aW50XCIpLCAwLjYpfTtcbiAgICAtLXRlYy1jb2xvci1pY29uLWZvY3VzOiAje2NvbG9yKFwicHJpbWFyeVwiKX07XG4gICAgLS10ZWMtY29sb3ItaWNvbi1lcnJvcjogI3tjb2xvcihcImVycm9yXCIpfTtcbiAgICAtLXRlYy1jb2xvci1ldmVudC1pY29uOiAje2NvbG9yKFwiZm9yZWdyb3VuZFwiKX07XG4gICAgLS10ZWMtY29sb3ItZXZlbnQtaWNvbi1ob3ZlcjogI3tjb2xvcihcInByaW1hcnlcIil9O1xuICAgIC0tdGVjLWNvbG9yLWFjY2VudC1wcmltYXJ5OiAje2NvbG9yKFwicHJpbWFyeVwiKX07XG4gICAgLS10ZWMtY29sb3ItYWNjZW50LXByaW1hcnktaG92ZXI6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJwcmltYXJ5XCIpLCAwLjIpfTtcbiAgICAtLXRlYy1jb2xvci1hY2NlbnQtcHJpbWFyeS1hY3RpdmU6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJwcmltYXJ5XCIpLCAwLjEpfTtcbiAgICAtLXRlYy1jb2xvci1hY2NlbnQtcHJpbWFyeS1iYWNrZ3JvdW5kOiAje3RyYW5zcGFyZW50aXplKGNvbG9yKFwicHJpbWFyeVwiKSwgMC45Myl9O1xuICAgIC0tdGVjLWNvbG9yLWFjY2VudC1zZWNvbmRhcnk6ICN7Y29sb3IoXCJmb3JlZ3JvdW5kXCIpfTtcbiAgICAtLXRlYy1jb2xvci1hY2NlbnQtc2Vjb25kYXJ5LWhvdmVyOiAje3RyYW5zcGFyZW50aXplKGNvbG9yKFwiZm9yZWdyb3VuZFwiKSwgMC4yKX07XG4gICAgLS10ZWMtY29sb3ItYWNjZW50LXNlY29uZGFyeS1hY3RpdmU6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJmb3JlZ3JvdW5kXCIpLCAwLjEpfTtcbiAgICAtLXRlYy1jb2xvci1hY2NlbnQtc2Vjb25kYXJ5LWJhY2tncm91bmQ6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJmb3JlZ3JvdW5kXCIpLCAwLjkzKX07XG4gICAgLS10ZWMtY29sb3ItbGluay1hY2NlbnQtaG92ZXI6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJwcmltYXJ5XCIpLCAwLjIpfTtcbiAgICAtLXRlYy1jb2xvci1ib3JkZXItZGVmYXVsdDogI3tjb2xvcihcImZvcmVncm91bmRcIiwgXCJ0aW50XCIpfTtcbiAgICAtLXRlYy1jb2xvci1ib3JkZXItc2Vjb25kYXJ5OiAje2xpZ2h0ZW4oY29sb3IoXCJmb3JlZ3JvdW5kXCIsIFwidGludFwiKSwgNS44OCl9O1xuICAgIC0tdGVjLWNvbG9yLWJvcmRlci10ZXJ0aWFyeTogI3tkYXJrZW4oY29sb3IoXCJmb3JlZ3JvdW5kXCIsIFwidGludFwiKSwgMzQuNTEpfTtcbiAgICAtLXRlYy1jb2xvci1ib3JkZXItaG92ZXI6ICN7Y29sb3IoXCJmb3JlZ3JvdW5kXCIsIFwidGludFwiKX07XG4gICAgLS10ZWMtY29sb3ItYm9yZGVyLWFjdGl2ZTogI3tjb2xvcihcImZvcmVncm91bmRcIil9O1xuICAgIC0tdGVjLWNvbG9yLWJhY2tncm91bmQ6ICN7Y29sb3IoXCJiYWNrZ3JvdW5kXCIpfTtcbiAgICAtLXRlYy1jb2xvci1iYWNrZ3JvdW5kLXRyYW5zcGFyZW50OiAje3RyYW5zcGFyZW50aXplKGNvbG9yKFwiYmFja2dyb3VuZFwiKSwgMC40KX07XG4gICAgLS10ZWMtY29sb3ItYmFja2dyb3VuZC1zZWNvbmRhcnk6ICN7ZGFya2VuKGNvbG9yKFwiYmFja2dyb3VuZFwiKSwgMy4zMyl9O1xuICAgIC0tdGVjLWNvbG9yLWJhY2tncm91bmQtbWVzc2FnZXM6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJmb3JlZ3JvdW5kXCIpLCAwLjkzKX07XG4gICAgLS10ZWMtY29sb3ItYmFja2dyb3VuZC1zZWNvbmRhcnktaG92ZXI6ICN7ZGFya2VuKGNvbG9yKFwiYmFja2dyb3VuZFwiKSwgNi4yNyl9O1xuICAgIC0tdGVjLWNvbG9yLWJhY2tncm91bmQtZXJyb3I6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJlcnJvclwiKSwgMC45Mil9O1xuICAgIC0tdGVjLWNvbG9yLWJveC1zaGFkb3c6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJkYXJrXCIpLCAwLjg2KX07XG4gICAgLS10ZWMtY29sb3ItYm94LXNoYWRvdy1zZWNvbmRhcnk6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJkYXJrXCIpLCAwLjkpfTtcbiAgICAtLXRlYy1jb2xvci1zY3JvbGwtdHJhY2s6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJkYXJrXCIpLCAwLjc1KX07XG4gICAgLS10ZWMtY29sb3Itc2Nyb2xsLWJhcjogI3t0cmFuc3BhcmVudGl6ZShjb2xvcihcImRhcmtcIiksIDAuNSl9O1xuICAgIC0tdGVjLWNvbG9yLWJhY2tncm91bmQtcHJpbWFyeS1tdWx0aWRheTogI3t0cmFuc3BhcmVudGl6ZShjb2xvcihcInByaW1hcnlcIiksIDAuNzYpfTtcbiAgICAtLXRlYy1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnktbXVsdGlkYXktaG92ZXI6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJwcmltYXJ5XCIpLCAwLjY2KX07XG4gICAgLS10ZWMtY29sb3ItYmFja2dyb3VuZC1zZWNvbmRhcnktbXVsdGlkYXk6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJmb3JlZ3JvdW5kXCIpLCAwLjc2KX07XG4gICAgLS10ZWMtY29sb3ItYmFja2dyb3VuZC1zZWNvbmRhcnktbXVsdGlkYXktaG92ZXI6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJmb3JlZ3JvdW5kXCIpLCAwLjY2KX07XG4gICAgLS10ZWMtY29sb3ItYWNjZW50LXByaW1hcnktd2Vlay1ldmVudDogI3t0cmFuc3BhcmVudGl6ZShjb2xvcihcInByaW1hcnlcIiksIDAuOSl9O1xuICAgIC0tdGVjLWNvbG9yLWFjY2VudC1wcmltYXJ5LXdlZWstZXZlbnQtaG92ZXI6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJwcmltYXJ5XCIpLCAwLjgpfTtcbiAgICAtLXRlYy1jb2xvci1hY2NlbnQtcHJpbWFyeS13ZWVrLWV2ZW50LWZlYXR1cmVkOiAje3RyYW5zcGFyZW50aXplKGNvbG9yKFwicHJpbWFyeVwiKSwgMC45Nil9O1xuICAgIC0tdGVjLWNvbG9yLWFjY2VudC1wcmltYXJ5LXdlZWstZXZlbnQtZmVhdHVyZWQtaG92ZXI6ICN7dHJhbnNwYXJlbnRpemUoY29sb3IoXCJwcmltYXJ5XCIpLCAwLjg2KX07XG4gICAgLS10ZWMtZm9udC1mYW1pbHktc2Fucy1zZXJpZjogI3skYm9keS1mb250fTtcbn1cblxuLyogY29udGFpbmVyICovXG5cbiN0cmliZS1ldmVudHMtcGctdGVtcGxhdGUsXG4udHJpYmUtZXZlbnRzIC50cmliZS1ldmVudHMtbC1jb250YWluZXIsXG4udHJpYmUtY29tbW9uLS1icmVha3BvaW50LW1lZGl1bS50cmliZS1ldmVudHMgLnRyaWJlLWV2ZW50cy1sLWNvbnRhaW5lciB7XG4gICAgJiB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi8qIGxpbmtzICovXG5cbi50cmliZS1jb21tb24gLnRyaWJlLWNvbW1vbi1hbmNob3ItdGhpbi1hbHQge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMsXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICB9XG59XG5cbi50cmliZS1ldmVudHMtcHJvIC50cmliZS1ldmVudHMtcHJvLW9yZ2FuaXplcl9fbWV0YS1lbWFpbC1saW5rLFxuLnRyaWJlLWV2ZW50cy1wcm8gLnRyaWJlLWV2ZW50cy1wcm8tb3JnYW5pemVyX19tZXRhLXdlYnNpdGUtbGluayB7XG4gICAgJiB7XG4gICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgICB9XG59XG5cbi8qIGljYWwgbGluayAqL1xuXG4udHJpYmUtZXZlbnRzIC50cmliZS1ldmVudHMtYy1pY2FsIHtcbiAgICAmIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxufVxuXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWdjYWwsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWljYWwsXG4udHJpYmUtZXZlbnRzLWNhbC1saW5rcyAudHJpYmUtZXZlbnRzLWljcyB7XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgLmJ1dHRvbjtcbiAgICB9XG5cbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbWlmeSgyMCwgMTYpO1xuICAgIH1cbn1cblxuLyogcGFnaW5hdGlvbiAqL1xuXG4udHJpYmUtZXZlbnRzLXN1Yi1uYXYge1xuICAgICYge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cblxuLyogbGlzdCAqL1xuXG4udHJpYmUtZXZlbnRzIC50cmliZS1ldmVudHMtY2FsZW5kYXItbGlzdF9fbW9udGgtc2VwYXJhdG9yIHtcbiAgICAmIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4vKiBtb250aCBtb2JpbGUgKi9cblxuLnRyaWJlLWV2ZW50cyAudHJpYmUtZXZlbnRzLWNhbGVuZGFyLW1vbnRoX193ZWVrIHtcbiAgICAmIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4udHJpYmUtZXZlbnRzIC50cmliZS1ldmVudHMtY2FsZW5kYXItbW9udGgtbmF2IHtcbiAgICAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIH1cbn1cblxuLyogZGF5ICovXG5cbi50cmliZS1ldmVudHMgLnRyaWJlLWV2ZW50cy1jYWxlbmRhci1kYXlfX3RpbWUtc2VwYXJhdG9yIHtcbiAgICAmIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4vKiBzaW5nbGUgKi9cblxuLnRyaWJlLWV2ZW50cy1iYWNrIHtcbiAgICAmIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG59XG5cbi50cmliZS1ldmVudHMtc2NoZWR1bGUge1xuICAgICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG59XG5cbi5zaW5nbGUtdHJpYmVfZXZlbnRzIC50cmliZS1ldmVudHMtc2NoZWR1bGUgLnRyaWJlLWV2ZW50cy1kaXZpZGVyIHtcbiAgICAmIHtcbiAgICAgICAgbWFyZ2luOiAwIDAuMjVlbTtcbiAgICB9XG59XG5cbi50cmliZS1ldmVudHMtY29udGVudCBhIHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAubGluaztcblxuICAgICAgICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5idXR0b24ge1xuICAgICAgICBAZXh0ZW5kIC5idXR0b247XG4gICAgfVxufVxuXG4udHJpYmUtZXZlbnRzLXNpbmdsZSB1bC50cmliZS1yZWxhdGVkLWV2ZW50cyAucmVjdXJyaW5naW5mbyB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjVlbTtcbiAgICB9XG59XG5cbiN0cmliZS1ldmVudHMtZm9vdGVyIC50cmliZS1ldmVudHMtc3ViLW5hdixcbiN0cmliZS1ldmVudHMtaGVhZGVyIC50cmliZS1ldmVudHMtc3ViLW5hdiB7XG4gICAgJiB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxufVxuXG4udHJpYmUtZXZlbnRzLWV2ZW50LWltYWdlIGltZyB7XG4gICAgJiB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi8qIFBybzogT3JnYW5pemVyICovXG5cbi50cmliZS1ldmVudHMtcHJvIC50cmliZS1ldmVudHMtcHJvLW9yZ2FuaXplcl9fbWV0YS1lbWFpbCxcbi50cmliZS1ldmVudHMtcHJvIC50cmliZS1ldmVudHMtcHJvLW9yZ2FuaXplcl9fbWV0YS1waG9uZSxcbi50cmliZS1ldmVudHMtcHJvIC50cmliZS1ldmVudHMtcHJvLW9yZ2FuaXplcl9fbWV0YS13ZWJzaXRlIHtcbiAgICAmIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFdvb0NvbW1lcmNlIChodHRwczovL3dvb2NvbW1lcmNlLmNvbS8pXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW1heC1pZCwgc2VsZWN0b3ItbWF4LXR5cGUsIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZSwgc2VsZWN0b3ItY2xhc3MtcGF0dGVybiAqL1xuXG4vKiB2YXJpYWJsZXMgYW5kIGhlbHBlcnMgKi9cblxuJHdjX3ByaW1hcnk6IGNvbG9yKFwicHJpbWFyeVwiKTtcbiR3Y19hbGVydDogY29sb3IoXCJlcnJvclwiKTtcbiR3Y19yYXRpbmc6ICNGMDhFMDE7XG4kd2NfZm9yZWdyb3VuZDogY29sb3IoXCJmb3JlZ3JvdW5kXCIpO1xuJHdjX2JhY2tncm91bmQ6ICNGRkZGRkY7XG4kd2NfYmFja2dyb3VuZF9zaGFkZTogI0VCRTlFQjtcbiR3Y19saWdodDogI0ZGRkZGRjtcbiR3Y19saWdodF9zaGFkZTogI0RGRENERTtcbiR3Y19mb250OiAkYm9keS1mb250O1xuXG4ld2NfX2xpbmsge1xuICAgICYge1xuICAgICAgICBAZXh0ZW5kIC5saW5rO1xuICAgIH1cbn1cblxuJXdjX19pbnB1dCB7XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgLmlucHV0O1xuICAgIH1cbn1cblxuJXdjX19pbnB1dC0tc2VsZWN0IHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAuaW5wdXQtLXNlbGVjdCAhb3B0aW9uYWw7XG4gICAgfVxufVxuXG4ld2NfX2lucHV0LS1zZWxlY3QtYXJyb3cge1xuICAgICYge1xuICAgICAgICBAZXh0ZW5kIC5pbnB1dC0tc2VsZWN0LWFycm93ICFvcHRpb25hbDtcbiAgICB9XG59XG5cbiV3Y19faW5wdXQtLXRvZ2dsZSB7XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgLmlucHV0LS10b2dnbGUgIW9wdGlvbmFsO1xuICAgIH1cbn1cblxuJXdjX19pbnB1dC0tdG9nZ2xlLWNoZWNrYm94IHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAuaW5wdXQtLXRvZ2dsZS1jaGVja2JveCAhb3B0aW9uYWw7XG4gICAgfVxufVxuXG4ld2NfX2lucHV0LS10b2dnbGUtcmFkaW8ge1xuICAgICYge1xuICAgICAgICBAZXh0ZW5kIC5pbnB1dC0tdG9nZ2xlLXJhZGlvICFvcHRpb25hbDtcbiAgICB9XG59XG5cbiV3Y19fdGl0bGUge1xuICAgICYge1xuICAgICAgICBAZXh0ZW5kIC50aXRsZTtcbiAgICB9XG59XG5cbiV3Y19fdGV4dCB7XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgLnRleHQ7XG4gICAgfVxufVxuXG4vKiBwaG90b3N3aXBlLmNzcyAqL1xuXG4ud29vY29tbWVyY2UtcGFnZSAucHN3cCB7IC8vIHBob3Rvc3dpcGUuY3NzOjI3XG4gICAgJiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkd2NfZm9udDtcbiAgICB9XG5cbiAgICAucHN3cF9fY2FwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgIH1cbn1cblxuLyogc2VsZWN0Mi5jc3MgKi9cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQgeyAvLyBzZWxlY3QyLmNzczoxNTRcbiAgICAmIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICR3Y19mb250O1xuICAgIH1cbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHMgPiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIHsgLy8gc2VsZWN0Mi5jc3M6MzAwXG4gICAgJiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkd2NfZm9udDtcbiAgICB9XG59XG5cbi8qIHdvb2NvbW1lcmNlLWxheW91dC5jc3MgKi9cblxuLndvb2NvbW1lcmNlICNjb250ZW50IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuaW5wdXQtdGV4dCxcbi53b29jb21tZXJjZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmlucHV0LXRleHQsXG4ud29vY29tbWVyY2UtcGFnZSAjY29udGVudCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmlucHV0LXRleHQsXG4ud29vY29tbWVyY2UtcGFnZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmlucHV0LXRleHQgeyAvLyB3b29jb21tZXJjZS1sYXlvdXQuY3NzOjI3NlxuICAgICYge1xuICAgICAgICB3aWR0aDogNy41ZW07XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UgLmNhcnQtY29sbGF0ZXJhbHMgaDIsXG4ud29vY29tbWVyY2UtcGFnZSAuY2FydC1jb2xsYXRlcmFscyBoMiB7IC8vIHdvb2NvbW1lcmNlLWxheW91dC5jc3M6Mjk1XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgJXdjX190aXRsZTtcbiAgICB9XG5cbiAgICAmIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICB9XG59XG5cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtbmF2aWdhdGlvbiB7IC8vIHdvb2NvbW1lcmNlLWxheW91dC5jc3M6NTExXG4gICAgdWwge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIEBleHRlbmQgJXdjX190ZXh0O1xuICAgICAgICB9XG5cbiAgICAgICAgJiB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgICBAZXh0ZW5kICV3Y19fbGluaztcbiAgICB9XG59XG5cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCB7IC8vIHdvb2NvbW1lcmNlLWxheW91dC5jc3M6NTE1XG4gICAgcCB7XG4gICAgICAgIEBleHRlbmQgJXdjX190ZXh0O1xuICAgIH1cblxuICAgIGEge1xuICAgICAgICBAZXh0ZW5kICV3Y19fbGluaztcbiAgICB9XG59XG5cbi8qIHdvb2NvbW1lcmNlLmNzcyAqL1xuXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWJyZWFkY3J1bWIgeyAvLyB3b29jb21tZXJjZS5jc3M6MTM0XG4gICAgJiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkd2NfZm9udDtcbiAgICB9XG59XG5cbi53b29jb21tZXJjZSAucXVhbnRpdHkgLnF0eSB7IC8vIHdvb2NvbW1lcmNlLmNzczoxNDJcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAld2NfX2lucHV0O1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC5wcm9kdWN0X3RpdGxlIHsgLy8gd29vY29tbWVyY2UuY3NzOjE1MFxuICAgICYge1xuICAgICAgICBAZXh0ZW5kICV3Y19fdGl0bGU7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgeyAvLyB3b29jb21tZXJjZS5jc3M6MTU1XG4gICAgcC5wcmljZSxcbiAgICBzcGFuLnByaWNlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICR3Y19mb250O1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5zdW1tYXJ5IHsgLy8gd29vY29tbWVyY2UuY3NzOjI5NFxuICAgIGRpdi5wcm9kdWN0X21ldGEge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIEBleHRlbmQgJXdjX190ZXh0O1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBAZXh0ZW5kICV3Y19fbGluaztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHsgLy8gd29vY29tbWVyY2UuY3NzOjMwMlxuICAgIHVsLnRhYnMgbGkgYSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkd2NfZm9udDtcbiAgICB9XG5cbiAgICAud29vY29tbWVyY2UtVGFicy1wYW5lbCBoMiB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgQGV4dGVuZCAld2NfX3RpdGxlO1xuICAgICAgICB9XG5cbiAgICAgICAgJiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IHsgLy8gd29vY29tbWVyY2UuY3NzOjM4OVxuICAgICYge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFlbTtcbiAgICB9XG5cbiAgICBkaXYucXVhbnRpdHkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNWVtO1xuICAgIH1cblxuICAgIGRpdi5xdWFudGl0eSAucXR5IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbi53b29jb21tZXJjZSBzcGFuLm9uc2FsZSB7IC8vIHdvb2NvbW1lcmNlLmNzczo0NzRcbiAgICAmIHtcbiAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkd2NfZm9udDtcbiAgICB9XG59XG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnZhcmlhdGlvbnMgbGFiZWwgeyAvLyB3b29jb21tZXJjZS5jc3M6NTA2XG4gICAgJiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkd2NfZm9udDtcbiAgICB9XG59XG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnZhcmlhdGlvbnMgc2VsZWN0IHsgLy8gd29vY29tbWVyY2UuY3NzOjUxMFxuICAgICYge1xuICAgICAgICBAZXh0ZW5kICV3Y19faW5wdXQ7XG4gICAgICAgIEBleHRlbmQgJXdjX19pbnB1dC0tc2VsZWN0O1xuICAgICAgICBAZXh0ZW5kICV3Y19faW5wdXQtLXNlbGVjdC1hcnJvdztcbiAgICB9XG59XG5cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLWNhdGVnb3J5X190aXRsZSxcbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC53b29jb21tZXJjZS1sb29wLXByb2R1Y3RfX3RpdGxlLFxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgaDMgeyAvLyB3b29jb21tZXJjZS5jc3M6NTE0XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgJXdjX190aXRsZTtcbiAgICB9XG5cbiAgICAmIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVlbTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnMgeyAvLyB3b29jb21tZXJjZS5jc3M6NTI1XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgJXdjX190ZXh0O1xuICAgICAgICBAZXh0ZW5kICV3Y19fbGluaztcbiAgICB9XG59XG5cbi53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IC5wcmljZSB7IC8vIHdvb2NvbW1lcmNlLmNzczo1NDFcbiAgICAmIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICR3Y19mb250O1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1yZXN1bHQtY291bnQgeyAvLyB3b29jb21tZXJjZS5jc3M6NTY0XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgJXdjX190ZXh0O1xuICAgIH1cblxuICAgICYge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlcmluZyB7IC8vIHdvb2NvbW1lcmNlLmNzczo1NjdcbiAgICAmIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBzZWxlY3Qge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIEBleHRlbmQgJXdjX19pbnB1dDtcbiAgICAgICAgICAgIEBleHRlbmQgJXdjX19pbnB1dC0tc2VsZWN0O1xuICAgICAgICAgICAgQGV4dGVuZCAld2NfX2lucHV0LS1zZWxlY3QtYXJyb3c7XG4gICAgICAgIH1cblxuICAgICAgICAmIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpLFxuLndvb2NvbW1lcmNlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHVsIGxpIHsgLy8gd29vY29tbWVyY2UuY3NzOjYxOFxuICAgIGEsXG4gICAgc3BhbiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkd2NfZm9udDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgQGV4dGVuZCAld2NfX2xpbms7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdCxcbi53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQsXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdCB7IC8vIHdvb2NvbW1lcmNlLmNzczo2NTVcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdjX3ByaW1hcnk7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbihzYXR1cmF0ZShhZGp1c3QtaHVlKCR3Y19wcmltYXJ5LCAtMC41NzQ2KSwgMC4wMzQyKSwgNS4wOTgpO1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlICNyZXZpZXdzICNjb21tZW50cyBvbC5jb21tZW50bGlzdCB7IC8vIHdvb2NvbW1lcmNlLmNzczo3MTZcbiAgICAmIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi53b29jb21tZXJjZSAjcmV2aWV3cyAjY29tbWVudHMgb2wuY29tbWVudGxpc3QgbGkgLmNvbW1lbnQtdGV4dCBwLm1ldGEgeyAvLyB3b29jb21tZXJjZS5jc3M6NzcwXG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgJXdjX190ZXh0O1xuICAgIH1cblxuICAgICYge1xuICAgICAgICBmb250LXNpemU6IDAuNzVlbTtcbiAgICB9XG59XG5cbi53b29jb21tZXJjZSBhLmFkZGVkX3RvX2NhcnQgeyAvLyB3b29jb21tZXJjZS5jc3M6Nzc2XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgJXdjX19saW5rO1xuICAgIH1cblxuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1mYW1pbHk6ICR3Y19mb250O1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQuZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdC5kaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmRpc2FibGVkLFxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6ZGlzYWJsZWQ6aG92ZXIsXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDpkaXNhYmxlZFtkaXNhYmxlZF06aG92ZXIsXG4ud29vY29tbWVyY2UgYS5idXR0b24uYWx0LmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdC5kaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQ6ZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4ud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmRpc2FibGVkW2Rpc2FibGVkXTpob3Zlcixcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZCxcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdC5kaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdDpkaXNhYmxlZCxcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdDpkaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQ6ZGlzYWJsZWRbZGlzYWJsZWRdOmhvdmVyLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQuZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdC5kaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0OmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQ6ZGlzYWJsZWQ6aG92ZXIsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDpkaXNhYmxlZFtkaXNhYmxlZF06aG92ZXIgeyAvLyB3b29jb21tZXJjZS5jc3M6Nzg2XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3Y19wcmltYXJ5O1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIC5zdGFyLXJhdGluZyB7IC8vIHdvb2NvbW1lcmNlLmNzczo3ODlcbiAgICAmIHtcbiAgICAgICAgY29sb3I6ICR3Y19yYXRpbmc7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLXByb2R1Y3QtcmF0aW5nIHsgLy8gd29vY29tbWVyY2UuY3NzOjgyMVxuICAgICYge1xuICAgICAgICBAZXh0ZW5kICV3Y19fdGV4dDtcbiAgICB9XG5cbiAgICAuc3Rhci1yYXRpbmcge1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjI1ZW07XG4gICAgfVxuXG4gICAgLndvb2NvbW1lcmNlLXJldmlldy1saW5rIHtcbiAgICAgICAgQGV4dGVuZCAld2NfX2xpbms7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UgI3Jldmlld19mb3JtICNyZXNwb25kIHsgLy8gd29vY29tbWVyY2UuY3NzOjg0NFxuICAgIHNwYW4uY29tbWVudC1yZXBseS10aXRsZSB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgQGV4dGVuZCAld2NfX3RleHQ7XG4gICAgICAgIH1cblxuICAgICAgICAmIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBAZXh0ZW5kICV3Y19fdGV4dDtcbiAgICAgICAgfVxuXG4gICAgICAgICYge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ucmVxdWlyZWQge1xuICAgICAgICAgICAgY29sb3I6ICR3Y19hbGVydDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRleHRhcmVhIHtcbiAgICAgICAgQGV4dGVuZCAld2NfX2lucHV0O1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIHAuc3RhcnMgeyAvLyB3b29jb21tZXJjZS5jc3M6ODY5XG4gICAgJiB7XG4gICAgICAgIGNvbG9yOiAkd2NfZm9yZWdyb3VuZDtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICYuc2VsZWN0ZWQge1xuICAgICAgICBjb2xvcjogJHdjX3JhdGluZztcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHsgLy8gd29vY29tbWVyY2UuY3NzOjkwNFxuICAgICYge1xuICAgICAgICBAZXh0ZW5kICV3Y19fdGV4dDtcbiAgICB9XG5cbiAgICAmIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICB0ZCxcbiAgICB0aCB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG5cbiAgICB0cjpudGgtY2hpbGQoMm4pIHRkLFxuICAgIHRyOm50aC1jaGlsZCgybikgdGgge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2NfYmFja2dyb3VuZF9zaGFkZTtcbiAgICB9XG5cbiAgICB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cblxuICAgIHRkIHAge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIHRoIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB7IC8vIHdvb2NvbW1lcmNlLmNzczo5MzRcbiAgICAmIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICR3Y19mb250O1xuICAgIH1cblxuICAgIHRmb290IHRoIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIEBleHRlbmQgJXdjX19saW5rO1xuICAgIH1cblxuICAgIC5xdWFudGl0eSAucXR5IHtcbiAgICAgICAgd2lkdGg6IDZlbTtcbiAgICB9XG59XG5cbi53b29jb21tZXJjZSAjcmV2aWV3X2Zvcm0gI3Jlc3BvbmQgeyAvLyB3b29jb21tZXJjZS5jc3M6OTQzXG4gICAgLmNvbW1lbnQtZm9ybS1hdXRob3IgaW5wdXQsXG4gICAgLmNvbW1lbnQtZm9ybS1lbWFpbCBpbnB1dCB7XG4gICAgICAgIEBleHRlbmQgJXdjX19pbnB1dDtcbiAgICB9XG59XG5cbi53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyBpbnB1dC5pbnB1dC10ZXh0LFxuLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IHRleHRhcmVhIHsgLy8gd29vY29tbWVyY2UuY3NzOjExNzBcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAld2NfX2lucHV0O1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IGxhYmVsIHsgLy8gd29vY29tbWVyY2UuY3NzOjEyNTZcbiAgICAmIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICR3Y19mb250O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIGZvcm0gLmZvcm0tcm93IHNlbGVjdCB7IC8vIHdvb2NvbW1lcmNlLmNzczoxMjk2XG4gICAgJiB7XG4gICAgICAgIEBleHRlbmQgJXdjX19pbnB1dDtcbiAgICAgICAgQGV4dGVuZCAld2NfX2lucHV0LS1zZWxlY3Q7XG4gICAgICAgIEBleHRlbmQgJXdjX19pbnB1dC0tc2VsZWN0LWFycm93O1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIHVsLm9yZGVyX2RldGFpbHMgeyAvLyB3b29jb21tZXJjZS5jc3M6MTM4OFxuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2NfYmFja2dyb3VuZF9zaGFkZTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgJHdjX2JhY2tncm91bmQgNTAlLCB0cmFuc3BhcmVudCA1MCUpLCBsaW5lYXItZ3JhZGllbnQoMjI1ZGVnLCAkd2NfYmFja2dyb3VuZCA1MCUsIHRyYW5zcGFyZW50IDUwJSksIGxpbmVhci1ncmFkaWVudCg0NWRlZywgJHdjX2JhY2tncm91bmQgNTAlLCB0cmFuc3BhcmVudCA1MCUpLCBsaW5lYXItZ3JhZGllbnQoLTQ1ZGVnLCAkd2NfYmFja2dyb3VuZCA1MCUsIHRyYW5zcGFyZW50IDUwJSk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBsZWZ0LCB0b3AgbGVmdCwgYm90dG9tIGxlZnQsIGJvdHRvbSBsZWZ0O1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMWVtIDFlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICR3Y19mb250O1xuICAgICAgICBwYWRkaW5nOiAyZW0gMDtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBkYXNoZWQgJHdjX2xpZ2h0X3NoYWRlO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwLjc1ZW0gMS4yNWVtO1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlci1kZXRhaWxzLFxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlci1kb3dubG9hZHMgeyAvLyB3b29jb21tZXJjZS5jc3M6MTQyNFxuICAgIGgyIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBAZXh0ZW5kICV3Y19fdGl0bGU7XG4gICAgICAgIH1cblxuICAgICAgICAmIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53b29jb21tZXJjZSAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyBhZGRyZXNzIHsgLy8gd29vY29tbWVyY2UuY3NzOjE0MzRcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAld2NfX3RleHQ7XG4gICAgfVxuXG4gICAgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFlbSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlLWVycm9yLFxuLndvb2NvbW1lcmNlLWluZm8sXG4ud29vY29tbWVyY2UtbWVzc2FnZSB7IC8vIHdvb2NvbW1lcmNlLmNzczoxNDk2XG4gICAgJiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkd2NfZm9udDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgQGV4dGVuZCAld2NfX2xpbms7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIC50aXRsZSBoMyB7IC8vIHdvb2NvbW1lcmNlLmNzczoxNzUxXG4gICAgJiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG59XG5cbiNhZGRfcGF5bWVudF9tZXRob2QgI3BheW1lbnQsXG4ud29vY29tbWVyY2UtY2FydCAjcGF5bWVudCxcbi53b29jb21tZXJjZS1jaGVja291dCAjcGF5bWVudCB7IC8vIHdvb2NvbW1lcmNlLmNzczoxOTgyXG4gICAgJiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxufVxuXG4jYWRkX3BheW1lbnRfbWV0aG9kICNwYXltZW50IHVsLnBheW1lbnRfbWV0aG9kcyxcbi53b29jb21tZXJjZS1jYXJ0ICNwYXltZW50IHVsLnBheW1lbnRfbWV0aG9kcyxcbi53b29jb21tZXJjZS1jaGVja291dCAjcGF5bWVudCB1bC5wYXltZW50X21ldGhvZHMgeyAvLyB3b29jb21tZXJjZS5jc3M6MTk4OFxuICAgICYge1xuICAgICAgICBmb250LWZhbWlseTogJHdjX2ZvbnQ7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxufVxuXG4jYWRkX3BheW1lbnRfbWV0aG9kICNwYXltZW50IHVsLnBheW1lbnRfbWV0aG9kcyBsaSxcbi53b29jb21tZXJjZS1jYXJ0ICNwYXltZW50IHVsLnBheW1lbnRfbWV0aG9kcyBsaSxcbi53b29jb21tZXJjZS1jaGVja291dCAjcGF5bWVudCB1bC5wYXltZW50X21ldGhvZHMgbGkgeyAvLyB3b29jb21tZXJjZS5jc3M6MjAxMVxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2NfYmFja2dyb3VuZDtcbiAgICB9XG59XG5cbiNhZGRfcGF5bWVudF9tZXRob2QgI3BheW1lbnQgdWwucGF5bWVudF9tZXRob2RzIGxpID4gaW5wdXQsXG4ud29vY29tbWVyY2UtY2FydCAjcGF5bWVudCB1bC5wYXltZW50X21ldGhvZHMgbGkgPiBpbnB1dCxcbi53b29jb21tZXJjZS1jaGVja291dCAjcGF5bWVudCB1bC5wYXltZW50X21ldGhvZHMgbGkgPiBpbnB1dCB7IC8vIHdvb2NvbW1lcmNlLmNzczoyMDE5XG4gICAgJiB7XG4gICAgICAgIGxlZnQ6IC05OTllbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cbn1cblxuI2FkZF9wYXltZW50X21ldGhvZCAjcGF5bWVudCBkaXYucGF5bWVudF9ib3gsXG4ud29vY29tbWVyY2UtY2FydCAjcGF5bWVudCBkaXYucGF5bWVudF9ib3gsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgI3BheW1lbnQgZGl2LnBheW1lbnRfYm94IHsgLy8gd29vY29tbWVyY2UuY3NzOjIwNTdcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG4jYWRkX3BheW1lbnRfbWV0aG9kICNwYXltZW50IGRpdi5wYXltZW50X2JveCBwOmZpcnN0LWNoaWxkLFxuLndvb2NvbW1lcmNlLWNhcnQgI3BheW1lbnQgZGl2LnBheW1lbnRfYm94IHA6Zmlyc3QtY2hpbGQsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgI3BheW1lbnQgZGl2LnBheW1lbnRfYm94IHA6Zmlyc3QtY2hpbGQgeyAvLyB3b29jb21tZXJjZS5jc3M6MjI0NlxuICAgICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbn1cblxuI2FkZF9wYXltZW50X21ldGhvZCAjcGF5bWVudCAucGF5bWVudF9tZXRob2RfcGF5cGFsIC5hYm91dF9wYXlwYWwsXG4ud29vY29tbWVyY2UtY2FydCAjcGF5bWVudCAucGF5bWVudF9tZXRob2RfcGF5cGFsIC5hYm91dF9wYXlwYWwsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgI3BheW1lbnQgLnBheW1lbnRfbWV0aG9kX3BheXBhbCAuYWJvdXRfcGF5cGFsIHsgLy8gd29vY29tbWVyY2UuY3NzOjIyNjVcbiAgICAmIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59XG5cbi8qIGN1c3RvbSAqL1xuXG4ud29vY29tbWVyY2VfX2FyY2hpdmUtcmVzdWx0cyB7XG4gICAgJiB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIGgxLnBhZ2UtdGl0bGUge1xuICAgICYge1xuICAgICAgICBAZXh0ZW5kICV3Y19fdGl0bGU7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UgLnByb2R1Y3QgLnJlbGF0ZWQgPiBoMixcbi53b29jb21tZXJjZSAucHJvZHVjdCAudXBzZWxscyA+IGgyIHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAld2NfX3RpdGxlO1xuICAgIH1cblxuICAgICYge1xuICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQsXG4ud29vY29tbWVyY2UtcGFnZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0IHtcbiAgICAuY29sMi1zZXQgLmNvbC0xLFxuICAgIC5jb2wyLXNldCAuY29sLTIge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxufVxuXG5AaW5jbHVkZSBsYXJnZXItdGhhbih4cykge1xuICAgIC53b29jb21tZXJjZSBmb3JtLndvb2NvbW1lcmNlLWNoZWNrb3V0LFxuICAgIC53b29jb21tZXJjZS1wYWdlIGZvcm0ud29vY29tbWVyY2UtY2hlY2tvdXQge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cblxuICAgICAgICAjY3VzdG9tZXJfZGV0YWlscyB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNC4zNDc4JTtcbiAgICAgICAgICAgIHdpZHRoOiA0Ny44MjYxJTtcbiAgICAgICAgfVxuXG4gICAgICAgICNvcmRlcl9yZXZpZXcsXG4gICAgICAgICNvcmRlcl9yZXZpZXdfaGVhZGluZyB7XG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogNDcuODI2MSU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53b29jb21tZXJjZSAuY2hlY2tvdXQgaDMge1xuICAgICYge1xuICAgICAgICBAZXh0ZW5kICV3Y19fdGl0bGU7XG4gICAgfVxuXG4gICAgJiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgIH1cbn1cblxuI2FkZF9wYXltZW50X21ldGhvZCAjcGF5bWVudCB1bC5wYXltZW50X21ldGhvZHMgbGksXG4ud29vY29tbWVyY2UtY2FydCAjcGF5bWVudCB1bC5wYXltZW50X21ldGhvZHMgbGksXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgI3BheW1lbnQgdWwucGF5bWVudF9tZXRob2RzIGxpIHtcbiAgICA+IGxhYmVsIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHdjX2xpZ2h0X3NoYWRlO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHBhZGRpbmc6IDAuNWVtIDFlbTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cywgY29sb3IgMC4xNXM7XG4gICAgfVxuXG4gICAgPiBpbnB1dDpjaGVja2VkICsgbGFiZWwge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2NfcHJpbWFyeTtcbiAgICAgICAgY29sb3I6ICR3Y19saWdodDtcbiAgICB9XG5cbiAgICA+IGxhYmVsIGltZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDMycHg7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIHAud29vY29tbWVyY2Utbm90aWNlIHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAld2NfX3RleHQ7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLW9yZGVyIGgyLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHNfX3RpdGxlIHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAld2NfX3RpdGxlO1xuICAgIH1cblxuICAgICYge1xuICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1vcmRlciBoMi53b29jb21tZXJjZS1jb2x1bW5fX3RpdGxlIHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAld2NfX3RpdGxlO1xuICAgIH1cblxuICAgICYge1xuICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICB9XG59XG5cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZSA+IGgyIHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAld2NfX3RpdGxlO1xuICAgIH1cblxuICAgICYge1xuICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICB9XG59XG5cbi53b29jb21tZXJjZSBmb3JtLmxvZ2luLFxuLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIge1xuICAgICYge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIGxhYmVsLndvb2NvbW1lcmNlLWZvcm0tbG9naW5fX3JlbWVtYmVybWUge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICB9XG5cbiAgICBpbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveCB7XG4gICAgICAgICYge1xuICAgICAgICAgICAgQGV4dGVuZCAld2NfX2lucHV0O1xuICAgICAgICAgICAgQGV4dGVuZCAld2NfX2lucHV0LS10b2dnbGU7XG4gICAgICAgICAgICBAZXh0ZW5kICV3Y19faW5wdXQtLXRvZ2dsZS1jaGVja2JveDtcbiAgICAgICAgfVxuXG4gICAgICAgICYge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAuNWVtIDAgMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHAud29vY29tbWVyY2UtTG9zdFBhc3N3b3JkIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBAZXh0ZW5kICV3Y19fdGV4dDtcbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgQGV4dGVuZCAld2NfX2xpbms7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi53b29jb21tZXJjZS1BZGRyZXNzLXRpdGxlIHtcbiAgICAmIHtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UtYWNjb3VudCAuYWRkcmVzc2VzIGFkZHJlc3Mge1xuICAgICYge1xuICAgICAgICBAZXh0ZW5kICV3Y19fdGV4dDtcbiAgICB9XG59XG5cbi53b29jb21tZXJjZS1hY2NvdW50IC53b29jb21tZXJjZS1NeUFjY291bnQtY29udGVudCBmb3JtID4gaDMge1xuICAgICYge1xuICAgICAgICBAZXh0ZW5kICV3Y19fdGl0bGU7XG4gICAgfVxuXG4gICAgJiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UtYWNjb3VudCAud29vY29tbWVyY2UgZmllbGRzZXQge1xuICAgICYge1xuICAgICAgICBAZXh0ZW5kICV3Y19fdGV4dDtcbiAgICB9XG5cbiAgICBsZWdlbmQge1xuICAgICAgICBwYWRkaW5nOiAwIDAuNWVtO1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlLXByaXZhY3ktcG9saWN5LXRleHQge1xuICAgIHAge1xuICAgICAgICBAZXh0ZW5kICV3Y19fdGV4dDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgQGV4dGVuZCAld2NfX2xpbms7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2Utb3JkZXIgPiBwIHtcbiAgICAmIHtcbiAgICAgICAgQGV4dGVuZCAld2NfX3RleHQ7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UtdmFyaWF0aW9uLWFkZC10by1jYXJ0IHtcbiAgICAmIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogV1AgQ2FwdGlvblxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ud3AtY2FwdGlvbiB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmOm5vdCguYWxpZ25sZWZ0KSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG5cbiAgICAmOm5vdCguYWxpZ25yaWdodCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG59XG5cbi53cC1jYXB0aW9uLWltYWdlIHtcbiAgICAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgyNCwgMTYpO1xuICAgIH1cbn1cblxuLndwLWNhcHRpb24tdGV4dCB7XG4gICAgJiB7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImZvcmVncm91bmRcIik7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW1pZnkoMjgsIDE2KTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMTQgMCAyOCwgMTYpO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogV1AgR2FsbGVyeVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4ud3AtYmxvY2stZ2FsbGVyeSB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG59XG5cbi5nYWxsZXJ5LFxuLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLWdhcDogcmVtaWZ5KCRjb2x1bW4tZ2FwKTtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbn1cblxuQGluY2x1ZGUgbGFyZ2VyLXRoYW4oeHMpIHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDkge1xuICAgICAgICAuZ2FsbGVyeS1jb2x1bW5zLSN7JGl9LFxuICAgICAgICAud3AtYmxvY2stZ2FsbGVyeS5jb2x1bW5zLSN7JGl9ID4gLmJsb2Nrcy1nYWxsZXJ5LWdyaWQge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoJGksIDFmcik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5nYWxsZXJ5LWl0ZW0sXG4uYmxvY2tzLWdhbGxlcnktaXRlbSB7XG4gICAgJiB7XG4gICAgICAgIGNvbHVtbi1zcGFuOiBzcGFuIDE7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBmaWd1cmUgeyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBpbWcgeyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cbiIsIi8qXG48ZGl2IGNsYXNzPVwibG9jYXRpb25fX3RpdGxlXCI+XG4gICAgPGRpdiBjbGFzcz1cImxvY2F0aW9uX19saW5lIGxvY2F0aW9uX19saW5lLS1maXJzdFwiPlxuICAgICAgICA8aHIgY2xhc3M9XCJiYW5uZXJfX2xpbmVfX2xpbmVcIiAvPlxuICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1zdGFyXCI+PC9pPlxuICAgIDwvZGl2PlxuICAgIDxoMiBjbGFzcz1cInRpdGxlIHRpdGxlLS1kZWNvcmF0ZWRcIj5cbiAgICAgICAgPD9waHAgX2UoXCJPRlBEIEZpcmUgU3RhdGlvbnNcIiwgXCJvZnBkXCIpOyA/PlxuICAgIDwvaDI+XG4gICAgPGRpdiBjbGFzcz1cImxvY2F0aW9uX19saW5lIGxvY2F0aW9uX19saW5lLS1sYXN0XCI+XG4gICAgICAgIDxociBjbGFzcz1cImJhbm5lcl9fbGluZV9fbGluZVwiIC8+XG4gICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXN0YXJcIj48L2k+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiovXG5cbi5sb2NhdGlvbl9fYmxvY2sge1xuICAgICYge1xuICAgICAgICBAaW5jbHVkZSBzbWFsbGVyLXRoYW4obCkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbWlmeSg3NSwgMTYpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxvY2F0aW9uX19yb3cge1xuICAgICAgICBncmlkLWdhcDogcmVtaWZ5KDAgNDQsIDE2KTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmxvY2F0aW9uX190aXRsZSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdyaWQtZ2FwOiByZW1pZnkoMTYsIDE2KTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgzNiwgMTYpO1xuICAgIH1cblxuICAgIC5sb2NhdGlvbl9fbGluZSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcInNlY29uZGFyeVwiLCBcInRpbnRcIik7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdyaWQtZ2FwOiByZW1pZnkoNCwgMTYpO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDE1OSwgMTYpO1xuICAgIH1cblxuICAgIC5sb2NhdGlvbl9fbGluZV9fbGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKFwicHJpbWFyeVwiKTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBmbGV4OiAxIDAgYXV0bztcbiAgICAgICAgaGVpZ2h0OiByZW1pZnkoMywgMTYpO1xuICAgIH1cblxuICAgIC5sb2NhdGlvbl9fdGl0bGVfX3RleHQge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgzNiwgMTYpO1xuICAgIH1cblxuICAgIC5sb2NhdGlvbl9fY29sIHtcbiAgICAgICAgZmxleDogMCAxIHJlbWlmeSgzMDAsIDE2KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDI0LCAxNik7XG4gICAgfVxuXG4gICAgLmxvY2F0aW9uX19pbWFnZV9fd3JhcHBlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgxNSwgMTYpO1xuICAgIH1cblxuICAgIC5sb2NhdGlvbl9faW1hZ2Uge1xuICAgICAgICBib3JkZXI6IHJlbWlmeSgzLCAxNikgc29saWQgY29sb3IoXCJzZWNvbmRhcnlcIiwgXCJ0aW50XCIpO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAubG9jYXRpb25fX3RleHQge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMTYpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoMTgsIDE2KTtcbiAgICB9XG59XG4iLCIub3ZlcmxheV9fYmxvY2sge1xuICAgICYge1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMCAkY29udGVudC1wYWRkaW5nKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgIH1cblxuICAgICYub3ZlcmxheV9fYmxvY2stLWFsaWduLWJvdHRvbSB7XG4gICAgICAgIGJvdHRvbTogcmVtaWZ5KDI0LCAxNik7XG4gICAgfVxuXG4gICAgLmRpdmlkZXIge1xuICAgICAgICBtYXJnaW46IHJlbWlmeSgxNSAwLCAxNik7XG4gICAgfVxufVxuXG4ub3ZlcmxheV9fYmxvY2stLW1vYmlsZSB7XG4gICAgLmNvbC0tdGV4dCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxufVxuIiwiLm5ld3NfX2ltYWdlX193cmFwcGVyIHtcbiAgICAmIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDE1LCAxNik7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAubmV3c19fb3ZlcmxheSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yKFwicXVhdGVybmFyeVwiKTtcbiAgICAgICAgbGVmdDogcmVtaWZ5KDE4LCAxNik7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgxMywgMTYpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgei1pbmRleDogMztcbiAgICB9XG5cbiAgICAubmV3c19fb3ZlcmxheSAudGl0bGUge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJzZWNvbmRhcnlcIik7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyNCwgMTYpO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAubmV3c19fb3ZlcmxheSAudGl0bGUtLXNtYWxsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxNiwgMjQpO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoLTgsIDE2KTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICAubmV3c19faW1hZ2Uge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG59XG5cbi5jb250ZW50LWJsb2NrLmNvbnRlbnQtYmxvY2stLW5ld3Mge1xuICAgICYge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIEBpbmNsdWRlIGxhcmdlci10aGFuKHhzKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihcImZvcmVncm91bmRcIiwgXCJ0aW50XCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vbWVkaWEvZXZlbnRzLWJhY2tncm91bmQucG5nXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbWlmeSg1MSAyNSA3NCwgMTYpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCB0cmFuc3BhcmVudGl6ZSgjRDBEMEQwLCAxKSAzOSUsICM1OTU5NTkgODclKTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmNvbnRlbnRfX2lubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJsaWdodFwiKTtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDU5IDU1LCAxNik7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAaW5jbHVkZSBzbWFsbGVyLXRoYW4oeHMpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbWlmeSgxMSAwLCAxNik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGl0bGUtLW5ld3Mge1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtaWZ5KDMyLCAzMik7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSg0NiwgMzIpO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgIEBpbmNsdWRlIHNtYWxsZXItdGhhbih4cykge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDIzLCAzMik7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgICAgQGluY2x1ZGUgc21hbGxlci10aGFuKHhzKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoNDIsIDE2KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50aXRsZS0tbmV3cy1zbGlkZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxOCwgMTYpO1xuICAgIH1cblxuICAgIC5zd2lwZXItY29udGFpbmVyX193cmFwcGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJsaWdodFwiKTtcbiAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgQGluY2x1ZGUgbGFyZ2VyLXRoYW4oeHMpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwIDYwLCAxNik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3dpcGVyLWNvbnRhaW5lciB7XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuc3dpcGVyLXdyYXBwZXIge1xuICAgICAgICBAaW5jbHVkZSBzbWFsbGVyLXRoYW4oeHMpIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3dpcGVyLWJ1dHRvbiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgQGluY2x1ZGUgc21hbGxlci10aGFuKHhzKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnN3aXBlci1idXR0b24uc3dpcGVyLWJ1dHRvbi0tcHJldiB7XG4gICAgICAgIGxlZnQ6IHJlbWlmeSgwLCAxNik7XG4gICAgfVxuXG4gICAgLnN3aXBlci1idXR0b24uc3dpcGVyLWJ1dHRvbi0tbmV4dCB7XG4gICAgICAgIHJpZ2h0OiByZW1pZnkoMCwgMTYpO1xuICAgIH1cblxuICAgIC5zd2lwZXItYnV0dG9uIC5zdmctaW5saW5lLS1mYSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSgxMzUsIDUwKTtcbiAgICB9XG5cbiAgICAubmV3c19fYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAaW5jbHVkZSBsYXJnZXItdGhhbih4cykge1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KC0yMCwgMTgpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBzbWFsbGVyLXRoYW4oeHMpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubmV3c19fYnV0dG9uOjpiZWZvcmUge1xuICAgICAgICBib3JkZXItYm90dG9tOiByZW1pZnkoMiwgMTgpIHNvbGlkIGNvbG9yKFwicHJpbWFyeVwiKTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiByZW1pZnkoMiwgMTgpIHNvbGlkIGNvbG9yKFwicHJpbWFyeVwiKTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgaGVpZ2h0OiByZW1pZnkoMTAsIDE4KTtcbiAgICAgICAgbGVmdDogcmVtaWZ5KDEwLCAxOCk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDEwLCAxOCk7XG4gICAgfVxuXG4gICAgLmJ1dHRvbltocmVmXTpmb2N1czo6YmVmb3JlLFxuICAgIC5idXR0b25baHJlZl06aG92ZXI6OmJlZm9yZSxcbiAgICAuYnV0dG9uW2hyZWZdOmFjdGl2ZTo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvcihcImxpZ2h0XCIpO1xuICAgIH1cblxuICAgIC50ZXh0LS1uZXdzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtaWZ5KDQsIDE2KTtcbiAgICB9XG5cbiAgICAudGV4dC0tbmV3cyAubGluayB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE0LCAxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBQYWdlXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbjpyb290IHtcbiAgICAmIHtcbiAgICAgICAgYWNjZW50LWNvbG9yOiBjb2xvcihcImFjY2VudFwiKTtcbiAgICB9XG59XG5cbmh0bWwsXG5ib2R5IHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogY29sb3IoXCJwYWdlLWJhY2tncm91bmRcIik7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLnBhZ2VfX2NvbnRhaW5lciB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKFwicGFnZS1iYWNrZ3JvdW5kXCIpO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gd2lsbCBpbnRlcmZlcmUgd2l0aCBgcG9zaXRpb246IHN0aWNreTtgXG4gICAgICAgIG92ZXJmbG93OiBjbGlwOyAvLyB3aWxsIE5PVCBpbnRlcmZlcmUgd2l0aCBgcG9zaXRpb246IHN0aWNreTtgXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgI2NvbnRlbnQgeyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cblxuICAgIC5jb250ZW50LWJsb2NrIHtcbiAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBBbGVydFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uYWxlcnQtYmxvY2sge1xuICAgICYge1xuICAgICAgICBAaW5jbHVkZSBsYXllcihcImFsZXJ0XCIpO1xuICAgIH1cblxuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcihcImVycm9yXCIpO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoJGNvbnRlbnQtcGFkZGluZyk7XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG59XG5cbi5hbGVydF9faW5uZXIge1xuICAgICYge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiByZW1pZnkoJHNpdGUtd2lkdGgpO1xuICAgIH1cbn1cblxuLmFsZXJ0X19idXR0b24ge1xuICAgICYge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcihcImxpZ2h0XCIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImVycm9yXCIpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgaGVpZ2h0OiByZW1pZnkoMzIsIDE2KTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHdpZHRoOiByZW1pZnkoMzIsIDE2KTtcbiAgICB9XG59XG5cbi5hbGVydF9fdXNlci1jb250ZW50IHtcbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogSGVhZGVyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5oZWFkZXItYmxvY2sge1xuICAgICYge1xuICAgICAgICBAaW5jbHVkZSBsYXllcihcImhlYWRlclwiKTtcblxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxufVxuXG4uaGVhZGVyX19pbm5lciB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IHJlbWlmeSgkc2l0ZS13aWR0aCArICgkY29udGVudC1wYWRkaW5nICogMikpO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoKCRjb250ZW50LXBhZGRpbmcgKiAxLjI1KSAkY29udGVudC1wYWRkaW5nKTtcbiAgICB9XG59XG5cbi5oZWFkZXJfX2xvd2VyLS1pbnRlcm5hbCB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2Jhbm5lci1pbnRlcm5hbC5qcGdcIik7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50aXplKGNvbG9yKFwiZGFya1wiKSwgMC4yKTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cblxuICAgIC5oZWFkZXJfX2lubmVyIHtcbiAgICAgICAgei1pbmRleDogMztcbiAgICB9XG59XG5cbi5oZWFkZXJfX2xvd2VyIHtcbiAgICAmOm5vdCguaGVhZGVyX19sb3dlci0taW50ZXJuYWwpIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgIH1cblxuICAgIC5oZWFkZXJfX2lubmVyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbWlmeSgzMiwgMTYpO1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtaWZ5KDQ1LCAxNik7XG5cbiAgICAgICAgQGluY2x1ZGUgc21hbGxlci10aGFuKGwpIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW1pZnkoNDUsIDE2KTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW1pZnkoNDAsIDE2KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmhlYWRlcl9fbG9nbyB7XG4gICAgJiB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgd2lkdGg6IHJlbWlmeSg5MCwgMTYpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIHNtYWxsZXItdGhhbihsKSB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbn1cblxuLmxvZ28tLW1vYmlsZSB7XG4gICAgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiByZW1pZnkoLTYsIDE2KTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgIC5sb2dvX19pbWFnZSB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiByZW1pZnkoNzgsIDE2KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4uaGVhZGVyX19sb2dvLS10ZXh0LFxuLmhlYWRlcl9fbG9nby0tZGl2aWRlciB7XG4gICAgJiB7XG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KDczMCwgMTYpO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBAaW5jbHVkZSBzbWFsbGVyLXRoYW4oeHh4bCkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW1pZnkoNjAwLCAxNik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5oZWFkZXJfX3NlYXJjaC1mb3JtIHtcbiAgICAmIHtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDAgJGNvbnRlbnQtcGFkZGluZywgMTYpO1xuICAgIH1cblxuICAgIC5zZWFyY2gtZm9ybV9faW5wdXQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudGl6ZShjb2xvcihcImxpZ2h0XCIsIFwic2hhZGVcIiksIDAuOSk7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtaWZ5KDcsIDE2KTtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwibGlnaHRcIik7XG4gICAgfVxuXG4gICAgLnNlYXJjaC1mb3JtX19idXR0b24ge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJsaWdodFwiKTtcbiAgICAgICAgcmlnaHQ6IHJlbWlmeSgkY29udGVudC1wYWRkaW5nLCAxNik7XG4gICAgfVxufVxuXG4uaGVhZGVyX19zZWFyY2gtZm9ybV9fY29udGFpbmVyLmlzLWFjdGl2ZSB7XG4gICAgJiB7XG4gICAgICAgIHotaW5kZXg6IDk5OTk7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudGl6ZShjb2xvcihcImRhcmtcIiksIDAuNCk7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuXG4gICAgLnNlYXJjaC1mb3JtX19pbnB1dCB7XG4gICAgICAgIHotaW5kZXg6IDk5OTk5OTtcbiAgICB9XG59XG5cbi5zZWFyY2gtZm9ybV9fY29udGFpbmVyLS1leHBhbmRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihcInByaW1hcnlcIik7XG59XG5cbi5zZWFyY2gtYWN0aXZlIHtcbiAgICAmIHtcbiAgICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIH1cbn1cblxuLmhlYWRlcl9fdXBwZXIge1xuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihcImRhcmtcIik7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2hlYWRlci10ZXh0dXJlLnBuZ1wiKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkIGNvbG9yKFwic2Vjb25kYXJ5XCIpO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgLmhlYWRlcl9faW5uZXIge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtaWZ5KDEwLCAxNik7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW1pZnkoMTAsIDE2KTtcblxuICAgICAgICBAaW5jbHVkZSBzbWFsbGVyLXRoYW4obCkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbWlmeSgxNSwgMTYpO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHJlbWlmeSgxNSwgMTYpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uaGVhZGVyX190aXRsZSB7XG4gICAgJi50aXRsZS0taDMge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyNSwgMTYpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtaWZ5KDMzLCAyNSk7XG4gICAgfVxuXG4gICAgJi50aXRsZS0taDQge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgxOCwgMTYpO1xuICAgIH1cblxuICAgIC5saW5rIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBOYXZpZ2F0aW9uXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkB1c2UgXCJzYXNzOmNvbG9yXCI7XG5cbi5uYXZpZ2F0aW9uLWJsb2NrIHtcbiAgICAmIHtcbiAgICAgICAgQGluY2x1ZGUgbGF5ZXIoXCJuYXZpZ2F0aW9uXCIpO1xuICAgIH1cbn1cblxuLm5hdmlnYXRpb25fX2lubmVyIHtcbiAgICAmIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KCRzaXRlLXdpZHRoKTtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKCN7cmVtaWZ5KCRzaXRlLXdpZHRoKX0gKyAje3JlbWlmeSgxNiAqIDIsIDIwKX0pO1xuICAgIH1cbn1cblxuLm5hdmlnYXRpb25fX2ZpZ3VyZSB7XG4gICAgJiB7XG4gICAgICAgIG1hcmdpbjogcmVtaWZ5KDAgMCA4LCAxNik7XG4gICAgfVxufVxuXG4ubmF2aWdhdGlvbl9faW1hZ2Uge1xuICAgICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG4vKiBmbHlvdXQgdmFyaWFudCAqL1xuXG4ubmF2aWdhdGlvbi1ibG9jay0tZmx5b3V0IHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgYm90dG9tOiA5OTllbTtcbiAgICAgICAgbGVmdDogLTk5OWVtO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogLTk5OWVtO1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMHMgMC4yNXMsIGxlZnQgMHMgMC4yNXMsIHRvcCAwcyAwLjI1cywgdmlzaWJpbGl0eSAwcyAwLjI1cztcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB3aWR0aDogMTAwdnc7XG4gICAgICAgIHotaW5kZXg6IDEwMDAwMTtcbiAgICB9XG5cbiAgICAubmF2aWdhdGlvbl9fY2xvc2Uge1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgzMiwgMTYpO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMjAgJGNvbnRlbnQtcGFkZGluZywgMzIpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAubmF2aWdhdGlvbl9fY2xvc2VfX2J1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uX19pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKFwicHJpbWFyeVwiKTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgje3JlbWlmeSgtMzIwLCAxNil9KTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzO1xuICAgICAgICB3aWR0aDogcmVtaWZ5KDMyMCwgMTYpO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uX19vdmVybGF5IHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lXG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZVxuICAgICAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvci5hZGp1c3QoY29sb3IoXCJkYXJrXCIpLCAkYWxwaGE6IC0wLjQpO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogLTk5OWVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtOTk5ZW07XG4gICAgICAgIHRyYW5zaXRpb246IGxlZnQgMHMgMC4yNXMsIHRvcCAwcyAwLjE1cywgb3BhY2l0eSAwLjI1cywgdmlzaWJpbGl0eSAwcyAwLjI1cztcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAubWVudS1hY3RpdmUgJiB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC5tZW51LWFjdGl2ZSAmIC5uYXZpZ2F0aW9uX19pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG5cbiAgICAubWVudS1hY3RpdmUgJiAubmF2aWdhdGlvbl9fb3ZlcmxheSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cztcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAubWVudS1saXN0LS1uYXZpZ2F0aW9uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5tZW51LWl0ZW0ge1xuICAgICAgICBjb2xvcjogY29sb3IoXCJzZWNvbmRhcnlcIiwgXCJ0aW50XCIpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2xpbmsge1xuICAgICAgICBmb250LXNpemU6IHJlbWlmeSgyNCwgMTYpO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMTAgMTIgMTQsIDI0KTtcbiAgICB9XG5cbiAgICAubWVudS1saXN0X190b2dnbGUge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW1pZnkoKCRjb250ZW50LXBhZGRpbmcgKiAxLjUpLCAxNik7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBIZXJvXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5oZXJvLWJsb2NrIHtcbiAgICAmIHtcbiAgICAgICAgQGluY2x1ZGUgbGF5ZXIoXCJoZXJvXCIpO1xuICAgIH1cblxuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcihcImJhY2tncm91bmRcIik7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuc3dpcGVyLXdyYXBwZXI6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDBkZWcsIHRyYW5zcGFyZW50aXplKGNvbG9yKFwiZGFya1wiKSwgMC4xNykgNDElLCB0cmFuc3BhcmVudGl6ZShjb2xvcihcImRhcmtcIiksIDAuNjgpIDU0JSwgdHJhbnNwYXJlbnRpemUoY29sb3IoXCJkYXJrXCIpLCAwLjYzKSA3MCUsIHRyYW5zcGFyZW50aXplKGNvbG9yKFwiZGFya1wiKSwgMC4xNykgODAlKTtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDk5O1xuXG4gICAgICAgIEBpbmNsdWRlIGxhcmdlci10aGFuKGwpIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgwZGVnLCB0cmFuc3BhcmVudGl6ZShjb2xvcihcImRhcmtcIiksIDAuODUpIDU1JSwgdHJhbnNwYXJlbnRpemUoY29sb3IoXCJkYXJrXCIpLCAwLjE3KSA4NiUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBDb250ZW50XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jb250ZW50LWJsb2NrIHtcbiAgICAmIHtcbiAgICAgICAgQGluY2x1ZGUgbGF5ZXIoXCJjb250ZW50XCIpO1xuICAgIH1cblxuICAgICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiBjb2xvcihcImJhY2tncm91bmRcIik7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgoJGNvbnRlbnQtcGFkZGluZyAqIDIpICRjb250ZW50LXBhZGRpbmcpO1xuICAgIH1cbn1cblxuLmNvbnRlbnRfX2lubmVyIHtcbiAgICAmIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KCRzaXRlLXdpZHRoKTtcbiAgICB9XG59XG5cbi5jb250ZW50X19yb3cge1xuICAgIEBpbmNsdWRlIGxhcmdlci10aGFuKHhzKSB7XG4gICAgICAgIC5jb2wtY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW1pZnkoMTA0LCAxNik7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5jb250ZW50X19zaWRlYmFyIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoLTg4ZGVnLCBjb2xvcihcInByaW1hcnlcIiwgXCJ0aW50XCIpIDMlLCBjb2xvcihcInByaW1hcnlcIikgODQlKTtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDMyIDU0LCAxNik7XG5cbiAgICAgICAgQGluY2x1ZGUgc21hbGxlci10aGFuKHhzKSB7XG4gICAgICAgICAgICBtYXJnaW46IHJlbWlmeSg5NiAtMjUgLTUwLCAxNik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWVudS1saXN0X19saW5rIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwic2Vjb25kYXJ5XCIsIFwidGludFwiKTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDI0LCAxNik7XG4gICAgICAgIHBhZGRpbmc6IHJlbWlmeSgwIDAgMTQsIDI0KTtcbiAgICB9XG5cbiAgICAubWVudS1saXN0X19saW5rOmhvdmVyLFxuICAgIC5tZW51LWxpc3RfX2xpbms6Zm9jdXMge1xuICAgICAgICBjb2xvcjogbGlnaHRlbihjb2xvcihcInNlY29uZGFyeVwiLCBcInRpbnRcIiksIDUlKTtcbiAgICB9XG5cbiAgICAubWVudS1saXN0LS1jaGlsZCAubWVudS1saXN0X19saW5rIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnLWxvYWQoXCIuLi9tZWRpYS92ZW5kb3IvZmFzLWFuZ2xlLXJpZ2h0LnN2Z1wiLCBmaWxsPSN7Y29sb3IoXCJxdWluYXJ5XCIpfSk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBsZWZ0O1xuICAgICAgICBib3JkZXItYm90dG9tOiByZW1pZnkoMSwgMTYpIHNvbGlkIGNvbG9yKFwicHJpbWFyeVwiLCBcInRpbnRcIik7XG4gICAgICAgIGNvbG9yOiBjb2xvcihcImxpZ2h0XCIpO1xuICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTYsIDE4KTtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDkgMCA5IDE2LCAxNik7XG4gICAgfVxuXG4gICAgLm1lbnUtbGlzdC0tY2hpbGQgLm1lbnUtbGlzdF9fbGluazpob3ZlcixcbiAgICAubWVudS1saXN0LS1jaGlsZCAubWVudS1saXN0X19saW5rOmZvY3VzIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwic2Vjb25kYXJ5XCIsIFwidGludFwiKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBsYXJnZXItdGhhbih4cykge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbWlmeSgzMiAyNCwgMTYpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uY29udGVudC1ibG9jay5jb250ZW50LWJsb2NrLS1ob21lIHtcbiAgICAmIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbWlmeSgxMDAsIDE2KTtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbWlmeSgxMzIsIDE2KTtcbiAgICB9XG5cbiAgICAudGl0bGUtLWgyIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMzAsIDE2KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBzbWFsbGVyLXRoYW4obCkge1xuICAgICAgICAmIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW1pZnkoNTcsIDE2KTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiByZW1pZnkoNzEsIDE2KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aXRsZS0taDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjYsIDE2KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogRm9vdGVyXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5mb290ZXItYmxvY2sge1xuICAgICYge1xuICAgICAgICBAaW5jbHVkZSBsYXllcihcImZvb3RlclwiKTtcbiAgICB9XG5cbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJkYXJrXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9tZWRpYS9mb290ZXItdGV4dHVyZV9tb2JpbGUucG5nXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMTAwJTtcbiAgICAgICAgcGFkZGluZzogcmVtaWZ5KDU4ICRjb250ZW50LXBhZGRpbmcgNTcpO1xuXG4gICAgICAgIEBpbmNsdWRlIGxhcmdlci10aGFuKG0pIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL21lZGlhL2Zvb3Rlci10ZXh0dXJlLnBuZ1wiKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbWlmeSg2NSAkY29udGVudC1wYWRkaW5nIDApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhhbmRvcmdlbCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG5cbiAgICAuaGFuZG9yZ2VsX19jb250ZW50IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJwcmltYXJ5XCIsIFwidGludFwiKTtcbiAgICB9XG5cbiAgICAuaGFuZG9yZ2VsX19jb250ZW50LS1vcGVuZWQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW1pZnkoJGNvbnRlbnQtcGFkZGluZywgMTYpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdC0tY2hpbGQ6OmFmdGVyLFxuICAgIC5tZW51LWxpc3QtLW5hdmlnYXRpb24gLm1lbnUtbGlzdC0tY2hpbGQ6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTQsIDE2KTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgICAgICBAaW5jbHVkZSBzbWFsbGVyLXRoYW4obCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWVudS1saXN0LS1uYXZpZ2F0aW9uIC5tZW51LWxpc3QtLWNoaWxkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IoXCJwcmltYXJ5XCIsIFwidGludFwiKTtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMTQsIDE2KTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2xpbmsge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3QtLWNoaWxkIC5tZW51LWxpc3RfX2xpbms6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiLVwiO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbWlmeSg0LCAxMik7XG4gICAgfVxuXG4gICAgLmZvb3Rlcl9fbmF2LWJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwibGlnaHRcIik7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2l0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiBhdXRvO1xuICAgIH1cblxuICAgIC5mb290ZXJfX3NpdGVtYXAtLW1vYmlsZSB7XG4gICAgICAgIEBpbmNsdWRlIHNtYWxsZXItdGhhbihsKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWVudS1pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleDogMSAxIDAlO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuXG4gICAgLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuICAgICAgICBmbGV4OiAwIDEgcmVtaWZ5KDIyNSwgMTQpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2xpbmsge1xuICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB9XG59XG5cbi5mb290ZXJfX2lubmVyIHtcbiAgICAmIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogcmVtaWZ5KCRzaXRlLXdpZHRoKTtcbiAgICB9XG59XG5cbi5mb290ZXJfX2xvd2VyIHtcbiAgICAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogY29sb3IoXCJwcmltYXJ5XCIpO1xuICAgICAgICBwYWRkaW5nOiByZW1pZnkoMzIgMjgsIDE2KTtcblxuICAgICAgICBAaW5jbHVkZSBsYXJnZXItdGhhbihsKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW1pZnkoMjIgNTUgMTEsIDE2KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZvb3Rlcl9fZGl2aWRlciB7XG4gICAgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6IGNvbG9yKFwicHJpbWFyeVwiLCBcInRpbnRcIik7XG4gICAgICAgIGhlaWdodDogcmVtaWZ5KDMsIDE2KTtcbiAgICAgICAgbWFyZ2luOiByZW1pZnkoMTUgMCwgMTYpO1xuICAgIH1cbn1cblxuLmZvb3Rlcl9fdGl0bGUge1xuICAgICYudGl0bGUtLWgzIHtcbiAgICAgICAgZm9udC1zaXplOiByZW1pZnkoMjUsIDE2KTtcbiAgICB9XG5cbiAgICAmLnRpdGxlLS1oNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE4LCAxNik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgc21hbGxlci10aGFuKGwpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbn1cblxuLmZvb3Rlcl9fdGV4dCB7XG4gICAgJi50ZXh0LS1zbWFsbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE0LCAxNik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbWlmeSg4LCAxNCk7XG5cbiAgICAgICAgQGluY2x1ZGUgc21hbGxlci10aGFuKGwpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDEyLCAxNik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBzbWFsbGVyLXRoYW4obCkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxufVxuXG4uZm9vdGVyX19saW5rIHtcbiAgICAmIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwic2Vjb25kYXJ5XCIsIFwidGludFwiKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IGNvbG9yKFwibGlnaHRcIik7XG4gICAgfVxufVxuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNb2R1bGVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTGF5b3V0XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1vZHVsZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AaW1wb3J0IFwiLi4vbW9kdWxlL3N3aXBlci9zd2lwZXJfeHhzXCI7XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIExheW91dFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBTd2lwZXIgKGh0dHA6Ly9pZGFuZ2Vyby51cy9zd2lwZXIvKVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AdXNlIFwic2FzczptYXRoXCI7XG5cbi8vIEN1c3RvbVxuXG4uc3dpcGVyX19waWN0dXJlIHtcbiAgICAmOjphZnRlciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBtYXRoLmRpdigzODQsIDEwMjQpICogMTAwJTtcbiAgICB9XG5cbiAgICAuc3dpcGVyLWNvbnRhaW5lci0taGVpZ2h0LWZpeGVkICY6OmFmdGVyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbWlmeSgzODQsIDE2KTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1vZHVsZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AaW1wb3J0IFwiLi4vbW9kdWxlL2NvbHVtbnMvY29sdW1uc194c1wiO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBMYXlvdXRcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogQ29sdW1uc1xuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5AZm9yICRpIGZyb20gMiB0aHJvdWdoIDEyIHtcbiAgICAuY29sdW1ucy0tI3skaX0ge1xuICAgICAgICBjb2x1bW5zOiAkaTtcbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1vZHVsZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBMYXlvdXRcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTW9kdWxlXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIExheW91dFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNb2R1bGVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGltcG9ydCBcIi4uL21vZHVsZS9zd2lwZXIvc3dpcGVyX2xcIjtcblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTGF5b3V0XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIFN3aXBlciAoaHR0cDovL2lkYW5nZXJvLnVzL3N3aXBlci8pXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuLy8gQ3VzdG9tXG5cbi5zd2lwZXJfX3BpY3R1cmUge1xuICAgICY6OmFmdGVyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IG1hdGguZGl2KDcyMSwgMTkyMCkgKiAxMDAlO1xuICAgIH1cblxuICAgIC5zd2lwZXItY29udGFpbmVyLS1oZWlnaHQtZml4ZWQgJjo6YWZ0ZXIge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtaWZ5KDcyMSwgMTYpO1xuICAgIH1cbn1cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTW9kdWxlXG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIExheW91dFxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuIiwiLy8gU3R5bGVzIHdyaXR0ZW4gYnkgSm9yZGFuIEAgV2VibGlueCwgSW5jLlxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBNb2R1bGVcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGltcG9ydCBcIi4uL21vZHVsZS9tZW51LWxpc3QvbWVudS1saXN0X3h4bFwiO1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBMYXlvdXRcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiIsIi8vIFN0eWxlcyB3cml0dGVuIGJ5IEpvcmRhbiBAIFdlYmxpbngsIEluYy5cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICpcXFxuICogTWVudSBMaXN0XG5cXCogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIG5hdmlnYXRpb24gdmFyaWFudCAqL1xuLm1lbnUtbGlzdC0tbmF2aWdhdGlvbiB7XG4gICAgJiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtaWZ5KDE4LCAxNik7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbWlmeSgyMiwgMTgpO1xuICAgIH1cblxuICAgIC5tZW51LWxpc3RfX2xpbmssXG4gICAgLm1lbnUtbGlzdF9fdG9nZ2xlIHtcbiAgICAgICAgJiB7XG4gICAgICAgICAgICBwYWRkaW5nOiByZW1pZnkoNyAyMCA5LCAxOCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBTdHlsZXMgd3JpdHRlbiBieSBKb3JkYW4gQCBXZWJsaW54LCBJbmMuXG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqXFxcbiAqIE1vZHVsZVxuXFwqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKlxcXG4gKiBMYXlvdXRcblxcKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbiJdfQ== */
