@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.4.3
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
       ========================================================================== */
/**
     * 1. Change the default font family in all browsers (opinionated).
     * 2. Correct the line height in all browsers.
     * 3. Prevent adjustments of font size after orientation changes in
     *    IE on Windows Phone and in iOS.
     */
html {
  font-family: sans-serif;
  /* 1 */
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */ }

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

/**
     * Add the correct display in IE 9-.
     */
article,
aside,
footer,
header,
nav,
section {
  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
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
figcaption,
figure {
  display: block; }

/**
     * Add the correct margin in IE 8.
     */
figure {
  margin: 1em 40px; }

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

/**
     * Add the correct display in IE.
     */
main {
  display: block; }

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

/* Links
       ========================================================================== */
/**
     * 1. Remove the gray background on active links in IE 10.
     * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
     */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
     * Remove the outline on focused links when they are also active or hovered
     * in all browsers (opinionated).
     */
a:active,
a:hover {
  outline-width: 0; }

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

/**
     * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
     */
b,
strong {
  font-weight: inherit; }

/**
     * 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 style in Android 4.3-.
     */
dfn {
  font-style: italic; }

/**
     * Add the correct background and color in IE 9-.
     */
mark {
  background-color: #ff0;
  color: #000; }

/**
     * 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
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
audio,
video {
  display: inline-block; }

/**
     * Add the correct display in iOS 4-7.
     */
audio:not([controls]) {
  display: none;
  height: 0; }

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

/**
     * Hide the overflow in IE.
     */
svg:not(:root) {
  overflow: hidden; }

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

/**
     * Show the overflow in IE.
     */
button {
  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; }

/**
     * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
     *    controls in Android 4.
     * 2. Correct the inability to style clickable types in iOS and Safari.
     */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  /**
       * Remove the inner border and padding in Firefox.
       */
  /**
       * Restore the focus styles unset by the previous rule.
       */ }
  button::-moz-focus-inner,
  [type="button"]::-moz-focus-inner,
  [type="reset"]::-moz-focus-inner,
  [type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0; }
  button:-moz-focusring,
  [type="button"]:-moz-focusring,
  [type="reset"]:-moz-focusring,
  [type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText; }

/**
     * Show the overflow in Edge.
     */
input {
  overflow: visible; }

/**
     * 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 and cancel buttons in Chrome and Safari on macOS.
       */ }
  [type="search"]::-webkit-search-cancel-button, [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 */ }

/**
     * Change the border, margin, and padding in all browsers (opinionated).
     */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
     * 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 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  color: inherit;
  /* 2 */
  white-space: normal;
  /* 1 */ }

/**
     * 1. Add the correct display in IE 9-.
     * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
     */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

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

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

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

/*
     * Add the correct display in IE 9-.
     */
menu {
  display: block; }

/* Scripting
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
canvas {
  display: inline-block; }

/**
     * Add the correct display in IE.
     */
template {
  display: none; }

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

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=99.42857em&xxlarge=100em"; }

html {
  box-sizing: border-box;
  font-size: 14px; }

*,
*::before,
*::after {
  box-sizing: inherit; }

body {
  margin: 0;
  padding: 0;
  background: #222020;
  font-family: "Avenir Next W01", "Avenir Next", Avenir, Futura, "Century Gothic", sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic; }

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 2px; }

select {
  box-sizing: border-box;
  width: 100%;
  border-radius: 2px; }

.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important; }

button {
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 2px;
  background: transparent;
  line-height: 1;
  cursor: auto; }
  [data-whatinput='mouse'] button {
    outline: 0; }

pre {
  overflow: auto; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; }

.is-visible {
  display: block !important; }

.is-hidden {
  display: none !important; }

.row {
  max-width: 99.42857rem;
  margin-right: auto;
  margin-left: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  .row .row {
    margin-right: -0.57143rem;
    margin-left: -0.57143rem; }
    @media print, screen and (min-width: 40em) {
      .row .row {
        margin-right: -0.85714rem;
        margin-left: -0.85714rem; } }
    @media print, screen and (min-width: 64em) {
      .row .row {
        margin-right: -0.85714rem;
        margin-left: -0.85714rem; } }
    @media screen and (min-width: 99.42857em) {
      .row .row {
        margin-right: -0.85714rem;
        margin-left: -0.85714rem; } }
    @media screen and (min-width: 100em) {
      .row .row {
        margin-right: -0.85714rem;
        margin-left: -0.85714rem; } }
    .row .row.collapse {
      margin-right: 0;
      margin-left: 0; }
  .row.expanded {
    max-width: none; }
    .row.expanded .row {
      margin-right: auto;
      margin-left: auto; }
  .row:not(.expanded) .row {
    max-width: none; }
  .row.collapse > .column, .row.collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .row.is-collapse-child,
  .row.collapse > .column > .row,
  .row.collapse > .columns > .row {
    margin-right: 0;
    margin-left: 0; }

.column, .columns {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  padding-right: 0.57143rem;
  padding-left: 0.57143rem;
  min-width: 0; }
  @media print, screen and (min-width: 40em) {
    .column, .columns {
      padding-right: 0.85714rem;
      padding-left: 0.85714rem; } }

.column.row.row, .row.row.columns {
  float: none;
  display: block; }

.row .column.row.row, .row .row.row.columns {
  margin-right: 0;
  margin-left: 0;
  padding-right: 0;
  padding-left: 0; }

.small-1 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 8.33333%;
      -ms-flex: 0 0 8.33333%;
          flex: 0 0 8.33333%;
  max-width: 8.33333%; }

.small-offset-0 {
  margin-left: 0%; }

.small-2 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 16.66667%;
      -ms-flex: 0 0 16.66667%;
          flex: 0 0 16.66667%;
  max-width: 16.66667%; }

.small-offset-1 {
  margin-left: 8.33333%; }

.small-3 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 25%;
      -ms-flex: 0 0 25%;
          flex: 0 0 25%;
  max-width: 25%; }

.small-offset-2 {
  margin-left: 16.66667%; }

.small-4 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 33.33333%;
      -ms-flex: 0 0 33.33333%;
          flex: 0 0 33.33333%;
  max-width: 33.33333%; }

.small-offset-3 {
  margin-left: 25%; }

.small-5 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 41.66667%;
      -ms-flex: 0 0 41.66667%;
          flex: 0 0 41.66667%;
  max-width: 41.66667%; }

.small-offset-4 {
  margin-left: 33.33333%; }

.small-6 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 50%;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  max-width: 50%; }

.small-offset-5 {
  margin-left: 41.66667%; }

.small-7 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 58.33333%;
      -ms-flex: 0 0 58.33333%;
          flex: 0 0 58.33333%;
  max-width: 58.33333%; }

.small-offset-6 {
  margin-left: 50%; }

.small-8 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 66.66667%;
      -ms-flex: 0 0 66.66667%;
          flex: 0 0 66.66667%;
  max-width: 66.66667%; }

.small-offset-7 {
  margin-left: 58.33333%; }

.small-9 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 75%;
      -ms-flex: 0 0 75%;
          flex: 0 0 75%;
  max-width: 75%; }

.small-offset-8 {
  margin-left: 66.66667%; }

.small-10 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 83.33333%;
      -ms-flex: 0 0 83.33333%;
          flex: 0 0 83.33333%;
  max-width: 83.33333%; }

.small-offset-9 {
  margin-left: 75%; }

.small-11 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 91.66667%;
      -ms-flex: 0 0 91.66667%;
          flex: 0 0 91.66667%;
  max-width: 91.66667%; }

.small-offset-10 {
  margin-left: 83.33333%; }

.small-12 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  max-width: 100%; }

.small-offset-11 {
  margin-left: 91.66667%; }

.small-up-1 {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .small-up-1 > .column, .small-up-1 > .columns {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }

.small-up-2 {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .small-up-2 > .column, .small-up-2 > .columns {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }

.small-up-3 {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .small-up-3 > .column, .small-up-3 > .columns {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%; }

.small-up-4 {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .small-up-4 > .column, .small-up-4 > .columns {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }

.small-up-5 {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .small-up-5 > .column, .small-up-5 > .columns {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 20%;
        -ms-flex: 0 0 20%;
            flex: 0 0 20%;
    max-width: 20%; }

.small-up-6 {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .small-up-6 > .column, .small-up-6 > .columns {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%; }

.small-up-7 {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .small-up-7 > .column, .small-up-7 > .columns {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 14.28571%;
        -ms-flex: 0 0 14.28571%;
            flex: 0 0 14.28571%;
    max-width: 14.28571%; }

.small-up-8 {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  .small-up-8 > .column, .small-up-8 > .columns {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 12.5%;
        -ms-flex: 0 0 12.5%;
            flex: 0 0 12.5%;
    max-width: 12.5%; }

.small-collapse > .column, .small-collapse > .columns {
  padding-right: 0;
  padding-left: 0; }

.small-uncollapse > .column, .small-uncollapse > .columns {
  padding-right: 0.57143rem;
  padding-left: 0.57143rem; }

@media print, screen and (min-width: 40em) {
  .medium-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.33333%;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .medium-offset-0 {
    margin-left: 0%; }
  .medium-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .medium-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .medium-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .medium-offset-3 {
    margin-left: 25%; }
  .medium-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.66667%;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .medium-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .medium-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.33333%;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .medium-offset-6 {
    margin-left: 50%; }
  .medium-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.66667%;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .medium-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .medium-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.33333%;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .medium-offset-9 {
    margin-left: 75%; }
  .medium-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.66667%;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .medium-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .medium-up-1 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .medium-up-1 > .column, .medium-up-1 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .medium-up-2 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .medium-up-2 > .column, .medium-up-2 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 50%;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .medium-up-3 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .medium-up-3 > .column, .medium-up-3 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 33.33333%;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .medium-up-4 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .medium-up-4 > .column, .medium-up-4 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 25%;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .medium-up-5 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .medium-up-5 > .column, .medium-up-5 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 20%;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .medium-up-6 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .medium-up-6 > .column, .medium-up-6 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 16.66667%;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .medium-up-7 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .medium-up-7 > .column, .medium-up-7 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 14.28571%;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .medium-up-8 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .medium-up-8 > .column, .medium-up-8 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 12.5%;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .medium-expand {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; } }

.row.medium-unstack > .column, .row.medium-unstack > .columns {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%; }
  @media print, screen and (min-width: 40em) {
    .row.medium-unstack > .column, .row.medium-unstack > .columns {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }

@media print, screen and (min-width: 40em) {
  .medium-collapse > .column, .medium-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .medium-uncollapse > .column, .medium-uncollapse > .columns {
    padding-right: 0.85714rem;
    padding-left: 0.85714rem; } }

@media print, screen and (min-width: 64em) {
  .large-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.33333%;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .large-offset-0 {
    margin-left: 0%; }
  .large-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .large-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .large-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .large-offset-3 {
    margin-left: 25%; }
  .large-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.66667%;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .large-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .large-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.33333%;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .large-offset-6 {
    margin-left: 50%; }
  .large-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.66667%;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .large-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .large-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.33333%;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .large-offset-9 {
    margin-left: 75%; }
  .large-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.66667%;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .large-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .large-up-1 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .large-up-1 > .column, .large-up-1 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .large-up-2 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .large-up-2 > .column, .large-up-2 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 50%;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .large-up-3 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .large-up-3 > .column, .large-up-3 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 33.33333%;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .large-up-4 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .large-up-4 > .column, .large-up-4 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 25%;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .large-up-5 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .large-up-5 > .column, .large-up-5 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 20%;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .large-up-6 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .large-up-6 > .column, .large-up-6 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 16.66667%;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .large-up-7 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .large-up-7 > .column, .large-up-7 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 14.28571%;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .large-up-8 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .large-up-8 > .column, .large-up-8 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 12.5%;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .large-expand {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; } }

.row.large-unstack > .column, .row.large-unstack > .columns {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%; }
  @media print, screen and (min-width: 64em) {
    .row.large-unstack > .column, .row.large-unstack > .columns {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }

@media print, screen and (min-width: 64em) {
  .large-collapse > .column, .large-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .large-uncollapse > .column, .large-uncollapse > .columns {
    padding-right: 0.85714rem;
    padding-left: 0.85714rem; } }

@media screen and (min-width: 99.42857em) {
  .xlarge-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.33333%;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .xlarge-offset-0 {
    margin-left: 0%; }
  .xlarge-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .xlarge-offset-1 {
    margin-left: 8.33333%; }
  .xlarge-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }
  .xlarge-offset-2 {
    margin-left: 16.66667%; }
  .xlarge-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .xlarge-offset-3 {
    margin-left: 25%; }
  .xlarge-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.66667%;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .xlarge-offset-4 {
    margin-left: 33.33333%; }
  .xlarge-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }
  .xlarge-offset-5 {
    margin-left: 41.66667%; }
  .xlarge-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.33333%;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .xlarge-offset-6 {
    margin-left: 50%; }
  .xlarge-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.66667%;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .xlarge-offset-7 {
    margin-left: 58.33333%; }
  .xlarge-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }
  .xlarge-offset-8 {
    margin-left: 66.66667%; }
  .xlarge-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.33333%;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .xlarge-offset-9 {
    margin-left: 75%; }
  .xlarge-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.66667%;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .xlarge-offset-10 {
    margin-left: 83.33333%; }
  .xlarge-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .xlarge-offset-11 {
    margin-left: 91.66667%; }
  .xlarge-up-1 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xlarge-up-1 > .column, .xlarge-up-1 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .xlarge-up-2 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xlarge-up-2 > .column, .xlarge-up-2 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 50%;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .xlarge-up-3 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xlarge-up-3 > .column, .xlarge-up-3 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 33.33333%;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .xlarge-up-4 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xlarge-up-4 > .column, .xlarge-up-4 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 25%;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .xlarge-up-5 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xlarge-up-5 > .column, .xlarge-up-5 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 20%;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .xlarge-up-6 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xlarge-up-6 > .column, .xlarge-up-6 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 16.66667%;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .xlarge-up-7 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xlarge-up-7 > .column, .xlarge-up-7 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 14.28571%;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .xlarge-up-8 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xlarge-up-8 > .column, .xlarge-up-8 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 12.5%;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media screen and (min-width: 99.42857em) and (min-width: 99.42857em) {
  .xlarge-expand {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; } }

.row.xlarge-unstack > .column, .row.xlarge-unstack > .columns {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%; }
  @media screen and (min-width: 99.42857em) {
    .row.xlarge-unstack > .column, .row.xlarge-unstack > .columns {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }

@media screen and (min-width: 99.42857em) {
  .xlarge-collapse > .column, .xlarge-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .xlarge-uncollapse > .column, .xlarge-uncollapse > .columns {
    padding-right: 0.85714rem;
    padding-left: 0.85714rem; } }

@media screen and (min-width: 100em) {
  .xxlarge-1 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 8.33333%;
        -ms-flex: 0 0 8.33333%;
            flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .xxlarge-offset-0 {
    margin-left: 0%; }
  .xxlarge-2 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 16.66667%;
        -ms-flex: 0 0 16.66667%;
            flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .xxlarge-offset-1 {
    margin-left: 8.33333%; }
  .xxlarge-3 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 25%;
        -ms-flex: 0 0 25%;
            flex: 0 0 25%;
    max-width: 25%; }
  .xxlarge-offset-2 {
    margin-left: 16.66667%; }
  .xxlarge-4 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 33.33333%;
        -ms-flex: 0 0 33.33333%;
            flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .xxlarge-offset-3 {
    margin-left: 25%; }
  .xxlarge-5 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 41.66667%;
        -ms-flex: 0 0 41.66667%;
            flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .xxlarge-offset-4 {
    margin-left: 33.33333%; }
  .xxlarge-6 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 50%;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    max-width: 50%; }
  .xxlarge-offset-5 {
    margin-left: 41.66667%; }
  .xxlarge-7 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 58.33333%;
        -ms-flex: 0 0 58.33333%;
            flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .xxlarge-offset-6 {
    margin-left: 50%; }
  .xxlarge-8 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 66.66667%;
        -ms-flex: 0 0 66.66667%;
            flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .xxlarge-offset-7 {
    margin-left: 58.33333%; }
  .xxlarge-9 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 75%;
        -ms-flex: 0 0 75%;
            flex: 0 0 75%;
    max-width: 75%; }
  .xxlarge-offset-8 {
    margin-left: 66.66667%; }
  .xxlarge-10 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 83.33333%;
        -ms-flex: 0 0 83.33333%;
            flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .xxlarge-offset-9 {
    margin-left: 75%; }
  .xxlarge-11 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 91.66667%;
        -ms-flex: 0 0 91.66667%;
            flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .xxlarge-offset-10 {
    margin-left: 83.33333%; }
  .xxlarge-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .xxlarge-offset-11 {
    margin-left: 91.66667%; }
  .xxlarge-up-1 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xxlarge-up-1 > .column, .xxlarge-up-1 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 100%;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .xxlarge-up-2 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xxlarge-up-2 > .column, .xxlarge-up-2 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 50%;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .xxlarge-up-3 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xxlarge-up-3 > .column, .xxlarge-up-3 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 33.33333%;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .xxlarge-up-4 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xxlarge-up-4 > .column, .xxlarge-up-4 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 25%;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .xxlarge-up-5 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xxlarge-up-5 > .column, .xxlarge-up-5 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 20%;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .xxlarge-up-6 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xxlarge-up-6 > .column, .xxlarge-up-6 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 16.66667%;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .xxlarge-up-7 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xxlarge-up-7 > .column, .xxlarge-up-7 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 14.28571%;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .xxlarge-up-8 {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .xxlarge-up-8 > .column, .xxlarge-up-8 > .columns {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 12.5%;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media screen and (min-width: 100em) and (min-width: 100em) {
  .xxlarge-expand {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; } }

.row.xxlarge-unstack > .column, .row.xxlarge-unstack > .columns {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%; }
  @media screen and (min-width: 100em) {
    .row.xxlarge-unstack > .column, .row.xxlarge-unstack > .columns {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }

@media screen and (min-width: 100em) {
  .xxlarge-collapse > .column, .xxlarge-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .xxlarge-uncollapse > .column, .xxlarge-uncollapse > .columns {
    padding-right: 0.85714rem;
    padding-left: 0.85714rem; } }

.shrink {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  max-width: 100%; }

.column-block {
  margin-bottom: 1.14286rem; }
  .column-block > :last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .column-block {
      margin-bottom: 1.71429rem; }
      .column-block > :last-child {
        margin-bottom: 0; } }

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

p {
  margin-bottom: 1.14286rem;
  font-size: inherit;
  line-height: 1.71429;
  text-rendering: optimizeLegibility; }

em,
i {
  font-style: italic;
  line-height: inherit; }

strong,
b {
  font-weight: 600;
  line-height: inherit; }

small {
  font-size: 1rem;
  line-height: inherit; }

h1, .h1, .card-tile .card-content h5,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: "Avenir Next W01", "Avenir Next", Avenir, Futura, "Century Gothic", sans-serif;
  font-style: normal;
  font-weight: normal;
  color: #DCC18E;
  text-rendering: optimizeLegibility; }
  h1 small, .h1 small, .card-tile .card-content h5 small,
  h2 small, .h2 small,
  h3 small, .h3 small,
  h4 small, .h4 small,
  h5 small, .h5 small,
  h6 small, .h6 small {
    line-height: 0;
    color: #fff; }

h1, .h1, .card-tile .card-content h5 {
  font-size: 1.71429rem;
  line-height: 1.1875;
  margin-top: 0;
  margin-bottom: 1.71429rem; }

h2, .h2 {
  font-size: 1.42857rem;
  line-height: 1.1875;
  margin-top: 0;
  margin-bottom: 1.71429rem; }

h3, .h3 {
  font-size: 1.42857rem;
  line-height: 1.1875;
  margin-top: 0;
  margin-bottom: 1.71429rem; }

h4, .h4 {
  font-size: 1.28571rem;
  line-height: 1.1875;
  margin-top: 0;
  margin-bottom: 2.28571rem; }

h5, .h5 {
  font-size: 1rem;
  line-height: 1.1875;
  margin-top: 0;
  margin-bottom: 2.28571rem; }

h6, .h6 {
  font-size: 0.92857rem;
  line-height: 1.1875;
  margin-top: 0;
  margin-bottom: 2.28571rem; }

@media print, screen and (min-width: 40em) {
  h1, .h1, .card-tile .card-content h5 {
    font-size: 2.28571rem;
    margin-bottom: 1.71429rem; }
  h2, .h2 {
    font-size: 2rem; }
  h3, .h3 {
    font-size: 1.71429rem;
    margin-bottom: 1.42857rem; }
  h4, .h4 {
    font-size: 1.42857rem; }
  h5, .h5 {
    font-size: 1.14286rem;
    margin-bottom: 2.28571rem; }
  h6, .h6 {
    font-size: 1rem;
    margin-bottom: 2.28571rem; } }

a {
  line-height: inherit;
  color: #DCC18E;
  text-decoration: none;
  cursor: pointer; }
  a:hover, a:focus {
    color: #d0ac67; }
  a img {
    border: 0; }

hr {
  clear: both;
  max-width: 99.42857rem;
  height: 0;
  margin: 1.42857rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #4E4D50;
  border-left: 0; }

ul,
ol,
dl {
  margin-bottom: 1.14286rem;
  list-style-position: outside;
  line-height: 1.71429; }

li {
  font-size: inherit; }

ul {
  margin-left: 1.25rem;
  list-style-type: disc; }

ol {
  margin-left: 1.25rem; }

ul ul, ol ul, ul ol, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0; }

dl {
  margin-bottom: 1rem; }
  dl dt {
    margin-bottom: 0.3rem;
    font-weight: 600; }

blockquote {
  margin: 0 0 1.14286rem;
  padding: 0.64286rem 1.42857rem 0 1.35714rem;
  border-left: 1px solid #4E4D50; }
  blockquote, blockquote p {
    line-height: 1.71429;
    color: #222020; }

cite {
  display: block;
  font-size: 0.92857rem;
  color: #222020; }
  cite:before {
    content: "— "; }

abbr, abbr[title] {
  border-bottom: 1px dotted #1A1818;
  cursor: help;
  text-decoration: none; }

figure {
  margin: 0; }

code {
  padding: 0.14286rem 0.35714rem 0.07143rem;
  border: 1px solid #4E4D50;
  background-color: #908f8f;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #1A1818; }

kbd {
  margin: 0;
  padding: 0.14286rem 0.28571rem 0;
  background-color: #908f8f;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #1A1818;
  border-radius: 2px; }

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: normal;
  line-height: 1.4;
  color: #222020; }

.lead {
  font-size: 17.5px;
  line-height: 1.6; }

.stat {
  font-size: 2.5rem;
  line-height: 1; }
  p + .stat {
    margin-top: -1rem; }

ul.no-bullet, ul.links, ul.inline-list, #menu-links ul#primary, .gallery-thumbnails ul.gallery-sub-menu, .locations-wrapper ul.locations-list, ol.no-bullet, ol.links, ol.inline-list, #menu-links ol#primary, .gallery-thumbnails ol.gallery-sub-menu, .locations-wrapper ol.locations-list {
  margin-left: 0;
  list-style: none; }

.text-left {
  text-align: left; }

.text-right {
  text-align: right; }

.text-center {
  text-align: center; }

.text-justify {
  text-align: justify; }

@media print, screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left; }
  .medium-text-right {
    text-align: right; }
  .medium-text-center {
    text-align: center; }
  .medium-text-justify {
    text-align: justify; } }

@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left; }
  .large-text-right {
    text-align: right; }
  .large-text-center {
    text-align: center; }
  .large-text-justify {
    text-align: justify; } }

@media screen and (min-width: 99.42857em) {
  .xlarge-text-left {
    text-align: left; }
  .xlarge-text-right {
    text-align: right; }
  .xlarge-text-center {
    text-align: center; }
  .xlarge-text-justify {
    text-align: justify; } }

@media screen and (min-width: 100em) {
  .xxlarge-text-left {
    text-align: left; }
  .xxlarge-text-right {
    text-align: right; }
  .xxlarge-text-center {
    text-align: center; }
  .xxlarge-text-justify {
    text-align: justify; } }

.show-for-print {
  display: none !important; }

@media print {
  * {
    background: transparent !important;
    box-shadow: none !important;
    color: black !important;
    text-shadow: none !important; }
  .show-for-print {
    display: block !important; }
  .hide-for-print {
    display: none !important; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  .ir a:after,
  a[href^='javascript:']:after,
  a[href^='#']:after {
    content: ''; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  pre,
  blockquote {
    border: 1px solid #222020;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .print-break-inside {
    page-break-inside: auto; } }

.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  font-family: inherit;
  padding: 1.23em 1.85em;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 2px;
  -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-size: 0.9rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #DCC18E;
  color: #fff; }
  [data-whatinput='mouse'] .button {
    outline: 0; }
  .button:hover, .button:focus {
    background-color: #cfaa65;
    color: #fff; }
  .button.tiny {
    font-size: 0.6rem; }
  .button.small {
    font-size: 0.75rem; }
  .button.large {
    font-size: 1.25rem; }
  .button.expanded {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  .button.primary {
    background-color: #DCC18E;
    color: #1A1818; }
    .button.primary:hover, .button.primary:focus {
      background-color: #cba357;
      color: #1A1818; }
  .button.secondary {
    background-color: #9d8047;
    color: #1A1818; }
    .button.secondary:hover, .button.secondary:focus {
      background-color: #7e6639;
      color: #1A1818; }
  .button.success {
    background-color: #3adb76;
    color: #1A1818; }
    .button.success:hover, .button.success:focus {
      background-color: #22bb5b;
      color: #1A1818; }
  .button.warning {
    background-color: #ffae00;
    color: #1A1818; }
    .button.warning:hover, .button.warning:focus {
      background-color: #cc8b00;
      color: #1A1818; }
  .button.alert {
    background-color: #cc4b37;
    color: #fff; }
    .button.alert:hover, .button.alert:focus {
      background-color: #a53b2a;
      color: #fff; }
  .button.disabled, .button[disabled] {
    opacity: 0.25;
    cursor: not-allowed; }
    .button.disabled, .button.disabled:hover, .button.disabled:focus, .button[disabled], .button[disabled]:hover, .button[disabled]:focus {
      background-color: #DCC18E;
      color: #fff; }
    .button.disabled.primary, .button[disabled].primary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.primary, .button.disabled.primary:hover, .button.disabled.primary:focus, .button[disabled].primary, .button[disabled].primary:hover, .button[disabled].primary:focus {
        background-color: #DCC18E;
        color: #1A1818; }
    .button.disabled.secondary, .button[disabled].secondary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.secondary, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
        background-color: #9d8047;
        color: #1A1818; }
    .button.disabled.success, .button[disabled].success {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.success, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success, .button[disabled].success:hover, .button[disabled].success:focus {
        background-color: #3adb76;
        color: #1A1818; }
    .button.disabled.warning, .button[disabled].warning {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.warning, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning, .button[disabled].warning:hover, .button[disabled].warning:focus {
        background-color: #ffae00;
        color: #1A1818; }
    .button.disabled.alert, .button[disabled].alert {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.alert, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert, .button[disabled].alert:hover, .button[disabled].alert:focus {
        background-color: #cc4b37;
        color: #fff; }
  .button.hollow {
    border: 1px solid #DCC18E;
    color: #DCC18E; }
    .button.hollow, .button.hollow:hover, .button.hollow:focus {
      background-color: transparent; }
    .button.hollow.disabled, .button.hollow.disabled:hover, .button.hollow.disabled:focus, .button.hollow[disabled], .button.hollow[disabled]:hover, .button.hollow[disabled]:focus {
      background-color: transparent; }
    .button.hollow:hover, .button.hollow:focus {
      border-color: #8a692b;
      color: #8a692b; }
      .button.hollow:hover.disabled, .button.hollow:hover[disabled], .button.hollow:focus.disabled, .button.hollow:focus[disabled] {
        border: 1px solid #DCC18E;
        color: #DCC18E; }
    .button.hollow.primary {
      border: 1px solid #DCC18E;
      color: #DCC18E; }
      .button.hollow.primary:hover, .button.hollow.primary:focus {
        border-color: #8a692b;
        color: #8a692b; }
        .button.hollow.primary:hover.disabled, .button.hollow.primary:hover[disabled], .button.hollow.primary:focus.disabled, .button.hollow.primary:focus[disabled] {
          border: 1px solid #DCC18E;
          color: #DCC18E; }
    .button.hollow.secondary {
      border: 1px solid #9d8047;
      color: #9d8047; }
      .button.hollow.secondary:hover, .button.hollow.secondary:focus {
        border-color: #4f4024;
        color: #4f4024; }
        .button.hollow.secondary:hover.disabled, .button.hollow.secondary:hover[disabled], .button.hollow.secondary:focus.disabled, .button.hollow.secondary:focus[disabled] {
          border: 1px solid #9d8047;
          color: #9d8047; }
    .button.hollow.success {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.hollow.success:hover, .button.hollow.success:focus {
        border-color: #157539;
        color: #157539; }
        .button.hollow.success:hover.disabled, .button.hollow.success:hover[disabled], .button.hollow.success:focus.disabled, .button.hollow.success:focus[disabled] {
          border: 1px solid #3adb76;
          color: #3adb76; }
    .button.hollow.warning {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.hollow.warning:hover, .button.hollow.warning:focus {
        border-color: #805700;
        color: #805700; }
        .button.hollow.warning:hover.disabled, .button.hollow.warning:hover[disabled], .button.hollow.warning:focus.disabled, .button.hollow.warning:focus[disabled] {
          border: 1px solid #ffae00;
          color: #ffae00; }
    .button.hollow.alert {
      border: 1px solid #cc4b37;
      color: #cc4b37; }
      .button.hollow.alert:hover, .button.hollow.alert:focus {
        border-color: #67251a;
        color: #67251a; }
        .button.hollow.alert:hover.disabled, .button.hollow.alert:hover[disabled], .button.hollow.alert:focus.disabled, .button.hollow.alert:focus[disabled] {
          border: 1px solid #cc4b37;
          color: #cc4b37; }
  .button.clear {
    border: 1px solid #DCC18E;
    color: #DCC18E; }
    .button.clear, .button.clear:hover, .button.clear:focus {
      background-color: transparent; }
    .button.clear.disabled, .button.clear.disabled:hover, .button.clear.disabled:focus, .button.clear[disabled], .button.clear[disabled]:hover, .button.clear[disabled]:focus {
      background-color: transparent; }
    .button.clear:hover, .button.clear:focus {
      border-color: #8a692b;
      color: #8a692b; }
      .button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus.disabled, .button.clear:focus[disabled] {
        border: 1px solid #DCC18E;
        color: #DCC18E; }
    .button.clear, .button.clear.disabled, .button.clear[disabled], .button.clear:hover, .button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus, .button.clear:focus.disabled, .button.clear:focus[disabled] {
      border-color: transparent; }
    .button.clear.primary {
      border: 1px solid #DCC18E;
      color: #DCC18E; }
      .button.clear.primary:hover, .button.clear.primary:focus {
        border-color: #8a692b;
        color: #8a692b; }
        .button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
          border: 1px solid #DCC18E;
          color: #DCC18E; }
      .button.clear.primary, .button.clear.primary.disabled, .button.clear.primary[disabled], .button.clear.primary:hover, .button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus, .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
        border-color: transparent; }
    .button.clear.secondary {
      border: 1px solid #9d8047;
      color: #9d8047; }
      .button.clear.secondary:hover, .button.clear.secondary:focus {
        border-color: #4f4024;
        color: #4f4024; }
        .button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
          border: 1px solid #9d8047;
          color: #9d8047; }
      .button.clear.secondary, .button.clear.secondary.disabled, .button.clear.secondary[disabled], .button.clear.secondary:hover, .button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus, .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
        border-color: transparent; }
    .button.clear.success {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.clear.success:hover, .button.clear.success:focus {
        border-color: #157539;
        color: #157539; }
        .button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
          border: 1px solid #3adb76;
          color: #3adb76; }
      .button.clear.success, .button.clear.success.disabled, .button.clear.success[disabled], .button.clear.success:hover, .button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus, .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
        border-color: transparent; }
    .button.clear.warning {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.clear.warning:hover, .button.clear.warning:focus {
        border-color: #805700;
        color: #805700; }
        .button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
          border: 1px solid #ffae00;
          color: #ffae00; }
      .button.clear.warning, .button.clear.warning.disabled, .button.clear.warning[disabled], .button.clear.warning:hover, .button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus, .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
        border-color: transparent; }
    .button.clear.alert {
      border: 1px solid #cc4b37;
      color: #cc4b37; }
      .button.clear.alert:hover, .button.clear.alert:focus {
        border-color: #67251a;
        color: #67251a; }
        .button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
          border: 1px solid #cc4b37;
          color: #cc4b37; }
      .button.clear.alert, .button.clear.alert.disabled, .button.clear.alert[disabled], .button.clear.alert:hover, .button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus, .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
        border-color: transparent; }
  .button.dropdown::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.4em;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #fff transparent transparent;
    position: relative;
    top: 0.4em;
    display: inline-block;
    float: right;
    margin-left: 1.85em; }
  .button.dropdown.hollow::after {
    border-top-color: #DCC18E; }
  .button.dropdown.hollow.primary::after {
    border-top-color: #DCC18E; }
  .button.dropdown.hollow.secondary::after {
    border-top-color: #9d8047; }
  .button.dropdown.hollow.success::after {
    border-top-color: #3adb76; }
  .button.dropdown.hollow.warning::after {
    border-top-color: #ffae00; }
  .button.dropdown.hollow.alert::after {
    border-top-color: #cc4b37; }
  .button.arrow-only::after {
    top: -0.1em;
    float: none;
    margin-left: 0; }

a.button:hover, a.button:focus {
  text-decoration: none; }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.46429rem;
  margin: 0 0 1.14286rem;
  padding: 0.57143rem;
  border: 1px solid #fff;
  border-radius: 2px;
  background-color: transparent;
  box-shadow: none;
  font-family: inherit;
  font-size: 0.92857rem;
  font-weight: 600;
  line-height: 1.5;
  color: #fff;
  -webkit-transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  [type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus,
  textarea:focus {
    outline: none;
    border: 1px solid #fff;
    background-color: transparent;
    box-shadow: none;
    -webkit-transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }

textarea {
  max-width: 100%; }
  textarea[rows] {
    height: auto; }

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #fff; }

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #fff; }

input::placeholder,
textarea::placeholder {
  color: #fff; }

input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: rgba(255, 255, 255, 0.24);
  cursor: not-allowed; }

[type='submit'],
[type='button'] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 2px; }

input[type='search'] {
  box-sizing: border-box; }

[type='file'],
[type='checkbox'],
[type='radio'] {
  margin: 0 0 1.14286rem; }

[type='checkbox'] + label,
[type='radio'] + label {
  display: inline-block;
  vertical-align: baseline;
  margin-left: 0.57143rem;
  margin-right: 1.14286rem;
  margin-bottom: 0; }
  [type='checkbox'] + label[for],
  [type='radio'] + label[for] {
    cursor: pointer; }

label > [type='checkbox'],
label > [type='radio'] {
  margin-right: 0.57143rem; }

[type='file'] {
  width: 100%; }

label {
  display: block;
  margin: 0;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.8;
  color: #1A1818; }
  label.middle {
    margin: 0 0 1.14286rem;
    padding: 0.64286rem 0; }

.help-text {
  margin-top: -0.57143rem;
  font-size: 0.92857rem;
  font-style: italic;
  color: #1A1818; }

.input-group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 1.14286rem;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .input-group > :first-child {
    border-radius: 2px 0 0 2px; }
  .input-group > :last-child > * {
    border-radius: 0 2px 2px 0; }

.input-group-label, .input-group-field, .input-group-button, .input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  margin: 0;
  white-space: nowrap; }

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #4E4D50;
  background: #908f8f;
  color: #1A1818;
  text-align: center;
  white-space: nowrap;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }
  .input-group-label:first-child {
    border-right: 0; }
  .input-group-label:last-child {
    border-left: 0; }

.input-group-field {
  border-radius: 0;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  height: auto;
  min-width: 0; }

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }
  .input-group-button a,
  .input-group-button input,
  .input-group-button button,
  .input-group-button label {
    height: auto;
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
                -ms-grid-row-align: stretch;
            align-self: stretch;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 0.92857rem; }

fieldset {
  margin: 0;
  padding: 0;
  border: 0; }

legend {
  max-width: 100%;
  margin-bottom: 0.57143rem; }

.fieldset {
  margin: 1.28571rem 0;
  padding: 1.42857rem;
  border: 1px solid #4E4D50; }
  .fieldset legend {
    margin: 0;
    margin-left: -0.21429rem;
    padding: 0 0.21429rem; }

select {
  height: 2.46429rem;
  margin: 0 0 1.14286rem;
  padding: 0.57143rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #fff;
  border-radius: 2px;
  background-color: transparent;
  font-family: inherit;
  font-size: 0.92857rem;
  font-weight: 600;
  line-height: 1.5;
  color: #fff;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28255, 255, 255%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1.14286rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.71429rem;
  -webkit-transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }
  @media screen and (min-width: 0\0) {
    select {
      background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAMBJREFUeNrEllsOhCAMRVszC9IlzU7KCmVHTJsoMWYMUtpyv9BgbuXQB5ZSdgBYYY4ycgBivk8KYFsQMfMiTTBP4o3nUzCKzOabLJbLy2/g31evGkAginR4/ZegKH5qX3bJCscA3t0x3kgO5tQFyhhFf50xRqFLbyMUNJQzgyjGS/wgCpvKqkRBpuWrE4V9d+1E4dPUXqIg107SQOE/2DRQxMwTDygIInVDET9T3lCoj/6j/VCmGjZOl2lKpZ8AAwDQP7zIimDGFQAAAABJRU5ErkJggg=="); } }
  select:focus {
    outline: none;
    border: 1px solid #fff;
    background-color: transparent;
    box-shadow: none;
    -webkit-transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }
  select:disabled {
    background-color: rgba(255, 255, 255, 0.24);
    cursor: not-allowed; }
  select::-ms-expand {
    display: none; }
  select[multiple] {
    height: auto;
    background-image: none; }

.is-invalid-input:not(:focus) {
  border-color: #cc4b37;
  background-color: #faedeb; }
  .is-invalid-input:not(:focus)::-webkit-input-placeholder {
    color: #cc4b37; }
  .is-invalid-input:not(:focus):-ms-input-placeholder {
    color: #cc4b37; }
  .is-invalid-input:not(:focus)::placeholder {
    color: #cc4b37; }

.is-invalid-label {
  color: #cc4b37; }

.form-error {
  display: none;
  margin-top: -0.57143rem;
  margin-bottom: 1.14286rem;
  font-size: 0.85714rem;
  font-weight: 600;
  color: #cc4b37; }
  .form-error.is-visible {
    display: block; }

.card {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin-bottom: 1rem;
  border: 1px solid #908f8f;
  border-radius: 2px;
  background: #fff;
  box-shadow: none;
  overflow: hidden;
  color: #fff; }
  .card > :last-child {
    margin-bottom: 0; }

.card-divider {
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 1rem;
  background: #908f8f; }
  .card-divider > :last-child {
    margin-bottom: 0; }

.card-section {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  padding: 1rem; }
  .card-section > :last-child {
    margin-bottom: 0; }

.card-image {
  min-height: 1px; }

.close-button {
  position: absolute;
  color: #222020;
  cursor: pointer; }
  [data-whatinput='mouse'] .close-button {
    outline: 0; }
  .close-button:hover, .close-button:focus {
    color: #1A1818; }
  .close-button.small {
    right: 0.66rem;
    top: 0.33em;
    font-size: 1.5em;
    line-height: 1; }
  .close-button, .close-button.medium {
    right: 1rem;
    top: 0.5rem;
    font-size: 2em;
    line-height: 1; }

.menu {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
  [data-whatinput='mouse'] .menu li {
    outline: 0; }
  .menu a,
  .menu .button {
    line-height: 1;
    text-decoration: none;
    display: block;
    padding: 0.7rem 1rem; }
  .menu input,
  .menu select,
  .menu a,
  .menu button {
    margin-bottom: 0; }
  .menu input {
    display: inline-block; }
  .menu, .menu.horizontal {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .menu.vertical {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .menu.expanded li {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .menu.simple {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    .menu.simple li + li {
      margin-left: 1rem; }
    .menu.simple a {
      padding: 0; }
  @media print, screen and (min-width: 40em) {
    .menu.medium-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.medium-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.medium-expanded li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.medium-simple li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media print, screen and (min-width: 64em) {
    .menu.large-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.large-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.large-expanded li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.large-simple li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media screen and (min-width: 99.42857em) {
    .menu.xlarge-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.xlarge-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.xlarge-expanded li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.xlarge-simple li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  @media screen and (min-width: 100em) {
    .menu.xxlarge-horizontal {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row; }
    .menu.xxlarge-vertical {
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
    .menu.xxlarge-expanded li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; }
    .menu.xxlarge-simple li {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px; } }
  .menu.nested {
    margin-right: 0;
    margin-left: 1rem; }
  .menu.icons a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-top a, .menu.icon-right a, .menu.icon-bottom a, .menu.icon-left a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .menu.icon-left li a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap; }
    .menu.icon-left li a img,
    .menu.icon-left li a i,
    .menu.icon-left li a svg {
      margin-right: 0.25rem; }
  .menu.icon-right li a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row nowrap;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap; }
    .menu.icon-right li a img,
    .menu.icon-right li a i,
    .menu.icon-right li a svg {
      margin-left: 0.25rem; }
  .menu.icon-top li a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap; }
    .menu.icon-top li a img,
    .menu.icon-top li a i,
    .menu.icon-top li a svg {
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
                  -ms-grid-row-align: stretch;
              align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu.icon-bottom li a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column nowrap;
        -ms-flex-flow: column nowrap;
            flex-flow: column nowrap; }
    .menu.icon-bottom li a img,
    .menu.icon-bottom li a i,
    .menu.icon-bottom li a svg {
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
                  -ms-grid-row-align: stretch;
              align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu .is-active > a {
    background: #DCC18E;
    color: #fff; }
  .menu .active > a {
    background: #DCC18E;
    color: #fff; }
  .menu.align-left {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .menu.align-right li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
    .menu.align-right li .submenu li {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
  .menu.align-right.vertical li {
    display: block;
    text-align: right; }
    .menu.align-right.vertical li .submenu li {
      text-align: right; }
  .menu.align-right .nested {
    margin-right: 1rem;
    margin-left: 0; }
  .menu.align-center li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .menu.align-center li .submenu li {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }
  .menu .menu-text {
    padding: 0.7rem 1rem;
    font-weight: bold;
    line-height: 1;
    color: inherit; }

.menu-centered > .menu {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .menu-centered > .menu li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
    .menu-centered > .menu li .submenu li {
      -webkit-box-pack: start;
      -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
              justify-content: flex-start; }

.no-js [data-responsive-menu] ul {
  display: none; }

.responsive-embed,
.flex-video {
  position: relative;
  height: 0;
  margin-bottom: 1.14286rem;
  padding-bottom: 75%;
  overflow: hidden; }
  .responsive-embed iframe,
  .responsive-embed object,
  .responsive-embed embed,
  .responsive-embed video,
  .flex-video iframe,
  .flex-video object,
  .flex-video embed,
  .flex-video video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .responsive-embed.widescreen,
  .flex-video.widescreen {
    padding-bottom: 56.25%; }

.label {
  display: inline-block;
  padding: 0.33333rem 0.5rem;
  border-radius: 2px;
  font-size: 0.8rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  background: #DCC18E;
  color: #fff; }
  .label.primary {
    background: #DCC18E;
    color: #1A1818; }
  .label.secondary {
    background: #9d8047;
    color: #1A1818; }
  .label.success {
    background: #3adb76;
    color: #1A1818; }
  .label.warning {
    background: #ffae00;
    color: #1A1818; }
  .label.alert {
    background: #cc4b37;
    color: #fff; }

.media-object {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1rem;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
  .media-object img {
    max-width: none; }
  @media screen and (max-width: 39.9375em) {
    .media-object.stack-for-small {
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }
  @media screen and (max-width: 39.9375em) {
    .media-object.stack-for-small .media-object-section {
      padding: 0;
      padding-bottom: 1rem;
      -webkit-flex-basis: 100%;
          -ms-flex-preferred-size: 100%;
              flex-basis: 100%;
      max-width: 100%; }
      .media-object.stack-for-small .media-object-section img {
        width: 100%; } }

.media-object-section {
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto; }
  .media-object-section:first-child {
    padding-right: 1rem; }
  .media-object-section:last-child:not(:nth-child(2)) {
    padding-left: 1rem; }
  .media-object-section > :last-child {
    margin-bottom: 0; }
  .media-object-section.main-section {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }

.is-off-canvas-open {
  overflow: hidden; }

.js-off-canvas-overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 11;
  width: 100%;
  height: 100%;
  -webkit-transition: opacity 0.5s ease, visibility 0.5s ease;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  background: rgba(255, 255, 255, 0.25);
  opacity: 0;
  visibility: hidden;
  overflow: hidden; }
  .js-off-canvas-overlay.is-visible {
    opacity: 1;
    visibility: visible; }
  .js-off-canvas-overlay.is-closable {
    cursor: pointer; }
  .js-off-canvas-overlay.is-overlay-absolute {
    position: absolute; }
  .js-off-canvas-overlay.is-overlay-fixed {
    position: fixed; }

.off-canvas-wrapper {
  position: relative;
  overflow: hidden; }

.off-canvas {
  position: fixed;
  z-index: 12;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #908f8f; }
  [data-whatinput='mouse'] .off-canvas {
    outline: 0; }
  .off-canvas.is-transition-push {
    z-index: 12; }
  .off-canvas.is-closed {
    visibility: hidden; }
  .off-canvas.is-transition-overlap {
    z-index: 13; }
    .off-canvas.is-transition-overlap.is-open {
      box-shadow: 0 0 10px rgba(26, 24, 24, 0.7); }
  .off-canvas.is-open {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }

.off-canvas-absolute {
  position: absolute;
  z-index: 12;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #908f8f; }
  [data-whatinput='mouse'] .off-canvas-absolute {
    outline: 0; }
  .off-canvas-absolute.is-transition-push {
    z-index: 12; }
  .off-canvas-absolute.is-closed {
    visibility: hidden; }
  .off-canvas-absolute.is-transition-overlap {
    z-index: 13; }
    .off-canvas-absolute.is-transition-overlap.is-open {
      box-shadow: 0 0 10px rgba(26, 24, 24, 0.7); }
  .off-canvas-absolute.is-open {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }

.position-left {
  top: 0;
  left: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -webkit-transform: translateX(-250px);
          transform: translateX(-250px); }
  @media print, screen and (min-width: 40em) {
    .position-left {
      width: 250px;
      -webkit-transform: translateX(-250px);
              transform: translateX(-250px); } }
  .off-canvas-content .off-canvas.position-left {
    -webkit-transform: translateX(-250px);
            transform: translateX(-250px); }
    @media print, screen and (min-width: 40em) {
      .off-canvas-content .off-canvas.position-left {
        -webkit-transform: translateX(-250px);
                transform: translateX(-250px); } }
    .off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-left.has-transition-push {
    -webkit-transform: translateX(250px);
            transform: translateX(250px); }
    @media print, screen and (min-width: 40em) {
      .off-canvas-content.is-open-left.has-transition-push {
        -webkit-transform: translateX(250px);
                transform: translateX(250px); } }
  .position-left.is-transition-push {
    box-shadow: inset -13px 0 20px -13px rgba(26, 24, 24, 0.25); }

.position-right {
  top: 0;
  right: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -webkit-transform: translateX(250px);
          transform: translateX(250px); }
  @media print, screen and (min-width: 40em) {
    .position-right {
      width: 250px;
      -webkit-transform: translateX(250px);
              transform: translateX(250px); } }
  .off-canvas-content .off-canvas.position-right {
    -webkit-transform: translateX(250px);
            transform: translateX(250px); }
    @media print, screen and (min-width: 40em) {
      .off-canvas-content .off-canvas.position-right {
        -webkit-transform: translateX(250px);
                transform: translateX(250px); } }
    .off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-right.has-transition-push {
    -webkit-transform: translateX(-250px);
            transform: translateX(-250px); }
    @media print, screen and (min-width: 40em) {
      .off-canvas-content.is-open-right.has-transition-push {
        -webkit-transform: translateX(-250px);
                transform: translateX(-250px); } }
  .position-right.is-transition-push {
    box-shadow: inset 13px 0 20px -13px rgba(26, 24, 24, 0.25); }

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(-250px);
          transform: translateY(-250px); }
  @media print, screen and (min-width: 40em) {
    .position-top {
      height: 250px;
      -webkit-transform: translateY(-250px);
              transform: translateY(-250px); } }
  .off-canvas-content .off-canvas.position-top {
    -webkit-transform: translateY(-250px);
            transform: translateY(-250px); }
    @media print, screen and (min-width: 40em) {
      .off-canvas-content .off-canvas.position-top {
        -webkit-transform: translateY(-250px);
                transform: translateY(-250px); } }
    .off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-top.has-transition-push {
    -webkit-transform: translateY(250px);
            transform: translateY(250px); }
    @media print, screen and (min-width: 40em) {
      .off-canvas-content.is-open-top.has-transition-push {
        -webkit-transform: translateY(250px);
                transform: translateY(250px); } }
  .position-top.is-transition-push {
    box-shadow: inset 0 -13px 20px -13px rgba(26, 24, 24, 0.25); }

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(250px);
          transform: translateY(250px); }
  @media print, screen and (min-width: 40em) {
    .position-bottom {
      height: 250px;
      -webkit-transform: translateY(250px);
              transform: translateY(250px); } }
  .off-canvas-content .off-canvas.position-bottom {
    -webkit-transform: translateY(250px);
            transform: translateY(250px); }
    @media print, screen and (min-width: 40em) {
      .off-canvas-content .off-canvas.position-bottom {
        -webkit-transform: translateY(250px);
                transform: translateY(250px); } }
    .off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
      -webkit-transform: translate(0, 0);
              transform: translate(0, 0); }
  .off-canvas-content.is-open-bottom.has-transition-push {
    -webkit-transform: translateY(-250px);
            transform: translateY(-250px); }
    @media print, screen and (min-width: 40em) {
      .off-canvas-content.is-open-bottom.has-transition-push {
        -webkit-transform: translateY(-250px);
                transform: translateY(-250px); } }
  .position-bottom.is-transition-push {
    box-shadow: inset 0 13px 20px -13px rgba(26, 24, 24, 0.25); }

.off-canvas-content {
  -webkit-transform: none;
          transform: none;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
  .off-canvas-content.has-transition-push {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }
  .off-canvas-content .off-canvas.is-open {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0); }

@media print, screen and (min-width: 40em) {
  .position-left.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-medium {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-medium ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-medium {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-medium ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-medium {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-medium ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-medium .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-medium {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-medium ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media print, screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-large {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-large ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-large {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-large ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-large {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-large ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-large .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-large {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-large ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media screen and (min-width: 99.42857em) {
  .position-left.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-xlarge {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-xlarge ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-xlarge {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-xlarge ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-xlarge {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-xlarge ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-xlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-xlarge .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-xlarge {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-xlarge ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media screen and (min-width: 100em) {
  .position-left.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-left.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-left.reveal-for-xxlarge {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-left {
      margin-left: 250px; }
    .position-left.reveal-for-xxlarge ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-right.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-right.reveal-for-xxlarge {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-right {
      margin-right: 250px; }
    .position-right.reveal-for-xxlarge ~ .off-canvas-content {
      margin-right: 250px; }
  .position-top.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-top.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-top.reveal-for-xxlarge {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-top {
      margin-top: 250px; }
    .position-top.reveal-for-xxlarge ~ .off-canvas-content {
      margin-top: 250px; }
  .position-bottom.reveal-for-xxlarge {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible; }
    .position-bottom.reveal-for-xxlarge .close-button {
      display: none; }
    .off-canvas-content .position-bottom.reveal-for-xxlarge {
      -webkit-transform: none;
              transform: none; }
    .off-canvas-content.has-reveal-bottom {
      margin-bottom: 250px; }
    .position-bottom.reveal-for-xxlarge ~ .off-canvas-content {
      margin-bottom: 250px; } }

@media print, screen and (min-width: 40em) {
  .off-canvas.in-canvas-for-medium {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit; }
    .off-canvas.in-canvas-for-medium.position-left, .off-canvas.in-canvas-for-medium.position-right, .off-canvas.in-canvas-for-medium.position-top, .off-canvas.in-canvas-for-medium.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-medium .close-button {
      display: none; } }

@media print, screen and (min-width: 64em) {
  .off-canvas.in-canvas-for-large {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit; }
    .off-canvas.in-canvas-for-large.position-left, .off-canvas.in-canvas-for-large.position-right, .off-canvas.in-canvas-for-large.position-top, .off-canvas.in-canvas-for-large.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-large .close-button {
      display: none; } }

@media screen and (min-width: 99.42857em) {
  .off-canvas.in-canvas-for-xlarge {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit; }
    .off-canvas.in-canvas-for-xlarge.position-left, .off-canvas.in-canvas-for-xlarge.position-right, .off-canvas.in-canvas-for-xlarge.position-top, .off-canvas.in-canvas-for-xlarge.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-xlarge .close-button {
      display: none; } }

@media screen and (min-width: 100em) {
  .off-canvas.in-canvas-for-xxlarge {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit; }
    .off-canvas.in-canvas-for-xxlarge.position-left, .off-canvas.in-canvas-for-xxlarge.position-right, .off-canvas.in-canvas-for-xxlarge.position-top, .off-canvas.in-canvas-for-xxlarge.position-bottom {
      box-shadow: none;
      -webkit-transform: none;
              transform: none; }
    .off-canvas.in-canvas-for-xxlarge .close-button {
      display: none; } }

table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 2px; }
  table thead,
  table tbody,
  table tfoot {
    border: 1px solid transparent;
    background-color: transparent; }
  table caption {
    padding: 0.57143rem 0.71429rem 0.71429rem;
    font-weight: 600; }
  table thead {
    background: transparent;
    color: #DCC18E; }
  table tfoot {
    background: transparent;
    color: #DCC18E; }
  table thead tr,
  table tfoot tr {
    background: transparent; }
  table thead th,
  table thead td,
  table tfoot th,
  table tfoot td {
    padding: 0.57143rem 0.71429rem 0.71429rem;
    font-weight: 600;
    text-align: left; }
  table tbody th,
  table tbody td {
    padding: 0.57143rem 0.71429rem 0.71429rem; }
  table tbody tr {
    border-bottom: 0;
    border-bottom: 1px solid transparent;
    background-color: transparent; }
  table.striped tbody tr:nth-child(even) {
    border-bottom: 0;
    background-color: transparent; }

@media screen and (max-width: 63.9375em) {
  table.stack thead th {
    display: block; }
  table.stack tfoot {
    display: none; }
  table.stack tr,
  table.stack th,
  table.stack td {
    display: block; }
  table.stack td {
    border-top: 0; } }

table.scroll {
  display: block;
  width: 100%;
  overflow-x: auto; }

table.hover thead tr:hover {
  background-color: transparent; }

table.hover tfoot tr:hover {
  background-color: transparent; }

table.hover tbody tr:hover {
  background-color: transparent; }

table.hover.striped tr:nth-of-type(even):hover {
  background-color: transparent; }

.table-scroll {
  overflow-x: auto; }
  .table-scroll table {
    width: auto; }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

@media screen and (max-width: 39.9375em) {
  .hide-for-small-only {
    display: none !important; } }

@media screen and (max-width: 0em), screen and (min-width: 40em) {
  .show-for-small-only {
    display: none !important; } }

@media print, screen and (min-width: 40em) {
  .hide-for-medium {
    display: none !important; } }

@media screen and (max-width: 39.9375em) {
  .show-for-medium {
    display: none !important; } }

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .hide-for-medium-only {
    display: none !important; } }

@media screen and (max-width: 39.9375em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important; } }

@media print, screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important; } }

@media screen and (max-width: 63.9375em) {
  .show-for-large {
    display: none !important; } }

@media screen and (min-width: 64em) and (max-width: 99.36607em) {
  .hide-for-large-only {
    display: none !important; } }

@media screen and (max-width: 63.9375em), screen and (min-width: 99.42857em) {
  .show-for-large-only {
    display: none !important; } }

@media screen and (min-width: 99.42857em) {
  .hide-for-xlarge {
    display: none !important; } }

@media screen and (max-width: 99.36607em) {
  .show-for-xlarge {
    display: none !important; } }

@media screen and (min-width: 99.42857em) and (max-width: 99.9375em) {
  .hide-for-xlarge-only {
    display: none !important; } }

@media screen and (max-width: 99.36607em), screen and (min-width: 100em) {
  .show-for-xlarge-only {
    display: none !important; } }

@media screen and (min-width: 100em) {
  .hide-for-xxlarge {
    display: none !important; } }

@media screen and (max-width: 99.9375em) {
  .show-for-xxlarge {
    display: none !important; } }

@media screen and (min-width: 100em) {
  .hide-for-xxlarge-only {
    display: none !important; } }

@media screen and (max-width: 99.9375em) {
  .show-for-xxlarge-only {
    display: none !important; } }

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  border: 0; }

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
  -webkit-clip-path: none;
          clip-path: none; }

.show-for-landscape,
.hide-for-portrait {
  display: block !important; }
  @media screen and (orientation: landscape) {
    .show-for-landscape,
    .hide-for-portrait {
      display: block !important; } }
  @media screen and (orientation: portrait) {
    .show-for-landscape,
    .hide-for-portrait {
      display: none !important; } }

.hide-for-landscape,
.show-for-portrait {
  display: none !important; }
  @media screen and (orientation: landscape) {
    .hide-for-landscape,
    .show-for-portrait {
      display: none !important; } }
  @media screen and (orientation: portrait) {
    .hide-for-landscape,
    .show-for-portrait {
      display: block !important; } }

.float-left {
  float: left !important; }

.float-right {
  float: right !important; }

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

.clearfix::before, .clearfix::after {
  display: table;
  content: ' ';
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }

.clearfix::after {
  clear: both; }

.align-right {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-justify {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.align-spaced {
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around; }

.align-right.vertical.menu > li > a {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.align-center.vertical.menu > li > a {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.align-top {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start; }

.align-self-top {
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start; }

.align-bottom {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end; }

.align-self-bottom {
  -webkit-align-self: flex-end;
      -ms-flex-item-align: end;
          align-self: flex-end; }

.align-middle {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.align-self-middle {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center; }

.align-stretch {
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.align-self-stretch {
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
              -ms-grid-row-align: stretch;
          align-self: stretch; }

.align-center-middle {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center; }

.small-order-1 {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }

.small-order-2 {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2; }

.small-order-3 {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3; }

.small-order-4 {
  -webkit-box-ordinal-group: 5;
  -webkit-order: 4;
      -ms-flex-order: 4;
          order: 4; }

.small-order-5 {
  -webkit-box-ordinal-group: 6;
  -webkit-order: 5;
      -ms-flex-order: 5;
          order: 5; }

.small-order-6 {
  -webkit-box-ordinal-group: 7;
  -webkit-order: 6;
      -ms-flex-order: 6;
          order: 6; }

@media print, screen and (min-width: 40em) {
  .medium-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .medium-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .medium-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .medium-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .medium-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .medium-order-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media print, screen and (min-width: 64em) {
  .large-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .large-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .large-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .large-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .large-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .large-order-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (min-width: 99.42857em) {
  .xlarge-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .xlarge-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .xlarge-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .xlarge-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .xlarge-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .xlarge-order-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

@media screen and (min-width: 100em) {
  .xxlarge-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .xxlarge-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .xxlarge-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .xxlarge-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .xxlarge-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .xxlarge-order-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6; } }

.flex-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }

.flex-child-auto {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto; }

.flex-child-grow {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto; }

.flex-child-shrink {
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto; }

.flex-dir-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row; }

.flex-dir-row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }

.flex-dir-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }

.flex-dir-column-reverse {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; }

@media print, screen and (min-width: 40em) {
  .medium-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .medium-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .medium-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .medium-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .medium-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .medium-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .medium-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .medium-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media print, screen and (min-width: 64em) {
  .large-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .large-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .large-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .large-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .large-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .large-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .large-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .large-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 99.42857em) {
  .xlarge-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .xlarge-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .xlarge-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .xlarge-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .xlarge-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .xlarge-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .xlarge-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .xlarge-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

@media screen and (min-width: 100em) {
  .xxlarge-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .xxlarge-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .xxlarge-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .xxlarge-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .xxlarge-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .xxlarge-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .xxlarge-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .xxlarge-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

.slide-in-down.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-down.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
          transform: translateY(0); }

.slide-in-left.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-left.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
          transform: translateX(0); }

.slide-in-up.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-up.mui-enter.mui-enter-active {
  -webkit-transform: translateY(0);
          transform: translateY(0); }

.slide-in-right.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-right.mui-enter.mui-enter-active {
  -webkit-transform: translateX(0);
          transform: translateX(0); }

.slide-out-down.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-down.mui-leave.mui-leave-active {
  -webkit-transform: translateY(100%);
          transform: translateY(100%); }

.slide-out-right.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-right.mui-leave.mui-leave-active {
  -webkit-transform: translateX(100%);
          transform: translateX(100%); }

.slide-out-up.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-up.mui-leave.mui-leave-active {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%); }

.slide-out-left.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-left.mui-leave.mui-leave-active {
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%); }

.fade-in.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  opacity: 0;
  -webkit-transition-property: opacity;
  transition-property: opacity; }

.fade-in.mui-enter.mui-enter-active {
  opacity: 1; }

.fade-out.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  opacity: 1;
  -webkit-transition-property: opacity;
  transition-property: opacity; }

.fade-out.mui-leave.mui-leave-active {
  opacity: 0; }

.hinge-in-from-top.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: top;
          transform-origin: top;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-top.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-right.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: right;
          transform-origin: right;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-right.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-bottom.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-bottom.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-left.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-left.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-x.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-middle-x.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-y.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.hinge-in-from-middle-y.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-out-from-top.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: top;
          transform-origin: top;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-top.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-right.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: right;
          transform-origin: right;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-right.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.hinge-out-from-bottom.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: bottom;
          transform-origin: bottom;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-bottom.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  opacity: 0; }

.hinge-out-from-left.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-left.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  opacity: 0; }

.hinge-out-from-middle-x.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-middle-x.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-middle-y.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.hinge-out-from-middle-y.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.scale-in-up.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.scale-in-up.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.scale-in-down.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.scale-in-down.mui-enter.mui-enter-active {
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1; }

.scale-out-up.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.scale-out-up.mui-leave.mui-leave-active {
  -webkit-transform: scale(1.5);
          transform: scale(1.5);
  opacity: 0; }

.scale-out-down.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.scale-out-down.mui-leave.mui-leave-active {
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
  opacity: 0; }

.spin-in.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.spin-in.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  opacity: 1; }

.spin-out.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.spin-out.mui-leave.mui-leave-active {
  -webkit-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  opacity: 0; }

.spin-in-ccw.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0; }

.spin-in-ccw.mui-enter.mui-enter-active {
  -webkit-transform: rotate(0);
          transform: rotate(0);
  opacity: 1; }

.spin-out-ccw.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1; }

.spin-out-ccw.mui-leave.mui-leave-active {
  -webkit-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  opacity: 0; }

.slow {
  -webkit-transition-duration: 750ms !important;
          transition-duration: 750ms !important; }

.fast {
  -webkit-transition-duration: 250ms !important;
          transition-duration: 250ms !important; }

.linear {
  -webkit-transition-timing-function: linear !important;
          transition-timing-function: linear !important; }

.ease {
  -webkit-transition-timing-function: ease !important;
          transition-timing-function: ease !important; }

.ease-in {
  -webkit-transition-timing-function: ease-in !important;
          transition-timing-function: ease-in !important; }

.ease-out {
  -webkit-transition-timing-function: ease-out !important;
          transition-timing-function: ease-out !important; }

.ease-in-out {
  -webkit-transition-timing-function: ease-in-out !important;
          transition-timing-function: ease-in-out !important; }

.bounce-in {
  -webkit-transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  -webkit-transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  -webkit-transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  -webkit-transition-delay: 300ms !important;
          transition-delay: 300ms !important; }

.long-delay {
  -webkit-transition-delay: 700ms !important;
          transition-delay: 700ms !important; }

.shake {
  -webkit-animation-name: shake-7;
          animation-name: shake-7; }

@-webkit-keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%); }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%); } }

@keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%); }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%); } }

.spin-cw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn; }

@-webkit-keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn); }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

.spin-ccw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn; }

@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  100% {
    -webkit-transform: rotate(1turn);
            transform: rotate(1turn); } }

.wiggle {
  -webkit-animation-name: wiggle-7deg;
          animation-name: wiggle-7deg; }

@-webkit-keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg); }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg); }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

@keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg); }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg); }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0); } }

.shake,
.spin-cw,
.spin-ccw,
.wiggle {
  -webkit-animation-duration: 500ms;
          animation-duration: 500ms; }

.infinite {
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite; }

.slow {
  -webkit-animation-duration: 750ms !important;
          animation-duration: 750ms !important; }

.fast {
  -webkit-animation-duration: 250ms !important;
          animation-duration: 250ms !important; }

.linear {
  -webkit-animation-timing-function: linear !important;
          animation-timing-function: linear !important; }

.ease {
  -webkit-animation-timing-function: ease !important;
          animation-timing-function: ease !important; }

.ease-in {
  -webkit-animation-timing-function: ease-in !important;
          animation-timing-function: ease-in !important; }

.ease-out {
  -webkit-animation-timing-function: ease-out !important;
          animation-timing-function: ease-out !important; }

.ease-in-out {
  -webkit-animation-timing-function: ease-in-out !important;
          animation-timing-function: ease-in-out !important; }

.bounce-in {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  -webkit-animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  -webkit-animation-delay: 300ms !important;
          animation-delay: 300ms !important; }

.long-delay {
  -webkit-animation-delay: 700ms !important;
          animation-delay: 700ms !important; }

@font-face {
  font-family: "icon-font";
  src: url(//heathmanhotel.com/wp-content/themes/provenance/stylesheets/../fonts/icon-font.eot);
  src: url(//heathmanhotel.com/wp-content/themes/provenance/stylesheets/../fonts/icon-font.eot?#iefix) format("eot"), url(//heathmanhotel.com/wp-content/themes/provenance/stylesheets/../fonts/icon-font.woff2) format("woff2"), url(//heathmanhotel.com/wp-content/themes/provenance/stylesheets/../fonts/icon-font.woff) format("woff"), url(//heathmanhotel.com/wp-content/themes/provenance/stylesheets/../fonts/icon-font.ttf) format("truetype"), url(//heathmanhotel.com/wp-content/themes/provenance/stylesheets/../fonts/icon-font.svg#icon-font) format("svg"); }

.icon-calendar:before, .icon-chevron-down:before, .icon-chevron-left-small:before, .icon-chevron-left:before, .icon-chevron-right-small:before, .icon-chevron-right:before, .icon-chevron-up:before, .icon-close:before, .icon-facebook:before, .icon-gallery:before, .icon-google-plus:before, .icon-instagram:before, .icon-logo-mark:before, .icon-logo-text:before, .icon-mail:before, .icon-menu:before, .icon-minus:before, .icon-plus:before, .icon-provenance-hotels:before, .icon-tripadvisor:before, .icon-twitter:before, .section-container .scroll-indicator:before {
  font-family: "icon-font";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none; }

.icon-calendar:before {
  content: ""; }

.icon-chevron-down:before {
  content: ""; }

.icon-chevron-left-small:before {
  content: ""; }

.icon-chevron-left:before {
  content: ""; }

.icon-chevron-right-small:before {
  content: ""; }

.icon-chevron-right:before {
  content: ""; }

.icon-chevron-up:before {
  content: ""; }

.icon-close:before {
  content: ""; }

.icon-facebook:before {
  content: ""; }

.icon-gallery:before {
  content: ""; }

.icon-google-plus:before {
  content: ""; }

.icon-instagram:before {
  content: ""; }

.icon-logo-mark:before {
  content: ""; }

.icon-logo-text:before {
  content: ""; }

.icon-mail:before {
  content: ""; }

.icon-menu:before {
  content: ""; }

.icon-minus:before {
  content: ""; }

.icon-plus:before {
  content: ""; }

.icon-provenance-hotels:before {
  content: ""; }

.icon-tripadvisor:before {
  content: ""; }

.icon-twitter:before {
  content: ""; }

/* =========================== */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/* Slider */
.slick-loading .slick-list {
  background: #fff url(//heathmanhotel.com/wp-content/themes/provenance/stylesheets/../images/ajax-loader.gif) center center no-repeat; }

/* Icons */
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 1; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "icon-font";
    font-size: 20px;
    line-height: 1;
    color: #fff;
    opacity: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -25px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -25px; }
  .slick-prev:before {
    content: ""; }
    [dir="rtl"] .slick-prev:before {
      content: ""; }

.slick-next {
  right: -25px; }
  [dir="rtl"] .slick-next {
    left: -25px;
    right: auto; }
  .slick-next:before {
    content: ""; }
    [dir="rtl"] .slick-next:before {
      content: ""; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "•";
        width: 20px;
        height: 20px;
        font-family: "icon-font";
        font-size: 10px;
        line-height: 20px;
        text-align: center;
        color: #fff;
        opacity: 1;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: #DCC18E;
      opacity: 1; }

/*!
 * jQuery UI CSS Framework 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/category/theming/
 */
/* Layout helpers
----------------------------------*/
.ui-helper-hidden {
  display: none; }

.ui-helper-hidden-accessible {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.ui-helper-reset {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  line-height: 1.3;
  text-decoration: none;
  font-size: 100%;
  list-style: none; }

.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
  content: "";
  display: table;
  border-collapse: collapse; }

.ui-helper-clearfix:after {
  clear: both; }

.ui-helper-zfix {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
  filter: Alpha(Opacity=0);
  /* support: IE8 */ }

.ui-front {
  z-index: 100; }

/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
  cursor: default !important;
  pointer-events: none; }

/* Icons
----------------------------------*/
.ui-icon {
  display: inline-block;
  vertical-align: middle;
  margin-top: -.25em;
  position: relative;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat; }

.ui-widget-icon-block {
  left: 50%;
  margin-left: -8px;
  display: block; }

/* Misc visuals
----------------------------------*/
/* Overlays */
.ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

/*!
 * jQuery UI Accordion 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/accordion/#theming
 */
.ui-accordion .ui-accordion-header {
  display: block;
  cursor: pointer;
  position: relative;
  margin: 2px 0 0 0;
  padding: .5em .5em .5em .7em;
  font-size: 100%; }

.ui-accordion .ui-accordion-content {
  padding: 1em 2.2em;
  border-top: 0;
  overflow: auto; }

/*!
 * jQuery UI Tabs 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/tabs/#theming
 */
.ui-tabs {
  position: relative;
  /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
  padding: .2em; }

.ui-tabs .ui-tabs-nav {
  margin: 0;
  padding: .2em .2em 0; }

.ui-tabs .ui-tabs-nav li {
  list-style: none;
  float: left;
  position: relative;
  top: 0;
  margin: 1px .2em 0 0;
  border-bottom-width: 0;
  padding: 0;
  white-space: nowrap; }

.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
  float: left;
  padding: .5em 1em;
  text-decoration: none; }

.ui-tabs .ui-tabs-nav li.ui-tabs-active {
  margin-bottom: -1px;
  padding-bottom: 1px; }

.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
  cursor: text; }

.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
  cursor: pointer; }

.ui-tabs .ui-tabs-panel {
  display: block;
  border-width: 0;
  padding: 1em 1.4em;
  background: none; }

/*!
 * jQuery UI Datepicker 1.12.1
 * http://jqueryui.com
 *
 * Copyright jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/datepicker/#theming
 */
.ui-datepicker {
  width: 17em;
  padding: .2em .2em 0;
  display: none; }

.ui-datepicker .ui-datepicker-header {
  position: relative;
  padding: .2em 0; }

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  position: absolute;
  top: 2px;
  width: 1.8em;
  height: 1.8em; }

.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
  top: 1px; }

.ui-datepicker .ui-datepicker-prev {
  left: 2px; }

.ui-datepicker .ui-datepicker-next {
  right: 2px; }

.ui-datepicker .ui-datepicker-prev-hover {
  left: 1px; }

.ui-datepicker .ui-datepicker-next-hover {
  right: 1px; }

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -8px;
  top: 50%;
  margin-top: -8px; }

.ui-datepicker .ui-datepicker-title {
  margin: 0 2.3em;
  line-height: 1.8em;
  text-align: center; }

.ui-datepicker .ui-datepicker-title select {
  font-size: 1em;
  margin: 1px 0; }

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
  width: 45%; }

.ui-datepicker table {
  width: 100%;
  font-size: .9em;
  border-collapse: collapse;
  margin: 0 0 .4em; }

.ui-datepicker th {
  padding: .7em .3em;
  text-align: center;
  font-weight: bold;
  border: 0; }

.ui-datepicker td {
  border: 0;
  padding: 1px; }

.ui-datepicker td span,
.ui-datepicker td a {
  display: block;
  padding: .2em;
  text-align: right;
  text-decoration: none; }

.ui-datepicker .ui-datepicker-buttonpane {
  background-image: none;
  margin: .7em 0 0 0;
  padding: 0 .2em;
  border-left: 0;
  border-right: 0;
  border-bottom: 0; }

.ui-datepicker .ui-datepicker-buttonpane button {
  float: right;
  margin: .5em .2em .4em;
  cursor: pointer;
  padding: .2em .6em .3em .6em;
  width: auto;
  overflow: visible; }

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
  float: left; }

/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
  width: auto; }

.ui-datepicker-multi .ui-datepicker-group {
  float: left; }

.ui-datepicker-multi .ui-datepicker-group table {
  width: 95%;
  margin: 0 auto .4em; }

.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%; }

.ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%; }

.ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%; }

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
  border-left-width: 0; }

.ui-datepicker-multi .ui-datepicker-buttonpane {
  clear: left; }

.ui-datepicker-row-break {
  clear: both;
  width: 100%;
  font-size: 0; }

/* RTL support */
.ui-datepicker-rtl {
  direction: rtl; }

.ui-datepicker-rtl .ui-datepicker-prev {
  right: 2px;
  left: auto; }

.ui-datepicker-rtl .ui-datepicker-next {
  left: 2px;
  right: auto; }

.ui-datepicker-rtl .ui-datepicker-prev:hover {
  right: 1px;
  left: auto; }

.ui-datepicker-rtl .ui-datepicker-next:hover {
  left: 1px;
  right: auto; }

.ui-datepicker-rtl .ui-datepicker-buttonpane {
  clear: right; }

.ui-datepicker-rtl .ui-datepicker-buttonpane button {
  float: left; }

.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
  float: right; }

.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
  border-right-width: 0;
  border-left-width: 1px; }

/* Icons */
.ui-datepicker .ui-icon {
  display: block;
  text-indent: -99999px;
  overflow: hidden;
  background-repeat: no-repeat;
  left: .5em;
  top: .3em; }

/* inject:import */
/*!
 *  Kwicks: Sexy Sliding Panels for jQuery - v2.2.1
 *  http://devsmash.com/projects/kwicks
 *
 *  Copyright 2013 Jeremy Martin (jmar777)
 *  Contributors: Duke Speer (Duke3D), Guillermo Guerrero (gguerrero)
 *  Released under the MIT license
 *  http://www.opensource.org/licenses/mit-license.php
 */
/*
 *  This file contains styles that are common to all kwicks instances.  Note that each kwicks instance requires
 *  additional styling - please see the examples for more info.
 */
.kwicks {
  display: block;
  list-style-type: none;
  list-style: none;
  position: relative;
  margin: 0;
  padding: 0; }

.kwicks > * {
  display: block;
  overflow: hidden;
  padding: 0;
  margin: 0; }

.kwicks.kwicks-processed > * {
  margin: 0;
  position: absolute; }

.kwicks-horizontal > * {
  float: left; }

.kwicks-horizontal > :first-child {
  margin-left: 0; }

.kwicks-vertical > :first-child {
  margin-top: 0; }

/*!
	Modaal - accessible modals - v0.3.1
	by Humaan, for all humans.
	http://humaan.com
 */
.modaal-noscroll {
  overflow: hidden; }

.modaal-accessible-hide {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden; }

.modaal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  opacity: 0; }

.modaal-wrapper {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  overflow: auto;
  opacity: 1;
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out; }
  .modaal-wrapper * {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-backface-visibility: hidden; }
  .modaal-wrapper .modaal-close {
    border: none;
    background: transparent;
    padding: 0;
    -webkit-appearance: none; }
  .modaal-wrapper.modaal-start_none {
    display: none;
    opacity: 1; }
  .modaal-wrapper.modaal-start_fade {
    opacity: 0; }
  .modaal-wrapper *[tabindex="0"] {
    outline: none !important; }
  .modaal-wrapper.modaal-fullscreen {
    overflow: hidden; }

.modaal-outer-wrapper {
  display: table;
  position: relative;
  width: 100%;
  height: 100%; }
  .modaal-fullscreen .modaal-outer-wrapper {
    display: block; }

.modaal-inner-wrapper {
  display: table-cell;
  width: 100%;
  height: 100%;
  position: relative;
  vertical-align: middle;
  text-align: center;
  padding: 80px 25px; }
  .modaal-fullscreen .modaal-inner-wrapper {
    padding: 0;
    display: block;
    vertical-align: top; }

.modaal-container {
  position: relative;
  display: inline-block;
  width: 100%;
  margin: auto;
  text-align: left;
  color: #000;
  max-width: 440px;
  border-radius: 0px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  cursor: auto; }
  .modaal-container.is_loading {
    height: 100px;
    width: 100px;
    overflow: hidden; }
  .modaal-fullscreen .modaal-container {
    max-width: none;
    height: 100%;
    overflow: auto; }

.modaal-close {
  position: fixed;
  right: 20px;
  top: 20px;
  color: #fff;
  cursor: pointer;
  opacity: 1;
  width: 50px;
  height: 50px;
  background: transparent;
  border-radius: 100%;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out; }
  .modaal-close:focus, .modaal-close:hover {
    outline: none;
    background: #fff; }
    .modaal-close:focus:before, .modaal-close:focus:after, .modaal-close:hover:before, .modaal-close:hover:after {
      background: #b93d0c; }
  .modaal-close span {
    position: absolute !important;
    clip: rect(1px 1px 1px 1px);
    /* IE6, IE7 */
    clip: rect(1px, 1px, 1px, 1px);
    padding: 0 !important;
    border: 0 !important;
    height: 1px !important;
    width: 1px !important;
    overflow: hidden; }
  .modaal-close:before, .modaal-close:after {
    display: block;
    content: " ";
    position: absolute;
    top: 14px;
    left: 23px;
    width: 4px;
    height: 22px;
    border-radius: 4px;
    background: #fff;
    -webkit-transition: background 0.2s ease-in-out;
    transition: background 0.2s ease-in-out; }
  .modaal-close:before {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg); }
  .modaal-close:after {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }
  .modaal-fullscreen .modaal-close {
    background: #afb7bc;
    right: 10px;
    top: 10px; }

.modaal-content-container {
  padding: 4.57143rem 3.42857rem; }

.modaal-confirm-wrap {
  padding: 30px 0 0;
  text-align: center;
  font-size: 0; }

.modaal-confirm-btn {
  font-size: 14px;
  display: inline-block;
  margin: 0 10px;
  vertical-align: middle;
  cursor: pointer;
  border: none;
  background: transparent; }
  .modaal-confirm-btn.modaal-ok {
    padding: 10px 15px;
    color: #fff;
    background: #555;
    border-radius: 3px;
    -webkit-transition: background 0.2s ease-in-out;
    transition: background 0.2s ease-in-out; }
    .modaal-confirm-btn.modaal-ok:hover {
      background: #2f2f2f; }
  .modaal-confirm-btn.modaal-cancel {
    text-decoration: underline; }
    .modaal-confirm-btn.modaal-cancel:hover {
      text-decoration: none;
      color: #2f2f2f; }

@keyframes instaReveal {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes instaReveal {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

.modaal-instagram .modaal-container {
  width: auto;
  background: transparent;
  box-shadow: none !important; }

.modaal-instagram .modaal-content-container {
  padding: 0;
  background: transparent; }

.modaal-instagram .modaal-content-container > blockquote {
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important; }

.modaal-instagram iframe {
  opacity: 0;
  margin: -6px !important;
  border-radius: 0 !important;
  width: 1000px !important;
  max-width: 800px !important;
  box-shadow: none !important;
  -webkit-animation: instaReveal 1s linear forwards;
          animation: instaReveal 1s linear forwards; }

.modaal-image .modaal-inner-wrapper {
  padding-left: 140px;
  padding-right: 140px; }

.modaal-image .modaal-container {
  width: auto;
  max-width: 100%; }

.modaal-gallery-wrap {
  position: relative;
  color: #fff; }

.modaal-gallery-item {
  display: none; }
  .modaal-gallery-item img {
    display: block; }
  .modaal-gallery-item.is_active {
    display: block; }

.modaal-gallery-label {
  position: absolute;
  left: 0;
  width: 100%;
  margin: 20px 0 0;
  font-size: 18px;
  text-align: center;
  color: #fff; }
  .modaal-gallery-label:focus {
    outline: none; }

.modaal-gallery-control {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  opacity: 1;
  cursor: pointer;
  color: #fff;
  width: 50px;
  height: 50px;
  background: transparent;
  border: none;
  border-radius: 100%;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out; }
  .modaal-gallery-control.is_hidden {
    opacity: 0;
    cursor: default; }
  .modaal-gallery-control:focus, .modaal-gallery-control:hover {
    outline: none;
    background: #fff; }
    .modaal-gallery-control:focus:before, .modaal-gallery-control:focus:after, .modaal-gallery-control:hover:before, .modaal-gallery-control:hover:after {
      background: #afb7bc; }
  .modaal-gallery-control span {
    position: absolute !important;
    clip: rect(1px 1px 1px 1px);
    /* IE6, IE7 */
    clip: rect(1px, 1px, 1px, 1px);
    padding: 0 !important;
    border: 0 !important;
    height: 1px !important;
    width: 1px !important;
    overflow: hidden; }
  .modaal-gallery-control:before, .modaal-gallery-control:after {
    display: block;
    content: " ";
    position: absolute;
    top: 16px;
    left: 25px;
    width: 4px;
    height: 18px;
    border-radius: 4px;
    background: #fff;
    -webkit-transition: background 0.2s ease-in-out;
    transition: background 0.2s ease-in-out; }
  .modaal-gallery-control:before {
    margin: -5px 0 0;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg); }
  .modaal-gallery-control:after {
    margin: 5px 0 0;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }

.modaal-gallery-next {
  left: 100%;
  margin-left: 40px; }

.modaal-gallery-prev {
  right: 100%;
  margin-right: 40px; }
  .modaal-gallery-prev:before, .modaal-gallery-prev:after {
    left: 22px; }
  .modaal-gallery-prev:before {
    margin: 5px 0 0;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg); }
  .modaal-gallery-prev:after {
    margin: -5px 0 0;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }

.modaal-video-wrap {
  margin: auto 50px;
  position: relative; }

.modaal-video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  background: #000;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto; }
  .modaal-video-container iframe,
  .modaal-video-container object,
  .modaal-video-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.modaal-iframe .modaal-content {
  width: 100%;
  height: 100%; }

.modaal-iframe-elem {
  width: 100%;
  height: 100%;
  display: block; }

@media only screen and (min-width: 1400px) {
  .modaal-video-container {
    padding-bottom: 0;
    height: 731px; } }

@media only screen and (max-width: 1140px) {
  .modaal-image .modaal-inner-wrapper {
    padding-left: 25px;
    padding-right: 25px; }
  .modaal-gallery-control {
    top: auto;
    bottom: 20px;
    -webkit-transform: none;
            transform: none;
    background: rgba(0, 0, 0, 0.7); }
    .modaal-gallery-control:before, .modaal-gallery-control:after {
      background: #fff; }
  .modaal-gallery-next {
    left: auto;
    right: 20px; }
  .modaal-gallery-prev {
    left: 20px;
    right: auto; } }

@media screen and (max-width: 900px) {
  .modaal-instagram iframe {
    width: 500px !important; } }

@media screen and (max-height: 1100px) {
  .modaal-instagram iframe {
    width: 700px !important; } }

@media screen and (max-height: 1000px) {
  .modaal-inner-wrapper {
    padding-top: 60px;
    padding-bottom: 60px; }
  .modaal-instagram iframe {
    width: 600px !important; } }

@media screen and (max-height: 900px) {
  .modaal-instagram iframe {
    width: 500px !important; }
  .modaal-video-container {
    max-width: 900px;
    max-height: 510px; } }

@media only screen and (max-width: 600px) {
  .modaal-instagram iframe {
    width: 280px !important; } }

@media only screen and (max-height: 820px) {
  .modaal-gallery-label {
    display: none; } }

.modaal-loading-spinner {
  background: none;
  position: absolute;
  width: 200px;
  height: 200px;
  top: 50%;
  left: 50%;
  margin: -100px 0 0 -100px;
  -webkit-transform: scale(0.25);
          transform: scale(0.25); }

@-webkit-keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -webkit-transform: scale(1.5);
    transform: scale(1.5); }
  100% {
    opacity: .1;
    -webkit-transform: scale(1);
    transform: scale(1); } }

@keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -webkit-transform: scale(1.5);
    transform: scale(1.5); }
  100% {
    opacity: .1;
    -webkit-transform: scale(1);
    transform: scale(1); } }

.modaal-loading-spinner > div {
  width: 24px;
  height: 24px;
  margin-left: 4px;
  margin-top: 4px;
  position: absolute; }

.modaal-loading-spinner > div > div {
  width: 100%;
  height: 100%;
  border-radius: 15px;
  background: #fff; }

.modaal-loading-spinner > div:nth-of-type(1) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: 0s;
  animation-delay: 0s; }

.modaal-loading-spinner > div:nth-of-type(2) > div, .modaal-loading-spinner > div:nth-of-type(3) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(1) {
  -webkit-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(45deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(2) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
          animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .12s;
  animation-delay: .12s; }

.modaal-loading-spinner > div:nth-of-type(2) {
  -webkit-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(90deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(3) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
          animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .25s;
  animation-delay: .25s; }

.modaal-loading-spinner > div:nth-of-type(4) > div, .modaal-loading-spinner > div:nth-of-type(5) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(3) {
  -webkit-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(135deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(4) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
          animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .37s;
  animation-delay: .37s; }

.modaal-loading-spinner > div:nth-of-type(4) {
  -webkit-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(180deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(5) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
          animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .5s;
  animation-delay: .5s; }

.modaal-loading-spinner > div:nth-of-type(6) > div, .modaal-loading-spinner > div:nth-of-type(7) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite; }

.modaal-loading-spinner > div:nth-of-type(5) {
  -webkit-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(225deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(6) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
          animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .62s;
  animation-delay: .62s; }

.modaal-loading-spinner > div:nth-of-type(6) {
  -webkit-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(270deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(7) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
          animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .75s;
  animation-delay: .75s; }

.modaal-loading-spinner > div:nth-of-type(7) {
  -webkit-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(315deg) translate(70px, 0); }

.modaal-loading-spinner > div:nth-of-type(8) > div {
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation-delay: .87s;
  animation-delay: .87s; }

.modaal-loading-spinner > div:nth-of-type(8) {
  -webkit-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(360deg) translate(70px, 0); }

/*
 *  Remodal - v1.1.1
 *  Responsive, lightweight, fast, synchronized with CSS animations, fully customizable modal window plugin with declarative configuration and hash tracking.
 *  http://vodkabears.github.io/remodal/
 *
 *  Made by Ilya Makarov
 *  Under MIT License
 */
/* ==========================================================================
   Remodal's necessary styles
   ========================================================================== */
/* Hide scroll bar */
html.remodal-is-locked {
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none; }

/* Anti FOUC */
.remodal,
[data-remodal-id] {
  display: none; }

/* Necessary styles of the overlay */
.remodal-overlay {
  position: fixed;
  z-index: 9999;
  top: -5000px;
  right: -5000px;
  bottom: -5000px;
  left: -5000px;
  display: none; }

/* Necessary styles of the wrapper */
.remodal-wrapper {
  position: fixed;
  z-index: 10000;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none;
  overflow: auto;
  text-align: center;
  -webkit-overflow-scrolling: touch; }

.remodal-wrapper:after {
  display: inline-block;
  height: 100%;
  margin-left: -0.05em;
  content: ""; }

/* Fix iPad, iPhone glitches */
.remodal-overlay,
.remodal-wrapper {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

/* Necessary styles of the modal dialog */
.remodal {
  position: relative;
  outline: none;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%; }

.remodal-is-initialized {
  /* Disable Anti-FOUC */
  display: inline-block; }

/*
 *  Remodal - v1.1.1
 *  Responsive, lightweight, fast, synchronized with CSS animations, fully customizable modal window plugin with declarative configuration and hash tracking.
 *  http://vodkabears.github.io/remodal/
 *
 *  Made by Ilya Makarov
 *  Under MIT License
 */
/* ==========================================================================
   Remodal's default mobile first theme
   ========================================================================== */
/* Default theme styles for the background */
.remodal-bg.remodal-is-opening,
.remodal-bg.remodal-is-opened {
  -webkit-filter: blur(3px);
  filter: blur(3px); }

/* Default theme styles of the overlay */
.remodal-overlay {
  background: rgba(43, 46, 56, 0.9); }

.remodal-overlay.remodal-is-opening,
.remodal-overlay.remodal-is-closing {
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards; }

.remodal-overlay.remodal-is-opening {
  -webkit-animation-name: remodal-overlay-opening-keyframes;
  animation-name: remodal-overlay-opening-keyframes; }

.remodal-overlay.remodal-is-closing {
  -webkit-animation-name: remodal-overlay-closing-keyframes;
  animation-name: remodal-overlay-closing-keyframes; }

/* Default theme styles of the wrapper */
.remodal-wrapper {
  padding: 10px 10px 0; }

/* Default theme styles of the modal dialog */
.remodal {
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 10px;
  padding: 35px;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  color: #2b2e38;
  background: #fff; }

.remodal.remodal-is-opening,
.remodal.remodal-is-closing {
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards; }

.remodal.remodal-is-opening {
  -webkit-animation-name: remodal-opening-keyframes;
  animation-name: remodal-opening-keyframes; }

.remodal.remodal-is-closing {
  -webkit-animation-name: remodal-closing-keyframes;
  animation-name: remodal-closing-keyframes; }

/* Vertical align of the modal dialog */
.remodal,
.remodal-wrapper:after {
  vertical-align: middle; }

/* Close button */
.remodal-close {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  overflow: visible;
  width: 35px;
  height: 35px;
  margin: 0;
  padding: 0;
  cursor: pointer;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
  text-decoration: none;
  color: #95979c;
  border: 0;
  outline: 0;
  background: transparent; }

.remodal-close:hover,
.remodal-close:focus {
  color: #2b2e38; }

.remodal-close:before {
  font-family: Arial, "Helvetica CY", "Nimbus Sans L", sans-serif !important;
  font-size: 25px;
  line-height: 35px;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 35px;
  content: "\00d7";
  text-align: center; }

/* Dialog buttons */
.remodal-confirm,
.remodal-cancel {
  font: inherit;
  display: inline-block;
  overflow: visible;
  min-width: 110px;
  margin: 0;
  padding: 12px 0;
  cursor: pointer;
  -webkit-transition: background 0.2s;
  transition: background 0.2s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  border: 0;
  outline: 0; }

.remodal-confirm {
  color: #fff;
  background: #81c784; }

.remodal-confirm:hover,
.remodal-confirm:focus {
  background: #66bb6a; }

.remodal-cancel {
  color: #fff;
  background: #e57373; }

.remodal-cancel:hover,
.remodal-cancel:focus {
  background: #ef5350; }

/* Remove inner padding and border in Firefox 4+ for the button tag. */
.remodal-confirm::-moz-focus-inner,
.remodal-cancel::-moz-focus-inner,
.remodal-close::-moz-focus-inner {
  padding: 0;
  border: 0; }

/* Keyframes
   ========================================================================== */
@-webkit-keyframes remodal-opening-keyframes {
  from {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0; }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0); } }

@keyframes remodal-opening-keyframes {
  from {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0; }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0); } }

@-webkit-keyframes remodal-closing-keyframes {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; }
  to {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 0;
    -webkit-filter: blur(0);
    filter: blur(0); } }

@keyframes remodal-closing-keyframes {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; }
  to {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 0;
    -webkit-filter: blur(0);
    filter: blur(0); } }

@-webkit-keyframes remodal-overlay-opening-keyframes {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes remodal-overlay-opening-keyframes {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-webkit-keyframes remodal-overlay-closing-keyframes {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

@keyframes remodal-overlay-closing-keyframes {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

/* Media queries
   ========================================================================== */
@media only screen and (min-width: 641px) {
  .remodal {
    max-width: 700px; } }

/* IE8
   ========================================================================== */
.lt-ie9 .remodal-overlay {
  background: #2b2e38; }

.lt-ie9 .remodal {
  width: 700px; }

.r-tabs .r-tabs-nav {
  margin: 0;
  padding: 0; }

.r-tabs .r-tabs-tab {
  display: inline-block;
  margin: 0;
  list-style: none; }

.r-tabs .r-tabs-panel {
  padding: 15px;
  display: none; }

.r-tabs .r-tabs-accordion-title {
  display: none; }

.r-tabs .r-tabs-panel.r-tabs-state-active {
  display: block; }

/* Accordion responsive breakpoint */
@media screen and (max-width: 63.9375em) {
  .r-tabs .r-tabs-nav {
    display: none; }
  .r-tabs .r-tabs-accordion-title {
    display: block; } }

/*
== malihu jquery custom scrollbar plugin ==
Plugin URI: http://manos.malihu.gr/jquery-custom-content-scroller
*/
/*
CONTENTS:
	1. BASIC STYLE - Plugin's basic/essential CSS properties (normally, should not be edited).
	2. VERTICAL SCROLLBAR - Positioning and dimensions of vertical scrollbar.
	3. HORIZONTAL SCROLLBAR - Positioning and dimensions of horizontal scrollbar.
	4. VERTICAL AND HORIZONTAL SCROLLBARS - Positioning and dimensions of 2-axis scrollbars.
	5. TRANSITIONS - CSS3 transitions for hover events, auto-expanded and auto-hidden scrollbars.
	6. SCROLLBAR COLORS, OPACITY AND BACKGROUNDS
		6.1 THEMES - Scrollbar colors, opacity, dimensions, backgrounds etc. via ready-to-use themes.
*/
/*
------------------------------------------------------------------------------------------------------------------------
1. BASIC STYLE
------------------------------------------------------------------------------------------------------------------------
*/
.mCustomScrollbar {
  -ms-touch-action: pinch-zoom;
  touch-action: pinch-zoom;
  /* direct pointer events to js */ }

.mCustomScrollbar.mCS_no_scrollbar, .mCustomScrollbar.mCS_touch_action {
  -ms-touch-action: auto;
  touch-action: auto; }

.mCustomScrollBox {
  /* contains plugin's markup */
  position: relative;
  overflow: hidden;
  height: 100%;
  max-width: 100%;
  outline: none;
  direction: ltr; }

.mCSB_container {
  /* contains the original content */
  overflow: hidden;
  width: auto;
  height: auto; }

/*
------------------------------------------------------------------------------------------------------------------------
2. VERTICAL SCROLLBAR
y-axis
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_inside > .mCSB_container {
  margin-right: 30px; }

.mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden {
  margin-right: 0; }

/* non-visible scrollbar */
.mCS-dir-rtl > .mCSB_inside > .mCSB_container {
  /* RTL direction/left-side scrollbar */
  margin-right: 0;
  margin-left: 30px; }

.mCS-dir-rtl > .mCSB_inside > .mCSB_container.mCS_no_scrollbar_y.mCS_y_hidden {
  margin-left: 0; }

/* RTL direction/left-side scrollbar */
.mCSB_scrollTools {
  /* contains scrollbar markup (draggable element, dragger rail, buttons etc.) */
  position: absolute;
  width: 16px;
  height: auto;
  left: auto;
  top: 0;
  right: 0;
  bottom: 0; }

.mCSB_outside + .mCSB_scrollTools {
  right: -26px; }

/* scrollbar position: outside */
.mCS-dir-rtl > .mCSB_inside > .mCSB_scrollTools,
.mCS-dir-rtl > .mCSB_outside + .mCSB_scrollTools {
  /* RTL direction/left-side scrollbar */
  right: auto;
  left: 0; }

.mCS-dir-rtl > .mCSB_outside + .mCSB_scrollTools {
  left: -26px; }

/* RTL direction/left-side scrollbar (scrollbar position: outside) */
.mCSB_scrollTools .mCSB_draggerContainer {
  /* contains the draggable element and dragger rail markup */
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  height: auto; }

.mCSB_scrollTools a + .mCSB_draggerContainer {
  margin: 20px 0; }

.mCSB_scrollTools .mCSB_draggerRail {
  width: 2px;
  height: 100%;
  margin: 0 auto;
  border-radius: 16px; }

.mCSB_scrollTools .mCSB_dragger {
  /* the draggable element */
  cursor: pointer;
  width: 100%;
  height: 30px;
  /* minimum dragger height */
  z-index: 1; }

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  /* the dragger element */
  position: relative;
  width: 4px;
  height: 100%;
  margin: 0 auto;
  border-radius: 16px;
  text-align: center; }

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
  width: 12px;
  /* auto-expanded scrollbar */ }

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  width: 8px;
  /* auto-expanded scrollbar */ }

.mCSB_scrollTools .mCSB_buttonUp,
.mCSB_scrollTools .mCSB_buttonDown {
  display: block;
  position: absolute;
  height: 20px;
  width: 100%;
  overflow: hidden;
  margin: 0 auto;
  cursor: pointer; }

.mCSB_scrollTools .mCSB_buttonDown {
  bottom: 0; }

/*
------------------------------------------------------------------------------------------------------------------------
3. HORIZONTAL SCROLLBAR
x-axis
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_horizontal.mCSB_inside > .mCSB_container {
  margin-right: 0;
  margin-bottom: 30px; }

.mCSB_horizontal.mCSB_outside > .mCSB_container {
  min-height: 100%; }

.mCSB_horizontal > .mCSB_container.mCS_no_scrollbar_x.mCS_x_hidden {
  margin-bottom: 0; }

/* non-visible scrollbar */
.mCSB_scrollTools.mCSB_scrollTools_horizontal {
  width: auto;
  height: 16px;
  top: auto;
  right: 0;
  bottom: 0;
  left: 0; }

.mCustomScrollBox + .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCustomScrollBox + .mCSB_scrollTools + .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  bottom: -26px; }

/* scrollbar position: outside */
.mCSB_scrollTools.mCSB_scrollTools_horizontal a + .mCSB_draggerContainer {
  margin: 0 20px; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 2px;
  margin: 7px 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger {
  width: 30px;
  /* minimum dragger width */
  height: 100%;
  left: 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 4px;
  margin: 6px auto; }

.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
  height: 12px;
  /* auto-expanded scrollbar */
  margin: 2px auto; }

.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  height: 8px;
  /* auto-expanded scrollbar */
  margin: 4px 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft,
.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight {
  display: block;
  position: absolute;
  width: 20px;
  height: 100%;
  overflow: hidden;
  margin: 0 auto;
  cursor: pointer; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonLeft {
  left: 0; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_buttonRight {
  right: 0; }

/*
------------------------------------------------------------------------------------------------------------------------
4. VERTICAL AND HORIZONTAL SCROLLBARS
yx-axis
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_container_wrapper {
  position: absolute;
  height: auto;
  width: auto;
  overflow: hidden;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin-right: 30px;
  margin-bottom: 30px; }

.mCSB_container_wrapper > .mCSB_container {
  padding-right: 30px;
  padding-bottom: 30px;
  box-sizing: border-box; }

.mCSB_vertical_horizontal > .mCSB_scrollTools.mCSB_scrollTools_vertical {
  bottom: 20px; }

.mCSB_vertical_horizontal > .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  right: 20px; }

/* non-visible horizontal scrollbar */
.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden + .mCSB_scrollTools.mCSB_scrollTools_vertical {
  bottom: 0; }

/* non-visible vertical scrollbar/RTL direction/left-side scrollbar */
.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden + .mCSB_scrollTools ~ .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCS-dir-rtl > .mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  right: 0; }

/* RTL direction/left-side scrollbar */
.mCS-dir-rtl > .mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  left: 20px; }

/* non-visible scrollbar/RTL direction/left-side scrollbar */
.mCS-dir-rtl > .mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden + .mCSB_scrollTools ~ .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  left: 0; }

.mCS-dir-rtl > .mCSB_inside > .mCSB_container_wrapper {
  /* RTL direction/left-side scrollbar */
  margin-right: 0;
  margin-left: 30px; }

.mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden > .mCSB_container {
  padding-right: 0; }

.mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden > .mCSB_container {
  padding-bottom: 0; }

.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_container_wrapper.mCS_no_scrollbar_y.mCS_y_hidden {
  margin-right: 0;
  /* non-visible scrollbar */
  margin-left: 0; }

/* non-visible horizontal scrollbar */
.mCustomScrollBox.mCSB_vertical_horizontal.mCSB_inside > .mCSB_container_wrapper.mCS_no_scrollbar_x.mCS_x_hidden {
  margin-bottom: 0; }

/*
------------------------------------------------------------------------------------------------------------------------
5. TRANSITIONS
------------------------------------------------------------------------------------------------------------------------
*/
.mCSB_scrollTools,
.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_buttonUp,
.mCSB_scrollTools .mCSB_buttonDown,
.mCSB_scrollTools .mCSB_buttonLeft,
.mCSB_scrollTools .mCSB_buttonRight {
  -webkit-transition: opacity .2s ease-in-out, background-color .2s ease-in-out;
  transition: opacity .2s ease-in-out, background-color .2s ease-in-out; }

.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar,
.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger_bar,
.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerRail {
  -webkit-transition: width .2s ease-out .2s, height .2s ease-out .2s, margin-left .2s ease-out .2s, margin-right .2s ease-out .2s, margin-top .2s ease-out .2s, margin-bottom .2s ease-out .2s, opacity .2s ease-in-out, background-color .2s ease-in-out;
  transition: width .2s ease-out .2s, height .2s ease-out .2s, margin-left .2s ease-out .2s, margin-right .2s ease-out .2s, margin-top .2s ease-out .2s, margin-bottom .2s ease-out .2s, opacity .2s ease-in-out, background-color .2s ease-in-out; }

/*
------------------------------------------------------------------------------------------------------------------------
6. SCROLLBAR COLORS, OPACITY AND BACKGROUNDS
------------------------------------------------------------------------------------------------------------------------
*/
/*
	----------------------------------------
	6.1 THEMES
	----------------------------------------
	*/
/* default theme ("light") */
.mCSB_scrollTools {
  opacity: 0.75;
  filter: "alpha(opacity=75)";
  -ms-filter: "alpha(opacity=75)"; }

.mCS-autoHide > .mCustomScrollBox > .mCSB_scrollTools,
.mCS-autoHide > .mCustomScrollBox ~ .mCSB_scrollTools {
  opacity: 0;
  filter: "alpha(opacity=0)";
  -ms-filter: "alpha(opacity=0)"; }

.mCustomScrollbar > .mCustomScrollBox > .mCSB_scrollTools.mCSB_scrollTools_onDrag,
.mCustomScrollbar > .mCustomScrollBox ~ .mCSB_scrollTools.mCSB_scrollTools_onDrag,
.mCustomScrollBox:hover > .mCSB_scrollTools,
.mCustomScrollBox:hover ~ .mCSB_scrollTools,
.mCS-autoHide:hover > .mCustomScrollBox > .mCSB_scrollTools,
.mCS-autoHide:hover > .mCustomScrollBox ~ .mCSB_scrollTools {
  opacity: 1;
  filter: "alpha(opacity=100)";
  -ms-filter: "alpha(opacity=100)"; }

.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.4);
  filter: "alpha(opacity=40)";
  -ms-filter: "alpha(opacity=40)"; }

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.75);
  filter: "alpha(opacity=75)";
  -ms-filter: "alpha(opacity=75)"; }

.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.85);
  filter: "alpha(opacity=85)";
  -ms-filter: "alpha(opacity=85)"; }

.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.9);
  filter: "alpha(opacity=90)";
  -ms-filter: "alpha(opacity=90)"; }

.mCSB_scrollTools .mCSB_buttonUp,
.mCSB_scrollTools .mCSB_buttonDown,
.mCSB_scrollTools .mCSB_buttonLeft,
.mCSB_scrollTools .mCSB_buttonRight {
  background-image: url(//heathmanhotel.com/wp-content/themes/provenance/stylesheets/mCSB_buttons.png);
  /* css sprites */
  background-repeat: no-repeat;
  opacity: 0.4;
  filter: "alpha(opacity=40)";
  -ms-filter: "alpha(opacity=40)"; }

.mCSB_scrollTools .mCSB_buttonUp {
  background-position: 0 0;
  /*
		sprites locations
		light: 0 0, -16px 0, -32px 0, -48px 0, 0 -72px, -16px -72px, -32px -72px
		dark: -80px 0, -96px 0, -112px 0, -128px 0, -80px -72px, -96px -72px, -112px -72px
		*/ }

.mCSB_scrollTools .mCSB_buttonDown {
  background-position: 0 -20px;
  /*
		sprites locations
		light: 0 -20px, -16px -20px, -32px -20px, -48px -20px, 0 -92px, -16px -92px, -32px -92px
		dark: -80px -20px, -96px -20px, -112px -20px, -128px -20px, -80px -92px, -96px -92px, -112 -92px
		*/ }

.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: 0 -40px;
  /*
		sprites locations
		light: 0 -40px, -20px -40px, -40px -40px, -60px -40px, 0 -112px, -20px -112px, -40px -112px
		dark: -80px -40px, -100px -40px, -120px -40px, -140px -40px, -80px -112px, -100px -112px, -120px -112px
		*/ }

.mCSB_scrollTools .mCSB_buttonRight {
  background-position: 0 -56px;
  /*
		sprites locations
		light: 0 -56px, -20px -56px, -40px -56px, -60px -56px, 0 -128px, -20px -128px, -40px -128px
		dark: -80px -56px, -100px -56px, -120px -56px, -140px -56px, -80px -128px, -100px -128px, -120px -128px
		*/ }

.mCSB_scrollTools .mCSB_buttonUp:hover,
.mCSB_scrollTools .mCSB_buttonDown:hover,
.mCSB_scrollTools .mCSB_buttonLeft:hover,
.mCSB_scrollTools .mCSB_buttonRight:hover {
  opacity: 0.75;
  filter: "alpha(opacity=75)";
  -ms-filter: "alpha(opacity=75)"; }

.mCSB_scrollTools .mCSB_buttonUp:active,
.mCSB_scrollTools .mCSB_buttonDown:active,
.mCSB_scrollTools .mCSB_buttonLeft:active,
.mCSB_scrollTools .mCSB_buttonRight:active {
  opacity: 0.9;
  filter: "alpha(opacity=90)";
  -ms-filter: "alpha(opacity=90)"; }

/* theme: "dark" */
.mCS-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.15); }

.mCS-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -80px 0; }

.mCS-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -80px -20px; }

.mCS-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -80px -40px; }

.mCS-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -80px -56px; }

/* ---------------------------------------- */
/* theme: "light-2", "dark-2" */
.mCS-light-2.mCSB_scrollTools .mCSB_draggerRail,
.mCS-dark-2.mCSB_scrollTools .mCSB_draggerRail {
  width: 4px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 1px; }

.mCS-light-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 4px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.75);
  border-radius: 1px; }

.mCS-light-2.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-dark-2.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-light-2.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-2.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 4px;
  margin: 6px auto; }

.mCS-light-2.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.85); }

.mCS-light-2.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-light-2.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.9); }

.mCS-light-2.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px 0; }

.mCS-light-2.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -20px; }

.mCS-light-2.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -40px; }

.mCS-light-2.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -56px; }

/* theme: "dark-2" */
.mCS-dark-2.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 1px; }

.mCS-dark-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75);
  border-radius: 1px; }

.mCS-dark-2.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark-2.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark-2.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark-2.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px 0; }

.mCS-dark-2.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -20px; }

.mCS-dark-2.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -40px; }

.mCS-dark-2.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -56px; }

/* ---------------------------------------- */
/* theme: "light-thick", "dark-thick" */
.mCS-light-thick.mCSB_scrollTools .mCSB_draggerRail,
.mCS-dark-thick.mCSB_scrollTools .mCSB_draggerRail {
  width: 4px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 2px; }

.mCS-light-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 6px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.75);
  border-radius: 2px; }

.mCS-light-thick.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-dark-thick.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 4px;
  margin: 6px 0; }

.mCS-light-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 6px;
  margin: 5px auto; }

.mCS-light-thick.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.85); }

.mCS-light-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-light-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.9); }

.mCS-light-thick.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -16px 0; }

.mCS-light-thick.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -16px -20px; }

.mCS-light-thick.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -20px -40px; }

.mCS-light-thick.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -20px -56px; }

/* theme: "dark-thick" */
.mCS-dark-thick.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 2px; }

.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75);
  border-radius: 2px; }

.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -96px 0; }

.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -96px -20px; }

.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -100px -40px; }

.mCS-dark-thick.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -100px -56px; }

/* ---------------------------------------- */
/* theme: "light-thin", "dark-thin" */
.mCS-light-thin.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.1); }

.mCS-light-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 2px; }

.mCS-light-thin.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-dark-thin.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%; }

.mCS-light-thin.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-thin.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 2px;
  margin: 7px auto; }

/* theme "dark-thin" */
.mCS-dark-thin.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.15); }

.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark-thin.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -80px 0; }

.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -80px -20px; }

.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -80px -40px; }

.mCS-dark-thin.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -80px -56px; }

/* ---------------------------------------- */
/* theme "rounded", "rounded-dark", "rounded-dots", "rounded-dots-dark" */
.mCS-rounded.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.15); }

.mCS-rounded.mCSB_scrollTools .mCSB_dragger,
.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger,
.mCS-rounded-dots.mCSB_scrollTools .mCSB_dragger,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger {
  height: 14px; }

.mCS-rounded.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dots.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 14px;
  margin: 0 1px; }

.mCS-rounded.mCSB_scrollTools_horizontal .mCSB_dragger,
.mCS-rounded-dark.mCSB_scrollTools_horizontal .mCSB_dragger,
.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_dragger,
.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_dragger {
  width: 14px; }

.mCS-rounded.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  height: 14px;
  margin: 1px 0; }

.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
  width: 16px;
  /* auto-expanded scrollbar */
  height: 16px;
  margin: -1px 0; }

.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-rounded.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,
.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-rounded-dark.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  width: 4px;
  /* auto-expanded scrollbar */ }

.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_dragger .mCSB_dragger_bar {
  height: 16px;
  /* auto-expanded scrollbar */
  width: 16px;
  margin: 0 -1px; }

.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-rounded.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,
.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-rounded-dark.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  height: 4px;
  /* auto-expanded scrollbar */
  margin: 6px 0; }

.mCS-rounded.mCSB_scrollTools .mCSB_buttonUp {
  background-position: 0 -72px; }

.mCS-rounded.mCSB_scrollTools .mCSB_buttonDown {
  background-position: 0 -92px; }

.mCS-rounded.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: 0 -112px; }

.mCS-rounded.mCSB_scrollTools .mCSB_buttonRight {
  background-position: 0 -128px; }

/* theme "rounded-dark", "rounded-dots-dark" */
.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.15); }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-rounded-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -80px -72px; }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -80px -92px; }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -80px -112px; }

.mCS-rounded-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -80px -128px; }

/* theme "rounded-dots", "rounded-dots-dark" */
.mCS-rounded-dots.mCSB_scrollTools_vertical .mCSB_draggerRail,
.mCS-rounded-dots-dark.mCSB_scrollTools_vertical .mCSB_draggerRail {
  width: 4px; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_draggerRail,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  background-color: transparent;
  background-position: center; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_draggerRail,
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAANElEQVQYV2NkIAAYiVbw//9/Y6DiM1ANJoyMjGdBbLgJQAX/kU0DKgDLkaQAvxW4HEvQFwCRcxIJK1XznAAAAABJRU5ErkJggg==");
  background-repeat: repeat-y;
  opacity: 0.3;
  filter: "alpha(opacity=30)";
  -ms-filter: "alpha(opacity=30)"; }

.mCS-rounded-dots.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-rounded-dots-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  height: 4px;
  margin: 6px 0;
  background-repeat: repeat-x; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -16px -72px; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -16px -92px; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -20px -112px; }

.mCS-rounded-dots.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -20px -128px; }

/* theme "rounded-dots-dark" */
.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAALElEQVQYV2NkIAAYSVFgDFR8BqrBBEifBbGRTfiPZhpYjiQFBK3A6l6CvgAAE9kGCd1mvgEAAAAASUVORK5CYII="); }

.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -96px -72px; }

.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -96px -92px; }

.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -100px -112px; }

.mCS-rounded-dots-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -100px -128px; }

/* ---------------------------------------- */
/* theme "3d", "3d-dark", "3d-thick", "3d-thick-dark" */
.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-repeat: repeat-y;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 255, 255, 0.5)), color-stop(100%, rgba(255, 255, 255, 0)));
  background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%);
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%); }

.mCS-3d.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  background-repeat: repeat-x;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 0.5)), color-stop(100%, rgba(255, 255, 255, 0)));
  background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%);
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%); }

/* theme "3d", "3d-dark" */
.mCS-3d.mCSB_scrollTools_vertical .mCSB_dragger,
.mCS-3d-dark.mCSB_scrollTools_vertical .mCSB_dragger {
  height: 70px; }

.mCS-3d.mCSB_scrollTools_horizontal .mCSB_dragger,
.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_dragger {
  width: 70px; }

.mCS-3d.mCSB_scrollTools,
.mCS-3d-dark.mCSB_scrollTools {
  opacity: 1;
  filter: "alpha(opacity=30)";
  -ms-filter: "alpha(opacity=30)"; }

.mCS-3d.mCSB_scrollTools .mCSB_draggerRail,
.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  border-radius: 16px; }

.mCS-3d.mCSB_scrollTools .mCSB_draggerRail,
.mCS-3d-dark.mCSB_scrollTools .mCSB_draggerRail {
  width: 8px;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.2);
  box-shadow: inset 1px 0 1px rgba(0, 0, 0, 0.5), inset -1px 0 1px rgba(255, 255, 255, 0.2); }

.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-3d.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-3d.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #555; }

.mCS-3d.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 8px; }

.mCS-3d.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 8px;
  margin: 4px 0;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.5), inset 0 -1px 1px rgba(255, 255, 255, 0.2); }

.mCS-3d.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 8px;
  margin: 4px auto; }

.mCS-3d.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px -72px; }

.mCS-3d.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -92px; }

.mCS-3d.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -112px; }

.mCS-3d.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -128px; }

/* theme "3d-dark" */
.mCS-3d-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1);
  box-shadow: inset 1px 0 1px rgba(0, 0, 0, 0.1); }

.mCS-3d-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1); }

.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px -72px; }

.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -92px; }

.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -112px; }

.mCS-3d-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -128px; }

/* ---------------------------------------- */
/* theme: "3d-thick", "3d-thick-dark" */
.mCS-3d-thick.mCSB_scrollTools,
.mCS-3d-thick-dark.mCSB_scrollTools {
  opacity: 1;
  filter: "alpha(opacity=30)";
  -ms-filter: "alpha(opacity=30)"; }

.mCS-3d-thick.mCSB_scrollTools,
.mCS-3d-thick-dark.mCSB_scrollTools,
.mCS-3d-thick.mCSB_scrollTools .mCSB_draggerContainer,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_draggerContainer {
  border-radius: 7px; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  border-radius: 5px; }

.mCSB_inside + .mCS-3d-thick.mCSB_scrollTools_vertical,
.mCSB_inside + .mCS-3d-thick-dark.mCSB_scrollTools_vertical {
  right: 1px; }

.mCS-3d-thick.mCSB_scrollTools_vertical,
.mCS-3d-thick-dark.mCSB_scrollTools_vertical {
  box-shadow: inset 1px 0 1px rgba(0, 0, 0, 0.1), inset 0 0 14px rgba(0, 0, 0, 0.5); }

.mCS-3d-thick.mCSB_scrollTools_horizontal,
.mCS-3d-thick-dark.mCSB_scrollTools_horizontal {
  bottom: 1px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1), inset 0 0 14px rgba(0, 0, 0, 0.5); }

.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.4);
  width: 12px;
  margin: 2px;
  position: absolute;
  height: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

.mCS-3d-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.4); }

.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-3d-thick.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #555; }

.mCS-3d-thick.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  height: 12px;
  width: auto; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_draggerContainer {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.05);
  box-shadow: inset 1px 1px 16px rgba(0, 0, 0, 0.1); }

.mCS-3d-thick.mCSB_scrollTools .mCSB_draggerRail {
  background-color: transparent; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px -72px; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -92px; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -112px; }

.mCS-3d-thick.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -128px; }

/* theme: "3d-thick-dark" */
.mCS-3d-thick-dark.mCSB_scrollTools {
  box-shadow: inset 0 0 14px rgba(0, 0, 0, 0.2); }

.mCS-3d-thick-dark.mCSB_scrollTools_horizontal {
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.1), inset 0 0 14px rgba(0, 0, 0, 0.2); }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.4), inset -1px 0 0 rgba(0, 0, 0, 0.2); }

.mCS-3d-thick-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.4), inset 0 -1px 0 rgba(0, 0, 0, 0.2); }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #777; }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_draggerContainer {
  background-color: #fff;
  background-color: rgba(0, 0, 0, 0.05);
  box-shadow: inset 1px 1px 16px rgba(0, 0, 0, 0.1); }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: transparent; }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px -72px; }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -92px; }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -112px; }

.mCS-3d-thick-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -128px; }

/* ---------------------------------------- */
/* theme: "minimal", "minimal-dark" */
.mCSB_outside + .mCS-minimal.mCSB_scrollTools_vertical,
.mCSB_outside + .mCS-minimal-dark.mCSB_scrollTools_vertical {
  right: 0;
  margin: 12px 0; }

.mCustomScrollBox.mCS-minimal + .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCustomScrollBox.mCS-minimal + .mCSB_scrollTools + .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCustomScrollBox.mCS-minimal-dark + .mCSB_scrollTools.mCSB_scrollTools_horizontal,
.mCustomScrollBox.mCS-minimal-dark + .mCSB_scrollTools + .mCSB_scrollTools.mCSB_scrollTools_horizontal {
  bottom: 0;
  margin: 0 12px; }

/* RTL direction/left-side scrollbar */
.mCS-dir-rtl > .mCSB_outside + .mCS-minimal.mCSB_scrollTools_vertical,
.mCS-dir-rtl > .mCSB_outside + .mCS-minimal-dark.mCSB_scrollTools_vertical {
  left: 0;
  right: auto; }

.mCS-minimal.mCSB_scrollTools .mCSB_draggerRail,
.mCS-minimal-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: transparent; }

.mCS-minimal.mCSB_scrollTools_vertical .mCSB_dragger,
.mCS-minimal-dark.mCSB_scrollTools_vertical .mCSB_dragger {
  height: 50px; }

.mCS-minimal.mCSB_scrollTools_horizontal .mCSB_dragger,
.mCS-minimal-dark.mCSB_scrollTools_horizontal .mCSB_dragger {
  width: 50px; }

.mCS-minimal.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.2);
  filter: "alpha(opacity=20)";
  -ms-filter: "alpha(opacity=20)"; }

.mCS-minimal.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-minimal.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.5);
  filter: "alpha(opacity=50)";
  -ms-filter: "alpha(opacity=50)"; }

/* theme: "minimal-dark" */
.mCS-minimal-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.2);
  filter: "alpha(opacity=20)";
  -ms-filter: "alpha(opacity=20)"; }

.mCS-minimal-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-minimal-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.5);
  filter: "alpha(opacity=50)";
  -ms-filter: "alpha(opacity=50)"; }

/* ---------------------------------------- */
/* theme "light-3", "dark-3" */
.mCS-light-3.mCSB_scrollTools .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools .mCSB_draggerRail {
  width: 6px;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.2); }

.mCS-light-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 6px; }

.mCS-light-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-dark-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-light-3.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 6px;
  margin: 5px 0; }

.mCS-light-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-light-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_vertical.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  width: 12px; }

.mCS-light-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-light-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_dragger.mCSB_dragger_onDrag_expanded + .mCSB_draggerRail,
.mCS-dark-3.mCSB_scrollTools_horizontal.mCSB_scrollTools_onDrag_expand .mCSB_draggerContainer:hover .mCSB_draggerRail {
  height: 12px;
  margin: 2px 0; }

.mCS-light-3.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px -72px; }

.mCS-light-3.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -92px; }

.mCS-light-3.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -112px; }

.mCS-light-3.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -128px; }

/* theme "dark-3" */
.mCS-dark-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-dark-3.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark-3.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark-3.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark-3.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1); }

.mCS-dark-3.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px -72px; }

.mCS-dark-3.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -92px; }

.mCS-dark-3.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -112px; }

.mCS-dark-3.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -128px; }

/* ---------------------------------------- */
/* theme "inset", "inset-dark", "inset-2", "inset-2-dark", "inset-3", "inset-3-dark" */
.mCS-inset.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-2.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-3.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_draggerRail {
  width: 12px;
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.2); }

.mCS-inset.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-2.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 6px;
  margin: 3px 5px;
  position: absolute;
  height: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

.mCS-inset.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-2.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-3.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  height: 6px;
  margin: 5px 3px;
  position: absolute;
  width: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

.mCS-inset.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-inset-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-inset-2.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-inset-2-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-inset-3.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-inset-3-dark.mCSB_scrollTools_horizontal .mCSB_draggerRail {
  width: 100%;
  height: 12px;
  margin: 2px 0; }

.mCS-inset.mCSB_scrollTools .mCSB_buttonUp,
.mCS-inset-2.mCSB_scrollTools .mCSB_buttonUp,
.mCS-inset-3.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -32px -72px; }

.mCS-inset.mCSB_scrollTools .mCSB_buttonDown,
.mCS-inset-2.mCSB_scrollTools .mCSB_buttonDown,
.mCS-inset-3.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -32px -92px; }

.mCS-inset.mCSB_scrollTools .mCSB_buttonLeft,
.mCS-inset-2.mCSB_scrollTools .mCSB_buttonLeft,
.mCS-inset-3.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -40px -112px; }

.mCS-inset.mCSB_scrollTools .mCSB_buttonRight,
.mCS-inset-2.mCSB_scrollTools .mCSB_buttonRight,
.mCS-inset-3.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -40px -128px; }

/* theme "inset-dark", "inset-2-dark", "inset-3-dark" */
.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-inset-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-inset-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1); }

.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonUp,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonUp,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px -72px; }

.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonDown,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonDown,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -92px; }

.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonLeft,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonLeft,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -112px; }

.mCS-inset-dark.mCSB_scrollTools .mCSB_buttonRight,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_buttonRight,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -128px; }

/* theme "inset-2", "inset-2-dark" */
.mCS-inset-2.mCSB_scrollTools .mCSB_draggerRail,
.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: transparent;
  border-width: 1px;
  border-style: solid;
  border-color: #fff;
  border-color: rgba(255, 255, 255, 0.2);
  box-sizing: border-box; }

.mCS-inset-2-dark.mCSB_scrollTools .mCSB_draggerRail {
  border-color: #000;
  border-color: rgba(0, 0, 0, 0.2); }

/* theme "inset-3", "inset-3-dark" */
.mCS-inset-3.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.6); }

.mCS-inset-3-dark.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.6); }

.mCS-inset-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75); }

.mCS-inset-3.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-inset-3.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-inset-3.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.75); }

.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.85); }

.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-inset-3-dark.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.9); }

/* ---------------------------------------- */
/* ---------------------------------------- */
/* theme: "dark-mod" */
.mCS-dark-mod.mCSB_scrollTools .mCSB_draggerRail {
  width: 8px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 0; }

.mCS-dark-mod.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 8px;
  background-color: #fff;
  background-color: rgba(255, 255, 255, 0.75);
  border-radius: 0; }

.mCS-dark-mod.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-dark-mod.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 8px;
  margin: 6px auto; }

/* theme: "dark-mod" */
.mCS-dark-mod.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 0; }

.mCS-dark-mod.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.75);
  border-radius: 0; }

.mCS-dark-mod.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.85); }

.mCS-dark-mod.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-dark-mod.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.9); }

.mCS-dark-mod.mCSB_scrollTools .mCSB_buttonUp {
  background-position: -112px 0; }

.mCS-dark-mod.mCSB_scrollTools .mCSB_buttonDown {
  background-position: -112px -20px; }

.mCS-dark-mod.mCSB_scrollTools .mCSB_buttonLeft {
  background-position: -120px -40px; }

.mCS-dark-mod.mCSB_scrollTools .mCSB_buttonRight {
  background-position: -120px -56px; }

/* ---------------------------------------- */
/*======================================
  Selectric v1.10.1
======================================*/
.selectric-wrapper {
  position: relative;
  cursor: pointer; }

.selectric-responsive {
  width: 100%; }

.selectric {
  border: 1px solid #DDD;
  background: #F8F8F8;
  position: relative; }

.selectric .label {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0 38px 0 10px;
  font-size: 12px;
  line-height: 38px;
  color: #444;
  height: 38px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.selectric .button {
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  width: 38px;
  height: 38px;
  color: #BBB;
  text-align: center;
  font: 0/0 a;
  *font: 20px/38px Lucida Sans Unicode, Arial Unicode MS, Arial; }

.selectric .button:after {
  content: " ";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 0;
  height: 0;
  border: 4px solid transparent;
  border-top-color: #BBB;
  border-bottom: none; }

.selectric-focus .selectric {
  border-color: #AAA; }

.selectric-hover .selectric {
  border-color: #C4C4C4; }

.selectric-hover .selectric .button {
  color: #A2A2A2; }

.selectric-hover .selectric .button:after {
  border-top-color: #A2A2A2; }

.selectric-open {
  z-index: 9999; }

.selectric-open .selectric {
  border-color: #C4C4C4; }

.selectric-open .selectric-items {
  display: block; }

.selectric-disabled {
  filter: alpha(opacity=50);
  opacity: 0.5;
  cursor: default;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.selectric-hide-select {
  position: relative;
  overflow: hidden;
  width: 0;
  height: 0; }

.selectric-hide-select select {
  position: absolute;
  left: -100%; }

.selectric-hide-select.selectric-is-native {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 10; }

.selectric-hide-select.selectric-is-native select {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  border: none;
  z-index: 1;
  box-sizing: border-box;
  opacity: 0; }

.selectric-input {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 1px !important;
  height: 1px !important;
  outline: none !important;
  border: none !important;
  *font: 0/0 a !important;
  background: none !important; }

.selectric-temp-show {
  position: absolute !important;
  visibility: hidden !important;
  display: block !important; }

/* Items box */
.selectric-items {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: #F8F8F8;
  border: 1px solid #C4C4C4;
  z-index: -1;
  box-shadow: 0 0 10px -6px; }

.selectric-items .selectric-scroll {
  height: 100%;
  overflow: auto; }

.selectric-above .selectric-items {
  top: auto;
  bottom: 100%; }

.selectric-items ul, .selectric-items li {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 12px;
  line-height: 20px;
  min-height: 20px; }

.selectric-items li {
  display: block;
  padding: 10px;
  color: #666;
  cursor: pointer; }

.selectric-items li.selected {
  background: #E0E0E0;
  color: #444; }

.selectric-items li.highlighted {
  background: #D0D0D0;
  color: #444; }

.selectric-items li:hover {
  background: #D5D5D5;
  color: #444; }

.selectric-items .disabled {
  filter: alpha(opacity=50);
  opacity: 0.5;
  cursor: default !important;
  background: none !important;
  color: #666 !important;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.selectric-items .selectric-group .selectric-group-label {
  font-weight: bold;
  padding-left: 10px;
  cursor: default;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background: none;
  color: #444; }

.selectric-items .selectric-group.disabled li {
  filter: alpha(opacity=100);
  opacity: 1; }

.selectric-items .selectric-group li {
  padding-left: 25px; }

/*! Tablesaw - v2.0.3 - 2016-05-02
* https://github.com/filamentgroup/tablesaw
* Copyright (c) 2016 Filament Group; Licensed MIT */
table.tablesaw {
  empty-cells: show;
  max-width: 100%;
  width: 100%; }

.tablesaw {
  border-collapse: collapse;
  width: 100%; }

/* Structure */
.tablesaw {
  border: 0;
  padding: 0; }

.tablesaw th,
.tablesaw td {
  box-sizing: border-box;
  padding: .5em .7em; }

.tablesaw thead tr:first-child th {
  padding-top: .9em;
  padding-bottom: .7em; }

.tablesaw-enhanced .tablesaw-bar .btn {
  border: 1px solid #ccc;
  background: none;
  background-color: #fafafa;
  box-shadow: 0 1px 0 white;
  color: #4a4a4a;
  clear: both;
  cursor: pointer;
  display: block;
  font: bold 20px/1 sans-serif;
  margin: 0;
  padding: .5em .85em .4em .85em;
  position: relative;
  text-align: center;
  text-decoration: none;
  text-transform: capitalize;
  text-shadow: 0 1px 0 #fff;
  width: 100%;
  /* Theming */
  background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(170, 170, 170, 0.1) 55%, rgba(120, 120, 120, 0.15) 100%);
  background-image: linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.1) 50%, rgba(170, 170, 170, 0.1) 55%, rgba(120, 120, 120, 0.15) 100%);
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  border-radius: .25em; }

.tablesaw-enhanced .tablesaw-bar a.btn {
  color: #1c95d4; }

.tablesaw-enhanced .tablesaw-bar .btn:hover {
  text-decoration: none; }

/* Default radio/checkbox styling horizonal controlgroups. */
.tablesaw-enhanced .tablesaw-bar .btn:active {
  background-color: #ddd;
  background-image: -webkit-linear-gradient(top, rgba(100, 100, 100, 0.35) 0%, rgba(255, 255, 255, 0) 70%);
  background-image: linear-gradient(top, rgba(100, 100, 100, 0.35) 0%, rgba(255, 255, 255, 0) 70%); }

.tablesaw-enhanced .tablesaw-bar .btn:hover,
.tablesaw-enhanced .tablesaw-bar .btn:focus {
  color: #208de3;
  background-color: #fff;
  outline: none; }

.tablesaw-bar .btn:focus {
  box-shadow: 0 0 .35em #4faeef !important; }

.tablesaw-bar .btn-select select {
  background: none;
  border: none;
  display: block;
  position: absolute;
  font-weight: inherit;
  left: 0;
  top: 0;
  margin: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  min-height: 1em; }

.tablesaw-bar .btn-select select {
  opacity: 0;
  filter: alpha(opacity=0);
  display: inline-block;
  color: transparent; }

.tablesaw-bar .btn select option {
  background: #fff;
  color: #000;
  font-family: sans-serif; }

.tablesaw-enhanced .tablesaw-bar .btn.btn-select {
  color: #4d4d4d;
  padding-right: 2.5em;
  min-width: 7.25em;
  text-align: left;
  text-indent: 0; }

.tablesaw-bar .btn.btn-small,
.tablesaw-bar .btn.btn-micro {
  display: inline-block;
  width: auto;
  height: auto;
  position: relative;
  top: 0; }

.tablesaw-bar .btn.btn-small {
  font-size: 1.0625em;
  line-height: 19px;
  padding: .3em 1em .3em 1em; }

.tablesaw-bar .btn.btn-micro {
  font-size: .8125em;
  padding: .4em .7em .25em .7em; }

.tablesaw-enhanced .tablesaw-bar .btn-select {
  text-align: left; }

.tablesaw-bar .btn-select:after {
  background: #e5e5e5;
  background: rgba(0, 0, 0, 0.1);
  box-shadow: 0 2px 2px rgba(255, 255, 255, 0.25);
  content: " ";
  display: block;
  position: absolute; }

.tablesaw-bar .btn-select.btn-small,
.tablesaw-bar .btn-select.btn-micro {
  padding-right: 1.5em; }

.tablesaw-bar .btn-select:after {
  background: none;
  background-repeat: no-repeat;
  background-position: .25em .45em;
  content: "\25bc";
  font-size: .55em;
  padding-top: 1.2em;
  padding-left: 1em;
  left: auto;
  right: 0;
  margin: 0;
  top: 0;
  bottom: 0;
  width: 1.8em; }

.tablesaw-bar .btn-select.btn-small:after,
.tablesaw-bar .btn-select.btn-micro:after {
  width: 1.2em;
  font-size: .5em;
  padding-top: 1em;
  padding-right: .5em;
  line-height: 1.65;
  background: none;
  box-shadow: none;
  border-left-width: 0; }

/* Column navigation buttons for swipe and columntoggle tables */
.tablesaw-advance .btn {
  -webkit-appearance: none;
  -moz-appearance: none;
  box-sizing: border-box;
  text-shadow: 0 1px 0 #fff;
  border-radius: .25em; }

.tablesaw-advance .btn.btn-micro {
  font-size: .8125em;
  padding: .3em .7em .25em .7em; }

.tablesaw-bar .tablesaw-advance a.tablesaw-nav-btn {
  display: inline-block;
  overflow: hidden;
  width: 1.8em;
  height: 1.8em;
  background-position: 50% 50%;
  margin-left: .5em;
  position: relative; }

.tablesaw-bar .tablesaw-advance a.tablesaw-nav-btn.left:before,
.tablesaw-bar .tablesaw-advance a.tablesaw-nav-btn.right:before,
.tablesaw-bar .tablesaw-advance a.tablesaw-nav-btn.down:before,
.tablesaw-bar .tablesaw-advance a.tablesaw-nav-btn.up:before {
  content: "\0020";
  overflow: hidden;
  width: 0;
  height: 0;
  position: absolute; }

.tablesaw-bar .tablesaw-advance a.tablesaw-nav-btn.down:before {
  left: .5em;
  top: .65em;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #808080; }

.tablesaw-bar .tablesaw-advance a.tablesaw-nav-btn.up:before {
  left: .5em;
  top: .65em;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid #808080; }

.tablesaw-bar .tablesaw-advance a.tablesaw-nav-btn.left:before,
.tablesaw-bar .tablesaw-advance a.tablesaw-nav-btn.right:before {
  top: .45em;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent; }

.tablesaw-bar .tablesaw-advance a.tablesaw-nav-btn.left:before {
  left: .6em;
  border-right: 5px solid #808080; }

.tablesaw-bar .tablesaw-advance a.tablesaw-nav-btn.right:before {
  left: .7em;
  border-left: 5px solid #808080; }

.tablesaw-advance a.tablesaw-nav-btn.disabled {
  opacity: .25;
  filter: alpha(opacity=25);
  cursor: default;
  pointer-events: none; }

/* Table Toolbar */
.tablesaw-bar {
  clear: both;
  font-family: sans-serif; }

.tablesaw-toolbar {
  font-size: .875em;
  float: left; }

.tablesaw-toolbar label {
  padding: .5em 0;
  clear: both;
  display: block;
  color: #888;
  margin-right: .5em;
  text-transform: uppercase; }

.tablesaw-bar .btn,
.tablesaw-enhanced .tablesaw-bar .btn {
  margin-top: .5em;
  margin-bottom: .5em; }

.tablesaw-bar .btn-select,
.tablesaw-enhanced .tablesaw-bar .btn-select {
  margin-bottom: 0; }

.tablesaw-bar .tablesaw-toolbar .btn {
  margin-left: .4em;
  margin-top: 0;
  text-transform: uppercase;
  border: none;
  box-shadow: none;
  background: transparent;
  font-family: sans-serif;
  font-size: 1em;
  padding-left: .3em; }

.tablesaw-bar .tablesaw-toolbar .btn-select {
  min-width: 0; }

.tablesaw-bar .tablesaw-toolbar .btn-select:after {
  padding-top: .9em; }

.tablesaw-bar .tablesaw-toolbar select {
  color: #888;
  text-transform: none;
  background: transparent; }

.tablesaw-toolbar ~ table {
  clear: both; }

.tablesaw-toolbar .a11y-sm {
  clip: rect(0 0 0 0);
  height: 1px;
  overflow: hidden;
  position: absolute;
  width: 1px; }

@media (min-width: 24em) {
  .tablesaw-toolbar .a11y-sm {
    clip: none;
    height: auto;
    width: auto;
    position: static;
    overflow: visible; } }

/* Table rows have a gray bottom stroke by default */
.tablesaw-stack tbody tr {
  border-bottom: 1px solid #dfdfdf; }

.tablesaw-stack td .tablesaw-cell-label,
.tablesaw-stack th .tablesaw-cell-label {
  display: none; }

/* Mobile first styles: Begin with the stacked presentation at narrow widths */
@media only all {
  /* Show the table cells as a block level element */
  .tablesaw-stack td,
  .tablesaw-stack th {
    text-align: left;
    display: block; }
  .tablesaw-stack tr {
    clear: both;
    display: table-row; }
  /* Make the label elements a percentage width */
  .tablesaw-stack td .tablesaw-cell-label,
  .tablesaw-stack th .tablesaw-cell-label {
    display: block;
    padding: 0 .6em 0 0;
    width: 30%;
    display: inline-block; }
  /* For grouped headers, have a different style to visually separate the levels by classing the first label in each col group */
  .tablesaw-stack th .tablesaw-cell-label-top,
  .tablesaw-stack td .tablesaw-cell-label-top {
    display: block;
    padding: .4em 0;
    margin: .4em 0; }
  .tablesaw-cell-label {
    display: block; }
  /* Avoid double strokes when stacked */
  .tablesaw-stack tbody th.group {
    margin-top: -1px; }
  /* Avoid double strokes when stacked */
  .tablesaw-stack th.group b.tablesaw-cell-label {
    display: none !important; } }

@media (max-width: 39.9375em) {
  .tablesaw-stack thead td,
  .tablesaw-stack thead th {
    display: none; }
  .tablesaw-stack tbody td,
  .tablesaw-stack tbody th {
    clear: left;
    float: left;
    width: 100%; }
  .tablesaw-cell-label {
    vertical-align: top; }
  .tablesaw-cell-content {
    max-width: 67%;
    display: inline-block; }
  .tablesaw-stack td:empty,
  .tablesaw-stack th:empty {
    display: none; } }

/* Media query to show as a standard table at 560px (35em x 16px) or wider */
@media (min-width: 40em) {
  .tablesaw-stack tr {
    display: table-row; }
  /* Show the table header rows */
  .tablesaw-stack td,
  .tablesaw-stack th,
  .tablesaw-stack thead td,
  .tablesaw-stack thead th {
    display: table-cell;
    margin: 0; }
  /* Hide the labels in each cell */
  .tablesaw-stack td .tablesaw-cell-label,
  .tablesaw-stack th .tablesaw-cell-label {
    display: none !important; } }

.tablesaw-fix-persist {
  table-layout: fixed; }

@media only all {
  /* Unchecked manually: Always hide */
  .tablesaw-swipe th.tablesaw-cell-hidden,
  .tablesaw-swipe td.tablesaw-cell-hidden {
    display: none; } }

.btn.tablesaw-columntoggle-btn span {
  text-indent: -9999px;
  display: inline-block; }

.tablesaw-columntoggle-btnwrap {
  position: relative;
  /* for dialog positioning */ }

.tablesaw-columntoggle-btnwrap .dialog-content {
  padding: .5em; }

.tablesaw-columntoggle tbody td {
  line-height: 1.5; }

/* Remove top/bottom margins around the fieldcontain on check list */
.tablesaw-columntoggle-popup {
  display: none; }

.tablesaw-columntoggle-btnwrap.visible .tablesaw-columntoggle-popup {
  display: block;
  position: absolute;
  top: 2em;
  right: 0;
  background-color: #fff;
  padding: .5em .8em;
  border: 1px solid #ccc;
  box-shadow: 0 1px 2px #ccc;
  border-radius: .2em;
  z-index: 1; }

.tablesaw-columntoggle-popup fieldset {
  margin: 0; }

/* Hide all prioritized columns by default */
@media only all {
  .tablesaw-columntoggle th.tablesaw-priority-6,
  .tablesaw-columntoggle td.tablesaw-priority-6,
  .tablesaw-columntoggle th.tablesaw-priority-5,
  .tablesaw-columntoggle td.tablesaw-priority-5,
  .tablesaw-columntoggle th.tablesaw-priority-4,
  .tablesaw-columntoggle td.tablesaw-priority-4,
  .tablesaw-columntoggle th.tablesaw-priority-3,
  .tablesaw-columntoggle td.tablesaw-priority-3,
  .tablesaw-columntoggle th.tablesaw-priority-2,
  .tablesaw-columntoggle td.tablesaw-priority-2,
  .tablesaw-columntoggle th.tablesaw-priority-1,
  .tablesaw-columntoggle td.tablesaw-priority-1 {
    display: none; } }

.tablesaw-columntoggle-btnwrap .dialog-content {
  top: 0 !important;
  right: 1em;
  left: auto !important;
  width: 12em;
  max-width: 18em;
  margin: -.5em auto 0; }

.tablesaw-columntoggle-btnwrap .dialog-content:focus {
  outline-style: none; }

/* Preset breakpoints if "" class added to table */
/* Show priority 1 at 320px (20em x 16px) */
@media (min-width: 20em) {
  .tablesaw-columntoggle th.tablesaw-priority-1,
  .tablesaw-columntoggle td.tablesaw-priority-1 {
    display: table-cell; } }

/* Show priority 2 at 480px (30em x 16px) */
@media (min-width: 30em) {
  .tablesaw-columntoggle th.tablesaw-priority-2,
  .tablesaw-columntoggle td.tablesaw-priority-2 {
    display: table-cell; } }

/* Show priority 3 at 640px (40em x 16px) */
@media (min-width: 40em) {
  .tablesaw-columntoggle th.tablesaw-priority-3,
  .tablesaw-columntoggle td.tablesaw-priority-3 {
    display: table-cell; }
  .tablesaw-columntoggle tbody td {
    line-height: 2; } }

/* Show priority 4 at 800px (50em x 16px) */
@media (min-width: 50em) {
  .tablesaw-columntoggle th.tablesaw-priority-4,
  .tablesaw-columntoggle td.tablesaw-priority-4 {
    display: table-cell; } }

/* Show priority 5 at 960px (60em x 16px) */
@media (min-width: 60em) {
  .tablesaw-columntoggle th.tablesaw-priority-5,
  .tablesaw-columntoggle td.tablesaw-priority-5 {
    display: table-cell; } }

/* Show priority 6 at 1,120px (70em x 16px) */
@media (min-width: 70em) {
  .tablesaw-columntoggle th.tablesaw-priority-6,
  .tablesaw-columntoggle td.tablesaw-priority-6 {
    display: table-cell; } }

@media only all {
  /* Unchecked manually: Always hide */
  .tablesaw-columntoggle th.tablesaw-cell-hidden,
  .tablesaw-columntoggle td.tablesaw-cell-hidden {
    display: none; }
  /* Checked manually: Always show */
  .tablesaw-columntoggle th.tablesaw-cell-visible,
  .tablesaw-columntoggle td.tablesaw-cell-visible {
    display: table-cell; } }

.tablesaw-columntoggle-popup .btn-group > label {
  display: block;
  padding: .2em 0;
  white-space: nowrap; }

.tablesaw-columntoggle-popup .btn-group > label input {
  margin-right: .8em; }

.tablesaw-sortable,
.tablesaw-sortable thead,
.tablesaw-sortable thead tr,
.tablesaw-sortable thead tr th {
  position: relative; }

.tablesaw-sortable thead tr th {
  padding-right: 1.6em;
  vertical-align: top; }

.tablesaw-sortable th.tablesaw-sortable-head,
.tablesaw-sortable tr:first-child th.tablesaw-sortable-head {
  padding: 0; }

.tablesaw-sortable th.tablesaw-sortable-head button {
  padding-top: .9em;
  padding-bottom: .7em;
  padding-left: .6em;
  padding-right: 1.6em; }

.tablesaw-sortable .tablesaw-sortable-head button {
  min-width: 100%;
  color: inherit;
  background: transparent;
  border: 0;
  padding: 0;
  text-align: left;
  font: inherit;
  text-transform: inherit;
  position: relative; }

.tablesaw-sortable .tablesaw-sortable-head.tablesaw-sortable-ascending button:after,
.tablesaw-sortable .tablesaw-sortable-head.tablesaw-sortable-descending button:after {
  width: 7px;
  height: 10px;
  content: "\0020";
  position: absolute;
  right: .5em; }

.tablesaw-sortable .tablesaw-sortable-head.tablesaw-sortable-ascending button:after {
  content: "\2191"; }

.tablesaw-sortable .tablesaw-sortable-head.tablesaw-sortable-descending button:after {
  content: "\2193"; }

.tablesaw-sortable .not-applicable:after {
  content: "--";
  display: block; }

.tablesaw-sortable .not-applicable span {
  display: none; }

.tablesaw-advance {
  float: right; }

.tablesaw-advance.minimap {
  margin-right: .4em; }

.tablesaw-advance-dots {
  float: left;
  margin: 0;
  padding: 0;
  list-style: none; }

.tablesaw-advance-dots li {
  display: table-cell;
  margin: 0;
  padding: .4em .2em; }

.tablesaw-advance-dots li i {
  width: .25em;
  height: .25em;
  background: #555;
  border-radius: 100%;
  display: inline-block; }

.tablesaw-advance-dots-hide {
  opacity: .25;
  filter: alpha(opacity=25);
  cursor: default;
  pointer-events: none; }

/* endinject */
/* ==========================================================================

	Project
	==========
	Dossier

	Author
	==========

                                       ,8  ,8
                                       88  88
                                       88  88
    `8b      db      d8'  ,adPPYba,88  88  88   ,adPPYba,   88,dPPYba,
     `8b    d88b    d8'  a8"     "Y88  88  88  a8"     "8a  88P'    "8a
      `8b  d8'`8b  d8'   8b        88  88  88  8b       d8  88       d8
       `8bd8'  `8bd8'    "8a,   ,ad88  88  88  "8a,   ,a8"  88b,   ,a8"
         YP      YP       `"YbbdP" 88  88  88   `"YbbdP"'   88`YbbdP"'
                                                            88
                                                            8"

========================================================================== */
/* Global Styles
============================ */
:root {
  -ms-overflow-style: -ms-autohiding-scrollbar; }

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

html, body {
  width: 100%;
  height: auto; }

img {
  -webkit-transition: inherit;
  transition: inherit; }
  img.image-cover {
    font-family: "object-fit:cover;object-position:center";
    object-fit: cover;
    object-position: center; }
  img.object-fit {
    width: 100%; }
  img.img-full-width {
    width: 100%; }

svg {
  max-width: 100%; }

button {
  outline: none; }

p {
  font-size: 1.14286rem;
  letter-spacing: 0.4px;
  line-height: 2rem; }

a {
  -webkit-transition: all 400ms ease;
  transition: all 400ms ease; }
  a[class^="icon-"]:before, a[class*=" icon-"]:before {
    font-size: 125%;
    margin-right: 8px;
    font-family: 'icon-font' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: inherit;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    vertical-align: middle; }
  a[href^="mailto:"] {
    display: inline-block;
    text-overflow: ellipsis;
    overflow: hidden;
    max-width: 100%;
    vertical-align: bottom; }

time {
  font-size: inherit;
  line-height: 1.71429; }

.row {
  position: relative; }

.h1, .card-tile .card-content h5 {
  font-size: 1.71429rem;
  line-height: 1.1875;
  margin-top: 0;
  margin-bottom: 1.71429rem; }

.h2 {
  font-size: 1.42857rem;
  line-height: 1.1875;
  margin-top: 0;
  margin-bottom: 1.71429rem; }

.h3 {
  font-size: 1.42857rem;
  line-height: 1.1875;
  margin-top: 0;
  margin-bottom: 1.71429rem; }

.h4 {
  font-size: 1.28571rem;
  line-height: 1.1875;
  margin-top: 0;
  margin-bottom: 2.28571rem; }

.h5 {
  font-size: 1rem;
  line-height: 1.1875;
  margin-top: 0;
  margin-bottom: 2.28571rem; }

.h6 {
  font-size: 0.92857rem;
  line-height: 1.1875;
  margin-top: 0;
  margin-bottom: 2.28571rem; }

@media print, screen and (min-width: 40em) {
  .h1, .card-tile .card-content h5 {
    font-size: 2.28571rem;
    margin-bottom: 1.71429rem; }
  .h2 {
    font-size: 2rem; }
  .h3 {
    font-size: 1.71429rem;
    margin-bottom: 1.42857rem; }
  .h4 {
    font-size: 1.42857rem; }
  .h5 {
    font-size: 1.14286rem;
    margin-bottom: 2.28571rem; }
  .h6 {
    font-size: 1rem;
    margin-bottom: 2.28571rem; } }

.row.collapse.expanded .row {
  margin-left: auto;
  margin-right: auto; }
  .row.collapse.expanded .row .row {
    margin-left: -8px;
    margin-right: -8px; }
    @media screen and (min-width: 40em) {
      .row.collapse.expanded .row .row {
        margin-left: -12px;
        margin-right: -12px; } }

h1, h2, h3, h4, h5, h6 {
  letter-spacing: 1px; }
  h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
    color: inherit; }
  h1.display, h2.display, h3.display, h4.display, h5.display, h6.display {
    font-family: "Acta Headline W00", "Acta Headline", serif;
    text-transform: uppercase;
    letter-spacing: 0.09091em; }
  @media screen and (min-width: 64em) {
    h1.large-display, h2.large-display, h3.large-display, h4.large-display, h5.large-display, h6.large-display {
      font-family: "Acta Headline W00", "Acta Headline", serif;
      text-transform: uppercase;
      letter-spacing: 0.09091em; } }
  @media screen and (min-width: 64em) {
    h1, h2, h3, h4, h5, h6 {
      color: inherit; } }
  h1.white, h2.white, h3.white, h4.white, h5.white, h6.white {
    color: #fff; }
  h1.w-color, h2.w-color, h3.w-color, h4.w-color, h5.w-color, h6.w-color {
    color: #DCC18E; }
  h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
    line-height: 1;
    display: block;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 0.57143rem; }

.subtitle, .secondary-nav li, input[type="radio"] + label {
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  line-height: 1.71429;
  letter-spacing: 1px; }

h4, h5, h6 {
  color: inherit;
  font-weight: 600;
  text-transform: uppercase; }

@media screen and (min-width: 64em) {
  h1.display {
    font-size: 3.14286rem; } }

@media screen and (min-width: 64em) and (max-height: 800px) {
  h1, .h1, .card-tile .card-content h5 {
    font-size: 1.71429rem; }
    h1.display, .h1.display, .card-tile .card-content h5.display {
      font-size: 2.28571rem; } }

@media screen and (max-width: 63.9375em) {
  p:last-child {
    margin-bottom: 2rem; } }

/****
 *  Base Styles
 */
.no-bullet:last-child, .links:last-child, .inline-list:last-child, #menu-links #primary:last-child, .gallery-thumbnails .gallery-sub-menu:last-child, .locations-wrapper .locations-list:last-child {
  margin-bottom: 0; }

button {
  font-family: "Avenir Next W01", "Avenir Next", Avenir, Futura, "Century Gothic", sans-serif; }

.rg-btn {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  font-family: inherit;
  padding: 1.23em 1.85em;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 2px;
  -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-size: 0.9rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #DCC18E;
  color: #fff; }
  [data-whatinput='mouse'] .rg-btn {
    outline: 0; }
  .rg-btn:hover, .rg-btn:focus {
    background-color: #cfaa65;
    color: #fff; }
  .rg-btn.small-border-btn {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    font-family: inherit;
    padding: 1.23em 1.85em;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 2px;
    -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 0.9rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    border: 1px solid #DCC18E;
    color: #DCC18E; }
    [data-whatinput='mouse'] .rg-btn.small-border-btn {
      outline: 0; }
    .rg-btn.small-border-btn, .rg-btn.small-border-btn:hover, .rg-btn.small-border-btn:focus {
      background-color: transparent; }
    .rg-btn.small-border-btn.disabled, .rg-btn.small-border-btn.disabled:hover, .rg-btn.small-border-btn.disabled:focus, .rg-btn.small-border-btn[disabled], .rg-btn.small-border-btn[disabled]:hover, .rg-btn.small-border-btn[disabled]:focus {
      background-color: transparent; }
    .rg-btn.small-border-btn:hover, .rg-btn.small-border-btn:focus {
      border-color: #8a692b;
      color: #8a692b; }
      .rg-btn.small-border-btn:hover.disabled, .rg-btn.small-border-btn:hover[disabled], .rg-btn.small-border-btn:focus.disabled, .rg-btn.small-border-btn:focus[disabled] {
        border: 1px solid #DCC18E;
        color: #DCC18E; }
  @media print, screen and (min-width: 40em) {
    .rg-btn.medium-border-btn {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 1rem 0;
      font-family: inherit;
      padding: 1.23em 1.85em;
      -webkit-appearance: none;
      border: 1px solid transparent;
      border-radius: 2px;
      -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
      transition: background-color 0.25s ease-out, color 0.25s ease-out;
      font-size: 0.9rem;
      line-height: 1;
      text-align: center;
      cursor: pointer;
      border: 1px solid #DCC18E;
      color: #DCC18E; }
      [data-whatinput='mouse'] .rg-btn.medium-border-btn {
        outline: 0; }
      .rg-btn.medium-border-btn, .rg-btn.medium-border-btn:hover, .rg-btn.medium-border-btn:focus {
        background-color: transparent; }
      .rg-btn.medium-border-btn.disabled, .rg-btn.medium-border-btn.disabled:hover, .rg-btn.medium-border-btn.disabled:focus, .rg-btn.medium-border-btn[disabled], .rg-btn.medium-border-btn[disabled]:hover, .rg-btn.medium-border-btn[disabled]:focus {
        background-color: transparent; }
      .rg-btn.medium-border-btn:hover, .rg-btn.medium-border-btn:focus {
        border-color: #8a692b;
        color: #8a692b; }
        .rg-btn.medium-border-btn:hover.disabled, .rg-btn.medium-border-btn:hover[disabled], .rg-btn.medium-border-btn:focus.disabled, .rg-btn.medium-border-btn:focus[disabled] {
          border: 1px solid #DCC18E;
          color: #DCC18E; } }
  @media print, screen and (min-width: 64em) {
    .rg-btn.large-border-btn {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 1rem 0;
      font-family: inherit;
      padding: 1.23em 1.85em;
      -webkit-appearance: none;
      border: 1px solid transparent;
      border-radius: 2px;
      -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
      transition: background-color 0.25s ease-out, color 0.25s ease-out;
      font-size: 0.9rem;
      line-height: 1;
      text-align: center;
      cursor: pointer;
      border: 1px solid #DCC18E;
      color: #DCC18E; }
      [data-whatinput='mouse'] .rg-btn.large-border-btn {
        outline: 0; }
      .rg-btn.large-border-btn, .rg-btn.large-border-btn:hover, .rg-btn.large-border-btn:focus {
        background-color: transparent; }
      .rg-btn.large-border-btn.disabled, .rg-btn.large-border-btn.disabled:hover, .rg-btn.large-border-btn.disabled:focus, .rg-btn.large-border-btn[disabled], .rg-btn.large-border-btn[disabled]:hover, .rg-btn.large-border-btn[disabled]:focus {
        background-color: transparent; }
      .rg-btn.large-border-btn:hover, .rg-btn.large-border-btn:focus {
        border-color: #8a692b;
        color: #8a692b; }
        .rg-btn.large-border-btn:hover.disabled, .rg-btn.large-border-btn:hover[disabled], .rg-btn.large-border-btn:focus.disabled, .rg-btn.large-border-btn:focus[disabled] {
          border: 1px solid #DCC18E;
          color: #DCC18E; } }
  @media screen and (min-width: 99.42857em) {
    .rg-btn.xlarge-border-btn {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 1rem 0;
      font-family: inherit;
      padding: 1.23em 1.85em;
      -webkit-appearance: none;
      border: 1px solid transparent;
      border-radius: 2px;
      -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
      transition: background-color 0.25s ease-out, color 0.25s ease-out;
      font-size: 0.9rem;
      line-height: 1;
      text-align: center;
      cursor: pointer;
      border: 1px solid #DCC18E;
      color: #DCC18E; }
      [data-whatinput='mouse'] .rg-btn.xlarge-border-btn {
        outline: 0; }
      .rg-btn.xlarge-border-btn, .rg-btn.xlarge-border-btn:hover, .rg-btn.xlarge-border-btn:focus {
        background-color: transparent; }
      .rg-btn.xlarge-border-btn.disabled, .rg-btn.xlarge-border-btn.disabled:hover, .rg-btn.xlarge-border-btn.disabled:focus, .rg-btn.xlarge-border-btn[disabled], .rg-btn.xlarge-border-btn[disabled]:hover, .rg-btn.xlarge-border-btn[disabled]:focus {
        background-color: transparent; }
      .rg-btn.xlarge-border-btn:hover, .rg-btn.xlarge-border-btn:focus {
        border-color: #8a692b;
        color: #8a692b; }
        .rg-btn.xlarge-border-btn:hover.disabled, .rg-btn.xlarge-border-btn:hover[disabled], .rg-btn.xlarge-border-btn:focus.disabled, .rg-btn.xlarge-border-btn:focus[disabled] {
          border: 1px solid #DCC18E;
          color: #DCC18E; } }
  @media screen and (min-width: 100em) {
    .rg-btn.xxlarge-border-btn {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 1rem 0;
      font-family: inherit;
      padding: 1.23em 1.85em;
      -webkit-appearance: none;
      border: 1px solid transparent;
      border-radius: 2px;
      -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
      transition: background-color 0.25s ease-out, color 0.25s ease-out;
      font-size: 0.9rem;
      line-height: 1;
      text-align: center;
      cursor: pointer;
      border: 1px solid #DCC18E;
      color: #DCC18E; }
      [data-whatinput='mouse'] .rg-btn.xxlarge-border-btn {
        outline: 0; }
      .rg-btn.xxlarge-border-btn, .rg-btn.xxlarge-border-btn:hover, .rg-btn.xxlarge-border-btn:focus {
        background-color: transparent; }
      .rg-btn.xxlarge-border-btn.disabled, .rg-btn.xxlarge-border-btn.disabled:hover, .rg-btn.xxlarge-border-btn.disabled:focus, .rg-btn.xxlarge-border-btn[disabled], .rg-btn.xxlarge-border-btn[disabled]:hover, .rg-btn.xxlarge-border-btn[disabled]:focus {
        background-color: transparent; }
      .rg-btn.xxlarge-border-btn:hover, .rg-btn.xxlarge-border-btn:focus {
        border-color: #8a692b;
        color: #8a692b; }
        .rg-btn.xxlarge-border-btn:hover.disabled, .rg-btn.xxlarge-border-btn:hover[disabled], .rg-btn.xxlarge-border-btn:focus.disabled, .rg-btn.xxlarge-border-btn:focus[disabled] {
          border: 1px solid #DCC18E;
          color: #DCC18E; } }

.border-btn {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  font-family: inherit;
  padding: 1.23em 1.85em;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 2px;
  -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-size: 0.9rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  border: 1px solid #DCC18E;
  color: #DCC18E;
  -webkit-transition: all 400ms ease;
  transition: all 400ms ease;
  color: #fff; }
  [data-whatinput='mouse'] .border-btn {
    outline: 0; }
  .border-btn, .border-btn:hover, .border-btn:focus {
    background-color: transparent; }
  .border-btn.disabled, .border-btn.disabled:hover, .border-btn.disabled:focus, .border-btn[disabled], .border-btn[disabled]:hover, .border-btn[disabled]:focus {
    background-color: transparent; }
  .border-btn:hover, .border-btn:focus {
    border-color: #8a692b;
    color: #8a692b; }
    .border-btn:hover.disabled, .border-btn:hover[disabled], .border-btn:focus.disabled, .border-btn:focus[disabled] {
      border: 1px solid #DCC18E;
      color: #DCC18E; }
  .border-btn.white {
    border: solid 1px #fff;
    color: #fff; }
    .border-btn.white:hover {
      background-color: #fff;
      color: #fff; }
  .border-btn.small-rg-btn {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    font-family: inherit;
    padding: 1.23em 1.85em;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 2px;
    -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 0.9rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    background-color: #DCC18E;
    color: #fff; }
    [data-whatinput='mouse'] .border-btn.small-rg-btn {
      outline: 0; }
    .border-btn.small-rg-btn:hover, .border-btn.small-rg-btn:focus {
      background-color: #cfaa65;
      color: #fff; }
  @media print, screen and (min-width: 40em) {
    .border-btn.medium-rg-btn {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 1rem 0;
      font-family: inherit;
      padding: 1.23em 1.85em;
      -webkit-appearance: none;
      border: 1px solid transparent;
      border-radius: 2px;
      -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
      transition: background-color 0.25s ease-out, color 0.25s ease-out;
      font-size: 0.9rem;
      line-height: 1;
      text-align: center;
      cursor: pointer;
      background-color: #DCC18E;
      color: #fff; }
      [data-whatinput='mouse'] .border-btn.medium-rg-btn {
        outline: 0; }
      .border-btn.medium-rg-btn:hover, .border-btn.medium-rg-btn:focus {
        background-color: #cfaa65;
        color: #fff; } }
  @media print, screen and (min-width: 64em) {
    .border-btn.large-rg-btn {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 1rem 0;
      font-family: inherit;
      padding: 1.23em 1.85em;
      -webkit-appearance: none;
      border: 1px solid transparent;
      border-radius: 2px;
      -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
      transition: background-color 0.25s ease-out, color 0.25s ease-out;
      font-size: 0.9rem;
      line-height: 1;
      text-align: center;
      cursor: pointer;
      background-color: #DCC18E;
      color: #fff; }
      [data-whatinput='mouse'] .border-btn.large-rg-btn {
        outline: 0; }
      .border-btn.large-rg-btn:hover, .border-btn.large-rg-btn:focus {
        background-color: #cfaa65;
        color: #fff; } }
  @media screen and (min-width: 99.42857em) {
    .border-btn.xlarge-rg-btn {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 1rem 0;
      font-family: inherit;
      padding: 1.23em 1.85em;
      -webkit-appearance: none;
      border: 1px solid transparent;
      border-radius: 2px;
      -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
      transition: background-color 0.25s ease-out, color 0.25s ease-out;
      font-size: 0.9rem;
      line-height: 1;
      text-align: center;
      cursor: pointer;
      background-color: #DCC18E;
      color: #fff; }
      [data-whatinput='mouse'] .border-btn.xlarge-rg-btn {
        outline: 0; }
      .border-btn.xlarge-rg-btn:hover, .border-btn.xlarge-rg-btn:focus {
        background-color: #cfaa65;
        color: #fff; } }
  @media screen and (min-width: 100em) {
    .border-btn.xxlarge-rg-btn {
      display: inline-block;
      vertical-align: middle;
      margin: 0 0 1rem 0;
      font-family: inherit;
      padding: 1.23em 1.85em;
      -webkit-appearance: none;
      border: 1px solid transparent;
      border-radius: 2px;
      -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
      transition: background-color 0.25s ease-out, color 0.25s ease-out;
      font-size: 0.9rem;
      line-height: 1;
      text-align: center;
      cursor: pointer;
      background-color: #DCC18E;
      color: #fff; }
      [data-whatinput='mouse'] .border-btn.xxlarge-rg-btn {
        outline: 0; }
      .border-btn.xxlarge-rg-btn:hover, .border-btn.xxlarge-rg-btn:focus {
        background-color: #cfaa65;
        color: #fff; } }
  .border-btn:active, .border-btn:hover, .border-btn:focus {
    color: #fff; }

.rg-btn, .border-btn {
  font-family: inherit;
  text-transform: uppercase;
  margin-bottom: 0;
  font-size: 0.92857rem;
  letter-spacing: 2px;
  font-weight: 600; }
  .rg-btn.expanded, .border-btn.expanded {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  .rg-btn[class*="icon-"], .border-btn[class*="icon-"] {
    text-align: left; }
  @media screen and (max-width: 39.9375em) {
    .rg-btn, .border-btn {
      width: 100%; } }

.inline-list li {
  display: block; }
  @media screen and (min-width: 40em) {
    .inline-list li {
      display: inline-block;
      margin-left: 1rem;
      margin-right: 1rem; } }

.two-column-text * {
  -webkit-column-break-inside: avoid;
          break-inside: avoid; }

@media screen and (min-width: 40em) {
  .two-column-text {
    -webkit-column-count: 2;
            column-count: 2;
    -webkit-column-gap: 16px;
            column-gap: 16px; }
    .two-column-text p:last-child {
      margin-bottom: 1.14286rem; } }

ul.two-column-text li {
  margin-bottom: 0.5rem; }

img.alignleft {
  float: left;
  margin-right: 15px;
  margin-bottom: 15px; }

img.alignright {
  float: right;
  margin-left: 15px;
  margin-bottom: 15px; }

.text-uppercase {
  text-transform: uppercase; }

body.nav-opened {
  overflow: hidden; }
  body.nav-opened .nav-header svg, body.nav-opened .nav-footer svg {
    fill: #fff; }

.nav-header, .nav-footer {
  position: fixed;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  z-index: 575;
  left: 0;
  right: 0; }
  .nav-header.locked, .nav-footer.locked {
    position: absolute; }
    .nav-opened .nav-header.locked, .nav-opened .nav-footer.locked {
      position: fixed; }
  .nav-header svg, .nav-footer svg {
    fill: #fff; }
    @media screen and (max-width: 63.9375em) {
      .template-map .nav-header svg, .page-contact .nav-header svg, .template-map .nav-footer svg, .page-contact .nav-footer svg {
        fill: #1A1818; } }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .page-contact .nav-header svg, .page-contact .nav-footer svg {
        fill: #fff; } }
  .nav-header > .row, .nav-footer > .row {
    padding: 2.57143rem 1.71429rem; }
    @media screen and (min-width: 64em) {
      .nav-header > .row, .nav-footer > .row {
        padding: 0 4.57143rem; } }
  .nav-header button, .nav-header a, .nav-footer button, .nav-footer a {
    pointer-events: auto; }
  .nav-header button, .nav-footer button {
    cursor: pointer;
    border-radius: 0; }
    .nav-header button svg, .nav-header button span, .nav-footer button svg, .nav-footer button span {
      display: inline-block;
      vertical-align: middle;
      line-height: 1; }
    .nav-header button span, .nav-footer button span {
      margin-left: 2.42857rem;
      letter-spacing: 2.19px;
      text-transform: uppercase;
      color: #fff; }
    .nav-header button.rg-btn, .nav-footer button.rg-btn {
      border-radius: 2px; }

.nav-header {
  top: 0;
  padding: 0;
  background-color: transparent; }
  .nav-header .columns {
    overflow: hidden; }
  @media screen and (max-width: 39.9375em) {
    .nav-header > .row {
      padding: 1rem; } }
  @media screen and (min-width: 64em) {
    .nav-header {
      padding: 1.57143rem 0 1.71429rem; } }
  .nav-header.locked .menu-toggle {
    display: none !important; }
  .nav-header .logo-wrapper {
    position: relative;
    top: 4px;
    white-space: nowrap;
    display: inline-block;
    overflow: hidden; }
    .nav-header .logo-wrapper .menu-toggle, .nav-header .logo-wrapper .home-link {
      display: inline-block;
      line-height: 1;
      vertical-align: middle; }
    .nav-header .logo-wrapper .menu-toggle {
      margin-right: 2.28571rem; }
    @media screen and (min-width: 40em) {
      .nav-header .logo-wrapper .home-link {
        margin-top: 3px; } }
    .nav-header .logo-wrapper .home-link svg {
      width: 8.57143rem;
      height: 2rem; }
      @media screen and (min-width: 64em) {
        .nav-header .logo-wrapper .home-link svg {
          width: 10.92857rem;
          height: 2.28571rem; } }
  .nav-header .mobile-menu-toggle {
    position: relative;
    top: 4px;
    right: 4px; }

.nav-footer {
  bottom: 0;
  left: inherit;
  margin-right: 4.64286rem;
  max-width: 180px; }
  @media screen and (max-width: 63.9375em) {
    .nav-footer {
      display: none; } }
  @media screen and (min-width: 64em) {
    .nav-footer {
      padding: 0 0 2.5rem; } }

.fixed-nav-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: -1;
  width: 100vw;
  height: 100vh;
  opacity: 0;
  -webkit-transition: opacity 400ms ease-in-out, z-index 0s linear 400ms;
  transition: opacity 400ms ease-in-out, z-index 0s linear 400ms; }
  .fixed-nav-wrapper.opened {
    z-index: 501;
    opacity: 1;
    -webkit-transition: opacity 400ms ease-in-out;
    transition: opacity 400ms ease-in-out; }
  .fixed-nav-wrapper .nav-container {
    padding: 6.85714rem 1.14286rem 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch; }
    @media screen and (min-width: 64em) {
      .fixed-nav-wrapper .nav-container {
        padding: 10.71429rem 4.57143rem; } }
    @media screen and (min-width: 64em) {
      .fixed-nav-wrapper .nav-container > .row.large-align-middle {
        min-height: 100%;
        height: 100%; } }
  .fixed-nav-wrapper .menu-content {
    -webkit-box-flex: 0;
    -webkit-flex: none;
        -ms-flex: none;
            flex: none;
    width: 100%;
    height: 100%; }
    @media screen and (min-width: 99.42857em) {
      .fixed-nav-wrapper .menu-content {
        width: 83.33333%; } }
    .fixed-nav-wrapper .menu-content > .row {
      height: 100%; }
  .fixed-nav-wrapper .nav-background {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat; }
    .fixed-nav-wrapper .nav-background:before {
      content: '';
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0;
      background-color: rgba(34, 32, 32, 0.8); }

.menu-toggle [class^="icon-"], .menu-toggle [class*=" icon-"] {
  text-align: center;
  margin-left: 0;
  font-size: 1.71429rem; }
  @media screen and (min-width: 64em) {
    .menu-toggle [class^="icon-"], .menu-toggle [class*=" icon-"] {
      font-size: 2.57143rem; } }

.menu-toggle svg, .menu-toggle [class^="icon-"], .menu-toggle [class*=" icon-"] {
  width: 2.28571rem;
  height: 1.71429rem; }
  @media screen and (min-width: 64em) {
    .menu-toggle svg, .menu-toggle [class^="icon-"], .menu-toggle [class*=" icon-"] {
      width: 3.14286rem;
      height: 2.57143rem; } }

@media screen and (min-width: 64em) {
  #menu-links #primary {
    position: fixed;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: -webkit-calc(50% - 4.57143rem);
    width: calc(50% - 4.57143rem);
    max-width: 49.71429rem; } }

#menu-links #primary > li {
  display: block; }
  #menu-links #primary > li > a {
    display: block;
    padding: 0;
    font-size: 1.71429rem;
    font-family: "Acta Headline W00", "Acta Headline", serif;
    text-transform: uppercase;
    color: #fff;
    line-height: 2.66667;
    letter-spacing: 2px; }
    @media screen and (max-width: 63.9375em) {
      #menu-links #primary > li > a {
        border-bottom: solid 1px rgba(255, 255, 255, 0.24); } }
    @media screen and (min-width: 64em) {
      #menu-links #primary > li > a:hover {
        color: #DCC18E; } }
    @media screen and (min-width: 64em) {
      #menu-links #primary > li > a {
        display: inline-block;
        font-size: 2.85714rem;
        line-height: 2.4;
        letter-spacing: 5.45px; } }
  #menu-links #primary > li.menu-item-has-children > a {
    position: relative; }
    #menu-links #primary > li.menu-item-has-children > a.active {
      color: rgba(255, 255, 255, 0.52); }
      #menu-links #primary > li.menu-item-has-children > a.active:hover {
        color: #DCC18E; }
    @media screen and (max-width: 63.9375em) {
      #menu-links #primary > li.menu-item-has-children > a:after {
        font-family: "icon-font";
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        font-style: normal;
        font-variant: normal;
        font-weight: normal;
        text-decoration: none;
        text-transform: none;
        content: ""; }
      #menu-links #primary > li.menu-item-has-children > a:after {
        position: absolute;
        top: 50%;
        margin-top: -0.92857rem;
        right: 0;
        font-size: 0.71429rem;
        color: #DCC18E;
        text-align: center; }
      #menu-links #primary > li.menu-item-has-children > a.active + .sub-menu {
        border-bottom: solid 1px rgba(255, 255, 255, 0.24); }
      #menu-links #primary > li.menu-item-has-children > a.active:after {
        color: #fff;
        -webkit-transform: scale(-1);
                transform: scale(-1); } }
    @media screen and (min-width: 64em) {
      #menu-links #primary > li.menu-item-has-children > a + .sub-menu {
        display: none !important; } }

#menu-links .large-6:last-child {
  border-left: solid 1px #fff; }

#menu-links .nav-tab {
  height: 0;
  visibility: hidden;
  overflow: hidden; }

#menu-links .sub-menu {
  margin: 0;
  list-style: none;
  overflow: hidden;
  padding-left: 1.25rem;
  height: 0; }
  @media screen and (min-width: 64em) {
    #menu-links .sub-menu {
      padding-left: 0;
      height: auto; } }
  #menu-links .sub-menu li {
    font-size: 1.14286rem;
    line-height: 2.5;
    letter-spacing: 1px; }
    #menu-links .sub-menu li:first-child {
      padding-top: 0.57143rem; }
    #menu-links .sub-menu li:last-child {
      padding-bottom: 0.57143rem; }
    #menu-links .sub-menu li a {
      color: #fff; }
      #menu-links .sub-menu li a:hover, #menu-links .sub-menu li a:focus {
        color: #DCC18E; }
  @media screen and (min-width: 64em) {
    #menu-links .sub-menu {
      width: 83.33333%;
      margin: 0 auto; }
      #menu-links .sub-menu li {
        font-size: 1.71429rem;
        line-height: 3.33333;
        letter-spacing: 2px; } }

#provenance-properties .column, #provenance-properties .columns {
  padding: 1.71429rem 4.57143rem; }
  @media screen and (min-width: 64em) {
    #provenance-properties .column, #provenance-properties .columns {
      padding: 1.71429rem 3.42857rem; } }

#provenance-properties a svg {
  -webkit-transition: inherit;
  transition: inherit;
  fill: #fff;
  margin-bottom: .25rem;
  padding: 1rem; }

#provenance-properties a:hover {
  color: #fff; }
  #provenance-properties a:hover svg {
    fill: #DCC18E; }

#provenance-properties .hotel-location {
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 600; }

.provenance-toggle svg {
  width: 8.57143rem;
  height: 4.57143rem;
  fill: #fff; }

.hide-for-large .provenance-toggle {
  margin: 4.57143rem auto 6.85714rem; }

.secondary-nav li {
  display: inline-block;
  margin: 1.14286rem; }
  .secondary-nav li a {
    display: block;
    color: inherit;
    padding: 0 0 0.42857rem; }
  .secondary-nav li.current-page {
    color: #DCC18E;
    border-bottom: solid 2px #DCC18E; }

@media screen and (min-width: 64em) and (max-height: 800px) {
  .fixed-nav-wrapper .nav-container {
    padding-left: 16.66667vw;
    padding-right: 16.66667vw; }
  #menu-links #primary {
    width: 33.33333%; }
    #menu-links #primary > li > a {
      font-size: 1.71429rem;
      line-height: 2.66667; }
  #menu-links .sub-menu li {
    font-size: 1.14286rem;
    line-height: 3; } }

body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  min-height: 100vh;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }

.small-align-left {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.small-align-right {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.small-align-center {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.small-align-justify {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.small-align-spaced {
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around; }

.small-align-top {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start; }

.small-align-self-top {
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start; }

.small-align-bottom {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end; }

.small-align-self-bottom {
  -webkit-align-self: flex-end;
      -ms-flex-item-align: end;
          align-self: flex-end; }

.small-align-middle {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center; }

.small-align-self-middle {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
              -ms-grid-row-align: center;
          align-self: center; }

.small-align-stretch {
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.small-align-self-stretch {
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
              -ms-grid-row-align: stretch;
          align-self: stretch; }

@media print, screen and (min-width: 40em) {
  .medium-align-left {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .medium-align-right {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .medium-align-center {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .medium-align-justify {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .medium-align-spaced {
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around; }
  .medium-align-top {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .medium-align-self-top {
    -webkit-align-self: flex-start;
        -ms-flex-item-align: start;
            align-self: flex-start; }
  .medium-align-bottom {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end; }
  .medium-align-self-bottom {
    -webkit-align-self: flex-end;
        -ms-flex-item-align: end;
            align-self: flex-end; }
  .medium-align-middle {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .medium-align-self-middle {
    -webkit-align-self: center;
        -ms-flex-item-align: center;
                -ms-grid-row-align: center;
            align-self: center; }
  .medium-align-stretch {
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch; }
  .medium-align-self-stretch {
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
                -ms-grid-row-align: stretch;
            align-self: stretch; } }

@media print, screen and (min-width: 64em) {
  .large-align-left {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .large-align-right {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .large-align-center {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .large-align-justify {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .large-align-spaced {
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around; }
  .large-align-top {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .large-align-self-top {
    -webkit-align-self: flex-start;
        -ms-flex-item-align: start;
            align-self: flex-start; }
  .large-align-bottom {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end; }
  .large-align-self-bottom {
    -webkit-align-self: flex-end;
        -ms-flex-item-align: end;
            align-self: flex-end; }
  .large-align-middle {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .large-align-self-middle {
    -webkit-align-self: center;
        -ms-flex-item-align: center;
                -ms-grid-row-align: center;
            align-self: center; }
  .large-align-stretch {
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch; }
  .large-align-self-stretch {
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
                -ms-grid-row-align: stretch;
            align-self: stretch; } }

@media screen and (min-width: 99.42857em) {
  .xlarge-align-left {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .xlarge-align-right {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .xlarge-align-center {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .xlarge-align-justify {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .xlarge-align-spaced {
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around; }
  .xlarge-align-top {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .xlarge-align-self-top {
    -webkit-align-self: flex-start;
        -ms-flex-item-align: start;
            align-self: flex-start; }
  .xlarge-align-bottom {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end; }
  .xlarge-align-self-bottom {
    -webkit-align-self: flex-end;
        -ms-flex-item-align: end;
            align-self: flex-end; }
  .xlarge-align-middle {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .xlarge-align-self-middle {
    -webkit-align-self: center;
        -ms-flex-item-align: center;
                -ms-grid-row-align: center;
            align-self: center; }
  .xlarge-align-stretch {
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch; }
  .xlarge-align-self-stretch {
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
                -ms-grid-row-align: stretch;
            align-self: stretch; } }

@media screen and (min-width: 100em) {
  .xxlarge-align-left {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; }
  .xxlarge-align-right {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .xxlarge-align-center {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .xxlarge-align-justify {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .xxlarge-align-spaced {
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around; }
  .xxlarge-align-top {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .xxlarge-align-self-top {
    -webkit-align-self: flex-start;
        -ms-flex-item-align: start;
            align-self: flex-start; }
  .xxlarge-align-bottom {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end; }
  .xxlarge-align-self-bottom {
    -webkit-align-self: flex-end;
        -ms-flex-item-align: end;
            align-self: flex-end; }
  .xxlarge-align-middle {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
  .xxlarge-align-self-middle {
    -webkit-align-self: center;
        -ms-flex-item-align: center;
                -ms-grid-row-align: center;
            align-self: center; }
  .xxlarge-align-stretch {
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch; }
  .xxlarge-align-self-stretch {
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
                -ms-grid-row-align: stretch;
            align-self: stretch; } }

#main-container {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto; }

.section-container {
  position: relative; }
  .section-container.w-background .section-background {
    position: absolute; }
  @media screen and (min-width: 64em) {
    .section-container.full-height {
      min-height: 100vh; } }
  .section-container:first-child:not(.full-height) {
    margin-top: 10rem; }
    @media screen and (min-width: 64em) {
      .section-container:first-child:not(.full-height) {
        margin-top: 17.14286rem; }
        .section-container:first-child:not(.full-height).secondary-navigation-section {
          margin-top: 11.42857rem; } }
  .section-container:first-child:last-child {
    min-height: 100vh;
    padding: 6.85714rem 0; }
    @media screen and (min-width: 64em) {
      .section-container:first-child:last-child {
        min-height: 100vh;
        padding: 9.14286rem 0; } }
  .section-container + .section-container {
    padding-top: 2.28571rem; }
    @media screen and (min-width: 64em) {
      .section-container + .section-container {
        padding-top: 2.28571rem; } }
  .section-container:last-child {
    padding-bottom: 3.42857rem; }
  .section-container.no-padding, .section-container.no-padding:first-child:last-child {
    padding: 0; }
  .section-container .section-background {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    z-index: -1; }
    .section-container .section-background:before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0;
      background-color: rgba(34, 32, 32, 0.8); }
  .section-container > .row {
    padding-left: 16px;
    padding-right: 16px; }
    @media screen and (min-width: 40em) {
      .section-container > .row {
        padding-left: 12px;
        padding-right: 12px; } }
  .section-container.full-width > .row {
    padding-left: 0;
    padding-right: 0; }
  .secondary-navigation-section + .section-container {
    padding-top: 2.57143rem; }
  .section-container .scroll-indicator {
    position: absolute;
    bottom: 28px;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
    .section-container .scroll-indicator:before {
      content: ""; }
    @media screen and (min-width: 64em) {
      .section-container .scroll-indicator {
        bottom: 76px; } }

.site-map-container {
  position: relative;
  margin-top: 10rem;
  padding: 0;
  min-height: 100vh; }

.page-full-background {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }
  .page-full-background:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-color: rgba(34, 32, 32, 0.8); }

.section-container:last-child,
.section-container + .section-container,
.full-width-grid {
  padding: 1rem 0; }
  .section-container:last-child > .row,
  .section-container + .section-container > .row,
  .full-width-grid > .row {
    max-width: 100%; }

@media print, screen and (min-width: 40em) {
  .faq-section {
    padding: 7.85714rem 0 7.85714rem !important; } }

@media screen and (min-width: 64em) {
  .faq-section {
    padding: 14.28571rem 0 8.57143rem !important; } }

#site-footer {
  margin-top: 0;
  position: relative;
  background-color: #1A1818;
  font-size: 0.92857rem; }
  #site-footer p {
    margin-bottom: 0;
    font-size: 1rem;
    letter-spacing: 0.46px;
    line-height: 1.76923; }
    #site-footer p + p {
      margin-top: 1.14286rem; }
  @media screen and (max-width: 63.9375em) {
    #site-footer > .row {
      border-bottom: solid 1px #38373A; } }
  #site-footer > .row .row {
    margin-left: 0;
    margin-right: 0; }
  #site-footer > .row:last-child {
    border-bottom: 0; }
  @media screen and (min-width: 64em) {
    #site-footer > .row {
      padding-left: 4.57143rem;
      padding-right: 4.57143rem; } }
  #site-footer .social {
    margin: 2rem 1.71429rem;
    text-align: center; }
    #site-footer .social li {
      margin-right: 1.71429rem; }
    @media screen and (max-width: 63.9375em) {
      #site-footer .social li:last-child {
        margin-right: 0; } }
    @media screen and (min-width: 64em) {
      #site-footer .social {
        text-align: left; } }
    #site-footer .social li a {
      font-size: 1.57143rem; }
      @media screen and (min-width: 64em) {
        #site-footer .social li a {
          font-size: 1.35714rem; } }
    @media screen and (min-width: 40em) {
      #site-footer .social {
        margin: 2.28571rem auto; } }
    @media screen and (min-width: 64em) {
      #site-footer .social {
        margin-bottom: 0; } }
  #site-footer .hotel-info {
    padding: 2.85714rem 1.14286rem 1.71429rem; }
  @media screen and (min-width: 64em) {
    #site-footer .hotel-info, #site-footer .misc-links, #site-footer .subscribe-social {
      padding: 4.57143rem 12px; } }
  @media screen and (max-width: 63.9375em) {
    #site-footer .hotel-info {
      border-top: solid 1px #38373A; }
    #site-footer .misc-links > .row > .column, #site-footer .misc-links > .row > .columns {
      border-top: solid 1px #38373A; } }
  #site-footer .copyright, #site-footer .footer-column-heading {
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 1.14286rem; }
  #site-footer .footer-logo svg {
    width: 3.28571rem;
    height: 4.27143rem;
    fill: #fff; }

#utility {
  margin-top: 0;
  margin-bottom: 54px;
  margin-left: 0;
  margin-right: 0;
  list-style: none;
  font-weight: 600;
  text-align: center; }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    #utility {
      margin: 2.85714rem 0 6.71429rem; } }
  @media screen and (min-width: 64em) {
    #utility {
      text-align: left;
      -webkit-column-count: 2;
              column-count: 2;
      -webkit-column-gap: 16px;
              column-gap: 16px; }
      #utility li {
        -webkit-column-break-inside: avoid;
                break-inside: avoid;
        margin-bottom: 0.5rem; } }
  #utility li {
    display: inline-block;
    margin: 0 1.21429rem; }
    @media screen and (min-width: 64em) {
      #utility li {
        display: block;
        margin: 0 0 0.71429rem; } }
    #utility li:last-child {
      margin-right: 0; }
    @media screen and (max-width: 39.9375em) {
      #utility li {
        display: block;
        margin: 0; }
        #utility li + li {
          border-top: solid 1px #38373A; } }
  #utility a {
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 2px; }
    @media screen and (max-width: 63.9375em) {
      #utility a {
        color: #fff; }
        #utility a:hover, #utility a:focus {
          color: #DCC18E; } }
    @media screen and (max-width: 39.9375em) {
      #utility a {
        display: block;
        padding: 0.85714rem 1.71429rem; } }

/* Components
============================ */
#preloader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  min-height: 100vh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: #222020;
  z-index: 9999; }
  #preloader .preloader-wrapper {
    -webkit-box-flex: 0;
    -webkit-flex: none;
        -ms-flex: none;
            flex: none;
    max-width: 25%;
    text-align: center; }
    #preloader .preloader-wrapper svg {
      width: 50%;
      max-width: 6.85714rem;
      max-height: 6.85714rem;
      fill: #fff; }
    #preloader .preloader-wrapper #page-progress {
      margin-top: 2.57143rem;
      display: block;
      font-size: 1.71429rem;
      line-height: 1.33333;
      letter-spacing: 0.5px;
      color: #fff; }

.booking-widget .fields-wrapper {
  overflow: hidden; }

.booking-widget .booking-fields {
  font-size: 0;
  text-align: right;
  white-space: nowrap; }
  .booking-widget .booking-fields input, .booking-widget .booking-fields select {
    display: inline-block;
    width: 10.85714rem;
    font-size: 0.92857rem;
    font-weight: normal;
    height: 3.14286rem;
    border: 0;
    border-radius: 0;
    border-bottom: solid 2px #fff;
    pointer-events: auto;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 0;
    padding-right: 2.14286rem;
    margin: 0 12px; }
    .booking-widget .booking-fields input:first-child, .booking-widget .booking-fields select:first-child {
      margin-left: 0; }
    .booking-widget .booking-fields input:last-child, .booking-widget .booking-fields select:last-child {
      margin-right: 0; }
  .booking-widget .booking-fields input.datepicker {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20id%3D%22calendar%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23DCC18E%3B%22%20height%3D%22100%25%22%20width%3D%22100%25%22%3E%3Ctitle%3Ecalendar%3C%2Ftitle%3E%3Cpath%20d%3D%22M14%2C0H2A2%2C2%2C0%2C0%2C0%2C0%2C2V14a2%2C2%2C0%2C0%2C0%2C2%2C2H14a2%2C2%2C0%2C0%2C0%2C2-2V2A2%2C2%2C0%2C0%2C0%2C14%2C0Zm0%2C2V6H2V2Zm0%2C5v3H11V7ZM5%2C10H2V7H5Zm5%2C1v3H6V11ZM6%2C10V7h4v3ZM2%2C11H5v3H2Zm9%2C3V11h3v3Z%22%2F%3E%3C%2Fsvg%3E");
    background-size: 16px 16px;
    background-repeat: no-repeat;
    background-position: right; }
  .booking-widget .booking-fields select {
    padding-right: 0;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20id%3D%22chevron-down%22%20viewBox%3D%220%200%2019.48%2012.16%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20style%3D%22fill%3A%23DCC18E%3B%22%20height%3D%22100%25%22%20width%3D%22100%25%22%3E%3Ctitle%3Echevron-down%3C%2Ftitle%3E%3Cpolygon%20points%3D%229.74%2012.16%200%201.34%201.48%200%209.74%209.17%2018%200%2019.48%201.34%209.74%2012.16%22%2F%3E%3C%2Fsvg%3E");
    background-size: 12px 8px;
    background-repeat: no-repeat;
    background-position: right; }

.mobile-book-now-btn {
  position: fixed;
  bottom: -65px;
  padding: 1.15rem;
  width: 100%;
  background: #DCC18E;
  color: #fff;
  font-weight: bold;
  letter-spacing: 2px;
  text-align: center;
  text-transform: uppercase;
  z-index: 20000;
  -webkit-transition: bottom .25s ease-in-out;
  transition: bottom .25s ease-in-out; }

.opentable {
  border: solid 1px #DCC18E;
  border-radius: 2px;
  margin-bottom: 1.14286rem; }
  .opentable input {
    border: 0;
    padding: 1.14286rem 1.42857rem;
    padding-right: 3.14286rem;
    height: 3.42857rem;
    font-size: 0.85714rem;
    letter-spacing: 1.75px;
    font-weight: 600;
    background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg%20id%3D%22chevron-down%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2019.48%2012.16%22%3E%3Ctitle%3Echevron-down%3C%2Ftitle%3E%3Cpolygon%20points%3D%229.74%2012.16%200%201.34%201.48%200%209.74%209.17%2018%200%2019.48%201.34%209.74%2012.16%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E');
    background-repeat: no-repeat;
    background-size: 16px auto;
    background-position: -webkit-calc(100% - 13px) center;
    background-position: calc(100% - 13px) center; }
    .opentable input:focus {
      border: 0; }
  .opentable input, .opentable .selectric {
    border: 0;
    margin: 0; }
  .opentable input + input, .opentable input + .selectric-wrapper, .opentable .selectric-wrapper + input, .opentable .selectric-wrapper + .selectric-wrapper {
    border-top: solid 1px rgba(220, 193, 142, 0.5); }
  .opentable button {
    border-radius: 0;
    color: #222020; }

.carousel-container {
  position: relative;
  width: 100%; }

.slick-slider, .slick-list {
  width: 100%; }

.slick-dotted.slick-slider {
  margin-bottom: 0; }

.slick-next,
.slick-prev {
  width: auto;
  height: auto; }
  .slick-next:before,
  .slick-prev:before {
    font-size: 0.85714rem; }

.slick-dots {
  position: absolute;
  bottom: 2.28571rem;
  right: 50%;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
  width: 100%; }
  @media screen and (min-width: 64em) {
    .slick-dots {
      bottom: 50%;
      right: 5rem;
      -webkit-transform: translateY(50%);
              transform: translateY(50%);
      width: auto; } }
  .slick-dots li {
    display: inline-block;
    width: auto;
    height: auto;
    margin: 0 0.85714rem; }
    @media screen and (min-width: 64em) {
      .slick-dots li {
        display: block;
        margin: 1.28571rem; } }
    .slick-dots li button {
      display: block;
      width: 10px;
      height: 10px;
      padding: 0;
      border: solid 2px #fff; }
      @media screen and (min-width: 64em) {
        .slick-dots li button {
          width: 12px;
          height: 12px; } }
      .slick-dots li button, .slick-dots li button:before {
        border-radius: 50%;
        -webkit-transition: all 400ms ease;
        transition: all 400ms ease; }
      .slick-dots li button:before {
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        right: 0;
        bottom: 0;
        -webkit-transform: scale(0);
                transform: scale(0);
        background-color: #DCC18E; }
    .slick-dots li.slick-active button {
      border-color: #DCC18E; }
      .slick-dots li.slick-active button:before {
        -webkit-transform: scale(1.5);
                transform: scale(1.5); }
        @media screen and (min-width: 64em) {
          .slick-dots li.slick-active button:before {
            -webkit-transform: scale(1.25);
                    transform: scale(1.25); } }

.slick-slide {
  position: relative;
  z-index: 1; }
  .slick-slide:focus {
    outline: none; }
  .slick-slide.slick-current, .slick-slide.slick-active {
    z-index: 5; }

[type='text'],
[type='password'],
[type='date'],
[type='datetime'],
[type='datetime-local'],
[type='month'],
[type='week'],
[type='email'],
[type='number'],
[type='search'],
[type='tel'],
[type='time'],
[type='url'],
[type='color'],
textarea {
  height: 48px;
  padding: 1.14286rem 1.42857rem;
  text-transform: uppercase;
  letter-spacing: 1.75px; }
  [type='text']::-webkit-input-placeholder,
  [type='password']::-webkit-input-placeholder,
  [type='date']::-webkit-input-placeholder,
  [type='datetime']::-webkit-input-placeholder,
  [type='datetime-local']::-webkit-input-placeholder,
  [type='month']::-webkit-input-placeholder,
  [type='week']::-webkit-input-placeholder,
  [type='email']::-webkit-input-placeholder,
  [type='number']::-webkit-input-placeholder,
  [type='search']::-webkit-input-placeholder,
  [type='tel']::-webkit-input-placeholder,
  [type='time']::-webkit-input-placeholder,
  [type='url']::-webkit-input-placeholder,
  [type='color']::-webkit-input-placeholder,
  textarea::-webkit-input-placeholder {
    opacity: 1; }
  [type='text']:-ms-input-placeholder,
  [type='password']:-ms-input-placeholder,
  [type='date']:-ms-input-placeholder,
  [type='datetime']:-ms-input-placeholder,
  [type='datetime-local']:-ms-input-placeholder,
  [type='month']:-ms-input-placeholder,
  [type='week']:-ms-input-placeholder,
  [type='email']:-ms-input-placeholder,
  [type='number']:-ms-input-placeholder,
  [type='search']:-ms-input-placeholder,
  [type='tel']:-ms-input-placeholder,
  [type='time']:-ms-input-placeholder,
  [type='url']:-ms-input-placeholder,
  [type='color']:-ms-input-placeholder,
  textarea:-ms-input-placeholder {
    opacity: 1; }
  [type='text']::placeholder,
  [type='password']::placeholder,
  [type='date']::placeholder,
  [type='datetime']::placeholder,
  [type='datetime-local']::placeholder,
  [type='month']::placeholder,
  [type='week']::placeholder,
  [type='email']::placeholder,
  [type='number']::placeholder,
  [type='search']::placeholder,
  [type='tel']::placeholder,
  [type='time']::placeholder,
  [type='url']::placeholder,
  [type='color']::placeholder,
  textarea::placeholder {
    opacity: 1; }

@media screen and (max-width: 63.9375em) {
  select {
    font-size: 1.14286rem; } }

textarea {
  height: auto;
  text-transform: none; }
  textarea::-webkit-input-placeholder {
    text-transform: uppercase; }
  textarea:-ms-input-placeholder {
    text-transform: uppercase; }
  textarea::placeholder {
    text-transform: uppercase; }

input.datepicker {
  cursor: default;
  background-color: transparent; }

.ui-datepicker {
  margin-top: 1.71429rem;
  padding: 0.57143rem;
  border: solid 1px #DCC18E;
  border-radius: 2px;
  background-color: #222020; }
  .template-meetings-events .ui-datepicker {
    margin-top: 0; }
  .ui-datepicker .ui-datepicker-header {
    font-size: 0.92857rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.75px; }
  .ui-datepicker table.ui-datepicker-calendar {
    margin: 0; }
    .ui-datepicker table.ui-datepicker-calendar thead, .ui-datepicker table.ui-datepicker-calendar tbody, .ui-datepicker table.ui-datepicker-calendar tfoot {
      background-color: transparent;
      border: 0; }
    .ui-datepicker table.ui-datepicker-calendar th, .ui-datepicker table.ui-datepicker-calendar td {
      font-weight: 600; }
    .ui-datepicker table.ui-datepicker-calendar td {
      padding: 0.28571rem; }
    .ui-datepicker table.ui-datepicker-calendar tbody tr {
      background-color: transparent; }
  .ui-datepicker .ui-datepicker-prev:before {
    font-family: "icon-font";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    text-decoration: none;
    text-transform: none;
    content: ""; }
  .ui-datepicker .ui-datepicker-prev-hover {
    left: 2px; }
  .ui-datepicker .ui-datepicker-next:before {
    font-family: "icon-font";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    text-decoration: none;
    text-transform: none;
    content: ""; }
  .ui-datepicker .ui-datepicker-next-hover {
    right: 2px; }
  .ui-datepicker .ui-datepicker-prev:before, .ui-datepicker .ui-datepicker-next:before {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover {
    top: 2px; }

input[type="radio"] {
  display: none; }
  input[type="radio"] + label {
    position: relative;
    color: #fff;
    padding-left: 2.28571rem;
    vertical-align: middle;
    line-height: 2.07692;
    margin: 0; }
    input[type="radio"] + label:before {
      content: '';
      position: absolute;
      top: 50%;
      left: 0;
      display: inline-block;
      width: 1.28571rem;
      height: 1.28571rem;
      margin-top: -9px;
      margin-right: 0.85714rem;
      border: solid 2px #fff;
      border-radius: 50%;
      vertical-align: middle; }
    input[type="radio"] + label:after {
      content: '';
      position: absolute;
      top: 50%;
      left: 9px;
      margin-top: -4px;
      margin-left: -4px;
      width: 0.57143rem;
      height: 0.57143rem;
      background-color: #fff;
      border-radius: 50%;
      -webkit-transform: scale(0);
              transform: scale(0);
      -webkit-transition: all 400ms ease;
      transition: all 400ms ease; }
  input[type="radio"].nf-checked + label:after {
    -webkit-transform: scale(1);
            transform: scale(1); }

.form-element .heading-row {
  margin-top: 2.28571rem; }
  @media screen and (min-width: 64em) {
    .form-element .heading-row {
      margin-top: 2.85714rem; } }
  .form-element .heading-row h1, .form-element .heading-row h2, .form-element .heading-row h3, .form-element .heading-row h4, .form-element .heading-row h5, .form-element .heading-row h6 {
    margin-bottom: 1rem; }

.form-element .submit-row {
  margin-top: 0; }
  @media screen and (min-width: 64em) {
    .form-element .submit-row {
      margin-top: 2.42857rem; } }

.form-element p, .form-element label {
  font-size: 1.14286rem;
  letter-spacing: 0.7px;
  line-height: 1.75;
  color: #fff; }
  .form-element p:last-child, .form-element label:last-child {
    margin-bottom: 0; }

.form-element .subtitle, .form-element .secondary-nav li, .secondary-nav .form-element li, .form-element input[type="radio"] + label {
  line-height: 2.07692; }

.form-element .selectric {
  margin-bottom: 0; }

.form-element input, .form-element textarea {
  margin-bottom: 0; }

.form-element .row .column, .form-element .row .columns {
  margin-top: 0.85714rem; }
  .form-element .row .column:first-child, .form-element .row .columns:first-child {
    margin-top: 0; }
  .form-element .row .column:last-child, .form-element .row .columns:last-child {
    margin-bottom: 0.85714rem; }

@media screen and (min-width: 64em) {
  .section-container.form-section {
    padding-top: 8.57143rem;
    padding-bottom: 8.57143rem; }
    .section-container.form-section:last-child {
      padding-bottom: 8.57143rem; } }

.section-container.form-section:first-child:last-child {
  padding-bottom: 3rem; }
  @media screen and (min-width: 64em) {
    .section-container.form-section:first-child:last-child {
      padding-top: 12rem;
      padding-bottom: 9rem; } }

.nf-form-cont .nf-row {
  margin-left: -0.57143rem;
  margin-right: -0.57143rem; }

.nf-form-cont .nf-multi-cell .nf-cell {
  padding: 0 0.57143rem; }

.nf-form-cont .nf-field-container, .nf-form-cont #ninja_forms_required_items, .nf-form-cont .nf-form-fields-required {
  margin-bottom: 1.14286rem; }

.nf-form-cont .nf-field h3 {
  margin-top: 1.71429rem;
  margin-bottom: 0.57143rem; }

.list-radio-wrap .nf-field-label {
  width: auto !important; }
  .list-radio-wrap .nf-field-label label {
    font-weight: 600;
    text-transform: uppercase; }

.list-radio-wrap .nf-field-element ul::before, .list-radio-wrap .nf-field-element ul::after {
  display: table;
  content: ' ';
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1; }

.list-radio-wrap .nf-field-element ul::after {
  clear: both; }

.list-radio-wrap .nf-field-element ul li {
  display: inline-block;
  margin-right: 1.71429rem !important; }

.nf-field-element select {
  padding: 1rem 2.35714rem 1rem 1.42857rem;
  letter-spacing: 1.75px;
  font-weight: 600;
  font-size: 0.92857rem;
  text-transform: uppercase; }
  @media screen and (max-width: 63.9375em) {
    .nf-field-element select {
      font-size: 1.14286rem; } }

.nf-field-element input[type="number"] {
  height: 48px;
  padding: 12px 20px; }

select option {
  background-color: #fff;
  color: #1A1818; }

.map-container {
  width: 100%;
  height: 100%; }

.infoBox {
  overflow: visible !important; }

.ib-content {
  position: relative;
  margin-bottom: 14px;
  font-family: "Avenir Next W01", "Avenir Next", Avenir, Futura, "Century Gothic", sans-serif;
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2); }
  .ib-content .ib-image {
    border-top-left-radius: 2px;
    border-top-right-radius: 2px; }
    .ib-content .ib-image img {
      width: 100%; }
    .ib-content .ib-image figcaption {
      background-color: #fff;
      color: #1A1818;
      padding: 2rem;
      font-weight: 600;
      text-transform: uppercase;
      font-size: 0.92857rem;
      letter-spacing: 1.75px;
      border-bottom-left-radius: 2px;
      border-bottom-right-radius: 2px; }
      .ib-content .ib-image figcaption:after {
        position: absolute;
        top: 100%;
        left: 50%;
        margin-left: -8px;
        content: '';
        width: 0;
        height: 0;
        border-left: 8px solid transparent;
        border-right: 8px solid transparent;
        border-top: 14px solid #fff; }
  .ib-content .ib-box {
    border-top-left-radius: 2px;
    border-top-right-radius: 2px;
    background-color: #fff;
    color: #1A1818;
    padding: 2rem;
    letter-spacing: 0.5px; }
    .ib-content .ib-box h5 {
      margin-bottom: 1rem; }
    .ib-content .ib-box svg {
      width: 9.57143rem;
      height: 2rem;
      margin-bottom: 1.14286rem; }
    .ib-content .ib-box p:last-child {
      margin-bottom: 0; }
  .ib-content .ib-cta {
    display: block;
    background-color: #DCC18E;
    color: white;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 0.92857rem;
    letter-spacing: 1.75px;
    padding: 1.14286rem;
    border-bottom-left-radius: 2px;
    border-bottom-right-radius: 2px; }
    .ib-content .ib-cta:after {
      position: absolute;
      top: 100%;
      left: 50%;
      margin-left: -8px;
      content: '';
      width: 0;
      height: 0;
      border-left: 8px solid transparent;
      border-right: 8px solid transparent;
      border-top: 14px solid #DCC18E; }

.modaal-wrapper .modaal-close {
  position: absolute;
  top: 0;
  right: 0; }
  .modaal-wrapper .modaal-close:before, .modaal-wrapper .modaal-close:after {
    display: none; }
  .modaal-wrapper .modaal-close:hover {
    background-color: transparent; }
  .modaal-wrapper .modaal-close span {
    display: inline-block;
    color: #1A1818;
    width: auto !important;
    height: auto !important;
    clip: auto;
    font-size: 0;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
    .modaal-wrapper .modaal-close span:before {
      font-family: "icon-font";
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      font-style: normal;
      font-variant: normal;
      font-weight: normal;
      text-decoration: none;
      text-transform: none;
      content: ""; }
    .modaal-wrapper .modaal-close span:before {
      font-size: 1.25rem; }

.modaal-container {
  border-radius: 2px; }

/* ---------------------------------------- */
/* theme: "provenance" */
.mCS-provenance .mCSB_container {
  margin-right: 12px; }

.mCS-provenance.mCSB_scrollTools {
  width: 12px; }

.mCS-provenance.mCSB_scrollTools .mCSB_draggerRail {
  width: 100%;
  background-color: #1A1818;
  border-radius: 0; }

.mCS-provenance.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  background-color: #1A1818;
  border-radius: 0; }

.mCS-provenance.mCSB_scrollTools_horizontal .mCSB_draggerRail,
.mCS-provenance.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar {
  width: 100%;
  height: 8px;
  margin: 6px auto; }

/* theme: "provenance" */
.mCS-provenance.mCSB_scrollTools .mCSB_draggerRail {
  background-color: #000;
  background-color: rgba(0, 0, 0, 0.1);
  border-radius: 0; }

.mCS-provenance.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: #DCC18E;
  border-radius: 0; }

.mCS-provenance.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: #DCC18E; }

.mCS-provenance.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCS-provenance.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: #DCC18E; }

.mCS-provenance.mCSB_scrollTools .mCSB_buttonUp {
  background-image: none; }

.mCS-provenance.mCSB_scrollTools .mCSB_buttonDown {
  background-image: none; }

.mCS-provenance.mCSB_scrollTools .mCSB_buttonLeft {
  background-image: none; }

.mCS-provenance.mCSB_scrollTools .mCSB_buttonRight {
  background-image: none; }

/* ---------------------------------------- */
.selectric-element {
  margin: 0; }

.selectric {
  background: transparent;
  border: solid 1px #DCC18E;
  border-radius: 2px;
  margin-bottom: 1.14286rem; }
  .selectric-hover .selectric {
    border-color: #DCC18E; }
  .selectric-white .selectric {
    border-color: #fff; }
  .selectric .label {
    font-size: 0.85714rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.75px;
    color: #fff;
    height: 3.42857rem;
    line-height: 3.42857rem;
    padding: 0;
    margin-left: 1.42857rem;
    margin-right: 4.57143rem;
    background: transparent; }
  .selectric .button {
    height: 1.71429rem;
    margin: 0;
    padding: 0;
    border: 0;
    border-left: solid 1px #DCC18E;
    border-radius: 0;
    background-color: transparent;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 3.14286rem;
    height: 1.71429rem;
    text-align: center; }
    .selectric .button:after {
      font-family: "icon-font";
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      font-style: normal;
      font-variant: normal;
      font-weight: normal;
      text-decoration: none;
      text-transform: none;
      content: ""; }
    .selectric .button:after {
      width: auto;
      height: auto;
      line-height: 1.71429rem;
      vertical-align: middle;
      display: inline-block;
      position: relative;
      border: 0;
      color: #fff;
      font-size: 0.71429rem; }
  .selectric-gallery-select .selectric {
    border: 0;
    border-radius: 0;
    background-color: #fff;
    margin-bottom: 0; }
    .selectric-gallery-select .selectric .label {
      color: #1A1818;
      height: 4.57143rem;
      line-height: 4.57143rem;
      margin-left: 1.71429rem;
      margin-right: 4.57143rem; }
    .selectric-gallery-select .selectric .button {
      width: 4.14286rem;
      height: 4.57143rem;
      border-left-color: #E6E6E6; }
      .selectric-gallery-select .selectric .button:after {
        color: #DCC18E;
        line-height: 4.57143rem; }

.selectric-items {
  background-color: #222020;
  border: solid 1px #DCC18E; }
  .selectric-items li {
    font-size: 0.85714rem;
    font-weight: 600;
    letter-spacing: 1.75px;
    text-transform: uppercase;
    padding: 0.57143rem 1.42857rem;
    color: #DCC18E; }
    .selectric-items li.disabled {
      color: #fff !important; }
    .selectric-items li:hover {
      color: #fff;
      background-color: #DCC18E; }

.social {
  list-style-type: none;
  line-height: 1;
  margin-left: 0; }
  .social li {
    display: inline-block; }
    main .social li {
      margin-right: 1rem; }
    .social li a {
      display: inline-block;
      font-size: 1.28571rem; }
      .social li a:before {
        font-size: inherit;
        margin-right: 0; }
      .social li a span {
        display: none; }

.subscribe {
  position: relative;
  padding: 0 1.71429rem; }
  @media screen and (min-width: 64em) {
    .subscribe {
      padding: 0; } }
  .subscribe .input-group {
    margin-bottom: 0; }
  .subscribe input[type="email"] {
    background-color: transparent;
    font-size: 0.92857rem;
    color: #fff;
    border: 0;
    text-transform: uppercase;
    letter-spacing: 2.25px;
    padding: 2.71429rem 2rem 2.71429rem 0;
    margin: 0;
    height: auto; }
    @media screen and (min-width: 64em) {
      .subscribe input[type="email"] {
        padding: 0 2rem 0 0; } }
    .subscribe input[type="email"]::-webkit-input-placeholder {
      box-sizing: border-box;
      color: #DCC18E; }
    .subscribe input[type="email"]:-ms-input-placeholder {
      box-sizing: border-box;
      color: #DCC18E; }
    .subscribe input[type="email"]::placeholder {
      box-sizing: border-box;
      color: #DCC18E; }
    @media screen and (max-width: 63.9375em) {
      .subscribe input[type="email"] {
        font-weight: 600; } }
    @media screen and (min-width: 64em) {
      .subscribe input[type="email"] {
        font-family: "Acta Headline W00", "Acta Headline", serif;
        font-size: 1.28571rem;
        letter-spacing: 2.25px;
        line-height: 2.22222; }
        .subscribe input[type="email"]::-webkit-input-placeholder {
          color: #4E4D50; }
        .subscribe input[type="email"]:-ms-input-placeholder {
          color: #4E4D50; }
        .subscribe input[type="email"]::placeholder {
          color: #4E4D50; } }
    .subscribe input[type="email"]:valid {
      color: #DCC18E; }
      .subscribe input[type="email"]:valid + .input-group-button button[type="submit"] {
        color: #DCC18E; }
        .subscribe input[type="email"]:valid + .input-group-button button[type="submit"] svg {
          fill: #DCC18E; }
  .subscribe button[type="submit"] {
    color: #4E4D50;
    text-align: right;
    white-space: nowrap;
    cursor: pointer;
    padding: 2.71429rem 0;
    height: auto; }
    @media screen and (min-width: 64em) {
      .subscribe button[type="submit"] {
        padding: 0; } }
    .subscribe button[type="submit"] span {
      display: inline-block;
      font-size: 0.92857rem;
      letter-spacing: 2.25px;
      white-space: nowrap;
      margin-right: 1.14286rem;
      text-transform: uppercase;
      vertical-align: middle; }
    .subscribe button[type="submit"] svg {
      display: inline-block;
      width: 2.28571rem;
      height: 1.71429rem;
      fill: #4E4D50;
      vertical-align: middle; }
    @media screen and (max-width: 63.9375em) {
      .subscribe button[type="submit"] span {
        display: none; } }
    @media screen and (min-width: 64em) {
      .subscribe button[type="submit"] svg {
        width: 3.28571rem;
        height: 2.28571rem; } }

@media screen and (max-width: 63.9375em) {
  .wufoo-subscribe-container {
    padding: 1.71429rem 1.14286rem 0.28571rem; } }

.table-element {
  border-collapse: collapse; }
  .table-element thead tr:first-child th {
    font-size: 0.85714rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.25px;
    line-height: 1.33333;
    padding: 0 0.85714rem 0.42857rem; }
    .table-element thead tr:first-child th:first-child {
      padding-left: 0; }
    @media screen and (min-width: 64em) {
      .table-element thead tr:first-child th {
        padding: 0 0.85714rem 2.28571rem; }
        .table-element thead tr:first-child th:first-child {
          padding-left: 1.71429rem; }
        .table-element thead tr:first-child th:last-child {
          padding-right: 0; } }
  .table-element tbody tr td:first-child {
    padding-left: 0; }
  @media screen and (min-width: 64em) {
    .table-element tbody tr td {
      padding: 0.85714rem; }
      .table-element tbody tr td:first-child {
        padding-left: 1.71429rem; }
      .table-element tbody tr td:last-child {
        padding-right: 0; } }
  @media screen and (min-width: 64em) {
    .table-element tbody tr:hover {
      border: solid 1px #DCC18E; }
      .table-element tbody tr:hover td {
        border-top: solid 1px #DCC18E; } }
  .table-element th, .table-element td {
    vertical-align: top; }
  .table-element td {
    font-size: 1rem; }
    @media screen and (max-width: 63.9375em) {
      .table-element td {
        padding: 0.42857rem 0.71429rem; } }
    @media screen and (min-width: 64em) {
      .table-element td {
        font-size: 1.28571rem;
        letter-spacing: 0.5px; } }

.tablesaw-advance {
  display: none; }

/* Layout Styles
============================ */
/* inject:modules */
.card-slider .slick-slide {
  padding: 0 6px; }

.card-tile {
  border-radius: 2px;
  overflow: hidden; }
  .card-tile .card-image {
    position: relative; }
    .card-tile .card-image .image-container {
      width: 100%;
      height: 0;
      padding-top: 92.96636%; }
    .card-tile .card-image img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      font-family: "object-fit:cover;object-position:center center";
      object-fit: cover;
      object-position: center center; }
  .card-tile .card-content h5 {
    font-weight: normal;
    text-transform: none; }
  .card-tile .mobile-card-link {
    display: none;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 5; }
    @media screen and (max-width: 39.9375em) {
      .card-tile .mobile-card-link {
        display: block; } }
  @media screen and (max-width: 39.9375em) {
    .card-tile {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 auto;
          -ms-flex: 1 1 auto;
              flex: 1 1 auto;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
          -ms-flex-direction: column;
              flex-direction: column; }
      .card-tile .card-content {
        display: block;
        letter-spacing: 1px;
        color: #9d8047;
        font-size: 1.14286rem;
        padding: 2.28571rem;
        background-color: #EBE9E8;
        text-align: center;
        -webkit-box-flex: 1;
        -webkit-flex: 1 1 auto;
            -ms-flex: 1 1 auto;
                flex: 1 1 auto; }
        .card-tile .card-content h5 {
          font-size: inherit;
          color: inherit;
          margin-bottom: 0; }
        .card-tile .card-content p {
          display: none; }
          .special-offers-carousel .card-tile .card-content p {
            display: block; } }

@media screen and (min-width: 64em) {
  .home .section-container.center-text-section h1 {
    font-family: "Acta Headline W00", "Acta Headline", serif;
    font-size: 3.71429rem;
    line-height: 1.23077;
    text-transform: uppercase;
    letter-spacing: 4px; } }

.ie11-15 .image-grid .align-stretch .grid-tile .image-container .image-cover.object-fit,
.ie11-15 .image-grid.image-grid-hybrid .align-stretch .image-container .image-cover.object-fit {
  padding-top: 30%;
  padding-bottom: 30%;
  background-origin: border-box !important; }

@media screen and (max-width: 63.9375em) {
  .image-grid {
    margin-left: -0.85714rem;
    margin-right: -0.85714rem; } }

.image-grid .flex-container {
  position: relative; }

.image-grid .image-grid-hybrid .image-container {
  position: relative;
  margin-bottom: 1.42857rem;
  overflow: hidden; }
  .image-grid .image-grid-hybrid .image-container figcaption {
    padding-left: 1.5rem;
    padding-bottom: 1.42857rem; }
  @media screen and (min-width: 64em) {
    .image-grid .image-grid-hybrid .image-container {
      margin-bottom: 2.28571rem; } }

.image-grid .grid-tile, .image-grid.image-grid-hybrid {
  position: relative;
  padding: 0.85714rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto; }
  .image-grid .grid-tile:first-child:last-child, .image-grid.image-grid-hybrid:first-child:last-child {
    width: 100%; }
    @media screen and (min-width: 40em) {
      .ie11 .image-grid .grid-tile:first-child:last-child, .ie11 .image-grid.image-grid-hybrid:first-child:last-child {
        height: 100%; } }
  .image-grid .grid-tile .image-container, .image-grid.image-grid-hybrid .image-container {
    position: relative;
    width: 100%;
    overflow: hidden; }
    @media screen and (min-width: 40em) {
      .ie11 .image-grid .grid-tile .image-container, .ie11 .image-grid.image-grid-hybrid .image-container {
        height: 100%; } }
  .image-grid .grid-tile figcaption, .image-grid.image-grid-hybrid figcaption {
    padding: 2.28571rem 0 0; }
    .image-grid .grid-tile figcaption h3, .image-grid.image-grid-hybrid figcaption h3 {
      margin-bottom: 1.14286rem; }
    .image-grid .grid-tile figcaption p, .image-grid.image-grid-hybrid figcaption p {
      margin-bottom: 0.57143rem; }
    @media screen and (min-width: 64em) {
      .image-grid .grid-tile figcaption, .image-grid.image-grid-hybrid figcaption {
        padding: 3.71429rem 0 2.28571rem; } }
  .image-grid .grid-tile .hover-caption, .image-grid.image-grid-hybrid .hover-caption {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 2.28571rem;
    background-image: -webkit-linear-gradient(top, rgba(34, 32, 32, 0) 23%, rgba(34, 32, 32, 0.72) 100%);
    background-image: linear-gradient(-180deg, rgba(34, 32, 32, 0) 23%, rgba(34, 32, 32, 0.72) 100%);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 400ms ease;
    transition: all 400ms ease;
    font-size: 1rem;
    font-weight: bold;
    letter-spacing: 2px;
    text-transform: uppercase; }
  .image-grid .grid-tile:hover .hover-caption, .image-grid.image-grid-hybrid:hover .hover-caption {
    opacity: 1;
    visibility: visible; }
  .image-grid .grid-tile.w-content .image-container, .image-grid.image-grid-hybrid.w-content .image-container {
    margin-bottom: 1.42857rem; }
    @media screen and (min-width: 64em) {
      .image-grid .grid-tile.w-content .image-container, .image-grid.image-grid-hybrid.w-content .image-container {
        margin-bottom: 2.28571rem; }
        .image-grid .grid-tile.w-content .image-container figcaption, .image-grid.image-grid-hybrid.w-content .image-container figcaption {
          padding-bottom: 0; }
          .image-grid .grid-tile.w-content .image-container figcaption.hover-caption, .image-grid.image-grid-hybrid.w-content .image-container figcaption.hover-caption {
            padding-bottom: 1.5rem; } }
  .image-grid .grid-tile.w-image-link .hover-caption, .image-grid.image-grid-hybrid.w-image-link .hover-caption {
    opacity: 1;
    visibility: visible;
    padding: 1.42857rem 1.5rem; }

.history-content-wrapper .history-image-row {
  margin-top: 2rem; }
  @media screen and (min-width: 64em) {
    .history-content-wrapper .history-image-row {
      margin-top: 5rem; } }

.history-content-wrapper .caption {
  margin: 1rem auto 2rem;
  max-width: 63.42857rem;
  color: #DCC18E; }
  @media screen and (min-width: 64em) {
    .history-content-wrapper .caption {
      margin-bottom: 5rem; } }

.history-content-wrapper .border-btn {
  margin-top: 1rem;
  margin-bottom: 2rem; }
  @media screen and (min-width: 64em) {
    .history-content-wrapper .border-btn {
      margin-top: 3rem;
      margin-bottom: 3rem; } }

.section-container.intro-section {
  position: relative;
  min-height: 100vh; }
  .section-container.intro-section .mobile-logo {
    display: none;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    fill: #fff;
    text-align: center; }
    @media screen and (max-width: 39.9375em) {
      .section-container.intro-section .mobile-logo {
        display: block; } }
    .section-container.intro-section .mobile-logo svg:first-child {
      width: 73px;
      height: 96px;
      margin-bottom: 28px; }
    .section-container.intro-section .mobile-logo svg:last-child {
      width: 204px;
      height: 43px; }

.landing-carousel .slide-holder {
  position: relative;
  padding: 0 1.78571rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100vh;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center; }
  .home .landing-carousel .slide-holder {
    height: 100vh; }
  @media screen and (max-width: 39.9375em) {
    .landing-carousel .slide-holder .slide-caption-wrapper .slide-caption {
      margin: 0 auto;
      max-width: 100%; } }
  @media screen and (min-width: 40em) {
    .landing-carousel .slide-holder {
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: start;
      -webkit-align-items: flex-start;
          -ms-flex-align: start;
              align-items: flex-start; } }
  @media screen and (min-width: 64em) {
    .landing-carousel .slide-holder {
      padding: 0 4.57143rem;
      height: 100vh; } }
  .landing-carousel .slide-holder .slide-caption-wrapper {
    max-width: 100%; }
    @media screen and (min-width: 64em) {
      .landing-carousel .slide-holder .slide-caption-wrapper {
        max-width: 75%; } }
    @media screen and (min-width: 99.42857em) {
      .landing-carousel .slide-holder .slide-caption-wrapper {
        max-width: 50%; } }
    @media screen and (min-width: 100em) {
      .landing-carousel .slide-holder .slide-caption-wrapper {
        max-width: 55%; } }
    .landing-carousel .slide-holder .slide-caption-wrapper .slide-caption {
      position: relative;
      -webkit-box-flex: 0;
      -webkit-flex: none;
          -ms-flex: none;
              flex: none;
      text-align: left;
      z-index: 5; }
      .landing-carousel .slide-holder .slide-caption-wrapper .slide-caption h3 {
        margin-top: 7rem;
        margin-bottom: .75rem;
        color: #fff;
        font-size: 1rem;
        font-style: italic;
        font-weight: 600;
        letter-spacing: 1.25px;
        text-transform: uppercase; }
        @media screen and (min-width: 40em) {
          .landing-carousel .slide-holder .slide-caption-wrapper .slide-caption h3 {
            margin-top: auto;
            margin-bottom: 1.25rem; } }
      .landing-carousel .slide-holder .slide-caption-wrapper .slide-caption span {
        text-transform: uppercase;
        color: #fff;
        font-family: "Acta Headline W00", "Acta Headline", serif;
        font-size: 1.28571rem;
        letter-spacing: 1px; }
        @media screen and (max-width: 39.9375em) {
          .landing-carousel .slide-holder .slide-caption-wrapper .slide-caption span {
            font-size: 2rem;
            font-weight: 600;
            line-height: 2.45rem; } }
        @media screen and (min-width: 40em) {
          .landing-carousel .slide-holder .slide-caption-wrapper .slide-caption span {
            font-size: 4.11429rem;
            letter-spacing: 5px;
            line-height: 1.16319; } }
      .landing-carousel .slide-holder .slide-caption-wrapper .slide-caption p {
        max-width: 730px;
        font-size: 1.14286rem;
        line-height: 1.75rem; }
        .landing-carousel .slide-holder .slide-caption-wrapper .slide-caption p::before {
          margin: 1.25rem 0 1.5rem;
          display: block;
          height: 4px;
          width: 2.25rem;
          background-color: #DCC18E;
          content: ""; }
          @media screen and (min-width: 40em) {
            .landing-carousel .slide-holder .slide-caption-wrapper .slide-caption p::before {
              margin: 1.5rem 0 1.75rem; } }
        @media screen and (min-width: 40em) {
          .landing-carousel .slide-holder .slide-caption-wrapper .slide-caption p {
            font-size: 1.28571rem;
            line-height: 2rem; } }
      .landing-carousel .slide-holder .slide-caption-wrapper .slide-caption a {
        margin-top: 2rem; }
        @media screen and (min-width: 40em) {
          .landing-carousel .slide-holder .slide-caption-wrapper .slide-caption a {
            margin-top: 1rem; } }
  .landing-carousel .slide-holder:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(34, 32, 32, 0.32);
    z-index: 0; }

@media screen and (max-width: 63.9375em) {
  .morphing-box {
    width: 100% !important; } }

@media screen and (min-width: 64em) {
  .morphing-box {
    left: 3.42857rem;
    max-width: 540px;
    overflow: hidden; } }

.morphing-box h1, .morphing-box h2, .morphing-box h3, .morphing-box h4, .morphing-box h5, .morphing-box h6 {
  margin-bottom: 1.71429rem; }

.morphing-box h1 {
  margin-bottom: 1.28571rem;
  line-height: 2.85714rem; }
  @media screen and (min-width: 64em) {
    .morphing-box h1 {
      margin-bottom: 1.71429rem; } }

.morphing-box p {
  margin-bottom: 1.71429rem;
  line-height: 1.85714rem; }
  @media screen and (max-width: 63.9375em) {
    .morphing-box p:last-child {
      margin-bottom: 0; } }

@media screen and (min-width: 64em) {
  .morphing-box {
    position: absolute;
    bottom: 50vh;
    -webkit-transform: translateY(50%);
            transform: translateY(50%);
    width: 41.66667%;
    border-radius: 2px;
    background-color: rgba(255, 255, 255, 0.9);
    color: #222020; }
    .morphing-box h1 small, .morphing-box h2 small, .morphing-box h3 small, .morphing-box h4 small, .morphing-box h5 small, .morphing-box h6 small {
      color: #222020; } }

@media screen and (min-width: 64em) and (max-height: 800px) {
  .morphing-box {
    width: 66.66667%;
    max-width: 640px; } }

.morph-content-wrapper {
  padding: 2.85714rem 0 0; }
  @media screen and (min-width: 64em) {
    .morph-content-wrapper {
      padding: 4.57143rem 3.42857rem 3.42857rem; } }

.morph-toggle, .modaal-wrapper .modaal-close {
  position: absolute;
  top: 0;
  right: 0;
  border: solid 1px rgba(34, 32, 32, 0.16);
  border-radius: 0;
  border-top: 0;
  border-right: 0;
  padding: 1.14286rem;
  cursor: pointer;
  line-height: 1;
  z-index: 5; }
  .morph-toggle svg, .modaal-wrapper .modaal-close svg {
    -webkit-transition: all 400ms ease;
    transition: all 400ms ease; }
  .collapsed .morph-toggle svg, .collapsed .modaal-wrapper .modaal-close svg, .modaal-wrapper .collapsed .modaal-close svg {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg); }
  .morph-toggle svg, .modaal-wrapper .modaal-close svg {
    width: 1.14286rem;
    height: 1.14286rem;
    vertical-align: middle; }
  @media screen and (max-width: 63.9375em) {
    .morph-toggle, .modaal-wrapper .modaal-close {
      display: none; } }

@media screen and (min-width: 64em) {
  .morph-content {
    height: 0;
    visibility: hidden;
    opacity: 0;
    overflow: hidden; }
    .morph-content a:not(.rg-btn):not(.border-btn) {
      color: #9d8047; }
      .morph-content a:not(.rg-btn):not(.border-btn):hover, .morph-content a:not(.rg-btn):not(.border-btn):active {
        color: #4E4D50; }
    .morph-content.is-active {
      height: auto;
      visibility: visible;
      opacity: 1; } }

.morph-content-reveal {
  position: absolute;
  top: 0;
  left: 0;
  padding: 4.57143rem 3.42857rem 3.42857rem;
  background-color: light-blue;
  height: 100%;
  width: 100%;
  opacity: 1;
  -webkit-transition: opacity .15s ease-in-out;
  transition: opacity .15s ease-in-out; }

@media screen and (min-width: 64em) {
  .morph-content-scroller {
    max-height: 18rem; } }

.morph-content-scroller {
  margin-bottom: 1.5rem; }

.morph-content-scroller .mCS-provenance-r8-dark.mCSB_scrollTools {
  width: 4px; }

@media screen and (min-width: 64em) {
  .morph-content {
    overflow: visible; } }

.mCS-provenance-r8-dark.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: currentColor;
  border-radius: 2px; }

.mCS-provenance-r8-dark.mCSB_scrollTools .mCSB_draggerRail {
  width: 100%; }

@media screen and (min-width: 40em) {
  .module-offers-carousel .slick-slide {
    padding: 0 12px;
    -webkit-perspective: 900px;
            perspective: 900px;
    -webkit-transition: all 400ms ease;
    transition: all 400ms ease; }
    .module-offers-carousel .slick-slide .card-tile {
      opacity: 0.05;
      -webkit-transform: translateX(10vw) rotateY(25deg);
              transform: translateX(10vw) rotateY(25deg);
      -webkit-transition: inherit;
      transition: inherit; }
    .module-offers-carousel .slick-slide.slick-current .card-tile {
      opacity: 1;
      -webkit-transform: rotateY(0);
              transform: rotateY(0); }
    .module-offers-carousel .slick-slide.slick-current ~ .slick-slide .card-tile {
      -webkit-transform: translateX(-10vw) rotateY(-25deg);
              transform: translateX(-10vw) rotateY(-25deg); } }

.module-offers-carousel .slick-prev,
.module-offers-carousel .slick-next {
  z-index: 5; }
  .module-offers-carousel .slick-prev:before,
  .module-offers-carousel .slick-next:before {
    font-size: 1.71429rem; }

.module-offers-carousel .slick-prev {
  left: 10%; }

.module-offers-carousel .slick-next {
  right: 10%; }

.module-offers-carousel .card-tile {
  position: relative; }
  @media screen and (min-width: 40em) {
    .module-offers-carousel .card-tile .card-image .image-container {
      padding-top: 88.49558%; }
    .module-offers-carousel .card-tile .card-content {
      background-color: #38373A;
      text-align: left;
      color: #fff;
      font-size: 1rem;
      padding: 5.14286rem 3.71429rem 3.14286rem; }
      .module-offers-carousel .card-tile .card-content h5 {
        margin-bottom: 1.71429rem; }
      .module-offers-carousel .card-tile .card-content p {
        margin-bottom: 1.71429rem; }
        .module-offers-carousel .card-tile .card-content p .rg-btn + a {
          margin-left: 1.71429rem; }
        .module-offers-carousel .card-tile .card-content p a {
          text-transform: uppercase;
          color: #9d8047;
          font-size: 0.92857rem;
          font-weight: 600;
          letter-spacing: 2px; }
          .module-offers-carousel .card-tile .card-content p a:hover, .module-offers-carousel .card-tile .card-content p a:focus {
            color: #DCC18E; }
        .module-offers-carousel .card-tile .card-content p a.rg-btn {
          color: #fff; } }
  @media screen and (min-width: 64em) {
    .module-offers-carousel .card-tile {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: row wrap;
          -ms-flex-wrap: row wrap;
              flex-wrap: row wrap; }
      .module-offers-carousel .card-tile .card-image, .module-offers-carousel .card-tile .card-content {
        max-width: 50%;
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 50%;
            -ms-flex: 0 0 50%;
                flex: 0 0 50%; } }

.module-promos-carousel, .module-venue-carousel {
  padding: 3.57143rem 0; }
  @media screen and (min-width: 40em) {
    .module-promos-carousel, .module-venue-carousel {
      padding: 5.35714rem 0; }
      .module-promos-carousel .slick-slide, .module-venue-carousel .slick-slide {
        padding: 0 12px;
        -webkit-perspective: 900px;
                perspective: 900px;
        -webkit-transition: all 400ms ease;
        transition: all 400ms ease; }
        .module-promos-carousel .slick-slide .card-tile, .module-venue-carousel .slick-slide .card-tile {
          opacity: 0.05;
          -webkit-transform: translateX(13.125vw) rotateY(25deg);
                  transform: translateX(13.125vw) rotateY(25deg);
          -webkit-transition: inherit;
          transition: inherit; }
        .module-promos-carousel .slick-slide.slick-current .card-tile, .module-venue-carousel .slick-slide.slick-current .card-tile {
          opacity: 1;
          -webkit-transform: rotateY(0);
                  transform: rotateY(0); }
        .module-promos-carousel .slick-slide.slick-current ~ .slick-slide .card-tile, .module-venue-carousel .slick-slide.slick-current ~ .slick-slide .card-tile {
          left: 0;
          -webkit-transform: translateX(-13.125vw) rotateY(-25deg);
                  transform: translateX(-13.125vw) rotateY(-25deg); } }
  .module-promos-carousel .slick-prev, .module-venue-carousel .slick-prev,
  .module-promos-carousel .slick-next, .module-venue-carousel .slick-next {
    z-index: 5; }
    .module-promos-carousel .slick-prev:before, .module-venue-carousel .slick-prev:before,
    .module-promos-carousel .slick-next:before, .module-venue-carousel .slick-next:before {
      font-size: 1.71429rem; }
  .module-promos-carousel .slick-prev, .module-venue-carousel .slick-prev {
    left: 5%; }
  .module-promos-carousel .slick-next, .module-venue-carousel .slick-next {
    right: 5%; }
  .module-promos-carousel .card-tile, .module-venue-carousel .card-tile {
    position: relative;
    border-radius: 0;
    overflow: visible; }
    @media screen and (min-width: 40em) {
      .module-promos-carousel .card-tile .card-image, .module-venue-carousel .card-tile .card-image {
        border-radius: 2px;
        overflow: hidden; }
        .module-promos-carousel .card-tile .card-image .image-container, .module-venue-carousel .card-tile .card-image .image-container {
          padding-top: 70.42254%; }
        .module-promos-carousel .card-tile .card-image:before, .module-venue-carousel .card-tile .card-image:before {
          content: '';
          position: absolute;
          top: 36px;
          right: 36px;
          left: 36px;
          bottom: 36px;
          display: block;
          border: solid 2px #DCC18E;
          z-index: 3; } }
    @media screen and (min-width: 100em) {
      .module-promos-carousel .card-tile .card-image .image-container, .module-venue-carousel .card-tile .card-image .image-container {
        padding-top: 0;
        height: 80vh; } }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .module-promos-carousel .card-tile .card-content, .module-venue-carousel .card-tile .card-content {
        background-color: rgba(255, 255, 255, 0.9);
        text-align: left;
        font-size: 1rem;
        padding: 3.71429rem 3.42857rem 2.28571rem;
        color: #1A1818;
        z-index: 5;
        box-shadow: 0 8px 24px 0 rgba(0, 0, 0, 0.16);
        border-bottom-left-radius: 2px;
        border-bottom-right-radius: 2px; } }
    @media screen and (min-width: 64em) {
      .module-promos-carousel .card-tile .card-content, .module-venue-carousel .card-tile .card-content {
        position: absolute;
        background-color: rgba(255, 255, 255, 0.9);
        text-align: left;
        font-size: 1rem;
        bottom: 25%;
        left: -32px;
        right: 50%;
        border-radius: 2px;
        -webkit-transform: translateY(25%);
                transform: translateY(25%);
        padding: 3.71429rem 3.42857rem 2.28571rem;
        color: #1A1818;
        z-index: 5;
        box-shadow: 0 8px 24px 0 rgba(0, 0, 0, 0.16); }
        .module-promos-carousel .card-tile .card-content h5, .module-venue-carousel .card-tile .card-content h5 {
          margin-bottom: 1.71429rem; }
        .module-promos-carousel .card-tile .card-content p, .module-venue-carousel .card-tile .card-content p {
          margin-bottom: 1.71429rem; } }

@media screen and (min-width: 40em) {
  .module-rooms-carousel .slick-slide {
    padding: 0; } }

.module-rooms-carousel .slick-prev,
.module-rooms-carousel .slick-next {
  width: 3.42857rem;
  height: 3.42857rem;
  text-align: center;
  background-color: rgba(220, 193, 142, 0.52);
  border-radius: 0;
  z-index: 5; }
  .module-rooms-carousel .slick-prev:before,
  .module-rooms-carousel .slick-next:before {
    font-size: 1rem;
    line-height: 3.42857rem; }

.module-rooms-carousel .slick-prev {
  left: 0;
  border-top-right-radius: 2px;
  border-bottom-right-radius: 2px; }
  .module-rooms-carousel .slick-prev:before {
    content: ""; }

.module-rooms-carousel .slick-next {
  right: 0;
  border-top-left-radius: 2px;
  border-bottom-left-radius: 2px; }
  .module-rooms-carousel .slick-next:before {
    content: ""; }

.module-rooms-carousel .card-tile {
  position: relative; }
  @media screen and (min-width: 40em) {
    .module-rooms-carousel .card-tile {
      border-radius: 0; }
      .module-rooms-carousel .card-tile .card-image {
        position: relative; }
        .module-rooms-carousel .card-tile .card-image .image-container {
          padding-top: 72.28464%; }
        .module-rooms-carousel .card-tile .card-image:before {
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          background-color: rgba(34, 32, 32, 0.6);
          opacity: 1;
          -webkit-transition: all 400ms ease;
          transition: all 400ms ease;
          z-index: 1; }
      .module-rooms-carousel .card-tile .card-content {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-52%, -49%);
                transform: translate(-52%, -49%);
        padding: 1.25rem 1.75rem;
        border: solid 1px #DCC18E;
        border-radius: 2px;
        background-color: transparent;
        -webkit-transition: all 400ms ease;
        transition: all 400ms ease;
        z-index: 5;
        color: #fff;
        font-weight: bold;
        text-transform: uppercase;
        letter-spacing: 1px;
        font-size: 1rem;
        text-align: center; } }

.module-rooms-carousel .slick-slide a .card-content {
  -webkit-transition: background-color .15s ease-in-out, color .15s ease-in-out;
  transition: background-color .15s ease-in-out, color .15s ease-in-out; }

.module-rooms-carousel .slick-slide a:hover .card-tile .card-image:before {
  opacity: 0; }

.module-rooms-carousel .slick-slide a:hover .card-tile .card-content {
  background-color: #DCC18E; }

.section-container.module-rooms {
  padding-bottom: 0; }

/* endinject */
/* inject:templates */
.page-contact .map-container #hotel-map {
  height: 110.93333vw; }
  @media screen and (min-width: 64em) {
    .page-contact .map-container #hotel-map {
      height: 100vh; } }

.page-contact .contact-content {
  padding-top: 2.57143rem; }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .page-contact .contact-content {
      padding-top: 7.71429rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .page-contact .contact-content .medium-12 p {
      text-align: justify; }
      .page-contact .contact-content .medium-12 p:after {
        content: '';
        display: inline-block;
        width: 100%; }
      .page-contact .contact-content .medium-12 p.text-left {
        text-align: left; }
    .page-contact .contact-content .medium-12 .contact-btn {
      display: inline-block;
      width: -webkit-calc(50% - 10px);
      width: calc(50% - 10px); } }

@media screen and (max-width: 63.9375em) {
  .contact-name {
    font-size: 1.71429rem;
    font-weight: normal; } }

@media screen and (min-width: 64em) {
  .contact-name {
    font-weight: 600; } }

@media screen and (max-width: 63.9375em) {
  .contact-btn {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    font-family: inherit;
    padding: 1.23em 1.85em;
    -webkit-appearance: none;
    border: 1px solid transparent;
    border-radius: 2px;
    -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
    transition: background-color 0.25s ease-out, color 0.25s ease-out;
    font-size: 0.9rem;
    line-height: 1;
    text-align: center;
    cursor: pointer;
    border: 1px solid #DCC18E;
    color: #DCC18E;
    color: #fff;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 2px;
    width: -webkit-calc(50% - 16px);
    width: calc(50% - 16px); }
    [data-whatinput='mouse'] .contact-btn {
      outline: 0; }
    .contact-btn, .contact-btn:hover, .contact-btn:focus {
      background-color: transparent; }
    .contact-btn.disabled, .contact-btn.disabled:hover, .contact-btn.disabled:focus, .contact-btn[disabled], .contact-btn[disabled]:hover, .contact-btn[disabled]:focus {
      background-color: transparent; }
    .contact-btn:hover, .contact-btn:focus {
      border-color: #8a692b;
      color: #8a692b; }
      .contact-btn:hover.disabled, .contact-btn:hover[disabled], .contact-btn:focus.disabled, .contact-btn:focus[disabled] {
        border: 1px solid #DCC18E;
        color: #DCC18E; }
    .contact-btn.expanded {
      display: block;
      width: 100%;
      margin-right: 0;
      margin-left: 0; }
    .contact-btn:before {
      content: attr(title); }
    .contact-btn span {
      display: none; }
    .contact-btn + .contact-btn {
      margin-left: 16px; } }

@media screen and (min-width: 64em) {
  .contact-btn {
    letter-spacing: 0.5px; }
    .contact-btn.expanded {
      color: #fff; }
    .contact-btn + .contact-btn {
      margin-left: 0.71429rem;
      border-left: solid 1px #fff;
      padding-left: 0.71429rem; } }

@media screen and (min-width: 64em) {
  .page.default-template .section-container.full-height:first-child:last-child {
    padding-top: 15.71429rem; } }

.error404 .error-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  text-align: center; }

@media screen and (min-width: 64em) and (max-height: 800px) {
  .faq-section {
    width: 66.66667%;
    margin: 0 auto; } }

.faq-section h1 {
  margin-bottom: 0.85714rem; }

.faq-section p:first-of-type {
  margin-bottom: 2.28571rem; }

.faq-section b {
  letter-spacing: 1px; }

.accordion-tile {
  border: solid 1px #fff;
  border-radius: 2px;
  margin-bottom: 1.14286rem; }
  @media screen and (min-width: 64em) {
    .accordion-tile {
      margin-bottom: 2.28571rem; } }
  .accordion-tile .accordion-tile-title {
    position: relative;
    cursor: pointer;
    padding: 2rem 2.28571rem;
    padding-right: 2.85714rem;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 0.92857rem;
    letter-spacing: 1.86px; }
    .accordion-tile .accordion-tile-title:after {
      font-family: "icon-font";
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      font-style: normal;
      font-variant: normal;
      font-weight: normal;
      text-decoration: none;
      text-transform: none;
      content: ""; }
    .accordion-tile .accordion-tile-title:after {
      position: absolute;
      top: 2.57143rem;
      right: 1.28571rem;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      font-size: 1.14286rem;
      color: #DCC18E; }
  .accordion-tile .accordion-tile-content {
    display: none;
    padding: 0 2.28571rem 2rem;
    letter-spacing: 0.5px; }
    .accordion-tile .accordion-tile-content p {
      margin-bottom: 1rem; }
      .accordion-tile .accordion-tile-content p:last-child {
        margin-bottom: 0; }
    .accordion-tile .accordion-tile-content a {
      color: #fff; }
      .accordion-tile .accordion-tile-content a:hover, .accordion-tile .accordion-tile-content a:focus {
        color: rgba(255, 255, 255, 0.8); }
  .accordion-tile.expanded {
    border-color: #DCC18E;
    background-color: #DCC18E;
    color: #222020; }
    .accordion-tile.expanded .accordion-tile-title:after {
      font-family: "icon-font";
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      font-style: normal;
      font-variant: normal;
      font-weight: normal;
      text-decoration: none;
      text-transform: none;
      content: ""; }
    .accordion-tile.expanded .accordion-tile-title:after {
      color: #9d8047; }
    .accordion-tile.expanded .accordion-tile-content {
      display: block; }

.faq-masonry .accordion-tile, .faq-masonry .faq-grid-sizer {
  width: 100%; }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .faq-masonry .accordion-tile, .faq-masonry .faq-grid-sizer {
      width: -webkit-calc(50% - 24px);
      width: calc(50% - 24px); } }
  @media screen and (min-width: 64em) {
    .faq-masonry .accordion-tile, .faq-masonry .faq-grid-sizer {
      width: -webkit-calc(33.33333% - 16px);
      width: calc(33.33333% - 16px); } }
  @media screen and (min-width: 64em) and (max-height: 800px) {
    .faq-masonry .accordion-tile, .faq-masonry .faq-grid-sizer {
      width: -webkit-calc(50% - 24px);
      width: calc(50% - 24px); } }

.template-food-drink #main-container {
  min-height: 0; }

@media screen and (min-width: 64em) {
  .section-container + .kwicks-section {
    padding-top: 6.42857rem; } }

.section-container.food-drink-tabs {
  padding-bottom: 0; }
  @media screen and (max-width: 63.9375em) {
    .section-container.food-drink-tabs {
      margin-top: 4rem; }
      .section-container.food-drink-tabs .column, .section-container.food-drink-tabs .columns {
        margin-bottom: 2.28571rem; }
        .section-container.food-drink-tabs .column:last-child, .section-container.food-drink-tabs .columns:last-child {
          margin-bottom: 0; } }

.restaurant-logo, #restaurant-selector .restaurant-logo-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  display: block;
  -webkit-transition: all 400ms ease-in-out;
  transition: all 400ms ease-in-out;
  z-index: 5; }

.panel-preview {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: all 400ms ease-in-out;
  transition: all 400ms ease-in-out;
  z-index: 3; }

#restaurant-selector {
  height: 29.28571vw; }
  #restaurant-selector::before, #restaurant-selector::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  #restaurant-selector::after {
    clear: both; }
  #restaurant-selector > li {
    top: 0;
    height: 100%; }
  #restaurant-selector .restaurant-logo, #restaurant-selector .restaurant-logo-text {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    display: block;
    -webkit-transition: opacity 400ms ease-in-out;
    transition: opacity 400ms ease-in-out; }
  #restaurant-selector .restaurant-logo, #restaurant-selector .restaurant-logo-text {
    width: auto;
    max-width: none;
    max-height: 100%; }
  #restaurant-selector .restaurant-logo-text {
    font-family: "Acta Headline W00", "Acta Headline", serif;
    font-size: 2.28571rem;
    font-weight: bold;
    line-height: 1.35;
    text-transform: uppercase;
    text-align: center;
    height: auto; }
  #restaurant-selector .kwicks-expanded .restaurant-slider {
    opacity: 1; }
  #restaurant-selector .kwicks-expanded .restaurant-logo, #restaurant-selector .kwicks-expanded .restaurant-logo-text {
    opacity: 0;
    z-index: -1; }
  #restaurant-selector .kwicks-expanded .panel-preview {
    opacity: 0;
    z-index: -1; }
  #restaurant-selector .restaurant-slider {
    opacity: 0;
    margin-bottom: 0;
    z-index: 1; }
    #restaurant-selector .restaurant-slider, #restaurant-selector .restaurant-slider > div, #restaurant-selector .restaurant-slider .slick-list, #restaurant-selector .restaurant-slider .slick-track {
      height: 100%; }
    #restaurant-selector .restaurant-slider .image-container {
      width: 100%;
      height: 100%; }

.tab-panel {
  position: relative;
  width: 100%;
  height: 68.08511vw;
  overflow: hidden; }
  @media screen and (min-width: 40em) {
    .tab-panel {
      display: none; } }

.tab-content {
  height: 0;
  overflow: hidden; }
  .tab-content > .row {
    padding: 2.85714rem 0 3.42857rem; }
    @media screen and (min-width: 64em) {
      .tab-content > .row {
        padding: 9.28571rem 0; } }
  .tab-content a:not([class*='btn']) {
    color: inherit; }
    .tab-content a:not([class*='btn']):hover, .tab-content a:not([class*='btn']):focus {
      color: #DCC18E; }
  .tab-content .social a {
    color: #DCC18E; }
    .tab-content .social a:hover, .tab-content .social a:focus {
      color: #d0ac67; }
  .tab-content p, .tab-content .opentable, .tab-content ul {
    margin-bottom: 3rem; }
    .tab-content p:last-child, .tab-content .opentable:last-child, .tab-content ul:last-child {
      margin-bottom: 0; }

.restaurant-slider {
  max-width: 100vw; }
  @media screen and (min-width: 64em) {
    .restaurant-slider .slick-dots {
      right: 1.57143rem; } }
  .restaurant-slider .slick-slide {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center; }

#restaurant-tabs {
  width: 100%; }
  #restaurant-tabs .revealed .restaurant-logo, #restaurant-tabs .revealed #restaurant-selector .restaurant-logo-text, #restaurant-selector #restaurant-tabs .revealed .restaurant-logo-text, #restaurant-tabs .revealed .panel-preview {
    opacity: 0;
    z-index: -1; }
  #restaurant-tabs .restaurant-slider {
    margin-bottom: 0;
    z-index: 1; }
    #restaurant-tabs .restaurant-slider, #restaurant-tabs .restaurant-slider > div, #restaurant-tabs .restaurant-slider .slick-list, #restaurant-tabs .restaurant-slider .slick-track {
      height: 100%; }
    #restaurant-tabs .restaurant-slider .image-container {
      width: 100%;
      height: 100%; }

.restaurant-panel-overlay {
  position: absolute;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.7);
  z-index: 4;
  -webkit-transition: .35s ease-in-out;
  transition: .35s ease-in-out; }
  .restaurant-panel-overlay:hover {
    background: transparent; }

.home .intro-section .carousel-container {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0; }

.home .intro-section + .section-container {
  z-index: 1; }

@media screen and (min-width: 64em) {
  .gallery-section {
    z-index: 0; } }

.selectric-gallery-select {
  margin-top: 4.35714rem; }
  @media screen and (min-width: 64em) {
    .selectric-gallery-select {
      display: none; } }

.caption-wrapper {
  padding: 1.14286rem 1.71429rem 0;
  background-color: rgba(34, 32, 32, 0.8);
  font-size: 1rem;
  letter-spacing: 0.5px; }
  @media screen and (min-width: 64em) {
    .caption-wrapper {
      position: absolute;
      left: 16.64286rem;
      bottom: 4.57143rem;
      padding: 0 2rem;
      background-color: transparent;
      border-left: solid 2px #fff;
      max-width: 40%;
      z-index: 5; } }

.template-gallery main {
  position: relative; }

.gallery-carousel .image-container {
  height: 68.08511vw; }

@media screen and (min-width: 64em) {
  .gallery-carousel .image-container {
    width: 100%;
    height: 100vh; }
  .gallery-carousel:after {
    content: '';
    height: 12.57143rem;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0.52;
    background-image: -webkit-linear-gradient(top, rgba(34, 32, 32, 0) 0%, #222020 100%);
    background-image: linear-gradient(-180deg, rgba(34, 32, 32, 0) 0%, #222020 100%);
    z-index: 1; } }

.gallery-thumbnails {
  padding: 0.57143rem 1.14286rem 2.71429rem;
  background-color: rgba(34, 32, 32, 0.8); }
  .gallery-thumbnails::before, .gallery-thumbnails::after {
    display: table;
    content: ' ';
    -webkit-flex-basis: 0;
        -ms-flex-preferred-size: 0;
            flex-basis: 0;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .gallery-thumbnails::after {
    clear: both; }
  @media screen and (min-width: 64em) {
    .gallery-thumbnails {
      position: absolute;
      top: 50%;
      left: 0;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 8.85714rem;
      background-color: transparent;
      padding: 0; } }
  .gallery-thumbnails .gallery-select-wrapper {
    position: relative; }
    @media screen and (max-width: 63.9375em) {
      .gallery-thumbnails .gallery-select-wrapper {
        display: none; } }
  .gallery-thumbnails .gallery-select-button {
    display: block;
    padding: 1.71429rem;
    background-color: #fff;
    font-weight: 600;
    font-size: 0.85714rem;
    text-transform: uppercase;
    letter-spacing: 1.71px;
    line-height: 1.5;
    border-radius: 0;
    border-bottom: solid 1px #E6E6E6;
    cursor: pointer;
    border-top-right-radius: 2px;
    overflow: hidden; }
    .gallery-thumbnails .gallery-select-button .icon-gallery {
      display: block;
      color: #DCC18E;
      font-size: 1.71429rem; }
  .gallery-thumbnails .gallery-sub-menu {
    display: none;
    position: absolute;
    top: 0;
    left: 100%;
    width: 22.28571rem;
    background-color: rgba(231, 231, 231, 0.9);
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px; }
    .gallery-thumbnails .gallery-sub-menu li {
      font-weight: 600;
      font-size: 0.92857rem;
      letter-spacing: 1.86px;
      text-transform: uppercase; }
      .gallery-thumbnails .gallery-sub-menu li + li {
        border-top: solid 1px #ccc; }
      .gallery-thumbnails .gallery-sub-menu li.active a {
        color: #ACACAC; }
        .gallery-thumbnails .gallery-sub-menu li.active a:hover {
          color: #fff; }
    .gallery-thumbnails .gallery-sub-menu a {
      display: block;
      padding: 1.71429rem 2rem;
      color: #1A1818; }
      .gallery-thumbnails .gallery-sub-menu a:hover {
        color: #fff;
        background-color: #DCC18E; }
  .gallery-thumbnails [data-thumb] {
    padding: 0.57143rem;
    width: 25%;
    float: left; }
    .gallery-thumbnails [data-thumb] img {
      width: 100%; }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .gallery-thumbnails [data-thumb] {
        width: 16.66667%; } }
    @media screen and (min-width: 64em) {
      .gallery-thumbnails [data-thumb] {
        width: 100%;
        float: none;
        padding: 0.5rem 1.42857rem; } }
    .gallery-thumbnails [data-thumb].slick-current img {
      border: solid 4px #DCC18E; }
  @media screen and (min-width: 64em) {
    .gallery-thumbnails .gallery-nav .slick-list {
      padding: 0.5rem 0;
      background-color: rgba(231, 231, 231, 0.9); } }
  .gallery-thumbnails .gallery-nav .slick-prev,
  .gallery-thumbnails .gallery-nav .slick-next {
    display: block;
    position: static;
    -webkit-transform: none;
            transform: none;
    background-color: #fff;
    width: 100%;
    padding: 1.14286rem;
    border-radius: 0; }
    .gallery-thumbnails .gallery-nav .slick-prev:before,
    .gallery-thumbnails .gallery-nav .slick-next:before {
      font-size: 0.71429rem;
      line-height: 1;
      color: #DCC18E; }
  .gallery-thumbnails .gallery-nav .slick-prev {
    left: 0; }
    .gallery-thumbnails .gallery-nav .slick-prev:before {
      font-family: "icon-font";
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      font-style: normal;
      font-variant: normal;
      font-weight: normal;
      text-decoration: none;
      text-transform: none;
      content: ""; }
  .gallery-thumbnails .gallery-nav .slick-next {
    right: 0;
    border-bottom-right-radius: 2px;
    overflow: hidden; }
    .gallery-thumbnails .gallery-nav .slick-next:before {
      font-family: "icon-font";
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      font-style: normal;
      font-variant: normal;
      font-weight: normal;
      text-decoration: none;
      text-transform: none;
      content: ""; }

.history-image-block {
  margin-top: 1rem;
  margin-bottom: 2.57143rem; }
  @media screen and (min-width: 64em) {
    .history-image-block {
      margin-top: 3.57143rem;
      margin-bottom: 4.64286rem; } }
  .history-image-block img {
    display: inline-block;
    margin-bottom: 1.07143rem; }
    @media screen and (min-width: 64em) {
      .history-image-block img {
        margin-bottom: 1.78571rem; } }
  .history-image-block figcaption {
    color: #DCC18E; }

.history-cta {
  margin-top: 1.78571rem;
  margin-bottom: 2.5rem; }
  @media screen and (min-width: 64em) {
    .history-cta {
      margin-top: 3.57143rem;
      margin-bottom: 7.14286rem; } }

.template-map .map-container #neighborhood-map {
  height: 110.93333vw; }
  @media screen and (min-width: 64em) {
    .template-map .map-container #neighborhood-map {
      height: 100vh; } }

.map-accordion-wrapper {
  width: 100%;
  padding: 2rem 1.71429rem 3.14286rem; }
  @media screen and (min-width: 64em) {
    .map-accordion-wrapper {
      height: 100vh;
      padding: 13.71429rem 0;
      max-height: 100vh; } }

#map-accordion {
  width: 100%;
  height: 100%; }
  #map-accordion .ui-accordion-header {
    margin: 0;
    font-family: "Acta Headline W00", "Acta Headline", serif;
    font-size: 1.71429rem;
    line-height: 1.66667;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    padding: 1.14286rem 0;
    border-bottom: solid 1px #4E4D50;
    color: #fff;
    outline: none; }
    #map-accordion .ui-accordion-header:after {
      font-family: "icon-font";
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      font-style: normal;
      font-variant: normal;
      font-weight: normal;
      text-decoration: none;
      text-transform: none;
      content: ""; }
    #map-accordion .ui-accordion-header:after {
      position: absolute;
      top: 50%;
      right: 0;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      color: #DCC18E;
      font-size: 1.14286rem; }
      @media screen and (min-width: 64em) {
        #map-accordion .ui-accordion-header:after {
          font-size: 1.71429rem;
          right: 2.35714rem; } }
    #map-accordion .ui-accordion-header.ui-accordion-header-active:after {
      font-family: "icon-font";
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      font-style: normal;
      font-variant: normal;
      font-weight: normal;
      text-decoration: none;
      text-transform: none;
      content: ""; }
    @media screen and (min-width: 64em) {
      #map-accordion .ui-accordion-header {
        padding: 2.42857rem 4.14286rem; }
        #map-accordion .ui-accordion-header:first-of-type {
          border-top: solid 1px #4E4D50; } }
  #map-accordion .ui-accordion-content {
    padding: 0;
    border-bottom: solid 1px #4E4D50; }

.locations-wrapper {
  height: 100%; }
  .locations-wrapper .locations-list li {
    color: #fff; }
    .locations-wrapper .locations-list li .border-btn {
      color: #fff;
      padding-left: 1rem;
      padding-right: 1rem; }
    .locations-wrapper .locations-list li .location-link {
      position: relative;
      display: block;
      color: inherit;
      padding: 0.85714rem 0;
      font-size: 1rem;
      font-weight: 600;
      text-transform: uppercase;
      letter-spacing: 1.75px; }
      @media screen and (max-width: 63.9375em) {
        .locations-wrapper .locations-list li .location-link:after {
          font-family: "icon-font";
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          font-style: normal;
          font-variant: normal;
          font-weight: normal;
          text-decoration: none;
          text-transform: none;
          content: ""; }
        .locations-wrapper .locations-list li .location-link:after {
          position: absolute;
          top: 50%;
          -webkit-transform: translateY(-50%);
                  transform: translateY(-50%);
          right: 0;
          color: #DCC18E;
          font-size: 0.57143rem; }
        .locations-wrapper .locations-list li .location-link.active:after {
          -webkit-transform: translateY(-50%) scale(-1);
                  transform: translateY(-50%) scale(-1); } }
      @media screen and (min-width: 64em) {
        .locations-wrapper .locations-list li .location-link {
          padding: 1.71429rem 4.14286rem; }
          .locations-wrapper .locations-list li .location-link:hover {
            background-color: #DCC18E; } }
    .locations-wrapper .locations-list li + li {
      border-top: solid 1px #4E4D50; }
  .locations-wrapper .locations-list .location-info {
    overflow: hidden;
    height: 0; }
    .locations-wrapper .locations-list .location-info > .row {
      margin-left: -8px;
      margin-right: -8px; }
      .locations-wrapper .locations-list .location-info > .row:first-child {
        margin-top: 0.57143rem; }
      .locations-wrapper .locations-list .location-info > .row:last-child {
        margin-bottom: 1.14286rem; }
    @media screen and (min-width: 64em) {
      .locations-wrapper .locations-list .location-info {
        display: none; } }

@media screen and (min-width: 64em) {
  .section-container.floor-plan-section {
    padding-top: 6.85714rem; }
    .section-container.floor-plan-section + .section-container {
      padding-top: 6.85714rem; } }

.venue-link {
  position: relative; }
  .venue-link a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 5; }
  .venue-link .image-container {
    height: 68.08511vw; }
    @media screen and (min-width: 64em) {
      .venue-link .image-container {
        height: 20vw; } }
    .venue-link .image-container:before {
      content: '';
      background-color: rgba(34, 32, 32, 0.64);
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      opacity: 1;
      -webkit-transition: all 400ms ease;
      transition: all 400ms ease; }
  .venue-link figcaption {
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
    .venue-link figcaption h3 {
      margin-bottom: 0.71429rem; }
  .venue-link:hover .image-container:before {
    background-color: rgba(56, 55, 58, 0.16); }

@media screen and (min-width: 64em) {
  .section-container.venue-description-section {
    padding-top: 9.28571rem; } }

@media screen and (max-width: 63.9375em) {
  .single-rooms .landing-carousel .slide-holder {
    height: 90.14423vw; } }

.grid-tile.w-image-link .image-container:hover img {
  opacity: 1; }

.grid-tile.w-image-link .image-container:hover .rooms-overview-link {
  opacity: 0; }

.grid-tile.w-image-link .image-container img {
  -webkit-transition: opacity .15s ease-in-out;
  transition: opacity .15s ease-in-out; }

.grid-tile.w-image-link .rooms-overview-link {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: block;
  height: 100%;
  width: 100%;
  z-index: 10;
  -webkit-transition: opacity .15s ease-in-out;
  transition: opacity .15s ease-in-out;
  background-color: rgba(0, 0, 0, 0.35); }

.grid-tile.w-image-link .hover-caption {
  z-index: 11; }

.section-container.special-offers-section {
  padding: 6.85714rem 0; }
  @media screen and (min-width: 64em) {
    .section-container.special-offers-section {
      min-height: 100vh;
      padding: 18.28571rem 0; } }

@media screen and (min-width: 40em) {
  .special-offers-carousel .slick-slide {
    padding: 0 12px;
    -webkit-perspective: 900px;
            perspective: 900px;
    -webkit-transition: all 400ms ease;
    transition: all 400ms ease; }
    .special-offers-carousel .slick-slide .card-tile {
      opacity: 0.15;
      -webkit-transform: translateX(5vw) rotateY(25deg);
              transform: translateX(5vw) rotateY(25deg);
      -webkit-transition: inherit;
      transition: inherit; }
    .special-offers-carousel .slick-slide:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0;
      z-index: -1;
      background-color: #222020;
      border-radius: 2px;
      -webkit-transform: translateX(5vw) rotateY(25deg);
              transform: translateX(5vw) rotateY(25deg); }
    .special-offers-carousel .slick-slide.slick-current .card-tile, .special-offers-carousel .slick-slide.slick-active .card-tile, .special-offers-carousel .slick-slide.slick-center .card-tile, .special-offers-carousel .slick-slide:nth-child(2):nth-last-child(2) .card-tile {
      opacity: 1;
      -webkit-transform: rotateY(0) !important;
              transform: rotateY(0) !important; }
    .special-offers-carousel .slick-slide.slick-current:after, .special-offers-carousel .slick-slide.slick-active:after, .special-offers-carousel .slick-slide.slick-center:after, .special-offers-carousel .slick-slide:nth-child(2):nth-last-child(2):after {
      opacity: 0;
      -webkit-transform: rotateY(0) !important;
              transform: rotateY(0) !important; }
    .special-offers-carousel .slick-slide.slick-current ~ .slick-slide:not(.slick-current):not(.slick-active):not(.slick-center) .card-tile, .special-offers-carousel .slick-slide.slick-active ~ .slick-slide:not(.slick-current):not(.slick-active):not(.slick-center) .card-tile, .special-offers-carousel .slick-slide.slick-center ~ .slick-slide:not(.slick-current):not(.slick-active):not(.slick-center) .card-tile, .special-offers-carousel .slick-slide:nth-child(2):nth-last-child(2) ~ .slick-slide:not(.slick-current):not(.slick-active):not(.slick-center) .card-tile {
      -webkit-transform: translateX(-5vw) rotateY(-25deg);
              transform: translateX(-5vw) rotateY(-25deg); }
    .special-offers-carousel .slick-slide.slick-current ~ .slick-slide:not(.slick-current):not(.slick-active):not(.slick-center):after, .special-offers-carousel .slick-slide.slick-active ~ .slick-slide:not(.slick-current):not(.slick-active):not(.slick-center):after, .special-offers-carousel .slick-slide.slick-center ~ .slick-slide:not(.slick-current):not(.slick-active):not(.slick-center):after, .special-offers-carousel .slick-slide:nth-child(2):nth-last-child(2) ~ .slick-slide:not(.slick-current):not(.slick-active):not(.slick-center):after {
      -webkit-transform: translateX(-5vw) rotateY(-25deg);
              transform: translateX(-5vw) rotateY(-25deg); } }

.special-offers-carousel .slick-prev,
.special-offers-carousel .slick-next {
  z-index: 5; }
  .special-offers-carousel .slick-prev:before,
  .special-offers-carousel .slick-next:before {
    font-size: 1.71429rem; }

.special-offers-carousel .slick-prev {
  left: 5%; }

.special-offers-carousel .slick-next {
  right: 5%; }

.special-offers-carousel .card-tile {
  position: relative; }
  @media screen and (max-width: 39.9375em) {
    .special-offers-carousel .card-tile .card-image .image-container {
      padding-top: 78.28746%; }
    .special-offers-carousel .card-tile .card-content {
      background-color: #fff;
      color: #222020;
      text-align: left;
      padding-bottom: 4.14286rem; }
      .special-offers-carousel .card-tile .card-content h3 {
        color: #222020; }
        .special-offers-carousel .card-tile .card-content h3 small {
          color: inherit; }
      .special-offers-carousel .card-tile .card-content .rg-btn, .special-offers-carousel .card-tile .card-content .border-btn {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        background-color: #DCC18E;
        color: #fff;
        border: 0;
        border-top-left-radius: 0;
        border-top-right-radius: 0; } }
  @media screen and (min-width: 40em) {
    .special-offers-carousel .card-tile .card-image .image-container {
      padding-top: 71%; }
    .special-offers-carousel .card-tile .card-content {
      background-color: #38373A;
      text-align: left;
      color: #fff;
      font-size: 1rem;
      padding: 3.57143rem 2.57143rem 2rem; }
      .special-offers-carousel .card-tile .card-content h5 {
        margin-bottom: 2rem; }
      .special-offers-carousel .card-tile .card-content p .rg-btn {
        color: #fff; }
      .special-offers-carousel .card-tile .card-content p .rg-btn + a {
        margin-left: 1.71429rem; }
    .special-offers-carousel .card-tile.featured .card-content {
      background-color: #DCC18E;
      color: #222020; }
      .special-offers-carousel .card-tile.featured .card-content h3 {
        color: inherit; } }

.module-venue-carousel .card-tile .card-image:before {
  display: none; }

.floating-caption {
  display: none;
  position: absolute;
  background-color: rgba(255, 255, 255, 0.9);
  text-align: left;
  font-size: 1rem;
  bottom: 20%;
  left: 11%;
  right: 60%;
  border-radius: 2px;
  -webkit-transform: translateY(25%);
          transform: translateY(25%);
  padding: 2.28571rem 3.42857rem 2.28571rem;
  color: #1A1818;
  z-index: 5;
  box-shadow: 0 8px 24px 0 rgba(0, 0, 0, 0.16); }
  .floating-caption h5 {
    margin-bottom: 1.14286rem; }
  .floating-caption p:last-child {
    margin-bottom: 0; }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .floating-caption {
      right: 50%; } }
  @media screen and (min-width: 40em) {
    .floating-caption {
      display: block; } }

.floorplan-thumbnail {
  position: relative; }

.floorplan-btn {
  display: block;
  position: absolute;
  top: 8.33333%;
  right: 16.66667%;
  background-color: #FDFDFD;
  width: 3.42857rem;
  height: 3.42857rem;
  line-height: 3.42857rem;
  color: #1A1818;
  border-radius: 2px; }

@media screen and (min-width: 64em) {
  .venue-description-section .content {
    margin-bottom: 2.28571rem; } }

@media screen and (min-width: 64em) {
  .section-container.venue-description-section + .section-container.form-section {
    margin-top: 12.85714rem; } }

/* endinject */

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX25vcm1hbGl6ZS1taXhpbi5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fdmFyaWFibGVzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192ZXJ0aWNhbC1yaHl0aG0uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvX2dsb2JhbC5zY3NzIiwiX3NldHRpbmdzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19mbGV4LWdyaWQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcm93LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19ndXR0ZXIuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19tYXRoLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2xhYmVsLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lZGlhLW9iamVjdC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxvYXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxleC5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19mbGV4LnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX3NldHRpbmdzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL19rZXlmcmFtZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3NsaWRlLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fZmFkZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvZWZmZWN0cy9faGluZ2Uuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19oaW5nZS5zY3NzIiwiLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3pvb20uc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zcGluLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL19hbmltYXRpb24uc2NzcyIsInNpdGUvaGVscGVycy9faWNvbnMuc2NzcyIsInBsdWdpbnMvX3NldHRpbmdzLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2suc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9zbGljay1jYXJvdXNlbC9zbGljay9zbGljay10aGVtZS5zY3NzIiwicGx1Z2lucy9qcXVlcnktdWkvX2NvcmUuc2NzcyIsInBsdWdpbnMvanF1ZXJ5LXVpL19hY2NvcmRpb24uc2NzcyIsInBsdWdpbnMvanF1ZXJ5LXVpL190YWJzLnNjc3MiLCJwbHVnaW5zL2pxdWVyeS11aS9fZGF0ZXBpY2tlci5zY3NzIiwicGx1Z2lucy9faW1wb3J0LnNjc3MiLCJwbHVnaW5zL2ltcG9ydC9fa3dpY2tzLnNjc3MiLCJwbHVnaW5zL2ltcG9ydC9fbW9kYWFsLnNjc3MiLCJwbHVnaW5zL2ltcG9ydC9fcmVtb2RhbC5zY3NzIiwicGx1Z2lucy9pbXBvcnQvX3JlbW9kYWwudGhlbWUuc2NzcyIsInBsdWdpbnMvaW1wb3J0L19yZXNwb25zaXZlLXRhYnMuc2NzcyIsInBsdWdpbnMvaW1wb3J0L19zY3JvbGxiYXJzLnNjc3MiLCJwbHVnaW5zL2ltcG9ydC9fc2VsZWN0cmljLnNjc3MiLCJwbHVnaW5zL2ltcG9ydC9fdGFibGVzYXcuc2NzcyIsInNpdGUvX2Jhc2Uuc2NzcyIsInNpdGUvYmFzZS9fZ2xvYmFsLnNjc3MiLCJfdmFyaWFibGVzLnNjc3MiLCJzaXRlL2Jhc2UvX25hdmlnYXRpb24uc2NzcyIsInNpdGUvYmFzZS9fbGF5b3V0LnNjc3MiLCJzaXRlL2Jhc2UvX2Zvb3Rlci5zY3NzIiwic2l0ZS9jb21wb25lbnRzL19wcmVsb2FkZXIuc2NzcyIsInNpdGUvY29tcG9uZW50cy9fYm9va2luZy13aWRnZXQuc2NzcyIsInNpdGUvY29tcG9uZW50cy9fb3BlbnRhYmxlLnNjc3MiLCJzaXRlL2NvbXBvbmVudHMvX2Nhcm91c2VsLnNjc3MiLCJzaXRlL2NvbXBvbmVudHMvX2Zvcm1zLnNjc3MiLCJzaXRlL2NvbXBvbmVudHMvX21hcHMuc2NzcyIsInNpdGUvY29tcG9uZW50cy9fbW9kYWwuc2NzcyIsInNpdGUvY29tcG9uZW50cy9fbWNzLXRoZW1lLnNjc3MiLCJzaXRlL2NvbXBvbmVudHMvX3NlbGVjdHJpYy5zY3NzIiwic2l0ZS9jb21wb25lbnRzL19zb2NpYWwuc2NzcyIsInNpdGUvY29tcG9uZW50cy9fc3Vic2NyaWJlLnNjc3MiLCJzaXRlL2NvbXBvbmVudHMvX3RhYmxlcy5zY3NzIiwic2l0ZS9fbW9kdWxlcy5zY3NzIiwic2l0ZS9tb2R1bGVzL19jYXJkLXRpbGUuc2NzcyIsInNpdGUvbW9kdWxlcy9fY2VudGVyLXRleHQtc2VjdGlvbi5zY3NzIiwic2l0ZS9tb2R1bGVzL19pbWFnZS1ncmlkLnNjc3MiLCJzaXRlL21vZHVsZXMvX2ludHJvLXNlY3Rpb24uc2NzcyIsInNpdGUvbW9kdWxlcy9fbGFuZGluZy1jYXJvdXNlbC5zY3NzIiwic2l0ZS9tb2R1bGVzL19tb3JwaGluZy1ib3guc2NzcyIsInNpdGUvbW9kdWxlcy9fb2ZmZXJzLXNsaWRlci5zY3NzIiwic2l0ZS9tb2R1bGVzL19wcm9tb3Mtc2xpZGVyLnNjc3MiLCJzaXRlL21vZHVsZXMvX3Jvb21zLXNsaWRlci5zY3NzIiwic2l0ZS9fdGVtcGxhdGVzLnNjc3MiLCJzaXRlL3RlbXBsYXRlcy9fY29udGFjdC5zY3NzIiwic2l0ZS90ZW1wbGF0ZXMvX2RlZmF1bHQtcGFnZS5zY3NzIiwic2l0ZS90ZW1wbGF0ZXMvX2Vycm9yLTQwNC5zY3NzIiwic2l0ZS90ZW1wbGF0ZXMvX2ZhcS5zY3NzIiwic2l0ZS90ZW1wbGF0ZXMvX2Zvb2QtZHJpbmsuc2NzcyIsInNpdGUvdGVtcGxhdGVzL19mcm9udC1wYWdlLnNjc3MiLCJzaXRlL3RlbXBsYXRlcy9fZ2FsbGVyeS5zY3NzIiwic2l0ZS90ZW1wbGF0ZXMvX2hpc3Rvcnkuc2NzcyIsInNpdGUvdGVtcGxhdGVzL19tYXAtcGFnZS5zY3NzIiwic2l0ZS90ZW1wbGF0ZXMvX21lZXRpbmdzLnNjc3MiLCJzaXRlL3RlbXBsYXRlcy9fcm9vbXMuc2NzcyIsInNpdGUvdGVtcGxhdGVzL19zcGVjaWFsLW9mZmVycy5zY3NzIiwic2l0ZS90ZW1wbGF0ZXMvX3ZlbnVlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOzs7OztHQUtHO0FDd0NELGlFQUFpRTtBQUcvRDtvRkFDZ0Y7QUFFaEY7Ozs7O09BS0c7QUFFSDtFQUNFLHdCQzFDdUI7RUQwQ1MsT0FBTztFQVFyQyxrQkFBa0I7RUFBRSxPQUFPO0VBRTdCLDJCQUEyQjtFQUFFLE9BQU87RUFDcEMsK0JBQStCO0VBQUUsT0FBTyxFQUN6Qzs7QUFJRDtvRkFDZ0Y7QUFFaEY7O09BRUc7QUFFSDtFQUNFLFVBQVUsRUFDWDs7QUFFRDs7T0FFRztBQUVIOzs7Ozs7RUFNRSxlQUFlLEVBQ2hCOztBQUVEOzs7T0FHRztBQUVIO0VFOUVGLGVBWGlCO0VGb0dYLGlCQUFpQixFQUVwQjs7QUFvQ0Q7b0ZBQ2dGO0FBdUNoRjs7T0FFRztBQUVIOztFQUVFLGVBQWUsRUFDaEI7O0FBRUQ7O09BRUc7QUFFSDtFQUtJLGlCQ3ZMWSxFRHlMZjs7QUFFRDs7O09BR0c7QUFFSDtFQUNFLHdCQUF3QjtFQUFFLE9BQU87RUFDakMsVUFBVTtFQUFFLE9BQU87RUFDbkIsa0JBQWtCO0VBQUUsT0FBTyxFQUM1Qjs7QUFFRDs7T0FFRztBQUVIO0VBQ0UsZUFBZSxFQUNoQjs7QUFhRDs7O09BR0c7QUFFSDtFQUNFLGtDQUFrQztFQUFFLE9BQU87RUFDM0MsZUFBZTtFQUFFLE9BQU8sRUFDekI7O0FBSUQ7b0ZBQ2dGO0FBRWhGOzs7T0FHRztBQUVIO0VBQ0UsOEJBQThCO0VBQUUsT0FBTztFQUN2QyxzQ0FBc0M7RUFBRSxPQUFPLEVBQ2hEOztBQUVEOzs7T0FHRztBQUVIOztFQUVFLGlCQUFpQixFQUNsQjs7QUFJRDtvRkFDZ0Y7QUFFaEY7OztPQUdHO0FBRUg7RUFDRSxvQkFBb0I7RUFBRSxPQUFPO0VBQzdCLDJCQUEyQjtFQUFFLE9BQU87RUFDcEMsa0NBQWtDO0VBQUUsT0FBTyxFQUM1Qzs7QUFFRDs7T0FFRztBQUVIOztFQUVFLHFCQUFxQixFQUN0Qjs7QUFFRDs7T0FFRztBQUVIOztFQUVFLG9CQUFvQixFQUNyQjs7QUFFRDs7O09BR0c7QUFFSDs7O0VBR0Usa0NBQWtDO0VBQUUsT0FBTztFQUMzQyxlQUFlO0VBQUUsT0FBTyxFQUN6Qjs7QUFFRDs7T0FFRztBQUVIO0VBQ0UsbUJBQW1CLEVBQ3BCOztBQUVEOztPQUVHO0FBRUg7RUFDRSx1QkFBdUI7RUFDdkIsWUFBWSxFQUNiOztBQUVEOztPQUVHO0FBRUg7RUFDRSxlQUFlLEVBQ2hCOztBQUVEOzs7T0FHRztBQUVIOztFQUVFLGVBQWU7RUFDZixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLHlCQUF5QixFQUMxQjs7QUFFRDtFQUNFLGdCQUFnQixFQUNqQjs7QUFFRDtFQUNFLFlBQVksRUFDYjs7QUFJRDtvRkFDZ0Y7QUFFaEY7O09BRUc7QUFFSDs7RUFFRSxzQkFBc0IsRUFDdkI7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLGNBQWM7RUFDZCxVQUFVLEVBQ1g7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLG1CQUFtQixFQUNwQjs7QUFFRDs7T0FFRztBQUVIO0VBQ0UsaUJBQWlCLEVBQ2xCOztBQUlEO29GQUNnRjtBQUVoRjs7O09BR0c7QUFFSDs7Ozs7RUFLRSx3QkN6WnVCO0VEeVpTLE9BQU87RUFDdkMsZ0JBQWdCO0VBQUUsT0FBTztFQUt2QixrQkFBa0I7RUFBRSxPQUFPO0VBRTdCLFVBQVU7RUFBRSxPQUFPLEVBQ3BCOztBQUVEOztPQUVHO0FBRUg7RUFDRSxrQkFBa0IsRUFDbkI7O0FBRUQ7OztPQUdHO0FBRUg7O0VBQ1MsT0FBTztFQUNkLHFCQUFxQixFQUN0Qjs7QUFFRDs7OztPQUlHO0FBRUg7Ozs7RUFJRSwyQkFBMkI7RUFBRSxPQUFPLEVBQ3JDOztBQUVEOzs7O0VBS0U7O1NBRUc7RUFPSDs7U0FFRyxFQUtKO0VBckJEOzs7O0lBVUksbUJBQW1CO0lBQ25CLFdBQVcsRUFDWjtFQVpIOzs7O0lBbUJJLCtCQUErQixFQUNoQzs7QUFHSDs7T0FFRztBQUVIO0VBQ0Usa0JBQWtCLEVBQ25COztBQUVEOzs7T0FHRztBRjNNUDs7RUUrTU0sdUJBQXVCO0VBQUUsT0FBTztFQUNoQyxXQUFXO0VBQUUsT0FBTyxFQUNyQjs7QUFFRDs7T0FFRztBRjNNUDs7RUUrTU0sYUFBYSxFQUNkOztBQUVEOzs7T0FHRztBRjdNUDtFRWdOTSw4QkFBOEI7RUFBRSxPQUFPO0VBQ3ZDLHFCQUFxQjtFQUFFLE9BQU87RUFFOUI7O1NBRUcsRUFNSjtFRm5OSDtJRWlOTSx5QkFBeUIsRUFDMUI7O0FBR0g7OztPQUdHO0FBRUg7RUFDRSwyQkFBMkI7RUFBRSxPQUFPO0VBQ3BDLGNBQWM7RUFBRSxPQUFPLEVBQ3hCOztBQUVEOztPQUVHO0FBRUg7RUFDRSwwQkFBMEI7RUFDMUIsY0FBYztFQUNkLCtCQUErQixFQUNoQzs7QUFFRDs7Ozs7T0FLRztBQUVIO0VBQ0UsdUJBQXVCO0VBQUUsT0FBTztFQUNoQyxlQUFlO0VBQUUsT0FBTztFQUN4QixnQkFBZ0I7RUFBRSxPQUFPO0VBQ3pCLFdBQVc7RUFBRSxPQUFPO0VBQ3BCLGVBQWU7RUFBRSxPQUFPO0VBQ3hCLG9CQUFvQjtFQUFFLE9BQU8sRUFDOUI7O0FBRUQ7OztPQUdHO0FBRUg7RUFDRSxzQkFBc0I7RUFBRSxPQUFPO0VBQy9CLHlCQUF5QjtFQUFFLE9BQU8sRUFDbkM7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLGVBQWUsRUFDaEI7O0FBSUQ7b0ZBQ2dGO0FBRWhGOztPQUVHO0FBRUg7RUFDRSxlQUFlLEVBQ2hCOztBQUVEOztPQUVHO0FBRUg7RUFDRSxtQkFBbUIsRUFDcEI7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLGVBQWUsRUFxQmhCOztBQUlEO29GQUNnRjtBQUVoRjs7T0FFRztBQUVIO0VBQ0Usc0JBQXNCLEVBQ3ZCOztBQUVEOztPQUVHO0FBRUg7RUFDRSxjQUFjLEVBQ2Y7O0FBSUQ7b0ZBQ2dGO0FBRWhGOztPQUVHO0FGeFBQO0VFMlBNLGNBQWMsRUFDZjs7QUd2aEJIO0VBQ0UsZ0ZBQWdELEVBQ2pEOztBQUVEO0VBQ0UsdUJBQXVCO0VBQ3ZCLGdCQ2hHbUIsRURpR3BCOztBQUdEOzs7RUFHRSxvQkFBb0IsRUFDckI7O0FBR0Q7RUFDRSxVQUFVO0VBQ1YsV0FBVztFQUVYLG9CQ2xGcUI7RURvRnJCLDRGQ2xGNkY7RURtRjdGLG9CQy9FeUI7RURnRnpCLGlCQ2pIbUI7RURrSG5CLFlDeEZRO0VEMkZOLG9DQUFvQztFQUNwQyxtQ0FBbUMsRUFFdEM7O0FBRUQ7RUFFRSxzQkFBc0I7RUFDdEIsdUJBQXVCO0VBR3ZCLGdCQUFnQjtFQUNoQixhQUFhO0VBQ2IsZ0NBQWdDLEVBQ2pDOztBQUdEO0VBQ0UsYUFBYTtFQUNiLGlCQUFpQjtFQUNqQixtQkN0R2UsRUR1R2hCOztBQUdEO0VBQ0UsdUJBQXVCO0VBQ3ZCLFlBQVk7RUFDWixtQkM3R2UsRUQ4R2hCOztBQUlEOzs7Ozs7RUFLSSwyQkFBMkIsRUFDNUI7O0FBSUg7RUFFRSxXQUFXO0VBQ1gseUJBQWlCO0tBQWpCLHNCQUFpQjtVQUFqQixpQkFBaUI7RUFDakIsVUFBVTtFQUNWLG1CQ2pJZTtFRGtJZix3QkFBd0I7RUFDeEIsZUFBZTtFQUNmLGFBeEd1QixFQXlHeEI7RUxzUUQ7SU92UkUsV0FBVyxFQUNaOztBRm1CRDtFQUNFLGVBQWUsRUFDaEI7O0FBR0Q7Ozs7O0VBS0UscUJBQXFCLEVBQ3RCOztBQUdEO0VBQ0UsMEJBQTBCLEVBQzNCOztBQUVEO0VBQ0UseUJBQXlCLEVBQzFCOztBR25IRDtFQzdCQSx1QkNUb0I7RUZuRGxCLG1CQUFtQjtFQUNuQixrQkFBa0I7RUFJbEIscUJBQWM7RUFBZCxzQkFBYztFQUFkLHFCQUFjO0VBQWQsY0FBYztFQUNkLCtCQWxCbUI7RUFrQm5CLDhCQWxCbUI7RUFrQm5CLDRCQWxCbUI7TUFrQm5CLHdCQWxCbUI7VUFrQm5CLG9CQWxCbUIsRUE2SXBCO0VBeENEO0lDMUNFLDBCQUZpQjtJQUdqQix5QkFIaUIsRUR1RGhCO0lHMEJDO01IckNKO1FDMUNFLDBCQUZpQjtRQUdqQix5QkFIaUIsRUR1RGhCLEVBQUE7SUcwQkM7TUhyQ0o7UUMxQ0UsMEJBRmlCO1FBR2pCLHlCQUhpQixFRHVEaEIsRUFBQTtJRytCQztNSDFDSjtRQzFDRSwwQkFGaUI7UUFHakIseUJBSGlCLEVEdURoQixFQUFBO0lHK0JDO01IMUNKO1FDMUNFLDBCQUZpQjtRQUdqQix5QkFIaUIsRUR1RGhCLEVBQUE7SUFYSDtNQVFNLGdCQUFnQjtNQUNoQixlQUFlLEVBQ2hCO0VBVkw7SUM3QkEsZ0JBSGEsRURxRFY7SUFyQkg7TUFrQk0sbUJBQW1CO01BQ25CLGtCQUFrQixFQUNuQjtFQXBCTDtJQzdCQSxnQkFIYSxFRHlEVjtFQXpCSDtJSXhHRSxpQkFGa0I7SUFHbEIsZ0JBSGtCLEVKd0lmO0VBOUJMOzs7SUFxQ0ksZ0JBQWdCO0lBQ2hCLGVBQWUsRUFDaEI7O0FBSUg7RUF0REEsb0JBeERjO0VBd0RkLHNCQXhEYztNQXdEZCxrQkF4RGM7VUF3RGQsY0F4RGM7RUlyQ1osMEJBRmtCO0VBR2xCLHlCQUhrQjtFSm9FbEIsYUFBYSxFQW1GZDtFR1JHO0lITUo7TUluSkUsMEJBRmtCO01BR2xCLHlCQUhrQixFSnVKbkIsRUFBQTs7QUFJRDtFQUNFLFlBQVk7RUFDWixlQUFlLEVBQ2hCOztBQUdEO0VBQ0UsZ0JBQWdCO0VBQ2hCLGVBQWU7RUFDZixpQkFBaUI7RUFDakIsZ0JBQWdCLEVBQ2pCOztBQUtHO0VBQ0Usb0JLbktnQjtFTG1LaEIsMkJLbktnQjtNTG1LaEIsdUJLbktnQjtVTG1LaEIsbUJLbktnQjtFTG9LaEIsb0JLcEtnQixFTHFLakI7O0FBS0Q7RU03SkosZ0JEaEJzQixFTCtLakI7O0FBVkQ7RUFDRSxvQktuS2dCO0VMbUtoQiw0QktuS2dCO01MbUtoQix3QktuS2dCO1VMbUtoQixvQktuS2dCO0VMb0toQixxQktwS2dCLEVMcUtqQjs7QUFLRDtFTTdKSixzQkRic0IsRUw0S2pCOztBQVZEO0VBQ0Usb0JLbktnQjtFTG1LaEIsc0JLbktnQjtNTG1LaEIsa0JLbktnQjtVTG1LaEIsY0tuS2dCO0VMb0toQixlS3BLZ0IsRUxxS2pCOztBQUtEO0VNN0pKLHVCRGJzQixFTDRLakI7O0FBVkQ7RUFDRSxvQktuS2dCO0VMbUtoQiw0QktuS2dCO01MbUtoQix3QktuS2dCO1VMbUtoQixvQktuS2dCO0VMb0toQixxQktwS2dCLEVMcUtqQjs7QUFLRDtFTTdKSixpQkRic0IsRUw0S2pCOztBQVZEO0VBQ0Usb0JLbktnQjtFTG1LaEIsNEJLbktnQjtNTG1LaEIsd0JLbktnQjtVTG1LaEIsb0JLbktnQjtFTG9LaEIscUJLcEtnQixFTHFLakI7O0FBS0Q7RU03SkosdUJEYnNCLEVMNEtqQjs7QUFWRDtFQUNFLG9CS25LZ0I7RUxtS2hCLHNCS25LZ0I7TUxtS2hCLGtCS25LZ0I7VUxtS2hCLGNLbktnQjtFTG9LaEIsZUtwS2dCLEVMcUtqQjs7QUFLRDtFTTdKSix1QkRic0IsRUw0S2pCOztBQVZEO0VBQ0Usb0JLbktnQjtFTG1LaEIsNEJLbktnQjtNTG1LaEIsd0JLbktnQjtVTG1LaEIsb0JLbktnQjtFTG9LaEIscUJLcEtnQixFTHFLakI7O0FBS0Q7RU03SkosaUJEYnNCLEVMNEtqQjs7QUFWRDtFQUNFLG9CS25LZ0I7RUxtS2hCLDRCS25LZ0I7TUxtS2hCLHdCS25LZ0I7VUxtS2hCLG9CS25LZ0I7RUxvS2hCLHFCS3BLZ0IsRUxxS2pCOztBQUtEO0VNN0pKLHVCRGJzQixFTDRLakI7O0FBVkQ7RUFDRSxvQktuS2dCO0VMbUtoQixzQktuS2dCO01MbUtoQixrQktuS2dCO1VMbUtoQixjS25LZ0I7RUxvS2hCLGVLcEtnQixFTHFLakI7O0FBS0Q7RU03SkosdUJEYnNCLEVMNEtqQjs7QUFWRDtFQUNFLG9CS25LZ0I7RUxtS2hCLDRCS25LZ0I7TUxtS2hCLHdCS25LZ0I7VUxtS2hCLG9CS25LZ0I7RUxvS2hCLHFCS3BLZ0IsRUxxS2pCOztBQUtEO0VNN0pKLGlCRGJzQixFTDRLakI7O0FBVkQ7RUFDRSxvQktuS2dCO0VMbUtoQiw0QktuS2dCO01MbUtoQix3QktuS2dCO1VMbUtoQixvQktuS2dCO0VMb0toQixxQktwS2dCLEVMcUtqQjs7QUFLRDtFTTdKSix1QkRic0IsRUw0S2pCOztBQVZEO0VBQ0Usb0JLbktnQjtFTG1LaEIsdUJLbktnQjtNTG1LaEIsbUJLbktnQjtVTG1LaEIsZUtuS2dCO0VMb0toQixnQktwS2dCLEVMcUtqQjs7QUFLRDtFTTdKSix1QkRic0IsRUw0S2pCOztBQUtEO0VBMUdKLHdCQUFnQjtNQUFoQixvQkFBZ0I7VUFBaEIsZ0JBQWdCLEVBNEdYO0VBMUdIO0lBR0Esb0JBRmdCO0lBRWhCLHVCQUZnQjtRQUVoQixtQkFGZ0I7WUFFaEIsZUFGZ0I7SUFHaEIsZ0JBSGdCLEVBSWpCOztBQW1HRztFQTFHSix3QkFBZ0I7TUFBaEIsb0JBQWdCO1VBQWhCLGdCQUFnQixFQTRHWDtFQTFHSDtJQUdBLG9CQUZnQjtJQUVoQixzQkFGZ0I7UUFFaEIsa0JBRmdCO1lBRWhCLGNBRmdCO0lBR2hCLGVBSGdCLEVBSWpCOztBQW1HRztFQTFHSix3QkFBZ0I7TUFBaEIsb0JBQWdCO1VBQWhCLGdCQUFnQixFQTRHWDtFQTFHSDtJQUdBLG9CQUZnQjtJQUVoQiw0QkFGZ0I7UUFFaEIsd0JBRmdCO1lBRWhCLG9CQUZnQjtJQUdoQixxQkFIZ0IsRUFJakI7O0FBbUdHO0VBMUdKLHdCQUFnQjtNQUFoQixvQkFBZ0I7VUFBaEIsZ0JBQWdCLEVBNEdYO0VBMUdIO0lBR0Esb0JBRmdCO0lBRWhCLHNCQUZnQjtRQUVoQixrQkFGZ0I7WUFFaEIsY0FGZ0I7SUFHaEIsZUFIZ0IsRUFJakI7O0FBbUdHO0VBMUdKLHdCQUFnQjtNQUFoQixvQkFBZ0I7VUFBaEIsZ0JBQWdCLEVBNEdYO0VBMUdIO0lBR0Esb0JBRmdCO0lBRWhCLHNCQUZnQjtRQUVoQixrQkFGZ0I7WUFFaEIsY0FGZ0I7SUFHaEIsZUFIZ0IsRUFJakI7O0FBbUdHO0VBMUdKLHdCQUFnQjtNQUFoQixvQkFBZ0I7VUFBaEIsZ0JBQWdCLEVBNEdYO0VBMUdIO0lBR0Esb0JBRmdCO0lBRWhCLDRCQUZnQjtRQUVoQix3QkFGZ0I7WUFFaEIsb0JBRmdCO0lBR2hCLHFCQUhnQixFQUlqQjs7QUFtR0c7RUExR0osd0JBQWdCO01BQWhCLG9CQUFnQjtVQUFoQixnQkFBZ0IsRUE0R1g7RUExR0g7SUFHQSxvQkFGZ0I7SUFFaEIsNEJBRmdCO1FBRWhCLHdCQUZnQjtZQUVoQixvQkFGZ0I7SUFHaEIscUJBSGdCLEVBSWpCOztBQW1HRztFQTFHSix3QkFBZ0I7TUFBaEIsb0JBQWdCO1VBQWhCLGdCQUFnQixFQTRHWDtFQTFHSDtJQUdBLG9CQUZnQjtJQUVoQix3QkFGZ0I7UUFFaEIsb0JBRmdCO1lBRWhCLGdCQUZnQjtJQUdoQixpQkFIZ0IsRUFJakI7O0FBK0hDO0VJcE5BLGlCQUZrQjtFQUdsQixnQkFIa0IsRUp1TjBCOztBQUc1QztFSXhOQSwwQkFGa0I7RUFHbEIseUJBSGtCLEVKMk5tQzs7QUc1RW5EO0VINEJBO0lBQ0Usb0JLbktnQjtJTG1LaEIsMkJLbktnQjtRTG1LaEIsdUJLbktnQjtZTG1LaEIsbUJLbktnQjtJTG9LaEIsb0JLcEtnQixFTHFLakI7RUFLRDtJTTdKSixnQkRoQnNCLEVMK0tqQjtFQVZEO0lBQ0Usb0JLbktnQjtJTG1LaEIsNEJLbktnQjtRTG1LaEIsd0JLbktnQjtZTG1LaEIsb0JLbktnQjtJTG9LaEIscUJLcEtnQixFTHFLakI7RUFLRDtJTTdKSixzQkRic0IsRUw0S2pCO0VBVkQ7SUFDRSxvQktuS2dCO0lMbUtoQixzQktuS2dCO1FMbUtoQixrQktuS2dCO1lMbUtoQixjS25LZ0I7SUxvS2hCLGVLcEtnQixFTHFLakI7RUFLRDtJTTdKSix1QkRic0IsRUw0S2pCO0VBVkQ7SUFDRSxvQktuS2dCO0lMbUtoQiw0QktuS2dCO1FMbUtoQix3QktuS2dCO1lMbUtoQixvQktuS2dCO0lMb0toQixxQktwS2dCLEVMcUtqQjtFQUtEO0lNN0pKLGlCRGJzQixFTDRLakI7RUFWRDtJQUNFLG9CS25LZ0I7SUxtS2hCLDRCS25LZ0I7UUxtS2hCLHdCS25LZ0I7WUxtS2hCLG9CS25LZ0I7SUxvS2hCLHFCS3BLZ0IsRUxxS2pCO0VBS0Q7SU03SkosdUJEYnNCLEVMNEtqQjtFQVZEO0lBQ0Usb0JLbktnQjtJTG1LaEIsc0JLbktnQjtRTG1LaEIsa0JLbktnQjtZTG1LaEIsY0tuS2dCO0lMb0toQixlS3BLZ0IsRUxxS2pCO0VBS0Q7SU03SkosdUJEYnNCLEVMNEtqQjtFQVZEO0lBQ0Usb0JLbktnQjtJTG1LaEIsNEJLbktnQjtRTG1LaEIsd0JLbktnQjtZTG1LaEIsb0JLbktnQjtJTG9LaEIscUJLcEtnQixFTHFLakI7RUFLRDtJTTdKSixpQkRic0IsRUw0S2pCO0VBVkQ7SUFDRSxvQktuS2dCO0lMbUtoQiw0QktuS2dCO1FMbUtoQix3QktuS2dCO1lMbUtoQixvQktuS2dCO0lMb0toQixxQktwS2dCLEVMcUtqQjtFQUtEO0lNN0pKLHVCRGJzQixFTDRLakI7RUFWRDtJQUNFLG9CS25LZ0I7SUxtS2hCLHNCS25LZ0I7UUxtS2hCLGtCS25LZ0I7WUxtS2hCLGNLbktnQjtJTG9LaEIsZUtwS2dCLEVMcUtqQjtFQUtEO0lNN0pKLHVCRGJzQixFTDRLakI7RUFWRDtJQUNFLG9CS25LZ0I7SUxtS2hCLDRCS25LZ0I7UUxtS2hCLHdCS25LZ0I7WUxtS2hCLG9CS25LZ0I7SUxvS2hCLHFCS3BLZ0IsRUxxS2pCO0VBS0Q7SU03SkosaUJEYnNCLEVMNEtqQjtFQVZEO0lBQ0Usb0JLbktnQjtJTG1LaEIsNEJLbktnQjtRTG1LaEIsd0JLbktnQjtZTG1LaEIsb0JLbktnQjtJTG9LaEIscUJLcEtnQixFTHFLakI7RUFLRDtJTTdKSix1QkRic0IsRUw0S2pCO0VBVkQ7SUFDRSxvQktuS2dCO0lMbUtoQix1QktuS2dCO1FMbUtoQixtQktuS2dCO1lMbUtoQixlS25LZ0I7SUxvS2hCLGdCS3BLZ0IsRUxxS2pCO0VBS0Q7SU03SkosdUJEYnNCLEVMNEtqQjtFQUtEO0lBMUdKLHdCQUFnQjtRQUFoQixvQkFBZ0I7WUFBaEIsZ0JBQWdCLEVBNEdYO0lBMUdIO01BR0Esb0JBRmdCO01BRWhCLHVCQUZnQjtVQUVoQixtQkFGZ0I7Y0FFaEIsZUFGZ0I7TUFHaEIsZ0JBSGdCLEVBSWpCO0VBbUdHO0lBMUdKLHdCQUFnQjtRQUFoQixvQkFBZ0I7WUFBaEIsZ0JBQWdCLEVBNEdYO0lBMUdIO01BR0Esb0JBRmdCO01BRWhCLHNCQUZnQjtVQUVoQixrQkFGZ0I7Y0FFaEIsY0FGZ0I7TUFHaEIsZUFIZ0IsRUFJakI7RUFtR0c7SUExR0osd0JBQWdCO1FBQWhCLG9CQUFnQjtZQUFoQixnQkFBZ0IsRUE0R1g7SUExR0g7TUFHQSxvQkFGZ0I7TUFFaEIsNEJBRmdCO1VBRWhCLHdCQUZnQjtjQUVoQixvQkFGZ0I7TUFHaEIscUJBSGdCLEVBSWpCO0VBbUdHO0lBMUdKLHdCQUFnQjtRQUFoQixvQkFBZ0I7WUFBaEIsZ0JBQWdCLEVBNEdYO0lBMUdIO01BR0Esb0JBRmdCO01BRWhCLHNCQUZnQjtVQUVoQixrQkFGZ0I7Y0FFaEIsY0FGZ0I7TUFHaEIsZUFIZ0IsRUFJakI7RUFtR0c7SUExR0osd0JBQWdCO1FBQWhCLG9CQUFnQjtZQUFoQixnQkFBZ0IsRUE0R1g7SUExR0g7TUFHQSxvQkFGZ0I7TUFFaEIsc0JBRmdCO1VBRWhCLGtCQUZnQjtjQUVoQixjQUZnQjtNQUdoQixlQUhnQixFQUlqQjtFQW1HRztJQTFHSix3QkFBZ0I7UUFBaEIsb0JBQWdCO1lBQWhCLGdCQUFnQixFQTRHWDtJQTFHSDtNQUdBLG9CQUZnQjtNQUVoQiw0QkFGZ0I7VUFFaEIsd0JBRmdCO2NBRWhCLG9CQUZnQjtNQUdoQixxQkFIZ0IsRUFJakI7RUFtR0c7SUExR0osd0JBQWdCO1FBQWhCLG9CQUFnQjtZQUFoQixnQkFBZ0IsRUE0R1g7SUExR0g7TUFHQSxvQkFGZ0I7TUFFaEIsNEJBRmdCO1VBRWhCLHdCQUZnQjtjQUVoQixvQkFGZ0I7TUFHaEIscUJBSGdCLEVBSWpCO0VBbUdHO0lBMUdKLHdCQUFnQjtRQUFoQixvQkFBZ0I7WUFBaEIsZ0JBQWdCLEVBNEdYO0lBMUdIO01BR0Esb0JBRmdCO01BRWhCLHdCQUZnQjtVQUVoQixvQkFGZ0I7Y0FFaEIsZ0JBRmdCO01BR2hCLGlCQUhnQixFQUlqQixFQUFBOztBR3dERztFSG1ERTtJQUNFLG9CQTVKTTtJQTRKTixzQkE1Sk07UUE0Sk4sa0JBNUpNO1lBNEpOLGNBNUpNLEVBNkpQLEVBQUE7O0FBS0Q7RUFFSSxvQkFBMkI7RUFBM0IsdUJBQTJCO01BQTNCLG1CQUEyQjtVQUEzQixlQUEyQixFQUs1QjtFR2pFTDtJSDBERTtNQUtNLG9CQXZLRTtNQXVLRixzQkF2S0U7VUF1S0Ysa0JBdktFO2NBdUtGLGNBdktFLEVBeUtMLEVBQUE7O0FHakVMO0VIdUVGO0lJcE5BLGlCQUZrQjtJQUdsQixnQkFIa0IsRUp1TjBCO0VBRzVDO0lJeE5BLDBCQUZrQjtJQUdsQix5QkFIa0IsRUoyTm1DLEVBQUE7O0FHNUVuRDtFSDRCQTtJQUNFLG9CS25LZ0I7SUxtS2hCLDJCS25LZ0I7UUxtS2hCLHVCS25LZ0I7WUxtS2hCLG1CS25LZ0I7SUxvS2hCLG9CS3BLZ0IsRUxxS2pCO0VBS0Q7SU03SkosZ0JEaEJzQixFTCtLakI7RUFWRDtJQUNFLG9CS25LZ0I7SUxtS2hCLDRCS25LZ0I7UUxtS2hCLHdCS25LZ0I7WUxtS2hCLG9CS25LZ0I7SUxvS2hCLHFCS3BLZ0IsRUxxS2pCO0VBS0Q7SU03Skosc0JEYnNCLEVMNEtqQjtFQVZEO0lBQ0Usb0JLbktnQjtJTG1LaEIsc0JLbktnQjtRTG1LaEIsa0JLbktnQjtZTG1LaEIsY0tuS2dCO0lMb0toQixlS3BLZ0IsRUxxS2pCO0VBS0Q7SU03SkosdUJEYnNCLEVMNEtqQjtFQVZEO0lBQ0Usb0JLbktnQjtJTG1LaEIsNEJLbktnQjtRTG1LaEIsd0JLbktnQjtZTG1LaEIsb0JLbktnQjtJTG9LaEIscUJLcEtnQixFTHFLakI7RUFLRDtJTTdKSixpQkRic0IsRUw0S2pCO0VBVkQ7SUFDRSxvQktuS2dCO0lMbUtoQiw0QktuS2dCO1FMbUtoQix3QktuS2dCO1lMbUtoQixvQktuS2dCO0lMb0toQixxQktwS2dCLEVMcUtqQjtFQUtEO0lNN0pKLHVCRGJzQixFTDRLakI7RUFWRDtJQUNFLG9CS25LZ0I7SUxtS2hCLHNCS25LZ0I7UUxtS2hCLGtCS25LZ0I7WUxtS2hCLGNLbktnQjtJTG9LaEIsZUtwS2dCLEVMcUtqQjtFQUtEO0lNN0pKLHVCRGJzQixFTDRLakI7RUFWRDtJQUNFLG9CS25LZ0I7SUxtS2hCLDRCS25LZ0I7UUxtS2hCLHdCS25LZ0I7WUxtS2hCLG9CS25LZ0I7SUxvS2hCLHFCS3BLZ0IsRUxxS2pCO0VBS0Q7SU03SkosaUJEYnNCLEVMNEtqQjtFQVZEO0lBQ0Usb0JLbktnQjtJTG1LaEIsNEJLbktnQjtRTG1LaEIsd0JLbktnQjtZTG1LaEIsb0JLbktnQjtJTG9LaEIscUJLcEtnQixFTHFLakI7RUFLRDtJTTdKSix1QkRic0IsRUw0S2pCO0VBVkQ7SUFDRSxvQktuS2dCO0lMbUtoQixzQktuS2dCO1FMbUtoQixrQktuS2dCO1lMbUtoQixjS25LZ0I7SUxvS2hCLGVLcEtn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SUFDRSxvQktuS2dCO0lMbUtoQiw0QktuS2dCO1FMbUtoQix3QktuS2dCO1lMbUtoQixvQktuS2dCO0lMb0toQixxQktwS2dCLEVMcUtqQjtFQUtEO0lNN0pKLHNCRGJzQixFTDRLakI7RUFWRDtJQUNFLG9CS25LZ0I7SUxtS2hCLHNCS25LZ0I7UUxtS2hCLGtCS25LZ0I7WUxtS2hCLGNLbktnQjtJTG9LaEIsZUtwS2dCLEVMcUtqQjtFQUtEO0lNN0pKLHVCRGJzQixFTDRLakI7RUFWRDtJQUNFLG9CS25LZ0I7SUxtS2hCLDRCS25LZ0I7UUxtS2hCLHdCS25LZ0I7WUxtS2hCLG9CS25LZ0I7SUxvS2hCLHFCS3BLZ0IsRUxxS2pCO0VBS0Q7SU03SkosaUJEYnNCLEVMNEtqQjtFQVZEO0lBQ0Usb0JLbktnQjtJTG1LaEIsNEJLbktnQjtRTG1LaEIsd0JLbktnQjtZTG1LaEIsb0JLbktnQjtJTG9LaEIscUJLcEtnQixFTHFLakI7RUFLRDtJTTdKSix1QkRic0IsRUw0S2pCO0VBVkQ7SUFDRSxvQktuS2dCO0lMbUtoQixzQktuS2dCO1FMbUtoQixrQktuS2dCO1lMbUtoQixjS25LZ0I7SUxvS2hCLGVLcEtnQixFTHFLakI7RUFLRDtJTTdKSix1QkRic0IsRUw0S2pCO0VBVkQ7SUFDRSxvQktuS2dCO0lMbUtoQiw0QktuS2dCO1FMbUtoQix3QktuS2dCO1lMbUtoQixvQktuS2dCO0lMb0toQixxQktwS2dCLEVMcUtqQjtFQUtEO0lNN0pKLGlCRGJzQixFTDRLakI7RUFWRDtJQUNFLG9CS25LZ0I7SUxtS2hCLDRCS25LZ0I7UUxtS2hCLHdCS25LZ0I7WUxtS2hCLG9CS25LZ0I7SUxvS2hCLHFCS3BLZ0IsRUxxS2pCO0VBS0Q7SU03SkosdUJEYnNCLEVMNEtqQjtFQVZEO0lBQ0Usb0JLbktnQjtJTG1LaEIsc0JLbktnQjtRTG1LaEIsa0JLbktnQjtZTG1LaEIsY0tuS2dCO0lMb0toQixlS3BLZ0IsRUxxS2pCO0VBS0Q7SU03SkosdUJEYnNCLEVMNEtqQjtFQVZEO0lBQ0Usb0JLbktnQjtJTG1LaEIsNEJLbktn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cUJLcEtnQixFTHFLakI7RUFLRDtJTTdKSixzQkRic0IsRUw0S2pCO0VBVkQ7SUFDRSxvQktuS2dCO0lMbUtoQixzQktuS2dCO1FMbUtoQixrQktuS2dCO1lMbUtoQixjS25LZ0I7SUxvS2hCLGVLcEtnQixFTHFLakI7RUFLRDtJTTdKSix1QkRic0IsRUw0S2pCO0VBVkQ7SUFDRSxvQktuS2dCO0lMbUtoQiw0QktuS2dCO1FMbUtoQix3QktuS2dCO1lMbUtoQixvQktuS2dCO0lMb0toQixxQktwS2dCLEVMcUtqQjtFQUtEO0lNN0pKLGlCRGJzQixFTDRLakI7RUFWRDtJQUNFLG9CS25LZ0I7SUxtS2hCLDRCS25LZ0I7UUxtS2hCLHdCS25LZ0I7WUxtS2hCLG9CS25LZ0I7SUxvS2hCLHFCS3BLZ0IsRUxxS2pCO0VBS0Q7SU03SkosdUJEYnNCLEVMNEtqQjtFQVZEO0lBQ0Usb0JLbktnQjtJTG1LaEIsc0JLbktnQjtRTG1LaEIsa0JLbktnQjtZTG1LaEIsY0tuS2dCO0lMb0toQixlS3BLZ0IsRUxxS2pCO0VBS0Q7SU03SkosdUJEYnNCLEVMNEtqQjtFQVZEO0lBQ0Usb0JLbktnQjtJTG1LaEIsNEJLbktnQjtRTG1LaEIsd0JLbktnQjtZTG1LaEIsb0JLbktnQjtJTG9LaEIscUJLcEtnQixFTHFLakI7RUFLRDtJTTdKSixpQkRic0IsRUw0S2pCO0VBVkQ7SUFDRSxvQktuS2dCO0lMbUtoQiw0QktuS2dCO1FMbUtoQix3QktuS2dCO1lMbUtoQixvQktuS2dCO0lMb0toQixxQktwS2dCLEVMcUtqQjtFQUtEO0lNN0pKLHVCRGJzQixFTDRLakI7RUFWRDtJQUNFLG9CS25LZ0I7SUxtS2hCLHNCS25LZ0I7UUxtS2hCLGtCS25LZ0I7WUxtS2hCLGNLbktnQjtJTG9LaEIsZUtwS2dCLEVMcUtqQjtFQUtEO0lNN0pKLHVCRGJzQixFTDRLakI7RUFWRDtJQUNFLG9CS25LZ0I7SUxtS2hCLDRCS25LZ0I7UUxtS2hCLHdCS25LZ0I7WUxtS2hCLG9CS25LZ0I7SUxvS2hCLHFCS3BLZ0IsRUxxS2pCO0VBS0Q7SU03Skos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QjtFS2tNbEIsbUJBQW1CO0VBQ25CLHFCVHRJc0I7RVN1SXRCLG1DVHJJeUMsRVNzSTFDOztBQUdEOztFQUVFLG1CQUFtQjtFQUNuQixxQkFBcUIsRUFDdEI7O0FBR0Q7O0VBRUUsaUJUck5vQjtFU3NOcEIscUJBQXFCLEVBQ3RCOztBQUdEO0VBQ0UsZ0JUNUprQjtFUzZKbEIscUJBQXFCLEVBQ3RCOztBQUdEOzs7Ozs7RUFNRSw0RlQzTzZGO0VTNE83RixtQlRoTXNCO0VTaU10QixvQlR6T3lCO0VTME96QixlVHpRYTtFUzBRYixtQ1Q1S3NDLEVTa0x2QztFQWhCRDs7Ozs7O0lBYUksZUFBZTtJQUNmLFlUdFBNLEVTdVBQOztBQVFHO0VBSUksc0JMdlBVO0VLbVFWLG9CVDdOVztFU3FPWCxjQUFjO0VBT2QsMEJMbFJVLEVLb1JiOztBQWpDRDtFQUlJLHNCTHZQVTtFS21RVixvQlQ3Tlc7RVNxT1gsY0FBYztFQUdkLDBCTDlRVSxFS29SYjs7QUFqQ0Q7RUFJSSxzQkx2UFU7RUttUVYsb0JUN05XO0VTcU9YLGNBQWM7RUFPZCwwQkxsUlUsRUtvUmI7O0FBakNEO0VBSUksc0JMdlBVO0VLbVFWLG9CVDdOVztFU3FPWCxjQUFjO0VBR2QsMEJMOVFVLEVLb1JiOztBQWpDRDtFQUlJLGdCTHZQVTtFS21RVixvQlQ3Tlc7RVNxT1gsY0FBYztFQUdkLDBCTDlRVSxFS29SYjs7QUFqQ0Q7RUFJSSxzQkx2UFU7RUttUVYsb0JUN05XO0VTcU9YLGNBQWM7RUFHZCwwQkw5UVUsRUtvUmI7O0FKek1IO0VJd0tFO0lBSUksc0JMdlBVO0lLOFFWLDBCTDlRVSxFS29SYjtFQWpDRDtJQUlJLGdCTHZQVSxFS29SYjtFQWpDRDtJQUlJLHNCTHZQVTtJSzhRViwwQkw5UVUsRUtvUmI7RUFqQ0Q7SUFJSSxzQkx2UFUsRUtvUmI7RUFqQ0Q7SUFJSSxzQkx2UFU7SUs4UVYsMEJMOVFVLEVLb1JiO0VBakNEO0lBSUksZ0JMdlBVO0lLOFFWLDBCTDlRVSxFS29SYixFQUFBOztBQU1QO0VBQ0UscUJBQXFCO0VBQ3JCLGVUaFVhO0VTaVViLHNCVHJOeUI7RVN1TnpCLGdCQUFnQixFQWFqQjtFQWxCRDtJQVNJLGVUNU4wQixFU2dPM0I7RUFiSDtJQWdCSSxVQUFVLEVBQ1g7O0FBSUg7RUFDRSxZQUFZO0VBRVosdUJMbFRrQjtFS21UbEIsVUFBVTtFQUNWLHdCVHhPeUI7RVMwT3pCLGNBQWM7RUFDZCxnQkFBZ0I7RUFDaEIsaUNUdlVpQjtFU3dVakIsZUFBZSxFQUNoQjs7QUFHRDs7O0VBR0UsMEJMaFVrQjtFS2lVbEIsNkJUalB5QjtFU2tQekIscUJUclFzQixFU3NRdkI7O0FBR0Q7RUFDRSxtQkFBbUIsRUFDcEI7O0FBR0Q7RUFDRSxxQlQzUHNCO0VTNFB0QixzQlQ5UGtCLEVTK1BuQjs7QUFHRDtFQUNFLHFCVGpRc0IsRVNrUXZCOztBQUdEO0VBRUkscUJUdFEyQjtFU3VRM0IsaUJBQWlCLEVBQ2xCOztBQUlIO0VBQ0Usb0JUNVF5QixFU2tSMUI7RUFQRDtJQUlJLHNCVDdROEI7SVM4UTlCLGlCVHZXa0IsRVN3V25COztBQUlIO0VBQ0UsdUJMeldrQjtFSzBXbEIsNENMMVdrQjtFSzJXbEIsK0JUMVhpQixFU2dZbEI7RUFURDtJQU1JLHFCVGpUb0I7SVNrVHBCLGVUN1hhLEVTOFhkOztBQUlIO0VBQ0UsZUFBZTtFQUNmLHNCTHRYa0I7RUt1WGxCLGVUclllLEVTMFloQjtFQVJEO0lBTUksY1QvUmdCLEVBQWE7O0FTb1NqQztFQUNFLGtDVDdZVztFUzhZWCxhQUFhO0VBQ2Isc0JBQXNCLEVBQ3ZCOztBQUdEO0VBQ0UsVUFBVSxFQUNYOztBQUdEO0VBQ0UsMENMNVlrQjtFSzhZbEIsMEJUN1ppQjtFUzhaakIsMEJUL1pnQjtFU2lhaEIsNkRUN1dtRTtFUzhXbkUsb0JUdlp5QjtFU3daekIsZVRoYVcsRVNpYVo7O0FBR0Q7RUFDRSxVQUFVO0VBQ1YsaUNMcFpTO0VLc1pULDBCVDNhZ0I7RVM2YWhCLDZEVHpYbUU7RVMwWG5FLGVUM2FXO0VTOGFULG1CVHBhYSxFU3NhaEI7O0FDNWNEO0VBQ0UsbUJWbUp5QjtFVWxKekIsc0JWbUo0QjtF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RUFDdkI7O0FuQms0Q0w7O0VvQnpxREUsZUFBZTtFQUNmLHVCQUF1QjtFQUN2QixZQUFZO0VBQ1osbUJBTDBCO0VBTTFCLHVCVkhvQjtFVUlwQixvQkF0QzJCO0VBd0MzQix1QmRsQlU7RWNtQlYsbUJkVmlCO0VjV2pCLDhCZHdTNEI7RWN2UzVCLGlCZDRTaUI7RWMxU2pCLHFCZGtTeUI7RWNqU3pCLHNCVlpvQjtFVWFwQixpQmRqQnNCO0Vja0J0QixpQmRwRHFCO0VjcURyQixZZDNCVTtFYzhCUixvRWRzUzhEO0VjdFM5RCw0RGRzUzhEO0VjbFI5RCx5QkFBaUI7S0FBakIsc0JBQWlCO1VBQWpCLGlCQUFpQixFQUNsQjtFcEJvcEREOztJb0JwcURFLGNBQWM7SUFDZCx1QmRwQ1E7SWNxQ1IsOEJkd1JnQztJY3ZSaEMsaUJkNFJxQjtJY3pSbkIsb0VkMlI0RDtJYzNSNUQsNERkMlI0RCxFY3pSL0Q7O0FBV0Q7RUFDRSxnQkFBZ0IsRUFLakI7RUFORDtJQUlJLGFBQWEsRUFDZDs7QUFHSDs7RUFJSSxZZGxFTSxFY21FUDs7QUFMSDs7RUFJSSxZZGxFTSxFY21FUDs7QUFMSDs7RUFJSSxZZGxFTSxFY21FUDs7QUFMSDs7O0VBVUksNENkeEVNO0VjeUVOLG9CZDBQNkIsRWN6UDlCOztBcEJvcERMOztFb0I5b0RJLHlCQUFpQjtLQUFqQixzQkFBaUI7VUFBakIsaUJBQWlCO0VBQ2pCLG1CZHhFZSxFY3lFaEI7O0FBR0Q7RUFDRSx1QkFBdUIsRUFDeEI7O0FwQitvREg7OztFcUJ0eURJLHVCWDRFa0IsRVczRW5COztBckIweURIOztFcUJyeURJLHNCQUFzQjtFQUN0Qix5QkFBeUI7RUFFekIsd0JBQTRDO0VBQzVDLHlCWGtFa0I7RVdqRWxCLGlCQUFpQixFQUtsQjtFckJreUREOztJcUJweURJLGdCQUFnQixFQUNqQjs7QUFJSDs7RUFFRSx5QkFBNkMsRUFDOUM7O0FyQm95REg7RXFCaHlESSxZQUFZLEVBQ2I7O0FDR0Q7RUFqQkEsZUFBZTtFQUNmLFVBQVU7RUFFVixnQlo0RG9CO0VZM0RwQixvQmhCc0Qy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QUZEO0VDbkNKLDZCRGtDZ0I7RUNsQ2hCLGlCRGtDZ0I7TUNsQ2hCLGtCRGtDZ0I7VUNsQ2hCLFNEa0NnQixFQUdYOztBQUZEO0VDbkNKLDZCRGtDZ0I7RUNsQ2hCLGlCRGtDZ0I7TUNsQ2hCLGtCRGtDZ0I7VUNsQ2hCLFNEa0NnQixFQUdYOztBNUJxREQ7RTRCdkRBO0lDbkNKLDZCRGtDZ0I7SUNsQ2hCLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYO0VBRkQ7SUNuQ0osNkJEa0NnQjtJQ2xDaEIsaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSiw2QkRrQ2dCO0lDbENoQixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWDtFQUZEO0lDbkNKLDZCRGtDZ0I7SUNsQ2hCLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYO0VBRkQ7SUNuQ0osNkJEa0NnQjtJQ2xDaEIsaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSiw2QkRrQ2dCO0lDbENoQixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWCxFQUFBOztBNUJxREQ7RTRCdkRBO0lDbkNKLDZCRGtDZ0I7SUNsQ2hCLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYO0VBRkQ7SUNuQ0osNkJEa0NnQjtJQ2xDaEIsaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSiw2QkRrQ2dCO0lDbENoQixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWDtFQUZEO0lDbkNKLDZCRGtDZ0I7SUNsQ2hCLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYO0VBRkQ7SUNuQ0osNkJEa0NnQjtJQ2xDaEIsaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSiw2QkRrQ2dCO0lDbENoQixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWCxFQUFBOztBNUIwREQ7RTRCNURBO0lDbkNKLDZCRGtDZ0I7SUNsQ2hCLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYO0VBRkQ7SUNuQ0osNkJEa0NnQjtJQ2xDaEIsaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSiw2QkRrQ2dCO0lDbENoQixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWDtFQUZEO0lDbkNKLDZCRGtDZ0I7SUNsQ2hCLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYO0VBRkQ7SUNuQ0osNkJEa0NnQjtJQ2xDaEIsaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSiw2QkRrQ2dCO0lDbENoQixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWCxFQUFBOztBNUIwREQ7RTRCNURBO0lDbkNKLDZCRGtDZ0I7SUNsQ2hCLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYO0VBRkQ7SUNuQ0osNkJEa0NnQjtJQ2xDaEIsaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSiw2QkRrQ2dCO0lDbENoQixpQkRrQ2dCO1FDbENoQixrQkRrQ2dCO1lDbENoQixTRGtDZ0IsRUFHWDtFQUZEO0lDbkNKLDZCRGtDZ0I7SUNsQ2hCLGlCRGtDZ0I7UUNsQ2hCLGtCRGtDZ0I7WUNsQ2hCLFNEa0NnQixFQUdYO0VBRkQ7SUNuQ0osNkJEa0NnQjtJQ2xDaEIsaUJEa0NnQjtRQ2xDaEIsa0JEa0NnQjtZQ2xDaEIsU0RrQ2dCLEVBR1g7RUFGRDtJQ25DSiw2QkRrQ2dCO0lDbENoQixpQkRrQ2dCO1FDbENoQixrQkRr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ZEg7RUFsQkEsbUNDa0JjO1VEbEJkLDJCQ2tCYztFRGpCZCwyQ0NpQ2U7VURqQ2YsbUNDaUNlO0VDZ0JiLFdGaENrQztFS0FsQyxxQ0FBNkI7RUFBN0IsNkJBQTZCLEVERTVCOztBSkZIO0VFZ0NFLFdGaENxQyxFSWNwQzs7QUpiSDtFQW5CQSxtQ0NrQmM7VURsQmQsMkJDa0JjO0VEakJkLDJDQ2lDZTtVRGpDZixtQ0NpQ2U7RUNnQmIsV0YvQmtDO0VLRGxDLHFDQUE2QjtFQUE3Qiw2QkFBNkIsRURFNUI7O0FKREg7RUUrQkUsV0YvQnFDLEVJYXBDOztBSlZIO0VBdEJBLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYix1RElyQ1k7VUpxQ1osK0NJckNZO0VKcUNaLDhCQUZpQjtVQUVqQixzQkFGaUI7RUt2QmYsd0RBQXdDO0VBQXhDLGdEQUF3QztFQUF4Qyx3Q0FBd0M7RUFBeEMsMkRBQXdDO0VBQ3hDLFdBQTJCLEVITjVCOztBSkVIO0VFNEJFLG9ESVZzQztVSlV0Qyw0Q0lWc0M7RUNKcEMsV0FBMkIsRUhKNUI7O0FKVEg7RUF2QkEsbUNDa0JjO1VEbEJkLDJCQ2tCYztFRGpCZCwyQ0NpQ2U7VURqQ2YsbUNDaUNlO0VDZ0JiLHVESXBDYztVSm9DZCwrQ0lwQ2M7RUpvQ2QsZ0NBRmlCO1VBRWpCLHdCQUZpQjtFS3ZCZix3REFBd0M7RUFBeEMsZ0RBQXdDO0VBQXhDLHdDQUF3QztFQUF4QywyREFBd0M7RUFDeEMsV0FBMkIsRUhONUI7O0FKR0g7RUUyQkUsb0RJVnNDO1VKVXRDLDRDSVZzQztFQ0pwQyxXQUEyQixFSEo1Qjs7QUpSSDtFQXhCQSxtQ0NrQmM7VURsQmQsMkJDa0JjO0VEakJkLDJDQ2lDZTtVRGpDZixtQ0NpQ2U7RUNnQmIsc0RJbkNlO1VKbUNmLDhDSW5DZTtFSm1DZixpQ0FGaUI7VUFFakIseUJBRmlCO0VLdkJmLHdEQUF3QztFQUF4QyxnREFBd0M7RUFBeEMsd0NBQXdDO0VBQXhDLDJEQUF3QztFQUN4QyxXQUEyQixFSE41Qjs7QUpJSDtFRTBCRSxvRElWc0M7VUpVdEMsNENJVnNDO0VDSnBDLFdBQTJCLEVISjVCOztBSlBIO0VBekJBLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYixzRElsQ2E7VUprQ2IsOENJbENhO0VKa0NiLCtCQUZpQjtVQUVqQix1QkFGaUI7RUt2QmYsd0RBQXdDO0VBQXhDLGdEQUF3QztFQUF4Qyx3Q0FBd0M7RUFBeEMsMkRBQXdDO0VBQ3hDLFdBQTJCLEVITjVCOztBSktIO0VFeUJFLG9ESVZzQztVSlV0Qyw0Q0lWc0M7RUNKcEMsV0FBMkIsRUhKNUI7O0FKTkg7RUExQkEsbUNDa0JjO1VEbEJkLDJCQ2tCYztFRGpCZCwyQ0NpQ2U7VURqQ2YsbUNDaUNlO0VDZ0JiLHVESXJDWTtVSnFDWiwrQ0lyQ1k7RUpxQ1osaUNBRmlCO1VBRWpCLHlCQUZpQjtFS3ZCZix3REFBd0M7RUFBeEMsZ0RBQXdDO0VBQXhDLHdDQUF3QztFQUF4QywyREFBd0M7RUFDeEMsV0FBMkIsRUhONUI7O0FKTUg7RUV3QkUsb0RJVnNDO1VKVXRDLDRDSVZzQztFQ0pwQyxXQUEyQixFSEo1Qjs7QUpMSDtFQTNCQSxtQ0NrQmM7VURsQmQsMkJDa0JjO0VEakJkLDJDQ2lDZTtVRGpDZixtQ0NpQ2U7RUNnQmIsdURJcENjO1VKb0NkLCtDSXBDYztFSm9DZCxpQ0FGaUI7VUFFakIseUJBRmlCO0VLdkJmLHdEQUF3QztFQUF4QyxnREFBd0M7RUFBeEMsd0NBQXdDO0VBQXhDLDJEQUF3QztFQUN4QyxXQUEyQixFSE41Qjs7QUpPSDtFRXVCRSxvRElWc0M7VUpVdEMsNENJVnNDO0VDSnBDLFdBQTJCLEVISjVCOztBSkpIO0VBNUJBLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYixvRElSd0M7VUpReEMsNENJUndDO0VKUXhDLDhCQUZpQjtVQUVqQixzQkFGaUI7RUt2QmYsd0RBQXdDO0VBQXhDLGdEQUF3QztFQUF4Qyx3Q0FBd0M7RUFBeEMsMkRBQXdDO0VBQ3hDLFdBQThCLEVITi9COztBSlFIO0VFc0JFLHVESXJDWTtVSnFDWiwrQ0lyQ1k7RUN1QlYsV0FBOEIsRUhKL0I7O0FKSEg7RUE3QkEsbUNDa0JjO1VEbEJkLDJCQ2tCYztFRGpCZCwyQ0NpQ2U7VURqQ2YsbUNDaUNlO0VDZ0JiLG9ESVJ3QztVSlF4Qyw0Q0lSd0M7RUpReEMsZ0NBRmlCO1VBRWpCLHdCQUZpQjtFS3ZCZix3REFBd0M7RUFBeEMsZ0RBQXdDO0VBQXhDLHdDQUF3QztFQUF4QywyREFBd0M7RUFDeEMsV0FBOEIsRUhOL0I7O0FKU0g7RUVxQkUsdURJcENjO1VKb0NkLCtDSXBDYztFQ3NCWixXQUE4QixFSEovQjs7QUpGSDtFQTlCQSxtQ0NrQmM7VURsQmQsMkJDa0JjO0VEakJkLDJDQ2lDZTtVRGpDZixtQ0NpQ2U7RUNnQmIsb0RJUndDO1VKUXhDLDRDSVJ3QztFSlF4QyxpQ0FGaUI7VUFFakIseUJBRmlCO0VLdkJmLHdEQUF3QztFQUF4QyxnREFBd0M7RUFBeEMsd0NBQXdDO0VBQXhDLDJEQUF3QztFQUN4QyxXQUE4QixFSE4vQjs7QUpVSDtFRW9CRSxzREluQ2U7VUptQ2YsOENJbkNlO0VDcUJiLFdBQThCLEVISi9COztBSkRIO0VBL0JBLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYixvRElSd0M7VUpReEMsNENJUndDO0VKUXhDLCtCQUZpQjtVQUVqQix1QkFGaUI7RUt2QmYsd0RBQXdDO0VBQXhDLGdEQUF3QztFQUF4Qyx3Q0FBd0M7RUFBeEMsMkRBQXdDO0VBQ3hDLFdBQThCLEVITi9COztBSldIO0VFbUJFLHNESWxDYTtVSmtDYiw4Q0lsQ2E7RUNvQlgsV0FBOEIsRUhKL0I7O0FKQUg7RUFoQ0EsbUNDa0JjO1VEbEJkLDJCQ2tCYztFRGpCZCwyQ0NpQ2U7VURqQ2YsbUNDaUNlO0VDZ0JiLG9ESVJ3QztVSlF4Qyw0Q0lSd0M7RUpReEMsaUNBRmlCO1VBRWpCLHlCQUZpQjtFS3ZCZix3REFBd0M7RUFBeEMsZ0RBQXdDO0VBQXhDLHdDQUF3QztFQUF4QywyREFBd0M7RUFDeEMsV0FBOEIsRUhOL0I7O0FKWUg7RUVrQkUsdURJckNZO1VKcUNaLCtDSXJDWTtFQ3VCVixXQUE4QixFSEovQjs7QUpDSDtFQWpDQSxtQ0NrQmM7VURsQmQsMkJDa0JjO0VEakJkLDJDQ2lDZTtVRGpDZixtQ0NpQ2U7RUNnQmIsb0RJUndDO1VKUXhDLDRDSVJ3QztFSlF4QyxpQ0FGaUI7VUFFakIseUJBRmlCO0VLdkJmLHdEQUF3QztFQUF4QyxnREFBd0M7RUFBeEMsd0NBQXdDO0VBQXhDLDJEQUF3QztFQUN4QyxXQUE4QixFSE4vQjs7QUphSDtFRWlCRSx1RElwQ2M7VUpvQ2QsK0NJcENjO0VDc0JaLFdBQThCLEVISi9COztBSklIO0VBcENBLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYiw4QkFGaUI7VUFFakIsc0JBRmlCO0VNM0JmLHdEQUF3QztFQUF4QyxnREFBd0M7RUFBeEMsd0NBQXdDO0VBQXhDLDJEQUF3QztFQUN4QyxXQUEyQixFSkY1Qjs7QUpnQkg7RUVjRSw0QkFGaUI7VUFFakIsb0JBRmlCO0VNaEJmLFdBQTJCLEVKQTVCOztBSktIO0VBckNBLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYiw4QkFGaUI7VUFFakIsc0JBRmlCO0VNM0JmLHdEQUF3QztFQUF4QyxnREFBd0M7RUFBeEMsd0NBQXdDO0VBQXhDLDJEQUF3QztFQUN4QyxXQUEyQixFSkY1Qjs7QUppQkg7RUVhRSw0QkFGaUI7VUFFakIsb0JBRmlCO0VNaEJmLFdBQTJCLEVKQTVCOztBSk1IO0VBdENBLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYiw0QkFGaUI7VUFFakIsb0JBRmlCO0VNM0JmLHdEQUF3QztFQUF4QyxnREFBd0M7RUFBeEMsd0NBQXdDO0VBQXhDLDJEQUF3QztFQUN4QyxXQUE4QixFSkYvQjs7QUprQkg7RUVZRSw4QkFGaUI7VUFFakIsc0JBRmlCO0VNaEJmLFdBQThCLEVKQS9COztBSk9IO0VBdkNBLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYiw0QkFGaUI7VUFFakIsb0JBRmlCO0VNM0JmLHdEQUF3QztFQUF4QyxnREFBd0M7RUFBeEMsd0NBQXdDO0VBQXhDLDJEQUF3QztFQUN4QyxXQUE4QixFSkYvQjs7QUptQkg7RUVXRSw4QkFGaUI7VUFFakIsc0JBRmlCO0VNaEJmLFdBQThCLEVKQS9COztBSlVIO0VBMUNBLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYixxQ0FGaUI7VUFFakIsNkJBRmlCO0VPM0JmLHdEQUF3QztFQUF4QyxnREFBd0M7RUFBeEMsd0NBQXdDO0VBQXhDLDJEQUF3QztFQUN4QyxXQUEyQixFTEY1Qjs7QUpzQkg7RUVRRSw2QkFGaUI7VUFFakIscUJBRmlCO0VPaEJmLFdBQTJCLEVMQTVCOztBSldIO0VBM0NBLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYiw2QkFGaUI7VUFFakIscUJBRmlCO0VPM0JmLHdEQUF3QztFQUF4QyxnREFBd0M7RUFBeEMsd0NBQXdDO0VBQXhDLDJEQUF3QztFQUN4QyxXQUE4QixFTEYvQjs7QUp1Qkg7RUVPRSxvQ0FGaUI7VUFFakIsNEJBRmlCO0VPaEJmLFdBQThCLEVMQS9COztBSllIO0VBNUNBLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtFQ2dCYixvQ0FGaUI7VUFFakIsNEJBRmlCO0VPM0JmLHdEQUF3QztFQUF4QyxnREFBd0M7RUFBeEMsd0NBQXdDO0VBQXhDLDJEQUF3QztFQUN4QyxXQUEyQixFTEY1Qjs7QUp3Qkg7RUVNRSw2QkFGaUI7VUFFakIscUJBRmlCO0VPaEJmLFdBQTJCLEVMQTVCOztBSmFIO0VBN0NBLG1DQ2tCYztVRGxCZCwyQkNrQmM7RURqQmQsMkNDaUNlO1VEakNmLG1DQ2lDZTtF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SWExS2xDLHFCQTlFMEI7SUF3RnhCLHVCYitKMEI7SWE1SjVCLHlCQUF5QjtJQUN6Qiw4QkFBOEI7SUFDOUIsbUJibEJpQjtJYW1CakIsMEViMkt1RTtJYTNLdkUsa0ViMkt1RTtJYXpLdkUsa0Jia0tjO0lhaktkLGVBQWU7SUFDZixtQkFBbUI7SUFDbkIsZ0JBQWdCO0lBcUVoQiwwQmI5SGU7SWErSGYsZWIvSGUsRWdFbU1iO0l0RXMzT0E7TU9wNk9BLFdBQVcsRUFDWjtJK0RzQ0g7TW5EakZJLDhCQUE4QixFQUMvQjtJbURnRkg7TW5EMUVNLDhCQUE4QixFQUMvQjtJbUR5RUw7TW5EMURJLHNCQU51QjtNQU92QixlQVB1QixFQWF4QjtNbURtREg7UW5EdERNLDBCYnRJVztRYXVJWCxlYnZJVyxFYXdJWjtFUnpCQztJMkQ2RU47TW5EM0pFLHNCQUFzQjtNQUN0Qix1QkFBdUI7TUFDdkIsbUJiMktrQztNYTFLbEMscUJBOUUwQjtNQXdGeEIsdUJiK0owQjtNYTVKNUIseUJBQXlCO01BQ3pCLDhCQUE4QjtNQUM5QixtQmJsQmlCO01hbUJqQiwwRWIyS3VFO01hM0t2RSxrRWIyS3VFO01hekt2RSxrQmJrS2M7TWFqS2QsZUFBZTtNQUNmLG1CQUFtQjtNQUNuQixnQkFBZ0I7TUFxRWhCLDBCYjlIZTtNYStIZixlYi9IZSxFZ0VtTWI7TXRFbTVPRTtRT2o4T0YsV0FBVyxFQUNaO00rRHNDSDtRbkRqRkksOEJBQThCLEVBQy9CO01tRGdGSDtRbkQxRU0sOEJBQThCLEVBQy9CO01tRHlFTDtRbkQxREksc0JBTnVCO1FBT3ZCLGVBUHVCLEVBYXhCO1FtRG1ESDtVbkR0RE0sMEJidElXO1VhdUlYLGVidklXLEVhd0laLEVBQUE7RVJ6QkM7STJENkVOO01uRDNKRSxzQkFBc0I7TUFDdEIsdUJBQXVCO01BQ3ZCLG1CYjJLa0M7TWExS2xDLHFCQTlFMEI7TUF3RnhCLHVCYitKMEI7TWE1SjVCLHlCQUF5QjtNQUN6Qiw4QkFBOEI7TUFDOUIsbUJibEJpQjtNYW1CakIsMEViMkt1RTtNYTNLdkUsa0ViMkt1RTtNYXpLdkUsa0Jia0tjO01haktkLGVBQWU7TUFDZixtQkFBbUI7TUFDbkIsZ0JBQWdCO01BcUVoQiwwQmI5SGU7TWErSGYsZWIvSGUsRWdFbU1iO010RWc3T0U7UU85OU9GLFdBQVcsRUFDWjtNK0RzQ0g7UW5EakZJLDhCQUE4QixFQUMvQjtNbURnRkg7UW5EMUVNLDhCQUE4QixFQUMvQjtNbUR5RUw7UW5EMURJLHNCQU51QjtRQU92QixlQVB1QixFQWF4QjtRbURtREg7VW5EdERNLDBCYnRJVztVYXVJWCxlYnZJVyxFYXdJWixFQUFBO0VScEJDO0kyRHdFTjtNbkQzSkUsc0JBQXNCO01BQ3RCLHVCQUF1QjtNQUN2QixtQmIyS2tDO01hMUtsQyxxQkE5RTBCO01Bd0Z4Qix1QmIrSjBCO01hNUo1Qix5QkFBeUI7TUFDekIsOEJBQThCO01BQzlCLG1CYmxCaUI7TWFtQmpCLDBFYjJLdUU7TWEzS3ZFLGtFYjJLdUU7TWF6S3ZFLGtCYmtLYztNYWpLZCxlQUFlO01BQ2YsbUJBQW1CO01BQ25CLGdCQUFnQjtNQXFFaEIsMEJiOUhlO01hK0hmLGViL0hlLEVnRW1NYjtNdEU2OE9FO1FPMy9PRixXQUFXLEVBQ1o7TStEc0NIO1FuRGpGSSw4QkFBOEIsRUFDL0I7TW1EZ0ZIO1FuRDFFTSw4QkFBOEIsRUFDL0I7TW1EeUVMO1FuRDFESSxzQkFOdUI7UUFPdkIsZUFQdUIsRUFheEI7UW1EbURIO1VuRHRETSwwQmJ0SVc7VWF1SVgsZWJ2SVcsRWF3SVosRUFBQTtFUnBCQztJMkR3RU47TW5EM0pFLHNCQUFzQjtNQUN0Qix1QkFBdUI7TUFDdkIsbUJiMktrQztNYTFLbEMscUJBOUUwQjtNQXdGeEIsdUJiK0owQjtNYTVKNUIseUJBQXlCO01BQ3pCLDhCQUE4QjtNQUM5QixtQmJsQmlCO01hbUJqQiwwRWIyS3VFO01hM0t2RSxrRWIyS3VFO01hekt2RSxrQmJrS2M7TWFqS2QsZUFBZTtNQUNmLG1CQUFtQjtNQUNuQixnQkFBZ0I7TUFxRWhCLDBCYjlIZTtNYStIZixlYi9IZSxFZ0VtTWI7TXRFMCtPRTtRT3hoUEYsV0FBVyxFQUNaO00rRHNDSDtRbkRqRkksOEJBQThCLEVBQy9CO01tRGdGSDtRbkQxRU0sOEJBQThCLEVBQy9CO01tRHlFTDtRbkQxREksc0JBTnVCO1FBT3ZCLGVBUHVCLEVBYXhCO1FtRG1ESDtVbkR0RE0sMEJidElXO1VhdUlYLGVidklXLEVhd0laLEVBQUE7O0FtRGdFTDtFbkR2S0Usc0JBQXNCO0VBQ3RCLHVCQUF1QjtFQUN2QixtQmIyS2tDO0VhMUtsQyxxQkE5RTBCO0VBd0Z4Qix1QmIrSjBCO0VhNUo1Qix5QkFBeUI7RUFDekIsOEJBQThCO0VBQzlCLG1CYmxCaUI7RWFtQmpCLDBFYjJLdUU7RWEzS3ZFLGtFYjJLdUU7RWF6S3ZFLGtCYmtLYztFYWpLZCxlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLGdCQUFnQjtFQXFFaEIsMEJiOUhlO0VhK0hmLGViL0hlO0VnRTBNaEIsbUNDNVBpQztFRDRQakMsMkJDNVBpQztFRDZQakMsWWhFbkxXLEVnRTBNWDtFdEUwK09DO0lPdmpQRSxXQUFXLEVBQ1o7RStEa0RIO0luRDdGSSw4QkFBOEIsRUFDL0I7RW1ENEZIO0luRHRGTSw4QkFBOEIsRUFDL0I7RW1EcUZMO0luRHRFSSxzQkFOdUI7SUFPdkIsZUFQdUIsRUFheEI7SW1EK0RIO01uRGxFTSwwQmJ0SVc7TWF1SVgsZWJ2SVcsRWF3SVo7RW1EZ0VMO0lBTUUsdUJoRXRMVTtJZ0V1TFYsWWhFdkxVLEVnRTZMVjtJQWJGO01BU0csdUJoRXpMUztNZ0UyTFQsWWhFM0xTLEVnRTRMVDtFQVpIO0luRHZLRSxzQkFBc0I7SUFDdEIsdUJBQXVCO0lBQ3ZCLG1CYjJLa0M7SWExS2xDLHFCQTlFMEI7SUF3RnhCLHVCYitKMEI7SWE1SjVCLHlCQUF5QjtJQUN6Qiw4QkFBOEI7SUFDOUIsbUJibEJpQjtJYW1CakIsMEViMkt1RTtJYTNLdkUsa0ViMkt1RTtJYXpLdkUsa0Jia0tjO0lhaktkLGVBQWU7SUFDZixtQkFBbUI7SUFDbkIsZ0JBQWdCO0lBcUNoQiwwQmI5RmU7SWErRmYsWWJ2RVUsRWdFbU1SO0l0RW1oUEE7TU96bFBBLFdBQVcsRUFDWjtJK0RrREg7TW5EdEdJLDBCYitHaUM7TWE5R2pDLFliM0VRLEVhNEVUO0VSV0c7STJEeUZOO01uRHZLRSxzQkFBc0I7TUFDdEIsdUJBQXVCO01BQ3ZCLG1CYjJLa0M7TWExS2xDLHFCQTlFMEI7TUF3RnhCLHVCYitKMEI7TWE1SjVCLHlCQUF5QjtNQUN6Qiw4QkFBOEI7TUFDOUIsbUJibEJpQjtNYW1CakIsMEViMkt1RTtNYTNLdkUsa0ViMkt1RTtNYXpLdkUsa0Jia0tjO01haktkLGVBQWU7TUFDZixtQkFBbUI7TUFDbkIsZ0JBQWdCO01BcUNoQiwwQmI5RmU7TWErRmYsWWJ2RVUsRWdFbU1SO010RXlpUEU7UU8vbVBGLFdBQVcsRUFDWjtNK0RrREg7UW5EdEdJLDBCYitHaUM7UWE5R2pDLFliM0VRLEVhNEVULEVBQUE7RVJXRztJMkR5Rk47TW5EdktFLHNCQUFzQjtNQUN0Qix1QkFBdUI7TUFDdkIsbUJiMktrQztNYTFLbEMscUJBOUUwQjtNQXdGeEIsdUJiK0owQjtNYTVKNUIseUJBQXlCO01BQ3pCLDhCQUE4QjtNQUM5QixtQmJsQmlCO01hbUJqQiwwRWIyS3VFO01hM0t2RSxrRWIyS3VFO01hekt2RSxrQmJrS2M7TWFqS2QsZUFBZTtNQUNmLG1CQUFtQjtNQUNuQixnQkFBZ0I7TUFxQ2hCLDBCYjlGZTtNYStGZixZYnZFVSxFZ0VtTVI7TXRFK2pQRTtRT3JvUEYsV0FBVyxFQUNaO00rRGtESDtRbkR0R0ksMEJiK0dpQztRYTlHakMsWWIzRVEsRWE0RVQsRUFBQTtFUmdCRztJMkRvRk47TW5EdktFLHNCQUFzQjtNQUN0Qix1QkFBdUI7TUFDdkIsbUJiMktrQztNYTFLbEMscUJBOUUwQjtNQXdGeEIsdUJiK0owQjtNYTVKNUIseUJBQXlCO01BQ3pCLDhCQUE4QjtNQUM5QixtQmJsQmlCO01hbUJqQiwwRWIyS3VFO01hM0t2RSxrRWIyS3VFO01hekt2RSxrQmJrS2M7TWFqS2QsZUFBZTtNQUNmLG1CQUFtQjtNQUNuQixnQkFBZ0I7TUFxQ2hCLDBCYjlGZTtNYStGZixZYnZFVSxF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LEVBQ25COztBbkcrR0s7RW1HN0dOO0lBR0csMEJwRzBCbUIsRW9HeEJwQixFQUFBOztBbkd3R0k7RW1HckdOO0lBRUUsd0JwR21Cb0IsRW9HakJyQixFQUFBOztBYnpERCxlQUFlIiwiZmlsZSI6ImFwcC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi40LjNcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG4vKiEgbm9ybWFsaXplLXNjc3MgfCBNSVQvR1BMdjIgTGljZW5zZSB8IGJpdC5seS9ub3JtYWxpemUtc2NzcyAqL1xuLyogRG9jdW1lbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4gICAgICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICAgICAqL1xuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAyICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAzICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMyAqLyB9XG5cbi8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmFydGljbGUsXG5hc2lkZSxcbmZvb3RlcixcbmhlYWRlcixcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAgICAgKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gICAgICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmZpZ2NhcHRpb24sXG5maWd1cmUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gICAgICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gICAgICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyogTGlua3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAgICAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAgICAgKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogMSAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gICAgICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lLXdpZHRoOiAwOyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICAgICAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAgICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICAgICAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAgICAgKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuLyoqXG4gICAgICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gICAgICogYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmF1ZGlvLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAgICAgKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBGb3Jtc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAgICAgKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgICAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAgICAgKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gICAgICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gICAgICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICovXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDIgKi8gfVxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICAgICAqL1xuICAvKipcbiAgICAgICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICAgICAqLyB9XG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDsgfVxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbi8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gICAgICovXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAqL1xuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAgICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgICAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xuICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi8gfVxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiwgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICAgKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgICAgKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gICAgICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAzICovXG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDEgKi8gfVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgICAqL1xucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgICAgKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyogSW50ZXJhY3RpdmVcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gICAgICovXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyB9XG5cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyogU2NyaXB0aW5nXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuY2FudmFzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIEhpZGRlblxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gICAgICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvdW5kYXRpb24tbXEge1xuICBmb250LWZhbWlseTogXCJzbWFsbD0wZW0mbWVkaXVtPTQwZW0mbGFyZ2U9NjRlbSZ4bGFyZ2U9OTkuNDI4NTdlbSZ4eGxhcmdlPTEwMGVtXCI7IH1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTRweDsgfVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICMyMjIwMjA7XG4gIGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBOZXh0IFcwMVwiLCBcIkF2ZW5pciBOZXh0XCIsIEF2ZW5pciwgRnV0dXJhLCBcIkNlbnR1cnkgR290aGljXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjZmZmO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG5pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljOyB9XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuc2VsZWN0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cblxuYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY3Vyc29yOiBhdXRvOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBidXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IH1cblxuLmlzLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbi5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnJvdyB7XG4gIG1heC13aWR0aDogOTkuNDI4NTdyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjU3MTQzcmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC41NzE0M3JlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucm93IC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjg1NzE0cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuODU3MTRyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucm93IC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjg1NzE0cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuODU3MTRyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5LjQyODU3ZW0pIHtcbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuODU3MTRyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC44NTcxNHJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwZW0pIHtcbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuODU3MTRyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC44NTcxNHJlbTsgfSB9XG4gICAgLnJvdyAucm93LmNvbGxhcHNlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5yb3cuZXhwYW5kZWQge1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAgIC5yb3cuZXhwYW5kZWQgLnJvdyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAucm93Om5vdCguZXhwYW5kZWQpIC5yb3cge1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAucm93LmNvbGxhcHNlID4gLmNvbHVtbiwgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAucm93LmlzLWNvbGxhcHNlLWNoaWxkLFxuICAucm93LmNvbGxhcHNlID4gLmNvbHVtbiA+IC5yb3csXG4gIC5yb3cuY29sbGFwc2UgPiAuY29sdW1ucyA+IC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uY29sdW1uLCAuY29sdW1ucyB7XG4gIGZsZXg6IDEgMSAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNTcxNDNyZW07XG4gIHBhZGRpbmctbGVmdDogMC41NzE0M3JlbTtcbiAgbWluLXdpZHRoOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbHVtbiwgLmNvbHVtbnMge1xuICAgICAgcGFkZGluZy1yaWdodDogMC44NTcxNHJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC44NTcxNHJlbTsgfSB9XG5cbi5jb2x1bW4ucm93LnJvdywgLnJvdy5yb3cuY29sdW1ucyB7XG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucm93IC5jb2x1bW4ucm93LnJvdywgLnJvdyAucm93LnJvdy5jb2x1bW5zIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5zbWFsbC0xIHtcbiAgZmxleDogMCAwIDguMzMzMzMlO1xuICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTsgfVxuXG4uc21hbGwtMiB7XG4gIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuXG4uc21hbGwtMyB7XG4gIGZsZXg6IDAgMCAyNSU7XG4gIG1heC13aWR0aDogMjUlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLTQge1xuICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi5zbWFsbC01IHtcbiAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtNiB7XG4gIGZsZXg6IDAgMCA1MCU7XG4gIG1heC13aWR0aDogNTAlOyB9XG5cbi5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLTcge1xuICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi5zbWFsbC04IHtcbiAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtOSB7XG4gIGZsZXg6IDAgMCA3NSU7XG4gIG1heC13aWR0aDogNzUlOyB9XG5cbi5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLTEwIHtcbiAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuXG4uc21hbGwtMTEge1xuICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtMTIge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbi5zbWFsbC11cC0xIHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbiwgLnNtYWxsLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC11cC0yIHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC0yID4gLmNvbHVtbiwgLnNtYWxsLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuXG4uc21hbGwtdXAtMyB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtMyA+IC5jb2x1bW4sIC5zbWFsbC11cC0zID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXVwLTQge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTQgPiAuY29sdW1uLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG5cbi5zbWFsbC11cC01IHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTsgfVxuXG4uc21hbGwtdXAtNiB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtNiA+IC5jb2x1bW4sIC5zbWFsbC11cC02ID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLXVwLTcge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTcgPiAuY29sdW1uLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMTQuMjg1NzElO1xuICAgIG1heC13aWR0aDogMTQuMjg1NzElOyB9XG5cbi5zbWFsbC11cC04IHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC04ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDEyLjUlO1xuICAgIG1heC13aWR0aDogMTIuNSU7IH1cblxuLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMC41NzE0M3JlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjU3MTQzcmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5tZWRpdW0tMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLm1lZGl1bS01IHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLm1lZGl1bS04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5tZWRpdW0tMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC0xID4gLmNvbHVtbiwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVkaXVtLXVwLTIgPiAuY29sdW1uLCAubWVkaXVtLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVkaXVtLXVwLTMgPiAuY29sdW1uLCAubWVkaXVtLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS11cC00IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVkaXVtLXVwLTQgPiAuY29sdW1uLCAubWVkaXVtLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMjUlO1xuICAgICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS11cC01IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVkaXVtLXVwLTUgPiAuY29sdW1uLCAubWVkaXVtLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMjAlO1xuICAgICAgbWF4LXdpZHRoOiAyMCU7IH1cbiAgLm1lZGl1bS11cC02IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVkaXVtLXVwLTYgPiAuY29sdW1uLCAubWVkaXVtLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS11cC03IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVkaXVtLXVwLTcgPiAuY29sdW1uLCAubWVkaXVtLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTQuMjg1NzElO1xuICAgICAgbWF4LXdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLm1lZGl1bS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVkaXVtLXVwLTggPiAuY29sdW1uLCAubWVkaXVtLXVwLTggPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTIuNSU7XG4gICAgICBtYXgtd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZXhwYW5kIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9IH1cblxuLnJvdy5tZWRpdW0tdW5zdGFjayA+IC5jb2x1bW4sIC5yb3cubWVkaXVtLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gIGZsZXg6IDAgMCAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJvdy5tZWRpdW0tdW5zdGFjayA+IC5jb2x1bW4sIC5yb3cubWVkaXVtLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLm1lZGl1bS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLm1lZGl1bS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuODU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjg1NzE0cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5sYXJnZS0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmxhcmdlLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmxhcmdlLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5sYXJnZS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLXVwLTEge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5sYXJnZS11cC0xID4gLmNvbHVtbiwgLmxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAubGFyZ2UtdXAtMiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTIgPiAuY29sdW1uLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtdXAtMyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTMgPiAuY29sdW1uLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtdXAtNCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtdXAtNSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTUgPiAuY29sdW1uLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAubGFyZ2UtdXAtNiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTYgPiAuY29sdW1uLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtdXAtNyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTcgPiAuY29sdW1uLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNC4yODU3MSU7XG4gICAgICBtYXgtd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAubGFyZ2UtdXAtOCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTggPiAuY29sdW1uLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMi41JTtcbiAgICAgIG1heC13aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWV4cGFuZCB7XG4gICAgZmxleDogMSAxIDBweDsgfSB9XG5cbi5yb3cubGFyZ2UtdW5zdGFjayA+IC5jb2x1bW4sIC5yb3cubGFyZ2UtdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgZmxleDogMCAwIDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucm93LmxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93LmxhcmdlLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC44NTcxNHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuODU3MTRyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OS40Mjg1N2VtKSB7XG4gIC54bGFyZ2UtMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC54bGFyZ2UtMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLnhsYXJnZS01IHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLnhsYXJnZS04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC54bGFyZ2UtMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2UtdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnhsYXJnZS11cC0xID4gLmNvbHVtbiwgLnhsYXJnZS11cC0xID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnhsYXJnZS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTIgPiAuY29sdW1uLCAueGxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTMgPiAuY29sdW1uLCAueGxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS11cC00IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTQgPiAuY29sdW1uLCAueGxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMjUlO1xuICAgICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS11cC01IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTUgPiAuY29sdW1uLCAueGxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMjAlO1xuICAgICAgbWF4LXdpZHRoOiAyMCU7IH1cbiAgLnhsYXJnZS11cC02IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTYgPiAuY29sdW1uLCAueGxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS11cC03IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTcgPiAuY29sdW1uLCAueGxhcmdlLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTQuMjg1NzElO1xuICAgICAgbWF4LXdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLnhsYXJnZS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTggPiAuY29sdW1uLCAueGxhcmdlLXVwLTggPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTIuNSU7XG4gICAgICBtYXgtd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkuNDI4NTdlbSkgYW5kIChtaW4td2lkdGg6IDk5LjQyODU3ZW0pIHtcbiAgLnhsYXJnZS1leHBhbmQge1xuICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG4ucm93LnhsYXJnZS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy54bGFyZ2UtdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgZmxleDogMCAwIDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkuNDI4NTdlbSkge1xuICAgIC5yb3cueGxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93LnhsYXJnZS11bnN0YWNrID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5LjQyODU3ZW0pIHtcbiAgLnhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC54bGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH1cbiAgLnhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuODU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjg1NzE0cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwZW0pIHtcbiAgLnh4bGFyZ2UtMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAueHhsYXJnZS0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC54eGxhcmdlLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAueHhsYXJnZS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC54eGxhcmdlLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAueHhsYXJnZS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAueHhsYXJnZS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2UtdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAueHhsYXJnZS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC0yID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC0zID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS11cC00IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC00ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS11cC01IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC01ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAueHhsYXJnZS11cC02IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC02ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS11cC03IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC03ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNC4yODU3MSU7XG4gICAgICBtYXgtd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAueHhsYXJnZS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC04ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMi41JTtcbiAgICAgIG1heC13aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDBlbSkgYW5kIChtaW4td2lkdGg6IDEwMGVtKSB7XG4gIC54eGxhcmdlLWV4cGFuZCB7XG4gICAgZmxleDogMSAxIDBweDsgfSB9XG5cbi5yb3cueHhsYXJnZS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy54eGxhcmdlLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gIGZsZXg6IDAgMCAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMGVtKSB7XG4gICAgLnJvdy54eGxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93Lnh4bGFyZ2UtdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDBlbSkge1xuICAueHhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC54eGxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC54eGxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLCAueHhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuODU3MTRyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjg1NzE0cmVtOyB9IH1cblxuLnNocmluayB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLmNvbHVtbi1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDEuMTQyODZyZW07IH1cbiAgLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbHVtbi1ibG9jayB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjcxNDI5cmVtOyB9XG4gICAgICAuY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuZGl2LFxuZGwsXG5kdCxcbmRkLFxudWwsXG5vbCxcbmxpLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4xNDI4NnJlbTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS43MTQyOTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogNjAwO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuaDEsIC5oMSwgLmNhcmQtdGlsZSAuY2FyZC1jb250ZW50IGg1LFxuaDIsIC5oMixcbmgzLCAuaDMsXG5oNCwgLmg0LFxuaDUsIC5oNSxcbmg2LCAuaDYge1xuICBmb250LWZhbWlseTogXCJBdmVuaXIgTmV4dCBXMDFcIiwgXCJBdmVuaXIgTmV4dFwiLCBBdmVuaXIsIEZ1dHVyYSwgXCJDZW50dXJ5IEdvdGhpY1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjRENDMThFO1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5OyB9XG4gIGgxIHNtYWxsLCAuaDEgc21hbGwsIC5jYXJkLXRpbGUgLmNhcmQtY29udGVudCBoNSBzbWFsbCxcbiAgaDIgc21hbGwsIC5oMiBzbWFsbCxcbiAgaDMgc21hbGwsIC5oMyBzbWFsbCxcbiAgaDQgc21hbGwsIC5oNCBzbWFsbCxcbiAgaDUgc21hbGwsIC5oNSBzbWFsbCxcbiAgaDYgc21hbGwsIC5oNiBzbWFsbCB7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgY29sb3I6ICNmZmY7IH1cblxuaDEsIC5oMSwgLmNhcmQtdGlsZSAuY2FyZC1jb250ZW50IGg1IHtcbiAgZm9udC1zaXplOiAxLjcxNDI5cmVtO1xuICBsaW5lLWhlaWdodDogMS4xODc1O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjcxNDI5cmVtOyB9XG5cbmgyLCAuaDIge1xuICBmb250LXNpemU6IDEuNDI4NTdyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE4NzU7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuNzE0MjlyZW07IH1cblxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1N3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTg3NTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMS43MTQyOXJlbTsgfVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAxLjI4NTcxcmVtO1xuICBsaW5lLWhlaWdodDogMS4xODc1O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAyLjI4NTcxcmVtOyB9XG5cbmg1LCAuaDUge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE4NzU7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDIuMjg1NzFyZW07IH1cblxuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMC45Mjg1N3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTg3NTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMi4yODU3MXJlbTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBoMSwgLmgxLCAuY2FyZC10aWxlIC5jYXJkLWNvbnRlbnQgaDUge1xuICAgIGZvbnQtc2l6ZTogMi4yODU3MXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjcxNDI5cmVtOyB9XG4gIGgyLCAuaDIge1xuICAgIGZvbnQtc2l6ZTogMnJlbTsgfVxuICBoMywgLmgzIHtcbiAgICBmb250LXNpemU6IDEuNzE0MjlyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS40Mjg1N3JlbTsgfVxuICBoNCwgLmg0IHtcbiAgICBmb250LXNpemU6IDEuNDI4NTdyZW07IH1cbiAgaDUsIC5oNSB7XG4gICAgZm9udC1zaXplOiAxLjE0Mjg2cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDIuMjg1NzFyZW07IH1cbiAgaDYsIC5oNiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDIuMjg1NzFyZW07IH0gfVxuXG5hIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjRENDMThFO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogI2QwYWM2NzsgfVxuICBhIGltZyB7XG4gICAgYm9yZGVyOiAwOyB9XG5cbmhyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1heC13aWR0aDogOTkuNDI4NTdyZW07XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAxLjQyODU3cmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM0RTRENTA7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbnVsLFxub2wsXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDEuMTQyODZyZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIGxpbmUtaGVpZ2h0OiAxLjcxNDI5OyB9XG5cbmxpIHtcbiAgZm9udC1zaXplOiBpbmhlcml0OyB9XG5cbnVsIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYzsgfVxuXG5vbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtOyB9XG5cbnVsIHVsLCBvbCB1bCwgdWwgb2wsIG9sIG9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIGRsIGR0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMS4xNDI4NnJlbTtcbiAgcGFkZGluZzogMC42NDI4NnJlbSAxLjQyODU3cmVtIDAgMS4zNTcxNHJlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjNEU0RDUwOyB9XG4gIGJsb2NrcXVvdGUsIGJsb2NrcXVvdGUgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNzE0Mjk7XG4gICAgY29sb3I6ICMyMjIwMjA7IH1cblxuY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuOTI4NTdyZW07XG4gIGNvbG9yOiAjMjIyMDIwOyB9XG4gIGNpdGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIuKAlCBcIjsgfVxuXG5hYmJyLCBhYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzFBMTgxODtcbiAgY3Vyc29yOiBoZWxwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwOyB9XG5cbmNvZGUge1xuICBwYWRkaW5nOiAwLjE0Mjg2cmVtIDAuMzU3MTRyZW0gMC4wNzE0M3JlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzRFNEQ1MDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzkwOGY4ZjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMUExODE4OyB9XG5cbmtiZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC4xNDI4NnJlbSAwLjI4NTcxcmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5MDhmOGY7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBjb2xvcjogIzFBMTgxODtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5zdWJoZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICMyMjIwMjA7IH1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDE3LjVweDtcbiAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG4uc3RhdCB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMTsgfVxuICBwICsgLnN0YXQge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtOyB9XG5cbnVsLm5vLWJ1bGxldCwgdWwubGlua3MsIHVsLmlubGluZS1saXN0LCAjbWVudS1saW5rcyB1bCNwcmltYXJ5LCAuZ2FsbGVyeS10aHVtYm5haWxzIHVsLmdhbGxlcnktc3ViLW1lbnUsIC5sb2NhdGlvbnMtd3JhcHBlciB1bC5sb2NhdGlvbnMtbGlzdCwgb2wubm8tYnVsbGV0LCBvbC5saW5rcywgb2wuaW5saW5lLWxpc3QsICNtZW51LWxpbmtzIG9sI3ByaW1hcnksIC5nYWxsZXJ5LXRodW1ibmFpbHMgb2wuZ2FsbGVyeS1zdWItbWVudSwgLmxvY2F0aW9ucy13cmFwcGVyIG9sLmxvY2F0aW9ucy1saXN0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLm1lZGl1bS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubWVkaXVtLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lZGl1bS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5sYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkuNDI4NTdlbSkge1xuICAueGxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAueGxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC54bGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAueGxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMGVtKSB7XG4gIC54eGxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAueHhsYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAueHhsYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC54eGxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbi5zaG93LWZvci1wcmludCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgcHJpbnQge1xuICAqIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjsgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgYVtocmVmXj0nIyddOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJzsgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiOyB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzIyMjAyMDtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTsgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cbiAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87IH0gfVxuXG4uYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBwYWRkaW5nOiAxLjIzZW0gMS44NWVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRENDMThFO1xuICBjb2xvcjogI2ZmZjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZhYTY1O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24udGlueSB7XG4gICAgZm9udC1zaXplOiAwLjZyZW07IH1cbiAgLmJ1dHRvbi5zbWFsbCB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC5idXR0b24ubGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuYnV0dG9uLmV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmJ1dHRvbi5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRENDMThFO1xuICAgIGNvbG9yOiAjMUExODE4OyB9XG4gICAgLmJ1dHRvbi5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NiYTM1NztcbiAgICAgIGNvbG9yOiAjMUExODE4OyB9XG4gIC5idXR0b24uc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWQ4MDQ3O1xuICAgIGNvbG9yOiAjMUExODE4OyB9XG4gICAgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3ZTY2Mzk7XG4gICAgICBjb2xvcjogIzFBMTgxODsgfVxuICAuYnV0dG9uLnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMxQTE4MTg7IH1cbiAgICAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uc3VjY2Vzczpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICAgICAgY29sb3I6ICMxQTE4MTg7IH1cbiAgLmJ1dHRvbi53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMUExODE4OyB9XG4gICAgLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjOGIwMDtcbiAgICAgIGNvbG9yOiAjMUExODE4OyB9XG4gIC5idXR0b24uYWxlcnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnV0dG9uLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNTNiMmE7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSB7XG4gICAgb3BhY2l0eTogMC4yNTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRENDMThFO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnkge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeSwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRENDMThFO1xuICAgICAgICBjb2xvcjogIzFBMTgxODsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnkge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeSwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOWQ4MDQ3O1xuICAgICAgICBjb2xvcjogIzFBMTgxODsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcyB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2VzcywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgICAgIGNvbG9yOiAjMUExODE4OyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nIHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICAgICAgY29sb3I6ICMxQTE4MTg7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydCB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24uaG9sbG93IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRENDMThFO1xuICAgIGNvbG9yOiAjRENDMThFOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uaG9sbG93LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjOGE2OTJiO1xuICAgICAgY29sb3I6ICM4YTY5MmI7IH1cbiAgICAgIC5idXR0b24uaG9sbG93OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdzpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRENDMThFO1xuICAgICAgICBjb2xvcjogI0RDQzE4RTsgfVxuICAgIC5idXR0b24uaG9sbG93LnByaW1hcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI0RDQzE4RTtcbiAgICAgIGNvbG9yOiAjRENDMThFOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjOGE2OTJiO1xuICAgICAgICBjb2xvcjogIzhhNjkyYjsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNEQ0MxOEU7XG4gICAgICAgICAgY29sb3I6ICNEQ0MxOEU7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzlkODA0NztcbiAgICAgIGNvbG9yOiAjOWQ4MDQ3OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzRmNDAyNDtcbiAgICAgICAgY29sb3I6ICM0ZjQwMjQ7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5ZDgwNDc7XG4gICAgICAgICAgY29sb3I6ICM5ZDgwNDc7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgICAgICAgY29sb3I6ICMxNTc1Mzk7IH1cbiAgICAgICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICAgICAgICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM4MDU3MDA7XG4gICAgICAgIGNvbG9yOiAjODA1NzAwOyB9XG4gICAgICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICAgICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgIC5idXR0b24uaG9sbG93LmFsZXJ0IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjNjcyNTFhO1xuICAgICAgICBjb2xvcjogIzY3MjUxYTsgfVxuICAgICAgICAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gIC5idXR0b24uY2xlYXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNEQ0MxOEU7XG4gICAgY29sb3I6ICNEQ0MxOEU7IH1cbiAgICAuYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjOGE2OTJiO1xuICAgICAgY29sb3I6ICM4YTY5MmI7IH1cbiAgICAgIC5idXR0b24uY2xlYXI6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNEQ0MxOEU7XG4gICAgICAgIGNvbG9yOiAjRENDMThFOyB9XG4gICAgLmJ1dHRvbi5jbGVhciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXI6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAuYnV0dG9uLmNsZWFyOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNEQ0MxOEU7XG4gICAgICBjb2xvcjogI0RDQzE4RTsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM4YTY5MmI7XG4gICAgICAgIGNvbG9yOiAjOGE2OTJiOyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRENDMThFO1xuICAgICAgICAgIGNvbG9yOiAjRENDMThFOyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnByaW1hcnksIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cywgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5ZDgwNDc7XG4gICAgICBjb2xvcjogIzlkODA0NzsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjNGY0MDI0O1xuICAgICAgICBjb2xvcjogIzRmNDAyNDsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjOWQ4MDQ3O1xuICAgICAgICAgIGNvbG9yOiAjOWQ4MDQ3OyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uY2xlYXIuc3VjY2VzcyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICAgICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTU3NTM5O1xuICAgICAgICBjb2xvcjogIzE1NzUzOTsgfVxuICAgICAgICAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgICAgICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmNsZWFyLndhcm5pbmcge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gICAgICAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgICAgICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgICAgICAgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uY2xlYXIud2FybmluZywgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5jbGVhci5hbGVydCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM2NzI1MWE7XG4gICAgICAgIGNvbG9yOiAjNjcyNTFhOyB9XG4gICAgICAgIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgICAgICAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAgICAgLmJ1dHRvbi5jbGVhci5hbGVydCwgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNGVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDEuODVlbTsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdzo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNEQ0MxOEU7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cucHJpbWFyeTo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNEQ0MxOEU7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc2Vjb25kYXJ5OjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzlkODA0NzsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zdWNjZXNzOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzNhZGI3NjsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy53YXJuaW5nOjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmYWUwMDsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5hbGVydDo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNjYzRiMzc7IH1cbiAgLmJ1dHRvbi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgdG9wOiAtMC4xZW07XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuYS5idXR0b246aG92ZXIsIGEuYnV0dG9uOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cblt0eXBlPSd0ZXh0J10sIFt0eXBlPSdwYXNzd29yZCddLCBbdHlwZT0nZGF0ZSddLCBbdHlwZT0nZGF0ZXRpbWUnXSwgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIFt0eXBlPSdtb250aCddLCBbdHlwZT0nd2VlayddLCBbdHlwZT0nZW1haWwnXSwgW3R5cGU9J251bWJlciddLCBbdHlwZT0nc2VhcmNoJ10sIFt0eXBlPSd0ZWwnXSwgW3R5cGU9J3RpbWUnXSwgW3R5cGU9J3VybCddLCBbdHlwZT0nY29sb3InXSxcbnRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNDY0MjlyZW07XG4gIG1hcmdpbjogMCAwIDEuMTQyODZyZW07XG4gIHBhZGRpbmc6IDAuNTcxNDNyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOTI4NTdyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjZmZmO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuICBbdHlwZT0ndGV4dCddOmZvY3VzLCBbdHlwZT0ncGFzc3dvcmQnXTpmb2N1cywgW3R5cGU9J2RhdGUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmZvY3VzLCBbdHlwZT0nbW9udGgnXTpmb2N1cywgW3R5cGU9J3dlZWsnXTpmb2N1cywgW3R5cGU9J2VtYWlsJ106Zm9jdXMsIFt0eXBlPSdudW1iZXInXTpmb2N1cywgW3R5cGU9J3NlYXJjaCddOmZvY3VzLCBbdHlwZT0ndGVsJ106Zm9jdXMsIFt0eXBlPSd0aW1lJ106Zm9jdXMsIFt0eXBlPSd1cmwnXTpmb2N1cywgW3R5cGU9J2NvbG9yJ106Zm9jdXMsXG4gIHRleHRhcmVhOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICB0ZXh0YXJlYVtyb3dzXSB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG5cbmlucHV0OjpwbGFjZWhvbGRlcixcbnRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbmlucHV0OmRpc2FibGVkLCBpbnB1dFtyZWFkb25seV0sXG50ZXh0YXJlYTpkaXNhYmxlZCxcbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCk7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuW3R5cGU9J3N1Ym1pdCddLFxuW3R5cGU9J2J1dHRvbiddIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbmlucHV0W3R5cGU9J3NlYXJjaCddIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG5bdHlwZT0nZmlsZSddLFxuW3R5cGU9J2NoZWNrYm94J10sXG5bdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbjogMCAwIDEuMTQyODZyZW07IH1cblxuW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcblt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgbWFyZ2luLWxlZnQ6IDAuNTcxNDNyZW07XG4gIG1hcmdpbi1yaWdodDogMS4xNDI4NnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBbdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsW2Zvcl0sXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWxbZm9yXSB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmxhYmVsID4gW3R5cGU9J2NoZWNrYm94J10sXG5sYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjU3MTQzcmVtOyB9XG5cblt0eXBlPSdmaWxlJ10ge1xuICB3aWR0aDogMTAwJTsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgY29sb3I6ICMxQTE4MTg7IH1cbiAgbGFiZWwubWlkZGxlIHtcbiAgICBtYXJnaW46IDAgMCAxLjE0Mjg2cmVtO1xuICAgIHBhZGRpbmc6IDAuNjQyODZyZW0gMDsgfVxuXG4uaGVscC10ZXh0IHtcbiAgbWFyZ2luLXRvcDogLTAuNTcxNDNyZW07XG4gIGZvbnQtc2l6ZTogMC45Mjg1N3JlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzFBMTgxODsgfVxuXG4uaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMS4xNDI4NnJlbTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAycHggMCAwIDJweDsgfVxuICAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMnB4IDJweCAwOyB9XG5cbi5pbnB1dC1ncm91cC1sYWJlbCwgLmlucHV0LWdyb3VwLWZpZWxkLCAuaW5wdXQtZ3JvdXAtYnV0dG9uLCAuaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgbWFyZ2luOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5pbnB1dC1ncm91cC1sYWJlbCB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzRFNEQ1MDtcbiAgYmFja2dyb3VuZDogIzkwOGY4ZjtcbiAgY29sb3I6ICMxQTE4MTg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmlucHV0LWdyb3VwLWxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7IH1cbiAgLmlucHV0LWdyb3VwLWxhYmVsOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1sZWZ0OiAwOyB9XG5cbi5pbnB1dC1ncm91cC1maWVsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZsZXg6IDEgMSAwcHg7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLXdpZHRoOiAwOyB9XG5cbi5pbnB1dC1ncm91cC1idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87IH1cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAwLjkyODU3cmVtOyB9XG5cbmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7IH1cblxubGVnZW5kIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjU3MTQzcmVtOyB9XG5cbi5maWVsZHNldCB7XG4gIG1hcmdpbjogMS4yODU3MXJlbSAwO1xuICBwYWRkaW5nOiAxLjQyODU3cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjNEU0RDUwOyB9XG4gIC5maWVsZHNldCBsZWdlbmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tbGVmdDogLTAuMjE0MjlyZW07XG4gICAgcGFkZGluZzogMCAwLjIxNDI5cmVtOyB9XG5cbnNlbGVjdCB7XG4gIGhlaWdodDogMi40NjQyOXJlbTtcbiAgbWFyZ2luOiAwIDAgMS4xNDI4NnJlbTtcbiAgcGFkZGluZzogMC41NzE0M3JlbTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC45Mjg1N3JlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4MjU1LCAyNTUsIDI1NSUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbiAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAtMS4xNDI4NnJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcbiAgcGFkZGluZy1yaWdodDogMS43MTQyOXJlbTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkge1xuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09XCIpOyB9IH1cbiAgc2VsZWN0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuICBzZWxlY3Q6ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCk7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgc2VsZWN0W211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cykge1xuICBib3JkZXItY29sb3I6ICNjYzRiMzc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWVkZWI7IH1cbiAgLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cyk6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI2NjNGIzNzsgfVxuXG4uaXMtaW52YWxpZC1sYWJlbCB7XG4gIGNvbG9yOiAjY2M0YjM3OyB9XG5cbi5mb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogLTAuNTcxNDNyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuMTQyODZyZW07XG4gIGZvbnQtc2l6ZTogMC44NTcxNHJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICNjYzRiMzc7IH1cbiAgLmZvcm0tZXJyb3IuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLmNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM5MDhmOGY7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLmNhcmQgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY2FyZC1kaXZpZGVyIHtcbiAgZmxleDogMCAxIGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQ6ICM5MDhmOGY7IH1cbiAgLmNhcmQtZGl2aWRlciA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXJkLXNlY3Rpb24ge1xuICBmbGV4OiAxIDAgYXV0bztcbiAgcGFkZGluZzogMXJlbTsgfVxuICAuY2FyZC1zZWN0aW9uID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcmQtaW1hZ2Uge1xuICBtaW4taGVpZ2h0OiAxcHg7IH1cblxuLmNsb3NlLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29sb3I6ICMyMjIwMjA7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmNsb3NlLWJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuY2xvc2UtYnV0dG9uOmhvdmVyLCAuY2xvc2UtYnV0dG9uOmZvY3VzIHtcbiAgICBjb2xvcjogIzFBMTgxODsgfVxuICAuY2xvc2UtYnV0dG9uLnNtYWxsIHtcbiAgICByaWdodDogMC42NnJlbTtcbiAgICB0b3A6IDAuMzNlbTtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5jbG9zZS1idXR0b24sIC5jbG9zZS1idXR0b24ubWVkaXVtIHtcbiAgICByaWdodDogMXJlbTtcbiAgICB0b3A6IDAuNXJlbTtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuXG4ubWVudSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5tZW51IGxpIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5tZW51IGEsXG4gIC5tZW51IC5idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTsgfVxuICAubWVudSBpbnB1dCxcbiAgLm1lbnUgc2VsZWN0LFxuICAubWVudSBhLFxuICAubWVudSBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLm1lbnUgaW5wdXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAubWVudSwgLm1lbnUuaG9yaXpvbnRhbCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLm1lbnUudmVydGljYWwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLm1lbnUuZXhwYW5kZWQgbGkge1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgLm1lbnUuc2ltcGxlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLm1lbnUuc2ltcGxlIGxpICsgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cbiAgICAubWVudS5zaW1wbGUgYSB7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1lbnUubWVkaXVtLWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAgIC5tZW51Lm1lZGl1bS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS5tZWRpdW0tZXhwYW5kZWQgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfVxuICAgIC5tZW51Lm1lZGl1bS1zaW1wbGUgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLm1lbnUubGFyZ2UtdmVydGljYWwge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLm1lbnUubGFyZ2UtZXhwYW5kZWQgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfVxuICAgIC5tZW51LmxhcmdlLXNpbXBsZSBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkuNDI4NTdlbSkge1xuICAgIC5tZW51LnhsYXJnZS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgICAubWVudS54bGFyZ2UtdmVydGljYWwge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgLm1lbnUueGxhcmdlLWV4cGFuZGVkIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgICAubWVudS54bGFyZ2Utc2ltcGxlIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDBlbSkge1xuICAgIC5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gICAgLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICAubWVudS54eGxhcmdlLWV4cGFuZGVkIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgICAubWVudS54eGxhcmdlLXNpbXBsZSBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cbiAgLm1lbnUubmVzdGVkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cbiAgLm1lbnUuaWNvbnMgYSB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVudS5pY29uLXRvcCBhLCAubWVudS5pY29uLXJpZ2h0IGEsIC5tZW51Lmljb24tYm90dG9tIGEsIC5tZW51Lmljb24tbGVmdCBhIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5tZW51Lmljb24tbGVmdCBsaSBhIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7IH1cbiAgICAubWVudS5pY29uLWxlZnQgbGkgYSBpbWcsXG4gICAgLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaSxcbiAgICAubWVudS5pY29uLWxlZnQgbGkgYSBzdmcge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtOyB9XG4gIC5tZW51Lmljb24tcmlnaHQgbGkgYSB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi1yaWdodCBsaSBhIGltZyxcbiAgICAubWVudS5pY29uLXJpZ2h0IGxpIGEgaSxcbiAgICAubWVudS5pY29uLXJpZ2h0IGxpIGEgc3ZnIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtOyB9XG4gIC5tZW51Lmljb24tdG9wIGxpIGEge1xuICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDsgfVxuICAgIC5tZW51Lmljb24tdG9wIGxpIGEgaW1nLFxuICAgIC5tZW51Lmljb24tdG9wIGxpIGEgaSxcbiAgICAubWVudS5pY29uLXRvcCBsaSBhIHN2ZyB7XG4gICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVudS5pY29uLWJvdHRvbSBsaSBhIHtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cbiAgICAubWVudS5pY29uLWJvdHRvbSBsaSBhIGltZyxcbiAgICAubWVudS5pY29uLWJvdHRvbSBsaSBhIGksXG4gICAgLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBzdmcge1xuICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lbnUgLmlzLWFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQ6ICNEQ0MxOEU7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLm1lbnUgLmFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQ6ICNEQ0MxOEU7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLm1lbnUuYWxpZ24tbGVmdCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0IGxpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgICAubWVudS5hbGlnbi1yaWdodCBsaSAuc3VibWVudSBsaSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLm1lbnUuYWxpZ24tcmlnaHQudmVydGljYWwgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgLm1lbnUuYWxpZ24tcmlnaHQudmVydGljYWwgbGkgLnN1Ym1lbnUgbGkge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1lbnUuYWxpZ24tcmlnaHQgLm5lc3RlZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5tZW51LmFsaWduLWNlbnRlciBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIC5tZW51LmFsaWduLWNlbnRlciBsaSAuc3VibWVudSBsaSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLm1lbnUgLm1lbnUtdGV4dCB7XG4gICAgcGFkZGluZzogMC43cmVtIDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cblxuLm1lbnUtY2VudGVyZWQgPiAubWVudSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5tZW51LWNlbnRlcmVkID4gLm1lbnUgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAubWVudS1jZW50ZXJlZCA+IC5tZW51IGxpIC5zdWJtZW51IGxpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4ubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnJlc3BvbnNpdmUtZW1iZWQsXG4uZmxleC12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjE0Mjg2cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5yZXNwb25zaXZlLWVtYmVkIGlmcmFtZSxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgb2JqZWN0LFxuICAucmVzcG9uc2l2ZS1lbWJlZCBlbWJlZCxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgdmlkZW8sXG4gIC5mbGV4LXZpZGVvIGlmcmFtZSxcbiAgLmZsZXgtdmlkZW8gb2JqZWN0LFxuICAuZmxleC12aWRlbyBlbWJlZCxcbiAgLmZsZXgtdmlkZW8gdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLnJlc3BvbnNpdmUtZW1iZWQud2lkZXNjcmVlbixcbiAgLmZsZXgtdmlkZW8ud2lkZXNjcmVlbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgfVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBiYWNrZ3JvdW5kOiAjRENDMThFO1xuICBjb2xvcjogI2ZmZjsgfVxuICAubGFiZWwucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogI0RDQzE4RTtcbiAgICBjb2xvcjogIzFBMTgxODsgfVxuICAubGFiZWwuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAjOWQ4MDQ3O1xuICAgIGNvbG9yOiAjMUExODE4OyB9XG4gIC5sYWJlbC5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjMUExODE4OyB9XG4gIC5sYWJlbC53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMUExODE4OyB9XG4gIC5sYWJlbC5hbGVydCB7XG4gICAgYmFja2dyb3VuZDogI2NjNGIzNztcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4ubWVkaWEtb2JqZWN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLm1lZGlhLW9iamVjdCBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAubWVkaWEtb2JqZWN0LnN0YWNrLWZvci1zbWFsbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAubWVkaWEtb2JqZWN0LnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgLm1lZGlhLW9iamVjdC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgZmxleDogMCAxIGF1dG87IH1cbiAgLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbi5tYWluLXNlY3Rpb24ge1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cblxuLmlzLW9mZi1jYW52YXMtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UsIHZpc2liaWxpdHkgMC41cyBlYXNlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy12aXNpYmxlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1jbG9zYWJsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1maXhlZCB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG5cbi5vZmYtY2FudmFzLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLm9mZi1jYW52YXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICM5MDhmOGY7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vZmYtY2FudmFzIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgei1pbmRleDogMTI7IH1cbiAgLm9mZi1jYW52YXMuaXMtY2xvc2VkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgICB6LWluZGV4OiAxMzsgfVxuICAgIC5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMjYsIDI0LCAyNCwgMC43KTsgfVxuICAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuXG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogIzkwOGY4ZjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB6LWluZGV4OiAxMjsgfVxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy1jbG9zZWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICAgIHotaW5kZXg6IDEzOyB9XG4gICAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgyNiwgMjQsIDI0LCAwLjcpOyB9XG4gIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG5cbi5wb3NpdGlvbi1sZWZ0IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHdpZHRoOiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucG9zaXRpb24tbGVmdCB7XG4gICAgICB3aWR0aDogMjUwcHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTsgfSB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7IH0gfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tbGVmdC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1sZWZ0Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpOyB9IH1cbiAgLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAtMTNweCAwIDIwcHggLTEzcHggcmdiYSgyNiwgMjQsIDI0LCAwLjI1KTsgfVxuXG4ucG9zaXRpb24tcmlnaHQge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHdpZHRoOiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5wb3NpdGlvbi1yaWdodCB7XG4gICAgICB3aWR0aDogMjUwcHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpOyB9IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0IHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTsgfSB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tcmlnaHQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXJpZ2h0Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTsgfSB9XG4gIC5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDEzcHggMCAyMHB4IC0xM3B4IHJnYmEoMjYsIDI0LCAyNCwgMC4yNSk7IH1cblxuLnBvc2l0aW9uLXRvcCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIGhlaWdodDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBvc2l0aW9uLXRvcCB7XG4gICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7IH0gfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3Age1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTsgfSB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXRvcC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi10b3AuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7IH0gfVxuICAucG9zaXRpb24tdG9wLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAtMTNweCAyMHB4IC0xM3B4IHJnYmEoMjYsIDI0LCAyNCwgMC4yNSk7IH1cblxuLnBvc2l0aW9uLWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIGhlaWdodDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucG9zaXRpb24tYm90dG9tIHtcbiAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpOyB9IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpOyB9IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tYm90dG9tLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1ib3R0b20uaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpOyB9IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMTNweCAyMHB4IC0xM3B4IHJnYmEoMjYsIDI0LCAyNCwgMC4yNSk7IH1cblxuLm9mZi1jYW52YXMtY29udGVudCB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXRvcCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkuNDI4NTdlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14eGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXh4bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteHhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteHhsYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICAgIG92ZXJmbG93OiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb246IGluaGVyaXQ7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2Uge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgICB0cmFuc2l0aW9uOiBpbmhlcml0OyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkuNDI4NTdlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICAgIG92ZXJmbG93OiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb246IGluaGVyaXQ7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZS5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14bGFyZ2UucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZS5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMGVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteHhsYXJnZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICAgIG92ZXJmbG93OiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb246IGluaGVyaXQ7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXh4bGFyZ2UucG9zaXRpb24tbGVmdCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14eGxhcmdlLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXh4bGFyZ2UucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXh4bGFyZ2UucG9zaXRpb24tYm90dG9tIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXh4bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG4gIHRhYmxlIHRoZWFkLFxuICB0YWJsZSB0Ym9keSxcbiAgdGFibGUgdGZvb3Qge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIHRhYmxlIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6IDAuNTcxNDNyZW0gMC43MTQyOXJlbSAwLjcxNDI5cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgdGFibGUgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjRENDMThFOyB9XG4gIHRhYmxlIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogI0RDQzE4RTsgfVxuICB0YWJsZSB0aGVhZCB0cixcbiAgdGFibGUgdGZvb3QgdHIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIHRhYmxlIHRoZWFkIHRoLFxuICB0YWJsZSB0aGVhZCB0ZCxcbiAgdGFibGUgdGZvb3QgdGgsXG4gIHRhYmxlIHRmb290IHRkIHtcbiAgICBwYWRkaW5nOiAwLjU3MTQzcmVtIDAuNzE0MjlyZW0gMC43MTQyOXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgdGFibGUgdGJvZHkgdGgsXG4gIHRhYmxlIHRib2R5IHRkIHtcbiAgICBwYWRkaW5nOiAwLjU3MTQzcmVtIDAuNzE0MjlyZW0gMC43MTQyOXJlbTsgfVxuICB0YWJsZSB0Ym9keSB0ciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgdGFibGUuc3RyaXBlZCB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIHRhYmxlLnN0YWNrIHRoZWFkIHRoIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICB0YWJsZS5zdGFjayB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICB0YWJsZS5zdGFjayB0cixcbiAgdGFibGUuc3RhY2sgdGgsXG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDsgfSB9XG5cbnRhYmxlLnNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bzsgfVxuXG50YWJsZS5ob3ZlciB0aGVhZCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbnRhYmxlLmhvdmVyIHRmb290IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxudGFibGUuaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG50YWJsZS5ob3Zlci5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnRhYmxlLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cbiAgLnRhYmxlLXNjcm9sbCB0YWJsZSB7XG4gICAgd2lkdGg6IGF1dG87IH1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA5OS4zNjYwN2VtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5LjQyODU3ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5LjQyODU3ZW0pIHtcbiAgLmhpZGUtZm9yLXhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkuMzY2MDdlbSkge1xuICAuc2hvdy1mb3IteGxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OS40Mjg1N2VtKSBhbmQgKG1heC13aWR0aDogOTkuOTM3NWVtKSB7XG4gIC5oaWRlLWZvci14bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkuMzY2MDdlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwZW0pIHtcbiAgLnNob3ctZm9yLXhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDBlbSkge1xuICAuaGlkZS1mb3IteHhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkuOTM3NWVtKSB7XG4gIC5zaG93LWZvci14eGxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDBlbSkge1xuICAuaGlkZS1mb3IteHhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OS45Mzc1ZW0pIHtcbiAgLnNob3ctZm9yLXh4bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgYm9yZGVyOiAwOyB9XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBjbGlwLXBhdGg6IG5vbmU7IH1cblxuLnNob3ctZm9yLWxhbmRzY2FwZSxcbi5oaWRlLWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5oaWRlLWZvci1sYW5kc2NhcGUsXG4uc2hvdy1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDsgfVxuXG4uZmxvYXQtcmlnaHQge1xuICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfVxuXG4uZmxvYXQtY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cblxuLmNsZWFyZml4OjpiZWZvcmUsIC5jbGVhcmZpeDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTsgfVxuXG4uY2xlYXJmaXg6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmFsaWduLXJpZ2h0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLWp1c3RpZnkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblxuLmFsaWduLXNwYWNlZCB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cbi5hbGlnbi1yaWdodC52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tY2VudGVyLnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uYWxpZ24tdG9wIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLXNlbGYtdG9wIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1zZWxmLWJvdHRvbSB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1taWRkbGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5hbGlnbi1zZWxmLW1pZGRsZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG5cbi5hbGlnbi1zZWxmLXN0cmV0Y2gge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9XG5cbi5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uc21hbGwtb3JkZXItMSB7XG4gIG9yZGVyOiAxOyB9XG5cbi5zbWFsbC1vcmRlci0yIHtcbiAgb3JkZXI6IDI7IH1cblxuLnNtYWxsLW9yZGVyLTMge1xuICBvcmRlcjogMzsgfVxuXG4uc21hbGwtb3JkZXItNCB7XG4gIG9yZGVyOiA0OyB9XG5cbi5zbWFsbC1vcmRlci01IHtcbiAgb3JkZXI6IDU7IH1cblxuLnNtYWxsLW9yZGVyLTYge1xuICBvcmRlcjogNjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5tZWRpdW0tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLm1lZGl1bS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubWVkaXVtLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5tZWRpdW0tb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLm1lZGl1bS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLmxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5sYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLmxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkuNDI4NTdlbSkge1xuICAueGxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC54bGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnhsYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAueGxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC54bGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnhsYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMGVtKSB7XG4gIC54eGxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC54eGxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC54eGxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC54eGxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC54eGxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC54eGxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuLmZsZXgtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDsgfVxuXG4uZmxleC1jaGlsZC1hdXRvIHtcbiAgZmxleDogMSAxIGF1dG87IH1cblxuLmZsZXgtY2hpbGQtZ3JvdyB7XG4gIGZsZXg6IDEgMCBhdXRvOyB9XG5cbi5mbGV4LWNoaWxkLXNocmluayB7XG4gIGZsZXg6IDAgMSBhdXRvOyB9XG5cbi5mbGV4LWRpci1yb3cge1xuICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG5cbi5mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuXG4uZmxleC1kaXItY29sdW1uIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4uZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubGFyZ2UtZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OS40Mjg1N2VtKSB7XG4gIC54bGFyZ2UtZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLnhsYXJnZS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC54bGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAueGxhcmdlLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAueGxhcmdlLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAueGxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLnhsYXJnZS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLnhsYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwZW0pIHtcbiAgLnh4bGFyZ2UtZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLnh4bGFyZ2UtZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAueHhsYXJnZS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC54eGxhcmdlLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAueHhsYXJnZS1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLnh4bGFyZ2UtZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAueHhsYXJnZS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLnh4bGFyZ2UtZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG5cbi5zbGlkZS1pbi1kb3duLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4uc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cblxuLnNsaWRlLWluLXVwLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4uc2xpZGUtaW4tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbi5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7IH1cblxuLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC11cC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7IH1cblxuLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cblxuLmZhZGUtaW4ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7IH1cblxuLmZhZGUtaW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5mYWRlLW91dC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTsgfVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tdG9wLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXgubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXgubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1vdXQtdXAubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLWNjdy5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNsb3cge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NTBtcyAhaW1wb3J0YW50OyB9XG5cbi5mYXN0IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDsgfVxuXG4ubGluZWFyIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50OyB9XG5cbi5lYXNlIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzYsIC0wLjI0NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLnNob3J0LWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDsgfVxuXG4ubG9uZy1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDcwMG1zICFpbXBvcnRhbnQ7IH1cblxuLnNoYWtlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlLTc7IH1cblxuQGtleWZyYW1lcyBzaGFrZS03IHtcbiAgMCUsIDEwJSwgMjAlLCAzMCUsIDQwJSwgNTAlLCA2MCUsIDcwJSwgODAlLCA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg3JSk7IH1cbiAgNSUsIDE1JSwgMjUlLCAzNSUsIDQ1JSwgNTUlLCA2NSUsIDc1JSwgODUlLCA5NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNyUpOyB9IH1cblxuLnNwaW4tY3cge1xuICBhbmltYXRpb24tbmFtZTogc3Bpbi1jdy0xdHVybjsgfVxuXG5Aa2V5ZnJhbWVzIHNwaW4tY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfSB9XG5cbi5zcGluLWNjdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWN3LTF0dXJuOyB9XG5cbkBrZXlmcmFtZXMgc3Bpbi1jdy0xdHVybiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxdHVybik7IH0gfVxuXG4ud2lnZ2xlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHdpZ2dsZS03ZGVnOyB9XG5cbkBrZXlmcmFtZXMgd2lnZ2xlLTdkZWcge1xuICA0MCUsIDUwJSwgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg3ZGVnKTsgfVxuICAzNSUsIDQ1JSwgNTUlLCA2NSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC03ZGVnKTsgfVxuICAwJSwgMzAlLCA3MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9IH1cblxuLnNoYWtlLFxuLnNwaW4tY3csXG4uc3Bpbi1jY3csXG4ud2lnZ2xlIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtczsgfVxuXG4uaW5maW5pdGUge1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsgfVxuXG4uc2xvdyB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDsgfVxuXG4uZmFzdCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDsgfVxuXG4ubGluZWFyIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Uge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4ge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4ge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLWluLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5zaG9ydC1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDsgfVxuXG4ubG9uZy1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbi1mb250XCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaWNvbi1mb250LmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pY29uLWZvbnQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlb3RcIiksIHVybChcIi4uL2ZvbnRzL2ljb24tZm9udC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbi1mb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbi1mb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbi1mb250LnN2ZyNpY29uLWZvbnRcIikgZm9ybWF0KFwic3ZnXCIpOyB9XG5cbi5pY29uLWNhbGVuZGFyOmJlZm9yZSwgLmljb24tY2hldnJvbi1kb3duOmJlZm9yZSwgLmljb24tY2hldnJvbi1sZWZ0LXNtYWxsOmJlZm9yZSwgLmljb24tY2hldnJvbi1sZWZ0OmJlZm9yZSwgLmljb24tY2hldnJvbi1yaWdodC1zbWFsbDpiZWZvcmUsIC5pY29uLWNoZXZyb24tcmlnaHQ6YmVmb3JlLCAuaWNvbi1jaGV2cm9uLXVwOmJlZm9yZSwgLmljb24tY2xvc2U6YmVmb3JlLCAuaWNvbi1mYWNlYm9vazpiZWZvcmUsIC5pY29uLWdhbGxlcnk6YmVmb3JlLCAuaWNvbi1nb29nbGUtcGx1czpiZWZvcmUsIC5pY29uLWluc3RhZ3JhbTpiZWZvcmUsIC5pY29uLWxvZ28tbWFyazpiZWZvcmUsIC5pY29uLWxvZ28tdGV4dDpiZWZvcmUsIC5pY29uLW1haWw6YmVmb3JlLCAuaWNvbi1tZW51OmJlZm9yZSwgLmljb24tbWludXM6YmVmb3JlLCAuaWNvbi1wbHVzOmJlZm9yZSwgLmljb24tcHJvdmVuYW5jZS1ob3RlbHM6YmVmb3JlLCAuaWNvbi10cmlwYWR2aXNvcjpiZWZvcmUsIC5pY29uLXR3aXR0ZXI6YmVmb3JlLCAuc2VjdGlvbi1jb250YWluZXIgLnNjcm9sbC1pbmRpY2F0b3I6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbi1mb250XCI7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi5pY29uLWNhbGVuZGFyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCBXCI7IH1cblxuLmljb24tY2hldnJvbi1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCCXCI7IH1cblxuLmljb24tY2hldnJvbi1sZWZ0LXNtYWxsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCDXCI7IH1cblxuLmljb24tY2hldnJvbi1sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCEXCI7IH1cblxuLmljb24tY2hldnJvbi1yaWdodC1zbWFsbDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6AhVwiOyB9XG5cbi5pY29uLWNoZXZyb24tcmlnaHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLugIZcIjsgfVxuXG4uaWNvbi1jaGV2cm9uLXVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCHXCI7IH1cblxuLmljb24tY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLugIhcIjsgfVxuXG4uaWNvbi1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIu6AiVwiOyB9XG5cbi5pY29uLWdhbGxlcnk6YmVmb3JlIHtcbiAgY29udGVudDogXCLugIpcIjsgfVxuXG4uaWNvbi1nb29nbGUtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu6Ai1wiOyB9XG5cbi5pY29uLWluc3RhZ3JhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIu6AjFwiOyB9XG5cbi5pY29uLWxvZ28tbWFyazpiZWZvcmUge1xuICBjb250ZW50OiBcIu6AjVwiOyB9XG5cbi5pY29uLWxvZ28tdGV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIu6AjlwiOyB9XG5cbi5pY29uLW1haWw6YmVmb3JlIHtcbiAgY29udGVudDogXCLugI9cIjsgfVxuXG4uaWNvbi1tZW51OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCQXCI7IH1cblxuLmljb24tbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugJFcIjsgfVxuXG4uaWNvbi1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7oCSXCI7IH1cblxuLmljb24tcHJvdmVuYW5jZS1ob3RlbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCLugJNcIjsgfVxuXG4uaWNvbi10cmlwYWR2aXNvcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6AlFwiOyB9XG5cbi5pY29uLXR3aXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCLugJVcIjsgfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIFNsaWRlciAqL1xuLnNsaWNrLXNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uc2xpY2stbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICAuc2xpY2stbGlzdDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAuc2xpY2stbGlzdC5kcmFnZ2luZyB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGN1cnNvcjogaGFuZDsgfVxuXG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLnNsaWNrLXRyYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIC5zbGljay10cmFjazpiZWZvcmUsIC5zbGljay10cmFjazphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5zbGljay1sb2FkaW5nIC5zbGljay10cmFjayB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBbZGlyPVwicnRsXCJdIC5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5zbGljay1zbGlkZSBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zbGljay1zbGlkZS5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuc2xpY2stc2xpZGUuZHJhZ2dpbmcgaW1nIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXNsaWRlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stc2xpZGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAuc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogU2xpZGVyICovXG4uc2xpY2stbG9hZGluZyAuc2xpY2stbGlzdCB7XG4gIGJhY2tncm91bmQ6ICNmZmYgdXJsKFwiLi4vaW1hZ2VzL2FqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDsgfVxuXG4vKiBJY29ucyAqL1xuLyogQXJyb3dzICovXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDBweDtcbiAgZm9udC1zaXplOiAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTsgfVxuICAuc2xpY2stcHJldjpob3ZlciwgLnNsaWNrLXByZXY6Zm9jdXMsXG4gIC5zbGljay1uZXh0OmhvdmVyLFxuICAuc2xpY2stbmV4dDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuc2xpY2stcHJldjpob3ZlcjpiZWZvcmUsIC5zbGljay1wcmV2OmZvY3VzOmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDpob3ZlcjpiZWZvcmUsXG4gICAgLnNsaWNrLW5leHQ6Zm9jdXM6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgLnNsaWNrLXByZXYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlLFxuICAuc2xpY2stbmV4dC5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiBcImljb24tZm9udFwiO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuLnNsaWNrLXByZXYge1xuICBsZWZ0OiAtMjVweDsgfVxuICBbZGlyPVwicnRsXCJdIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAtMjVweDsgfVxuICAuc2xpY2stcHJldjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi7oCEXCI7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIu6AhlwiOyB9XG5cbi5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IC0yNXB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLW5leHQge1xuICAgIGxlZnQ6IC0yNXB4O1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLugIZcIjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi7oCEXCI7IH1cblxuLyogRG90cyAqL1xuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0yNXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5zbGljay1kb3RzIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBtYXJnaW46IDAgNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlciwgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgICAgICAuc2xpY2stZG90cyBsaSBidXR0b246aG92ZXI6YmVmb3JlLCAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXM6YmVmb3JlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcImljb24tZm9udFwiO1xuICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuICAgIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgIGNvbG9yOiAjRENDMThFO1xuICAgICAgb3BhY2l0eTogMTsgfVxuXG4vKiFcbiAqIGpRdWVyeSBVSSBDU1MgRnJhbWV3b3JrIDEuMTIuMVxuICogaHR0cDovL2pxdWVyeXVpLmNvbVxuICpcbiAqIENvcHlyaWdodCBqUXVlcnkgRm91bmRhdGlvbiBhbmQgb3RoZXIgY29udHJpYnV0b3JzXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuXG4gKiBodHRwOi8vanF1ZXJ5Lm9yZy9saWNlbnNlXG4gKlxuICogaHR0cDovL2FwaS5qcXVlcnl1aS5jb20vY2F0ZWdvcnkvdGhlbWluZy9cbiAqL1xuLyogTGF5b3V0IGhlbHBlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLWhlbHBlci1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi51aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUge1xuICBib3JkZXI6IDA7XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDsgfVxuXG4udWktaGVscGVyLXJlc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi51aS1oZWxwZXItY2xlYXJmaXg6YmVmb3JlLFxuLnVpLWhlbHBlci1jbGVhcmZpeDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyB9XG5cbi51aS1oZWxwZXItY2xlYXJmaXg6YWZ0ZXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4udWktaGVscGVyLXpmaXgge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMDtcbiAgZmlsdGVyOiBBbHBoYShPcGFjaXR5PTApO1xuICAvKiBzdXBwb3J0OiBJRTggKi8gfVxuXG4udWktZnJvbnQge1xuICB6LWluZGV4OiAxMDA7IH1cblxuLyogSW50ZXJhY3Rpb24gQ3Vlc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWktc3RhdGUtZGlzYWJsZWQge1xuICBjdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLyogSWNvbnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLnVpLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi10b3A6IC0uMjVlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWluZGVudDogLTk5OTk5cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuLnVpLXdpZGdldC1pY29uLWJsb2NrIHtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLThweDtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyogTWlzYyB2aXN1YWxzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qIE92ZXJsYXlzICovXG4udWktd2lkZ2V0LW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4vKiFcbiAqIGpRdWVyeSBVSSBBY2NvcmRpb24gMS4xMi4xXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9hY2NvcmRpb24vI3RoZW1pbmdcbiAqL1xuLnVpLWFjY29yZGlvbiAudWktYWNjb3JkaW9uLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAycHggMCAwIDA7XG4gIHBhZGRpbmc6IC41ZW0gLjVlbSAuNWVtIC43ZW07XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG4udWktYWNjb3JkaW9uIC51aS1hY2NvcmRpb24tY29udGVudCB7XG4gIHBhZGRpbmc6IDFlbSAyLjJlbTtcbiAgYm9yZGVyLXRvcDogMDtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyohXG4gKiBqUXVlcnkgVUkgVGFicyAxLjEyLjFcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3RhYnMvI3RoZW1pbmdcbiAqL1xuLnVpLXRhYnMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qIHBvc2l0aW9uOiByZWxhdGl2ZSBwcmV2ZW50cyBJRSBzY3JvbGwgYnVnIChlbGVtZW50IHdpdGggcG9zaXRpb246IHJlbGF0aXZlIGluc2lkZSBjb250YWluZXIgd2l0aCBvdmVyZmxvdzogYXV0byBhcHBlYXIgYXMgXCJmaXhlZFwiKSAqL1xuICBwYWRkaW5nOiAuMmVtOyB9XG5cbi51aS10YWJzIC51aS10YWJzLW5hdiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogLjJlbSAuMmVtIDA7IH1cblxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwO1xuICBtYXJnaW46IDFweCAuMmVtIDAgMDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4udWktdGFicyAudWktdGFicy1uYXYgLnVpLXRhYnMtYW5jaG9yIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IC41ZW0gMWVtO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpLnVpLXRhYnMtYWN0aXZlIHtcbiAgbWFyZ2luLWJvdHRvbTogLTFweDtcbiAgcGFkZGluZy1ib3R0b206IDFweDsgfVxuXG4udWktdGFicyAudWktdGFicy1uYXYgbGkudWktdGFicy1hY3RpdmUgLnVpLXRhYnMtYW5jaG9yLFxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpLnVpLXN0YXRlLWRpc2FibGVkIC51aS10YWJzLWFuY2hvcixcbi51aS10YWJzIC51aS10YWJzLW5hdiBsaS51aS10YWJzLWxvYWRpbmcgLnVpLXRhYnMtYW5jaG9yIHtcbiAgY3Vyc29yOiB0ZXh0OyB9XG5cbi51aS10YWJzLWNvbGxhcHNpYmxlIC51aS10YWJzLW5hdiBsaS51aS10YWJzLWFjdGl2ZSAudWktdGFicy1hbmNob3Ige1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLnVpLXRhYnMgLnVpLXRhYnMtcGFuZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBwYWRkaW5nOiAxZW0gMS40ZW07XG4gIGJhY2tncm91bmQ6IG5vbmU7IH1cblxuLyohXG4gKiBqUXVlcnkgVUkgRGF0ZXBpY2tlciAxLjEyLjFcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2RhdGVwaWNrZXIvI3RoZW1pbmdcbiAqL1xuLnVpLWRhdGVwaWNrZXIge1xuICB3aWR0aDogMTdlbTtcbiAgcGFkZGluZzogLjJlbSAuMmVtIDA7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAuMmVtIDA7IH1cblxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldixcbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMnB4O1xuICB3aWR0aDogMS44ZW07XG4gIGhlaWdodDogMS44ZW07IH1cblxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldi1ob3Zlcixcbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQtaG92ZXIge1xuICB0b3A6IDFweDsgfVxuXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2IHtcbiAgbGVmdDogMnB4OyB9XG5cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQge1xuICByaWdodDogMnB4OyB9XG5cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYtaG92ZXIge1xuICBsZWZ0OiAxcHg7IH1cblxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dC1ob3ZlciB7XG4gIHJpZ2h0OiAxcHg7IH1cblxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldiBzcGFuLFxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLThweDtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC04cHg7IH1cblxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItdGl0bGUge1xuICBtYXJnaW46IDAgMi4zZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjhlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXRpdGxlIHNlbGVjdCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBtYXJnaW46IDFweCAwOyB9XG5cbi51aS1kYXRlcGlja2VyIHNlbGVjdC51aS1kYXRlcGlja2VyLW1vbnRoLFxuLnVpLWRhdGVwaWNrZXIgc2VsZWN0LnVpLWRhdGVwaWNrZXIteWVhciB7XG4gIHdpZHRoOiA0NSU7IH1cblxuLnVpLWRhdGVwaWNrZXIgdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAuOWVtO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBtYXJnaW46IDAgMCAuNGVtOyB9XG5cbi51aS1kYXRlcGlja2VyIHRoIHtcbiAgcGFkZGluZzogLjdlbSAuM2VtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3JkZXI6IDA7IH1cblxuLnVpLWRhdGVwaWNrZXIgdGQge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDFweDsgfVxuXG4udWktZGF0ZXBpY2tlciB0ZCBzcGFuLFxuLnVpLWRhdGVwaWNrZXIgdGQgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAuMmVtO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBtYXJnaW46IC43ZW0gMCAwIDA7XG4gIHBhZGRpbmc6IDAgLjJlbTtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMDsgfVxuXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbiB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAuNWVtIC4yZW0gLjRlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAuMmVtIC42ZW0gLjNlbSAuNmVtO1xuICB3aWR0aDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24udWktZGF0ZXBpY2tlci1jdXJyZW50IHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLyogd2l0aCBtdWx0aXBsZSBjYWxlbmRhcnMgKi9cbi51aS1kYXRlcGlja2VyLnVpLWRhdGVwaWNrZXItbXVsdGkge1xuICB3aWR0aDogYXV0bzsgfVxuXG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cCB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwIHRhYmxlIHtcbiAgd2lkdGg6IDk1JTtcbiAgbWFyZ2luOiAwIGF1dG8gLjRlbTsgfVxuXG4udWktZGF0ZXBpY2tlci1tdWx0aS0yIC51aS1kYXRlcGlja2VyLWdyb3VwIHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4udWktZGF0ZXBpY2tlci1tdWx0aS0zIC51aS1kYXRlcGlja2VyLWdyb3VwIHtcbiAgd2lkdGg6IDMzLjMlOyB9XG5cbi51aS1kYXRlcGlja2VyLW11bHRpLTQgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuICB3aWR0aDogMjUlOyB9XG5cbi51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwLWxhc3QgLnVpLWRhdGVwaWNrZXItaGVhZGVyLFxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAtbWlkZGxlIC51aS1kYXRlcGlja2VyLWhlYWRlciB7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwOyB9XG5cbi51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUge1xuICBjbGVhcjogbGVmdDsgfVxuXG4udWktZGF0ZXBpY2tlci1yb3ctYnJlYWsge1xuICBjbGVhcjogYm90aDtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMDsgfVxuXG4vKiBSVEwgc3VwcG9ydCAqL1xuLnVpLWRhdGVwaWNrZXItcnRsIHtcbiAgZGlyZWN0aW9uOiBydGw7IH1cblxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLXByZXYge1xuICByaWdodDogMnB4O1xuICBsZWZ0OiBhdXRvOyB9XG5cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1uZXh0IHtcbiAgbGVmdDogMnB4O1xuICByaWdodDogYXV0bzsgfVxuXG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItcHJldjpob3ZlciB7XG4gIHJpZ2h0OiAxcHg7XG4gIGxlZnQ6IGF1dG87IH1cblxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLW5leHQ6aG92ZXIge1xuICBsZWZ0OiAxcHg7XG4gIHJpZ2h0OiBhdXRvOyB9XG5cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIHtcbiAgY2xlYXI6IHJpZ2h0OyB9XG5cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbiB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbi51aS1kYXRlcGlja2VyLWN1cnJlbnQsXG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItZ3JvdXAge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWdyb3VwLWxhc3QgLnVpLWRhdGVwaWNrZXItaGVhZGVyLFxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWdyb3VwLW1pZGRsZSAudWktZGF0ZXBpY2tlci1oZWFkZXIge1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7IH1cblxuLyogSWNvbnMgKi9cbi51aS1kYXRlcGlja2VyIC51aS1pY29uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtaW5kZW50OiAtOTk5OTlweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbGVmdDogLjVlbTtcbiAgdG9wOiAuM2VtOyB9XG5cbi8qIGluamVjdDppbXBvcnQgKi9cbi8qIVxuICogIEt3aWNrczogU2V4eSBTbGlkaW5nIFBhbmVscyBmb3IgalF1ZXJ5IC0gdjIuMi4xXG4gKiAgaHR0cDovL2RldnNtYXNoLmNvbS9wcm9qZWN0cy9rd2lja3NcbiAqXG4gKiAgQ29weXJpZ2h0IDIwMTMgSmVyZW15IE1hcnRpbiAoam1hcjc3NylcbiAqICBDb250cmlidXRvcnM6IER1a2UgU3BlZXIgKER1a2UzRCksIEd1aWxsZXJtbyBHdWVycmVybyAoZ2d1ZXJyZXJvKVxuICogIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZVxuICogIGh0dHA6Ly93d3cub3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvbWl0LWxpY2Vuc2UucGhwXG4gKi9cbi8qXG4gKiAgVGhpcyBmaWxlIGNvbnRhaW5zIHN0eWxlcyB0aGF0IGFyZSBjb21tb24gdG8gYWxsIGt3aWNrcyBpbnN0YW5jZXMuICBOb3RlIHRoYXQgZWFjaCBrd2lja3MgaW5zdGFuY2UgcmVxdWlyZXNcbiAqICBhZGRpdGlvbmFsIHN0eWxpbmcgLSBwbGVhc2Ugc2VlIHRoZSBleGFtcGxlcyBmb3IgbW9yZSBpbmZvLlxuICovXG4ua3dpY2tzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLmt3aWNrcyA+ICoge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwOyB9XG5cbi5rd2lja3Mua3dpY2tzLXByb2Nlc3NlZCA+ICoge1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4ua3dpY2tzLWhvcml6b250YWwgPiAqIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmt3aWNrcy1ob3Jpem9udGFsID4gOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLmt3aWNrcy12ZXJ0aWNhbCA+IDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDA7IH1cblxuLyohXG5cdE1vZGFhbCAtIGFjY2Vzc2libGUgbW9kYWxzIC0gdjAuMy4xXG5cdGJ5IEh1bWFhbiwgZm9yIGFsbCBodW1hbnMuXG5cdGh0dHA6Ly9odW1hYW4uY29tXG4gKi9cbi5tb2RhYWwtbm9zY3JvbGwge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5tb2RhYWwtYWNjZXNzaWJsZS1oaWRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMXB4IDFweCAxcHggMXB4KTtcbiAgLyogSUU2LCBJRTcgKi9cbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLm1vZGFhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDk5OTtcbiAgb3BhY2l0eTogMDsgfVxuXG4ubW9kYWFsLXdyYXBwZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDk5OTk7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBvcGFjaXR5OiAxO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0OyB9XG4gIC5tb2RhYWwtd3JhcHBlciAqIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLm1vZGFhbC13cmFwcGVyIC5tb2RhYWwtY2xvc2Uge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuICAubW9kYWFsLXdyYXBwZXIubW9kYWFsLXN0YXJ0X25vbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgb3BhY2l0eTogMTsgfVxuICAubW9kYWFsLXdyYXBwZXIubW9kYWFsLXN0YXJ0X2ZhZGUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLm1vZGFhbC13cmFwcGVyICpbdGFiaW5kZXg9XCIwXCJdIHtcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLm1vZGFhbC13cmFwcGVyLm1vZGFhbC1mdWxsc2NyZWVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5tb2RhYWwtb3V0ZXItd3JhcHBlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgLm1vZGFhbC1mdWxsc2NyZWVuIC5tb2RhYWwtb3V0ZXItd3JhcHBlciB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLm1vZGFhbC1pbm5lci13cmFwcGVyIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDgwcHggMjVweDsgfVxuICAubW9kYWFsLWZ1bGxzY3JlZW4gLm1vZGFhbC1pbm5lci13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuLm1vZGFhbC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICMwMDA7XG4gIG1heC13aWR0aDogNDQwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICBib3gtc2hhZG93OiAwIDRweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgY3Vyc29yOiBhdXRvOyB9XG4gIC5tb2RhYWwtY29udGFpbmVyLmlzX2xvYWRpbmcge1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgd2lkdGg6IDEwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLm1vZGFhbC1mdWxsc2NyZWVuIC5tb2RhYWwtY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBhdXRvOyB9XG5cbi5tb2RhYWwtY2xvc2Uge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAyMHB4O1xuICB0b3A6IDIwcHg7XG4gIGNvbG9yOiAjZmZmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDE7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuICAubW9kYWFsLWNsb3NlOmZvY3VzLCAubW9kYWFsLWNsb3NlOmhvdmVyIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgICAubW9kYWFsLWNsb3NlOmZvY3VzOmJlZm9yZSwgLm1vZGFhbC1jbG9zZTpmb2N1czphZnRlciwgLm1vZGFhbC1jbG9zZTpob3ZlcjpiZWZvcmUsIC5tb2RhYWwtY2xvc2U6aG92ZXI6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2I5M2QwYzsgfVxuICAubW9kYWFsLWNsb3NlIHNwYW4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIGNsaXA6IHJlY3QoMXB4IDFweCAxcHggMXB4KTtcbiAgICAvKiBJRTYsIElFNyAqL1xuICAgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAubW9kYWFsLWNsb3NlOmJlZm9yZSwgLm1vZGFhbC1jbG9zZTphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTRweDtcbiAgICBsZWZ0OiAyM3B4O1xuICAgIHdpZHRoOiA0cHg7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLWluLW91dDsgfVxuICAubW9kYWFsLWNsb3NlOmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxuICAubW9kYWFsLWNsb3NlOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cbiAgLm1vZGFhbC1mdWxsc2NyZWVuIC5tb2RhYWwtY2xvc2Uge1xuICAgIGJhY2tncm91bmQ6ICNhZmI3YmM7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgdG9wOiAxMHB4OyB9XG5cbi5tb2RhYWwtY29udGVudC1jb250YWluZXIge1xuICBwYWRkaW5nOiA0LjU3MTQzcmVtIDMuNDI4NTdyZW07IH1cblxuLm1vZGFhbC1jb25maXJtLXdyYXAge1xuICBwYWRkaW5nOiAzMHB4IDAgMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDA7IH1cblxuLm1vZGFhbC1jb25maXJtLWJ0biB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMTBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5tb2RhYWwtY29uZmlybS1idG4ubW9kYWFsLW9rIHtcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZDogIzU1NTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gICAgLm1vZGFhbC1jb25maXJtLWJ0bi5tb2RhYWwtb2s6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogIzJmMmYyZjsgfVxuICAubW9kYWFsLWNvbmZpcm0tYnRuLm1vZGFhbC1jYW5jZWwge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgLm1vZGFhbC1jb25maXJtLWJ0bi5tb2RhYWwtY2FuY2VsOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiAjMmYyZjJmOyB9XG5cbkBrZXlmcmFtZXMgaW5zdGFSZXZlYWwge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuQC1vLWtleWZyYW1lcyBpbnN0YVJldmVhbCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG5ALW1vei1rZXlmcmFtZXMgaW5zdGFSZXZlYWwge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGluc3RhUmV2ZWFsIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkAtbXMta2V5ZnJhbWVzIGluc3RhUmV2ZWFsIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbi5tb2RhYWwtaW5zdGFncmFtIC5tb2RhYWwtY29udGFpbmVyIHtcbiAgd2lkdGg6IGF1dG87XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLm1vZGFhbC1pbnN0YWdyYW0gLm1vZGFhbC1jb250ZW50LWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi5tb2RhYWwtaW5zdGFncmFtIC5tb2RhYWwtY29udGVudC1jb250YWluZXIgPiBibG9ja3F1b3RlIHtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7IH1cblxuLm1vZGFhbC1pbnN0YWdyYW0gaWZyYW1lIHtcbiAgb3BhY2l0eTogMDtcbiAgbWFyZ2luOiAtNnB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMDBweCAhaW1wb3J0YW50O1xuICBtYXgtd2lkdGg6IDgwMHB4ICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uOiBpbnN0YVJldmVhbCAxcyBsaW5lYXIgZm9yd2FyZHM7IH1cblxuLm1vZGFhbC1pbWFnZSAubW9kYWFsLWlubmVyLXdyYXBwZXIge1xuICBwYWRkaW5nLWxlZnQ6IDE0MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNDBweDsgfVxuXG4ubW9kYWFsLWltYWdlIC5tb2RhYWwtY29udGFpbmVyIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4ubW9kYWFsLWdhbGxlcnktd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICNmZmY7IH1cblxuLm1vZGFhbC1nYWxsZXJ5LWl0ZW0ge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1pdGVtIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLm1vZGFhbC1nYWxsZXJ5LWl0ZW0uaXNfYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubW9kYWFsLWdhbGxlcnktbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDIwcHggMCAwO1xuICBmb250LXNpemU6IDE4cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLm1vZGFhbC1nYWxsZXJ5LWxhYmVsOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lOyB9XG5cbi5tb2RhYWwtZ2FsbGVyeS1jb250cm9sIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBvcGFjaXR5OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjZmZmO1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDsgfVxuICAubW9kYWFsLWdhbGxlcnktY29udHJvbC5pc19oaWRkZW4ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOmZvY3VzLCAubW9kYWFsLWdhbGxlcnktY29udHJvbDpob3ZlciB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG4gICAgLm1vZGFhbC1nYWxsZXJ5LWNvbnRyb2w6Zm9jdXM6YmVmb3JlLCAubW9kYWFsLWdhbGxlcnktY29udHJvbDpmb2N1czphZnRlciwgLm1vZGFhbC1nYWxsZXJ5LWNvbnRyb2w6aG92ZXI6YmVmb3JlLCAubW9kYWFsLWdhbGxlcnktY29udHJvbDpob3ZlcjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjYWZiN2JjOyB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sIHNwYW4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIGNsaXA6IHJlY3QoMXB4IDFweCAxcHggMXB4KTtcbiAgICAvKiBJRTYsIElFNyAqL1xuICAgIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAubW9kYWFsLWdhbGxlcnktY29udHJvbDpiZWZvcmUsIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxNnB4O1xuICAgIGxlZnQ6IDI1cHg7XG4gICAgd2lkdGg6IDRweDtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOmJlZm9yZSB7XG4gICAgbWFyZ2luOiAtNXB4IDAgMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOmFmdGVyIHtcbiAgICBtYXJnaW46IDVweCAwIDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG5cbi5tb2RhYWwtZ2FsbGVyeS1uZXh0IHtcbiAgbGVmdDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDQwcHg7IH1cblxuLm1vZGFhbC1nYWxsZXJ5LXByZXYge1xuICByaWdodDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiA0MHB4OyB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1wcmV2OmJlZm9yZSwgLm1vZGFhbC1nYWxsZXJ5LXByZXY6YWZ0ZXIge1xuICAgIGxlZnQ6IDIycHg7IH1cbiAgLm1vZGFhbC1nYWxsZXJ5LXByZXY6YmVmb3JlIHtcbiAgICBtYXJnaW46IDVweCAwIDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTsgfVxuICAubW9kYWFsLWdhbGxlcnktcHJldjphZnRlciB7XG4gICAgbWFyZ2luOiAtNXB4IDAgMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cblxuLm1vZGFhbC12aWRlby13cmFwIHtcbiAgbWFyZ2luOiBhdXRvIDUwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubW9kYWFsLXZpZGVvLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgbWF4LXdpZHRoOiAxMzAwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLm1vZGFhbC12aWRlby1jb250YWluZXIgaWZyYW1lLFxuICAubW9kYWFsLXZpZGVvLWNvbnRhaW5lciBvYmplY3QsXG4gIC5tb2RhYWwtdmlkZW8tY29udGFpbmVyIGVtYmVkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5tb2RhYWwtaWZyYW1lIC5tb2RhYWwtY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLm1vZGFhbC1pZnJhbWUtZWxlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gIC5tb2RhYWwtdmlkZW8tY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBoZWlnaHQ6IDczMXB4OyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTQwcHgpIHtcbiAgLm1vZGFhbC1pbWFnZSAubW9kYWFsLWlubmVyLXdyYXBwZXIge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9XG4gIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sIHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAyMHB4O1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7IH1cbiAgICAubW9kYWFsLWdhbGxlcnktY29udHJvbDpiZWZvcmUsIC5tb2RhYWwtZ2FsbGVyeS1jb250cm9sOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7IH1cbiAgLm1vZGFhbC1nYWxsZXJ5LW5leHQge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDIwcHg7IH1cbiAgLm1vZGFhbC1nYWxsZXJ5LXByZXYge1xuICAgIGxlZnQ6IDIwcHg7XG4gICAgcmlnaHQ6IGF1dG87IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAubW9kYWFsLWluc3RhZ3JhbSBpZnJhbWUge1xuICAgIHdpZHRoOiA1MDBweCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDExMDBweCkge1xuICAubW9kYWFsLWluc3RhZ3JhbSBpZnJhbWUge1xuICAgIHdpZHRoOiA3MDBweCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDEwMDBweCkge1xuICAubW9kYWFsLWlubmVyLXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4OyB9XG4gIC5tb2RhYWwtaW5zdGFncmFtIGlmcmFtZSB7XG4gICAgd2lkdGg6IDYwMHB4ICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogOTAwcHgpIHtcbiAgLm1vZGFhbC1pbnN0YWdyYW0gaWZyYW1lIHtcbiAgICB3aWR0aDogNTAwcHggIWltcG9ydGFudDsgfVxuICAubW9kYWFsLXZpZGVvLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA5MDBweDtcbiAgICBtYXgtaGVpZ2h0OiA1MTBweDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgLm1vZGFhbC1pbnN0YWdyYW0gaWZyYW1lIHtcbiAgICB3aWR0aDogMjgwcHggIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDgyMHB4KSB7XG4gIC5tb2RhYWwtZ2FsbGVyeS1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMjAwcHg7XG4gIGhlaWdodDogMjAwcHg7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbjogLTEwMHB4IDAgMCAtMTAwcHg7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4yNSk7IH1cblxuQC1tcy1rZXlmcmFtZXMgbW9kYWFsLWxvYWRpbmctc3Bpbm5lciB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KTsgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAuMTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfSB9XG5cbkAtbW96LWtleWZyYW1lcyBtb2RhYWwtbG9hZGluZy1zcGlubmVyIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IC4xO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogLjE7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG5ALW8ta2V5ZnJhbWVzIG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogLjE7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG5Aa2V5ZnJhbWVzIG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogLjE7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdiB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyID4gZGl2ID4gZGl2IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSgxKSA+IGRpdiB7XG4gIC1tcy1hbmltYXRpb246IG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO1xuICAtbW96LWFuaW1hdGlvbjogbW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW8tYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1zLWFuaW1hdGlvbi1kZWxheTogMHM7XG4gIC1tb3otYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDBzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IDBzO1xuICBhbmltYXRpb24tZGVsYXk6IDBzOyB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyID4gZGl2Om50aC1vZi10eXBlKDIpID4gZGl2LCAubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSgzKSA+IGRpdiB7XG4gIC1tcy1hbmltYXRpb246IG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO1xuICAtbW96LWFuaW1hdGlvbjogbW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW8tYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSgxKSB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlKDcwcHgsIDApOyB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyID4gZGl2Om50aC1vZi10eXBlKDIpID4gZGl2IHtcbiAgYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1zLWFuaW1hdGlvbi1kZWxheTogLjEycztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IC4xMnM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuMTJzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IC4xMnM7XG4gIGFuaW1hdGlvbi1kZWxheTogLjEyczsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSgyKSB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDkwZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlKDcwcHgsIDApOyB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyID4gZGl2Om50aC1vZi10eXBlKDMpID4gZGl2IHtcbiAgYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1zLWFuaW1hdGlvbi1kZWxheTogLjI1cztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IC4yNXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuMjVzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IC4yNXM7XG4gIGFuaW1hdGlvbi1kZWxheTogLjI1czsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSg0KSA+IGRpdiwgLm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgPiBkaXY6bnRoLW9mLXR5cGUoNSkgPiBkaXYge1xuICAtbXMtYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1vei1hbmltYXRpb246IG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO1xuICAtd2Via2l0LWFuaW1hdGlvbjogbW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIC1vLWFuaW1hdGlvbjogbW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7IH1cblxuLm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgPiBkaXY6bnRoLW9mLXR5cGUoMykge1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDEzNWRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgxMzVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMTM1ZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgxMzVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDEzNWRlZykgdHJhbnNsYXRlKDcwcHgsIDApOyB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyID4gZGl2Om50aC1vZi10eXBlKDQpID4gZGl2IHtcbiAgYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1zLWFuaW1hdGlvbi1kZWxheTogLjM3cztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IC4zN3M7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuMzdzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IC4zN3M7XG4gIGFuaW1hdGlvbi1kZWxheTogLjM3czsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSg0KSB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7IH1cblxuLm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgPiBkaXY6bnRoLW9mLXR5cGUoNSkgPiBkaXYge1xuICBhbmltYXRpb246IG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO1xuICAtbXMtYW5pbWF0aW9uLWRlbGF5OiAuNXM7XG4gIC1tb3otYW5pbWF0aW9uLWRlbGF5OiAuNXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuNXM7XG4gIC1vLWFuaW1hdGlvbi1kZWxheTogLjVzO1xuICBhbmltYXRpb24tZGVsYXk6IC41czsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSg2KSA+IGRpdiwgLm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgPiBkaXY6bnRoLW9mLXR5cGUoNykgPiBkaXYge1xuICAtbXMtYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1vei1hbmltYXRpb246IG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO1xuICAtd2Via2l0LWFuaW1hdGlvbjogbW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIC1vLWFuaW1hdGlvbjogbW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7IH1cblxuLm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgPiBkaXY6bnRoLW9mLXR5cGUoNSkge1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDIyNWRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgyMjVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMjI1ZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgyMjVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDIyNWRlZykgdHJhbnNsYXRlKDcwcHgsIDApOyB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyID4gZGl2Om50aC1vZi10eXBlKDYpID4gZGl2IHtcbiAgYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1zLWFuaW1hdGlvbi1kZWxheTogLjYycztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IC42MnM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuNjJzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IC42MnM7XG4gIGFuaW1hdGlvbi1kZWxheTogLjYyczsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSg2KSB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMjcwZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDI3MGRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDI3MGRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMjcwZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7IH1cblxuLm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgPiBkaXY6bnRoLW9mLXR5cGUoNykgPiBkaXYge1xuICBhbmltYXRpb246IG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO1xuICAtbXMtYW5pbWF0aW9uLWRlbGF5OiAuNzVzO1xuICAtbW96LWFuaW1hdGlvbi1kZWxheTogLjc1cztcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC43NXM7XG4gIC1vLWFuaW1hdGlvbi1kZWxheTogLjc1cztcbiAgYW5pbWF0aW9uLWRlbGF5OiAuNzVzOyB9XG5cbi5tb2RhYWwtbG9hZGluZy1zcGlubmVyID4gZGl2Om50aC1vZi10eXBlKDcpIHtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgzMTVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMzE1ZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDMxNWRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMzE1ZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgzMTVkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSg4KSA+IGRpdiB7XG4gIC1tcy1hbmltYXRpb246IG1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlO1xuICAtbW96LWFuaW1hdGlvbjogbW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW8tYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBtb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1zLWFuaW1hdGlvbi1kZWxheTogLjg3cztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IC44N3M7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuODdzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IC44N3M7XG4gIGFuaW1hdGlvbi1kZWxheTogLjg3czsgfVxuXG4ubW9kYWFsLWxvYWRpbmctc3Bpbm5lciA+IGRpdjpudGgtb2YtdHlwZSg4KSB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMzYwZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDM2MGRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDg0cHgsIDg0cHgpIHJvdGF0ZSgzNjBkZWcpIHRyYW5zbGF0ZSg3MHB4LCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoODRweCwgODRweCkgcm90YXRlKDM2MGRlZykgdHJhbnNsYXRlKDcwcHgsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg4NHB4LCA4NHB4KSByb3RhdGUoMzYwZGVnKSB0cmFuc2xhdGUoNzBweCwgMCk7IH1cblxuLypcbiAqICBSZW1vZGFsIC0gdjEuMS4xXG4gKiAgUmVzcG9uc2l2ZSwgbGlnaHR3ZWlnaHQsIGZhc3QsIHN5bmNocm9uaXplZCB3aXRoIENTUyBhbmltYXRpb25zLCBmdWxseSBjdXN0b21pemFibGUgbW9kYWwgd2luZG93IHBsdWdpbiB3aXRoIGRlY2xhcmF0aXZlIGNvbmZpZ3VyYXRpb24gYW5kIGhhc2ggdHJhY2tpbmcuXG4gKiAgaHR0cDovL3ZvZGthYmVhcnMuZ2l0aHViLmlvL3JlbW9kYWwvXG4gKlxuICogIE1hZGUgYnkgSWx5YSBNYWthcm92XG4gKiAgVW5kZXIgTUlUIExpY2Vuc2VcbiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFJlbW9kYWwncyBuZWNlc3Nhcnkgc3R5bGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogSGlkZSBzY3JvbGwgYmFyICovXG5odG1sLnJlbW9kYWwtaXMtbG9ja2VkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lOyB9XG5cbi8qIEFudGkgRk9VQyAqL1xuLnJlbW9kYWwsXG5bZGF0YS1yZW1vZGFsLWlkXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogTmVjZXNzYXJ5IHN0eWxlcyBvZiB0aGUgb3ZlcmxheSAqL1xuLnJlbW9kYWwtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk5OTtcbiAgdG9wOiAtNTAwMHB4O1xuICByaWdodDogLTUwMDBweDtcbiAgYm90dG9tOiAtNTAwMHB4O1xuICBsZWZ0OiAtNTAwMHB4O1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIE5lY2Vzc2FyeSBzdHlsZXMgb2YgdGhlIHdyYXBwZXIgKi9cbi5yZW1vZGFsLXdyYXBwZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEwMDAwO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxuXG4ucmVtb2RhbC13cmFwcGVyOmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAtMC4wNWVtO1xuICBjb250ZW50OiBcIlwiOyB9XG5cbi8qIEZpeCBpUGFkLCBpUGhvbmUgZ2xpdGNoZXMgKi9cbi5yZW1vZGFsLW92ZXJsYXksXG4ucmVtb2RhbC13cmFwcGVyIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4vKiBOZWNlc3Nhcnkgc3R5bGVzIG9mIHRoZSBtb2RhbCBkaWFsb2cgKi9cbi5yZW1vZGFsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdXRsaW5lOiBub25lO1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICB0ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyB9XG5cbi5yZW1vZGFsLWlzLWluaXRpYWxpemVkIHtcbiAgLyogRGlzYWJsZSBBbnRpLUZPVUMgKi9cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qXG4gKiAgUmVtb2RhbCAtIHYxLjEuMVxuICogIFJlc3BvbnNpdmUsIGxpZ2h0d2VpZ2h0LCBmYXN0LCBzeW5jaHJvbml6ZWQgd2l0aCBDU1MgYW5pbWF0aW9ucywgZnVsbHkgY3VzdG9taXphYmxlIG1vZGFsIHdpbmRvdyBwbHVnaW4gd2l0aCBkZWNsYXJhdGl2ZSBjb25maWd1cmF0aW9uIGFuZCBoYXNoIHRyYWNraW5nLlxuICogIGh0dHA6Ly92b2RrYWJlYXJzLmdpdGh1Yi5pby9yZW1vZGFsL1xuICpcbiAqICBNYWRlIGJ5IElseWEgTWFrYXJvdlxuICogIFVuZGVyIE1JVCBMaWNlbnNlXG4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBSZW1vZGFsJ3MgZGVmYXVsdCBtb2JpbGUgZmlyc3QgdGhlbWVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBEZWZhdWx0IHRoZW1lIHN0eWxlcyBmb3IgdGhlIGJhY2tncm91bmQgKi9cbi5yZW1vZGFsLWJnLnJlbW9kYWwtaXMtb3BlbmluZyxcbi5yZW1vZGFsLWJnLnJlbW9kYWwtaXMtb3BlbmVkIHtcbiAgLXdlYmtpdC1maWx0ZXI6IGJsdXIoM3B4KTtcbiAgZmlsdGVyOiBibHVyKDNweCk7IH1cblxuLyogRGVmYXVsdCB0aGVtZSBzdHlsZXMgb2YgdGhlIG92ZXJsYXkgKi9cbi5yZW1vZGFsLW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDQzLCA0NiwgNTYsIDAuOSk7IH1cblxuLnJlbW9kYWwtb3ZlcmxheS5yZW1vZGFsLWlzLW9wZW5pbmcsXG4ucmVtb2RhbC1vdmVybGF5LnJlbW9kYWwtaXMtY2xvc2luZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDAuM3M7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzOyB9XG5cbi5yZW1vZGFsLW92ZXJsYXkucmVtb2RhbC1pcy1vcGVuaW5nIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcmVtb2RhbC1vdmVybGF5LW9wZW5pbmcta2V5ZnJhbWVzO1xuICBhbmltYXRpb24tbmFtZTogcmVtb2RhbC1vdmVybGF5LW9wZW5pbmcta2V5ZnJhbWVzOyB9XG5cbi5yZW1vZGFsLW92ZXJsYXkucmVtb2RhbC1pcy1jbG9zaW5nIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcmVtb2RhbC1vdmVybGF5LWNsb3Npbmcta2V5ZnJhbWVzO1xuICBhbmltYXRpb24tbmFtZTogcmVtb2RhbC1vdmVybGF5LWNsb3Npbmcta2V5ZnJhbWVzOyB9XG5cbi8qIERlZmF1bHQgdGhlbWUgc3R5bGVzIG9mIHRoZSB3cmFwcGVyICovXG4ucmVtb2RhbC13cmFwcGVyIHtcbiAgcGFkZGluZzogMTBweCAxMHB4IDA7IH1cblxuLyogRGVmYXVsdCB0aGVtZSBzdHlsZXMgb2YgdGhlIG1vZGFsIGRpYWxvZyAqL1xuLnJlbW9kYWwge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgcGFkZGluZzogMzVweDtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICBjb2xvcjogIzJiMmUzODtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4ucmVtb2RhbC5yZW1vZGFsLWlzLW9wZW5pbmcsXG4ucmVtb2RhbC5yZW1vZGFsLWlzLWNsb3Npbmcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkczsgfVxuXG4ucmVtb2RhbC5yZW1vZGFsLWlzLW9wZW5pbmcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByZW1vZGFsLW9wZW5pbmcta2V5ZnJhbWVzO1xuICBhbmltYXRpb24tbmFtZTogcmVtb2RhbC1vcGVuaW5nLWtleWZyYW1lczsgfVxuXG4ucmVtb2RhbC5yZW1vZGFsLWlzLWNsb3Npbmcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByZW1vZGFsLWNsb3Npbmcta2V5ZnJhbWVzO1xuICBhbmltYXRpb24tbmFtZTogcmVtb2RhbC1jbG9zaW5nLWtleWZyYW1lczsgfVxuXG4vKiBWZXJ0aWNhbCBhbGlnbiBvZiB0aGUgbW9kYWwgZGlhbG9nICovXG4ucmVtb2RhbCxcbi5yZW1vZGFsLXdyYXBwZXI6YWZ0ZXIge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi8qIENsb3NlIGJ1dHRvbiAqL1xuLnJlbW9kYWwtY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB3aWR0aDogMzVweDtcbiAgaGVpZ2h0OiAzNXB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjOTU5NzljO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi5yZW1vZGFsLWNsb3NlOmhvdmVyLFxuLnJlbW9kYWwtY2xvc2U6Zm9jdXMge1xuICBjb2xvcjogIzJiMmUzODsgfVxuXG4ucmVtb2RhbC1jbG9zZTpiZWZvcmUge1xuICBmb250LWZhbWlseTogQXJpYWwsIFwiSGVsdmV0aWNhIENZXCIsIFwiTmltYnVzIFNhbnMgTFwiLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDM1cHg7XG4gIGNvbnRlbnQ6IFwiXFwwMGQ3XCI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4vKiBEaWFsb2cgYnV0dG9ucyAqL1xuLnJlbW9kYWwtY29uZmlybSxcbi5yZW1vZGFsLWNhbmNlbCB7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIG1pbi13aWR0aDogMTEwcHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTJweCAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7IH1cblxuLnJlbW9kYWwtY29uZmlybSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjODFjNzg0OyB9XG5cbi5yZW1vZGFsLWNvbmZpcm06aG92ZXIsXG4ucmVtb2RhbC1jb25maXJtOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzY2YmI2YTsgfVxuXG4ucmVtb2RhbC1jYW5jZWwge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogI2U1NzM3MzsgfVxuXG4ucmVtb2RhbC1jYW5jZWw6aG92ZXIsXG4ucmVtb2RhbC1jYW5jZWw6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjZWY1MzUwOyB9XG5cbi8qIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0KyBmb3IgdGhlIGJ1dHRvbiB0YWcuICovXG4ucmVtb2RhbC1jb25maXJtOjotbW96LWZvY3VzLWlubmVyLFxuLnJlbW9kYWwtY2FuY2VsOjotbW96LWZvY3VzLWlubmVyLFxuLnJlbW9kYWwtY2xvc2U6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7IH1cblxuLyogS2V5ZnJhbWVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHJlbW9kYWwtb3BlbmluZy1rZXlmcmFtZXMge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LWZpbHRlcjogYmx1cigwKTtcbiAgICBmaWx0ZXI6IGJsdXIoMCk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHJlbW9kYWwtb3BlbmluZy1rZXlmcmFtZXMge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LWZpbHRlcjogYmx1cigwKTtcbiAgICBmaWx0ZXI6IGJsdXIoMCk7IH0gfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcmVtb2RhbC1jbG9zaW5nLWtleWZyYW1lcyB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC1maWx0ZXI6IGJsdXIoMCk7XG4gICAgZmlsdGVyOiBibHVyKDApOyB9IH1cblxuQGtleWZyYW1lcyByZW1vZGFsLWNsb3Npbmcta2V5ZnJhbWVzIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgb3BhY2l0eTogMTsgfVxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LWZpbHRlcjogYmx1cigwKTtcbiAgICBmaWx0ZXI6IGJsdXIoMCk7IH0gfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcmVtb2RhbC1vdmVybGF5LW9wZW5pbmcta2V5ZnJhbWVzIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkBrZXlmcmFtZXMgcmVtb2RhbC1vdmVybGF5LW9wZW5pbmcta2V5ZnJhbWVzIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyByZW1vZGFsLW92ZXJsYXktY2xvc2luZy1rZXlmcmFtZXMge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuQGtleWZyYW1lcyByZW1vZGFsLW92ZXJsYXktY2xvc2luZy1rZXlmcmFtZXMge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuLyogTWVkaWEgcXVlcmllc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjQxcHgpIHtcbiAgLnJlbW9kYWwge1xuICAgIG1heC13aWR0aDogNzAwcHg7IH0gfVxuXG4vKiBJRThcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ubHQtaWU5IC5yZW1vZGFsLW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kOiAjMmIyZTM4OyB9XG5cbi5sdC1pZTkgLnJlbW9kYWwge1xuICB3aWR0aDogNzAwcHg7IH1cblxuLnItdGFicyAuci10YWJzLW5hdiB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4uci10YWJzIC5yLXRhYnMtdGFiIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLnItdGFicyAuci10YWJzLXBhbmVsIHtcbiAgcGFkZGluZzogMTVweDtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uci10YWJzIC5yLXRhYnMtYWNjb3JkaW9uLXRpdGxlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uci10YWJzIC5yLXRhYnMtcGFuZWwuci10YWJzLXN0YXRlLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qIEFjY29yZGlvbiByZXNwb25zaXZlIGJyZWFrcG9pbnQgKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuci10YWJzIC5yLXRhYnMtbmF2IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5yLXRhYnMgLnItdGFicy1hY2NvcmRpb24tdGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLypcbj09IG1hbGlodSBqcXVlcnkgY3VzdG9tIHNjcm9sbGJhciBwbHVnaW4gPT1cblBsdWdpbiBVUkk6IGh0dHA6Ly9tYW5vcy5tYWxpaHUuZ3IvanF1ZXJ5LWN1c3RvbS1jb250ZW50LXNjcm9sbGVyXG4qL1xuLypcbkNPTlRFTlRTOlxuXHQxLiBCQVNJQyBTVFlMRSAtIFBsdWdpbidzIGJhc2ljL2Vzc2VudGlhbCBDU1MgcHJvcGVydGllcyAobm9ybWFsbHksIHNob3VsZCBub3QgYmUgZWRpdGVkKS5cblx0Mi4gVkVSVElDQUwgU0NST0xMQkFSIC0gUG9zaXRpb25pbmcgYW5kIGRpbWVuc2lvbnMgb2YgdmVydGljYWwgc2Nyb2xsYmFyLlxuXHQzLiBIT1JJWk9OVEFMIFNDUk9MTEJBUiAtIFBvc2l0aW9uaW5nIGFuZCBkaW1lbnNpb25zIG9mIGhvcml6b250YWwgc2Nyb2xsYmFyLlxuXHQ0LiBWRVJUSUNBTCBBTkQgSE9SSVpPTlRBTCBTQ1JPTExCQVJTIC0gUG9zaXRpb25pbmcgYW5kIGRpbWVuc2lvbnMgb2YgMi1heGlzIHNjcm9sbGJhcnMuXG5cdDUuIFRSQU5TSVRJT05TIC0gQ1NTMyB0cmFuc2l0aW9ucyBmb3IgaG92ZXIgZXZlbnRzLCBhdXRvLWV4cGFuZGVkIGFuZCBhdXRvLWhpZGRlbiBzY3JvbGxiYXJzLlxuXHQ2LiBTQ1JPTExCQVIgQ09MT1JTLCBPUEFDSVRZIEFORCBCQUNLR1JPVU5EU1xuXHRcdDYuMSBUSEVNRVMgLSBTY3JvbGxiYXIgY29sb3JzLCBvcGFjaXR5LCBkaW1lbnNpb25zLCBiYWNrZ3JvdW5kcyBldGMuIHZpYSByZWFkeS10by11c2UgdGhlbWVzLlxuKi9cbi8qXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjEuIEJBU0lDIFNUWUxFXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4ubUN1c3RvbVNjcm9sbGJhciB7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBpbmNoLXpvb207XG4gIHRvdWNoLWFjdGlvbjogcGluY2gtem9vbTtcbiAgLyogZGlyZWN0IHBvaW50ZXIgZXZlbnRzIHRvIGpzICovIH1cblxuLm1DdXN0b21TY3JvbGxiYXIubUNTX25vX3Njcm9sbGJhciwgLm1DdXN0b21TY3JvbGxiYXIubUNTX3RvdWNoX2FjdGlvbiB7XG4gIC1tcy10b3VjaC1hY3Rpb246IGF1dG87XG4gIHRvdWNoLWFjdGlvbjogYXV0bzsgfVxuXG4ubUN1c3RvbVNjcm9sbEJveCB7XG4gIC8qIGNvbnRhaW5zIHBsdWdpbidzIG1hcmt1cCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBkaXJlY3Rpb246IGx0cjsgfVxuXG4ubUNTQl9jb250YWluZXIge1xuICAvKiBjb250YWlucyB0aGUgb3JpZ2luYWwgY29udGVudCAqL1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjIuIFZFUlRJQ0FMIFNDUk9MTEJBUlxueS1heGlzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG4ubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXIge1xuICBtYXJnaW4tcmlnaHQ6IDMwcHg7IH1cblxuLm1DU0JfY29udGFpbmVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW4ge1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLyogbm9uLXZpc2libGUgc2Nyb2xsYmFyICovXG4ubUNTLWRpci1ydGwgPiAubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXIge1xuICAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMzBweDsgfVxuXG4ubUNTLWRpci1ydGwgPiAubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiB7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuLm1DU0Jfc2Nyb2xsVG9vbHMge1xuICAvKiBjb250YWlucyBzY3JvbGxiYXIgbWFya3VwIChkcmFnZ2FibGUgZWxlbWVudCwgZHJhZ2dlciByYWlsLCBidXR0b25zIGV0Yy4pICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwOyB9XG5cbi5tQ1NCX291dHNpZGUgKyAubUNTQl9zY3JvbGxUb29scyB7XG4gIHJpZ2h0OiAtMjZweDsgfVxuXG4vKiBzY3JvbGxiYXIgcG9zaXRpb246IG91dHNpZGUgKi9cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX3Njcm9sbFRvb2xzLFxuLm1DUy1kaXItcnRsID4gLm1DU0Jfb3V0c2lkZSArIC5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwOyB9XG5cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX291dHNpZGUgKyAubUNTQl9zY3JvbGxUb29scyB7XG4gIGxlZnQ6IC0yNnB4OyB9XG5cbi8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAoc2Nyb2xsYmFyIHBvc2l0aW9uOiBvdXRzaWRlKSAqL1xuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlckNvbnRhaW5lciB7XG4gIC8qIGNvbnRhaW5zIHRoZSBkcmFnZ2FibGUgZWxlbWVudCBhbmQgZHJhZ2dlciByYWlsIG1hcmt1cCAqL1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIGEgKyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyIHtcbiAgbWFyZ2luOiAyMHB4IDA7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogMnB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYm9yZGVyLXJhZGl1czogMTZweDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIHtcbiAgLyogdGhlIGRyYWdnYWJsZSBlbGVtZW50ICovXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzBweDtcbiAgLyogbWluaW11bSBkcmFnZ2VyIGhlaWdodCAqL1xuICB6LWluZGV4OiAxOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICAvKiB0aGUgZHJhZ2dlciBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDRweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxNnB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIHdpZHRoOiAxMnB4O1xuICAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqLyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDhweDtcbiAgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi8gfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCxcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDAgYXV0bztcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBib3R0b206IDA7IH1cblxuLypcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuMy4gSE9SSVpPTlRBTCBTQ1JPTExCQVJcbngtYXhpc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLm1DU0JfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lciB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG4ubUNTQl9ob3Jpem9udGFsLm1DU0Jfb3V0c2lkZSA+IC5tQ1NCX2NvbnRhaW5lciB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7IH1cblxuLm1DU0JfaG9yaXpvbnRhbCA+IC5tQ1NCX2NvbnRhaW5lci5tQ1Nfbm9fc2Nyb2xsYmFyX3gubUNTX3hfaGlkZGVuIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4vKiBub24tdmlzaWJsZSBzY3JvbGxiYXIgKi9cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IDE2cHg7XG4gIHRvcDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDsgfVxuXG4ubUN1c3RvbVNjcm9sbEJveCArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCxcbi5tQ3VzdG9tU2Nyb2xsQm94ICsgLm1DU0Jfc2Nyb2xsVG9vbHMgKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwge1xuICBib3R0b206IC0yNnB4OyB9XG5cbi8qIHNjcm9sbGJhciBwb3NpdGlvbjogb3V0c2lkZSAqL1xuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIGEgKyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyIHtcbiAgbWFyZ2luOiAwIDIwcHg7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMnB4O1xuICBtYXJnaW46IDdweCAwOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIHtcbiAgd2lkdGg6IDMwcHg7XG4gIC8qIG1pbmltdW0gZHJhZ2dlciB3aWR0aCAqL1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0cHg7XG4gIG1hcmdpbjogNnB4IGF1dG87IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgaGVpZ2h0OiAxMnB4O1xuICAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xuICBtYXJnaW46IDJweCBhdXRvOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGhlaWdodDogOHB4O1xuICAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xuICBtYXJnaW46IDRweCAwOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25MZWZ0LFxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGxlZnQ6IDA7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgcmlnaHQ6IDA7IH1cblxuLypcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNC4gVkVSVElDQUwgQU5EIEhPUklaT05UQUwgU0NST0xMQkFSU1xueXgtYXhpc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyID4gLm1DU0JfY29udGFpbmVyIHtcbiAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwgPiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIHtcbiAgYm90dG9tOiAyMHB4OyB9XG5cbi5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwgPiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwge1xuICByaWdodDogMjBweDsgfVxuXG4vKiBub24tdmlzaWJsZSBob3Jpem9udGFsIHNjcm9sbGJhciAqL1xuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbiArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwge1xuICBib3R0b206IDA7IH1cblxuLyogbm9uLXZpc2libGUgdmVydGljYWwgc2Nyb2xsYmFyL1JUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiArIC5tQ1NCX3Njcm9sbFRvb2xzIH4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLFxuLm1DUy1kaXItcnRsID4gLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgcmlnaHQ6IDA7IH1cblxuLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4ubUNTLWRpci1ydGwgPiAubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwge1xuICBsZWZ0OiAyMHB4OyB9XG5cbi8qIG5vbi12aXNpYmxlIHNjcm9sbGJhci9SVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbi5tQ1MtZGlyLXJ0bCA+IC5tQ3VzdG9tU2Nyb2xsQm94Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW4gKyAubUNTQl9zY3JvbGxUb29scyB+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7XG4gIGxlZnQ6IDA7IH1cblxuLm1DUy1kaXItcnRsID4gLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyX3dyYXBwZXIge1xuICAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMzBweDsgfVxuXG4ubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVuID4gLm1DU0JfY29udGFpbmVyIHtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4ubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3gubUNTX3hfaGlkZGVuID4gLm1DU0JfY29udGFpbmVyIHtcbiAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgLyogbm9uLXZpc2libGUgc2Nyb2xsYmFyICovXG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi8qIG5vbi12aXNpYmxlIGhvcml6b250YWwgc2Nyb2xsYmFyICovXG4ubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3gubUNTX3hfaGlkZGVuIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4vKlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG41LiBUUkFOU0lUSU9OU1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCxcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDsgfVxuXG4ubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1vdXQgLjJzLCBoZWlnaHQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWxlZnQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLXJpZ2h0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLCBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2Utb3V0IC4ycywgaGVpZ2h0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1sZWZ0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1yaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tdG9wIC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1ib3R0b20gLjJzIGVhc2Utb3V0IC4ycywgb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1vdXQgLjJzLCBoZWlnaHQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWxlZnQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLXJpZ2h0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLCBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLW91dCAuMnMsIGhlaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tbGVmdCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tcmlnaHQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLXRvcCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tYm90dG9tIC4ycyBlYXNlLW91dCAuMnMsIG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDsgfVxuXG4vKlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG42LiBTQ1JPTExCQVIgQ09MT1JTLCBPUEFDSVRZIEFORCBCQUNLR1JPVU5EU1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuLypcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHQ2LjEgVEhFTUVTXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0Ki9cbi8qIGRlZmF1bHQgdGhlbWUgKFwibGlnaHRcIikgKi9cbi5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgb3BhY2l0eTogMC43NTtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7XG4gIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjsgfVxuXG4ubUNTLWF1dG9IaWRlID4gLm1DdXN0b21TY3JvbGxCb3ggPiAubUNTQl9zY3JvbGxUb29scyxcbi5tQ1MtYXV0b0hpZGUgPiAubUN1c3RvbVNjcm9sbEJveCB+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgb3BhY2l0eTogMDtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTApXCI7IH1cblxuLm1DdXN0b21TY3JvbGxiYXIgPiAubUN1c3RvbVNjcm9sbEJveCA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnLFxuLm1DdXN0b21TY3JvbGxiYXIgPiAubUN1c3RvbVNjcm9sbEJveCB+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnLFxuLm1DdXN0b21TY3JvbGxCb3g6aG92ZXIgPiAubUNTQl9zY3JvbGxUb29scyxcbi5tQ3VzdG9tU2Nyb2xsQm94OmhvdmVyIH4gLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUNTLWF1dG9IaWRlOmhvdmVyID4gLm1DdXN0b21TY3JvbGxCb3ggPiAubUNTQl9zY3JvbGxUb29scyxcbi5tQ1MtYXV0b0hpZGU6aG92ZXIgPiAubUN1c3RvbVNjcm9sbEJveCB+IC5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgb3BhY2l0eTogMTtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT04NSlcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTg1KVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT05MClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTkwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChtQ1NCX2J1dHRvbnMucG5nKTtcbiAgLyogY3NzIHNwcml0ZXMgKi9cbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgb3BhY2l0eTogMC40O1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAvKlxuXHRcdHNwcml0ZXMgbG9jYXRpb25zXG5cdFx0bGlnaHQ6IDAgMCwgLTE2cHggMCwgLTMycHggMCwgLTQ4cHggMCwgMCAtNzJweCwgLTE2cHggLTcycHgsIC0zMnB4IC03MnB4XG5cdFx0ZGFyazogLTgwcHggMCwgLTk2cHggMCwgLTExMnB4IDAsIC0xMjhweCAwLCAtODBweCAtNzJweCwgLTk2cHggLTcycHgsIC0xMTJweCAtNzJweFxuXHRcdCovIH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTIwcHg7XG4gIC8qXG5cdFx0c3ByaXRlcyBsb2NhdGlvbnNcblx0XHRsaWdodDogMCAtMjBweCwgLTE2cHggLTIwcHgsIC0zMnB4IC0yMHB4LCAtNDhweCAtMjBweCwgMCAtOTJweCwgLTE2cHggLTkycHgsIC0zMnB4IC05MnB4XG5cdFx0ZGFyazogLTgwcHggLTIwcHgsIC05NnB4IC0yMHB4LCAtMTEycHggLTIwcHgsIC0xMjhweCAtMjBweCwgLTgwcHggLTkycHgsIC05NnB4IC05MnB4LCAtMTEyIC05MnB4XG5cdFx0Ki8gfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDBweDtcbiAgLypcblx0XHRzcHJpdGVzIGxvY2F0aW9uc1xuXHRcdGxpZ2h0OiAwIC00MHB4LCAtMjBweCAtNDBweCwgLTQwcHggLTQwcHgsIC02MHB4IC00MHB4LCAwIC0xMTJweCwgLTIwcHggLTExMnB4LCAtNDBweCAtMTEycHhcblx0XHRkYXJrOiAtODBweCAtNDBweCwgLTEwMHB4IC00MHB4LCAtMTIwcHggLTQwcHgsIC0xNDBweCAtNDBweCwgLTgwcHggLTExMnB4LCAtMTAwcHggLTExMnB4LCAtMTIwcHggLTExMnB4XG5cdFx0Ki8gfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTU2cHg7XG4gIC8qXG5cdFx0c3ByaXRlcyBsb2NhdGlvbnNcblx0XHRsaWdodDogMCAtNTZweCwgLTIwcHggLTU2cHgsIC00MHB4IC01NnB4LCAtNjBweCAtNTZweCwgMCAtMTI4cHgsIC0yMHB4IC0xMjhweCwgLTQwcHggLTEyOHB4XG5cdFx0ZGFyazogLTgwcHggLTU2cHgsIC0xMDBweCAtNTZweCwgLTEyMHB4IC01NnB4LCAtMTQwcHggLTU2cHgsIC04MHB4IC0xMjhweCwgLTEwMHB4IC0xMjhweCwgLTEyMHB4IC0xMjhweFxuXHRcdCovIH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXA6aG92ZXIsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duOmhvdmVyLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdDpob3Zlcixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0OmhvdmVyIHtcbiAgb3BhY2l0eTogMC43NTtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7XG4gIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjsgfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcDphY3RpdmUsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duOmFjdGl2ZSxcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQ6YWN0aXZlLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQ6YWN0aXZlIHtcbiAgb3BhY2l0eTogMC45O1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT05MClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTkwKVwiOyB9XG5cbi8qIHRoZW1lOiBcImRhcmtcIiAqL1xuLm1DUy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpOyB9XG5cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpOyB9XG5cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpOyB9XG5cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpOyB9XG5cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggMDsgfVxuXG4ubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTIwcHg7IH1cblxuLm1DUy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC00MHB4OyB9XG5cbi5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTU2cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogdGhlbWU6IFwibGlnaHQtMlwiLCBcImRhcmstMlwiICovXG4ubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDFweDtcbiAgYm9yZGVyLXJhZGl1czogMXB4OyB9XG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICB3aWR0aDogNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDFweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAxcHg7XG4gIGJvcmRlci1yYWRpdXM6IDFweDsgfVxuXG4ubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA0cHg7XG4gIG1hcmdpbjogNnB4IGF1dG87IH1cblxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7IH1cblxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7IH1cblxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAwOyB9XG5cbi5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtMjBweDsgfVxuXG4ubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTQwcHg7IH1cblxuLm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtNTZweDsgfVxuXG4vKiB0aGVtZTogXCJkYXJrLTJcIiAqL1xuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMXB4O1xuICBib3JkZXItcmFkaXVzOiAxcHg7IH1cblxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxcHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMXB4O1xuICBib3JkZXItcmFkaXVzOiAxcHg7IH1cblxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTsgfVxuXG4ubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7IH1cblxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAwOyB9XG5cbi5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMjBweDsgfVxuXG4ubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTQwcHg7IH1cblxuLm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtNTZweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiB0aGVtZTogXCJsaWdodC10aGlja1wiLCBcImRhcmstdGhpY2tcIiAqL1xuLm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIHdpZHRoOiA2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDRweDtcbiAgbWFyZ2luOiA2cHggMDsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNnB4O1xuICBtYXJnaW46IDVweCBhdXRvOyB9XG5cbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KTsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpOyB9XG5cbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IDA7IH1cblxuLm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtMjBweDsgfVxuXG4ubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0yMHB4IC00MHB4OyB9XG5cbi5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0yMHB4IC01NnB4OyB9XG5cbi8qIHRoZW1lOiBcImRhcmstdGhpY2tcIiAqL1xuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMnB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDJweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTsgfVxuXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTsgfVxuXG4ubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IDA7IH1cblxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IC0yMHB4OyB9XG5cbi5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggLTQwcHg7IH1cblxuLm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggLTU2cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogdGhlbWU6IFwibGlnaHQtdGhpblwiLCBcImRhcmstdGhpblwiICovXG4ubUNTLWxpZ2h0LXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTsgfVxuXG4ubUNTLWxpZ2h0LXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDJweDsgfVxuXG4ubUNTLWxpZ2h0LXRoaW4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLm1DUy1saWdodC10aGluLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIG1hcmdpbjogN3B4IGF1dG87IH1cblxuLyogdGhlbWUgXCJkYXJrLXRoaW5cIiAqL1xuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSk7IH1cblxuLm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTsgfVxuXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpOyB9XG5cbi5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTsgfVxuXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggMDsgfVxuXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMjBweDsgfVxuXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtNDBweDsgfVxuXG4ubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTU2cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogdGhlbWUgXCJyb3VuZGVkXCIsIFwicm91bmRlZC1kYXJrXCIsIFwicm91bmRlZC1kb3RzXCIsIFwicm91bmRlZC1kb3RzLWRhcmtcIiAqL1xuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpOyB9XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIsXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIsXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIsXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciB7XG4gIGhlaWdodDogMTRweDsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICB3aWR0aDogMTRweDtcbiAgbWFyZ2luOiAwIDFweDsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIsXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlcixcbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciB7XG4gIHdpZHRoOiAxNHB4OyB9XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgaGVpZ2h0OiAxNHB4O1xuICBtYXJnaW46IDFweCAwOyB9XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDE2cHg7XG4gIC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovXG4gIGhlaWdodDogMTZweDtcbiAgbWFyZ2luOiAtMXB4IDA7IH1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogNHB4O1xuICAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqLyB9XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBoZWlnaHQ6IDE2cHg7XG4gIC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovXG4gIHdpZHRoOiAxNnB4O1xuICBtYXJnaW46IDAgLTFweDsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgaGVpZ2h0OiA0cHg7XG4gIC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovXG4gIG1hcmdpbjogNnB4IDA7IH1cblxuLm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC03MnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC05MnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMTJweDsgfVxuXG4ubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEyOHB4OyB9XG5cbi8qIHRoZW1lIFwicm91bmRlZC1kYXJrXCIsIFwicm91bmRlZC1kb3RzLWRhcmtcIiAqL1xuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpOyB9XG5cbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpOyB9XG5cbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTsgfVxuXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpOyB9XG5cbi5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtNzJweDsgfVxuXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtOTJweDsgfVxuXG4ubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtMTEycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0xMjhweDsgfVxuXG4vKiB0aGVtZSBcInJvdW5kZWQtZG90c1wiLCBcInJvdW5kZWQtZG90cy1kYXJrXCIgKi9cbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogNHB4OyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQWdBQUFBSUNBWUFBQURFRDc2TEFBQUFORWxFUVZRWVYyTmtJQUFZaVZidy8vOS9ZNkRpTTFBTkpveU1qR2RCYkxnSlFBWC9rVTBES2dETGthUUF2eFc0SEV2UUZ3Q1JjeElKSzFYem5BQUFBQUJKUlU1RXJrSmdnZz09XCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XG4gIG9wYWNpdHk6IDAuMztcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MzApXCI7XG4gIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0zMClcIjsgfVxuXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGhlaWdodDogNHB4O1xuICBtYXJnaW46IDZweCAwO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC03MnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xNnB4IC05MnB4OyB9XG5cbi5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0yMHB4IC0xMTJweDsgfVxuXG4ubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwcHggLTEyOHB4OyB9XG5cbi8qIHRoZW1lIFwicm91bmRlZC1kb3RzLWRhcmtcIiAqL1xuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFBZ0FBQUFJQ0FZQUFBREVENzZMQUFBQUxFbEVRVlFZVjJOa0lBQVlTVkZnREZSOEJxckJCRWlmQmJHUlRmaVBaaHBZamlRRkJLM0E2bDZDdmdBQUU5a0dDZDFtdmdFQUFBQUFTVVZPUks1Q1lJST1cIik7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTk2cHggLTcycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtOTJweDsgfVxuXG4ubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAtMTEycHg7IH1cblxuLm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IC0xMjhweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiB0aGVtZSBcIjNkXCIsIFwiM2QtZGFya1wiLCBcIjNkLXRoaWNrXCIsIFwiM2QtdGhpY2stZGFya1wiICovXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGNvbG9yLXN0b3AoMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7IH1cblxuLyogdGhlbWUgXCIzZFwiLCBcIjNkLWRhcmtcIiAqL1xuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIC5tQ1NCX2RyYWdnZXIsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCAubUNTQl9kcmFnZ2VyIHtcbiAgaGVpZ2h0OiA3MHB4OyB9XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIge1xuICB3aWR0aDogNzBweDsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyB7XG4gIG9wYWNpdHk6IDE7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTMwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MzApXCI7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYm9yZGVyLXJhZGl1czogMTZweDsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiA4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMXB4IDAgMXB4IHJnYmEoMCwgMCwgMCwgMC41KSwgaW5zZXQgLTFweCAwIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICB3aWR0aDogOHB4OyB9XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDhweDtcbiAgbWFyZ2luOiA0cHggMDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC41KSwgaW5zZXQgMCAtMXB4IDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7IH1cblxuLm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDhweDtcbiAgbWFyZ2luOiA0cHggYXV0bzsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNzJweDsgfVxuXG4ubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC05MnB4OyB9XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTExMnB4OyB9XG5cbi5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC0xMjhweDsgfVxuXG4vKiB0aGVtZSBcIjNkLWRhcmtcIiAqL1xuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDFweCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTcycHg7IH1cblxuLm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtOTJweDsgfVxuXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMTJweDsgfVxuXG4ubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTI4cHg7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogdGhlbWU6IFwiM2QtdGhpY2tcIiwgXCIzZC10aGljay1kYXJrXCIgKi9cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyxcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgb3BhY2l0eTogMTtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MzApXCI7XG4gIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0zMClcIjsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyxcbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyLFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlckNvbnRhaW5lciB7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogN3B4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDdweDtcbiAgYm9yZGVyLXJhZGl1czogN3B4OyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4OyB9XG5cbi5tQ1NCX2luc2lkZSArIC5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCxcbi5tQ1NCX2luc2lkZSArIC5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIHtcbiAgcmlnaHQ6IDFweDsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDFweCAwIDFweCByZ2JhKDAsIDAsIDAsIDAuMSksIGluc2V0IDAgMCAxNHB4IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCxcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwge1xuICBib3R0b206IDFweDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xKSwgaW5zZXQgMCAwIDE0cHggcmdiYSgwLCAwLCAwLCAwLjUpOyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDFweCAwIDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuICB3aWR0aDogMTJweDtcbiAgbWFyZ2luOiAycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpOyB9XG5cbi5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgaGVpZ2h0OiAxMnB4O1xuICB3aWR0aDogYXV0bzsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlckNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDFweCAxcHggMTZweCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTcycHg7IH1cblxuLm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtOTJweDsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC0xMTJweDsgfVxuXG4ubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTI4cHg7IH1cblxuLyogdGhlbWU6IFwiM2QtdGhpY2stZGFya1wiICovXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAxNHB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4xKSwgaW5zZXQgMCAwIDE0cHggcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBib3gtc2hhZG93OiBpbnNldCAxcHggMCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KSwgaW5zZXQgLTFweCAwIDAgcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpLCBpbnNldCAwIC0xcHggMCByZ2JhKDAsIDAsIDAsIDAuMik7IH1cblxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Nzc7IH1cblxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlckNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDFweCAxcHggMTZweCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuLm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtNzJweDsgfVxuXG4ubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC05MnB4OyB9XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTExMnB4OyB9XG5cbi5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMjhweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiB0aGVtZTogXCJtaW5pbWFsXCIsIFwibWluaW1hbC1kYXJrXCIgKi9cbi5tQ1NCX291dHNpZGUgKyAubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCxcbi5tQ1NCX291dHNpZGUgKyAubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIHtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbjogMTJweCAwOyB9XG5cbi5tQ3VzdG9tU2Nyb2xsQm94Lm1DUy1taW5pbWFsICsgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLFxuLm1DdXN0b21TY3JvbGxCb3gubUNTLW1pbmltYWwgKyAubUNTQl9zY3JvbGxUb29scyArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCxcbi5tQ3VzdG9tU2Nyb2xsQm94Lm1DUy1taW5pbWFsLWRhcmsgKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsXG4ubUN1c3RvbVNjcm9sbEJveC5tQ1MtbWluaW1hbC1kYXJrICsgLm1DU0Jfc2Nyb2xsVG9vbHMgKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwge1xuICBib3R0b206IDA7XG4gIG1hcmdpbjogMCAxMnB4OyB9XG5cbi8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuLm1DUy1kaXItcnRsID4gLm1DU0Jfb3V0c2lkZSArIC5tQ1MtbWluaW1hbC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLFxuLm1DUy1kaXItcnRsID4gLm1DU0Jfb3V0c2lkZSArIC5tQ1MtbWluaW1hbC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwge1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bzsgfVxuXG4ubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtbWluaW1hbC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4ubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCAubUNTQl9kcmFnZ2VyLFxuLm1DUy1taW5pbWFsLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCAubUNTQl9kcmFnZ2VyIHtcbiAgaGVpZ2h0OiA1MHB4OyB9XG5cbi5tQ1MtbWluaW1hbC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlcixcbi5tQ1MtbWluaW1hbC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIHtcbiAgd2lkdGg6IDUwcHg7IH1cblxuLm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MjApXCI7XG4gIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0yMClcIjsgfVxuXG4ubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtbWluaW1hbC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NTApXCI7XG4gIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT01MClcIjsgfVxuXG4vKiB0aGVtZTogXCJtaW5pbWFsLWRhcmtcIiAqL1xuLm1DUy1taW5pbWFsLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0yMClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTIwKVwiOyB9XG5cbi5tQ1MtbWluaW1hbC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NTApXCI7XG4gIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT01MClcIjsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiB0aGVtZSBcImxpZ2h0LTNcIiwgXCJkYXJrLTNcIiAqL1xuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG5cbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICB3aWR0aDogNnB4OyB9XG5cbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDZweDtcbiAgbWFyZ2luOiA1cHggMDsgfVxuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiAxMnB4OyB9XG5cbi5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBoZWlnaHQ6IDEycHg7XG4gIG1hcmdpbjogMnB4IDA7IH1cblxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNzJweDsgfVxuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTkycHg7IH1cblxuLm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC0xMTJweDsgfVxuXG4ubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC0xMjhweDsgfVxuXG4vKiB0aGVtZSBcImRhcmstM1wiICovXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpOyB9XG5cbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44NSk7IH1cblxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpOyB9XG5cbi5tQ1MtZGFyay0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtNzJweDsgfVxuXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTkycHg7IH1cblxuLm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMTJweDsgfVxuXG4ubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMjhweDsgfVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4vKiB0aGVtZSBcImluc2V0XCIsIFwiaW5zZXQtZGFya1wiLCBcImluc2V0LTJcIiwgXCJpbnNldC0yLWRhcmtcIiwgXCJpbnNldC0zXCIsIFwiaW5zZXQtMy1kYXJrXCIgKi9cbi5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDEycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG4ubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIHdpZHRoOiA2cHg7XG4gIG1hcmdpbjogM3B4IDVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDsgfVxuXG4ubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGhlaWdodDogNnB4O1xuICBtYXJnaW46IDVweCAzcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IGF1dG87XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDsgfVxuXG4ubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEycHg7XG4gIG1hcmdpbjogMnB4IDA7IH1cblxuLm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAsXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IC03MnB4OyB9XG5cbi5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duLFxuLm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtOTJweDsgfVxuXG4ubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCxcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTExMnB4OyB9XG5cbi5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCxcbi5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0LFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTI4cHg7IH1cblxuLyogdGhlbWUgXCJpbnNldC1kYXJrXCIsIFwiaW5zZXQtMi1kYXJrXCIsIFwiaW5zZXQtMy1kYXJrXCIgKi9cbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpOyB9XG5cbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpOyB9XG5cbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpOyB9XG5cbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuLm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAsXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtNzJweDsgfVxuXG4ubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duLFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duLFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC05MnB4OyB9XG5cbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG4ubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTExMnB4OyB9XG5cbi5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0LFxuLm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCxcbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTEyOHB4OyB9XG5cbi8qIHRoZW1lIFwiaW5zZXQtMlwiLCBcImluc2V0LTItZGFya1wiICovXG4ubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBib3JkZXItY29sb3I6ICMwMDA7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG5cbi8qIHRoZW1lIFwiaW5zZXQtM1wiLCBcImluc2V0LTMtZGFya1wiICovXG4ubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTsgfVxuXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpOyB9XG5cbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpOyB9XG5cbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpOyB9XG5cbi5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpOyB9XG5cbi5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7IH1cblxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KTsgfVxuXG4ubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogdGhlbWU6IFwiZGFyay1tb2RcIiAqL1xuLm1DUy1kYXJrLW1vZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4ubUNTLWRhcmstbW9kLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIHdpZHRoOiA4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5tQ1MtZGFyay1tb2QubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DUy1kYXJrLW1vZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDhweDtcbiAgbWFyZ2luOiA2cHggYXV0bzsgfVxuXG4vKiB0aGVtZTogXCJkYXJrLW1vZFwiICovXG4ubUNTLWRhcmstbW9kLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5tQ1MtZGFyay1tb2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLm1DUy1kYXJrLW1vZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpOyB9XG5cbi5tQ1MtZGFyay1tb2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1MtZGFyay1tb2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOSk7IH1cblxuLm1DUy1kYXJrLW1vZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IDA7IH1cblxuLm1DUy1kYXJrLW1vZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTIwcHg7IH1cblxuLm1DUy1kYXJrLW1vZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTQwcHg7IH1cblxuLm1DUy1kYXJrLW1vZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC01NnB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgU2VsZWN0cmljIHYxLjEwLjFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5zZWxlY3RyaWMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5zZWxlY3RyaWMtcmVzcG9uc2l2ZSB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5zZWxlY3RyaWMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjREREO1xuICBiYWNrZ3JvdW5kOiAjRjhGOEY4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnNlbGVjdHJpYyAubGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIG1hcmdpbjogMCAzOHB4IDAgMTBweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMzhweDtcbiAgY29sb3I6ICM0NDQ7XG4gIGhlaWdodDogMzhweDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4uc2VsZWN0cmljIC5idXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMzhweDtcbiAgaGVpZ2h0OiAzOHB4O1xuICBjb2xvcjogI0JCQjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250OiAwLzAgYTtcbiAgKmZvbnQ6IDIwcHgvMzhweCBMdWNpZGEgU2FucyBVbmljb2RlLCBBcmlhbCBVbmljb2RlIE1TLCBBcmlhbDsgfVxuXG4uc2VsZWN0cmljIC5idXR0b246YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbjogYXV0bztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiA0cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3AtY29sb3I6ICNCQkI7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IH1cblxuLnNlbGVjdHJpYy1mb2N1cyAuc2VsZWN0cmljIHtcbiAgYm9yZGVyLWNvbG9yOiAjQUFBOyB9XG5cbi5zZWxlY3RyaWMtaG92ZXIgLnNlbGVjdHJpYyB7XG4gIGJvcmRlci1jb2xvcjogI0M0QzRDNDsgfVxuXG4uc2VsZWN0cmljLWhvdmVyIC5zZWxlY3RyaWMgLmJ1dHRvbiB7XG4gIGNvbG9yOiAjQTJBMkEyOyB9XG5cbi5zZWxlY3RyaWMtaG92ZXIgLnNlbGVjdHJpYyAuYnV0dG9uOmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI0EyQTJBMjsgfVxuXG4uc2VsZWN0cmljLW9wZW4ge1xuICB6LWluZGV4OiA5OTk5OyB9XG5cbi5zZWxlY3RyaWMtb3BlbiAuc2VsZWN0cmljIHtcbiAgYm9yZGVyLWNvbG9yOiAjQzRDNEM0OyB9XG5cbi5zZWxlY3RyaWMtb3BlbiAuc2VsZWN0cmljLWl0ZW1zIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnNlbGVjdHJpYy1kaXNhYmxlZCB7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT01MCk7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi5zZWxlY3RyaWMtaGlkZS1zZWxlY3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7IH1cblxuLnNlbGVjdHJpYy1oaWRlLXNlbGVjdCBzZWxlY3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0xMDAlOyB9XG5cbi5zZWxlY3RyaWMtaGlkZS1zZWxlY3Quc2VsZWN0cmljLWlzLW5hdGl2ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTA7IH1cblxuLnNlbGVjdHJpYy1oaWRlLXNlbGVjdC5zZWxlY3RyaWMtaXMtbmF0aXZlIHNlbGVjdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiBub25lO1xuICB6LWluZGV4OiAxO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zZWxlY3RyaWMtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgKmZvbnQ6IDAvMCBhICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uc2VsZWN0cmljLXRlbXAtc2hvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB2aXNpYmlsaXR5OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4vKiBJdGVtcyBib3ggKi9cbi5zZWxlY3RyaWMtaXRlbXMge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogI0Y4RjhGODtcbiAgYm9yZGVyOiAxcHggc29saWQgI0M0QzRDNDtcbiAgei1pbmRleDogLTE7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IC02cHg7IH1cblxuLnNlbGVjdHJpYy1pdGVtcyAuc2VsZWN0cmljLXNjcm9sbCB7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLnNlbGVjdHJpYy1hYm92ZSAuc2VsZWN0cmljLWl0ZW1zIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDEwMCU7IH1cblxuLnNlbGVjdHJpYy1pdGVtcyB1bCwgLnNlbGVjdHJpYy1pdGVtcyBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgbWluLWhlaWdodDogMjBweDsgfVxuXG4uc2VsZWN0cmljLWl0ZW1zIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGNvbG9yOiAjNjY2O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLnNlbGVjdHJpYy1pdGVtcyBsaS5zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQ6ICNFMEUwRTA7XG4gIGNvbG9yOiAjNDQ0OyB9XG5cbi5zZWxlY3RyaWMtaXRlbXMgbGkuaGlnaGxpZ2h0ZWQge1xuICBiYWNrZ3JvdW5kOiAjRDBEMEQwO1xuICBjb2xvcjogIzQ0NDsgfVxuXG4uc2VsZWN0cmljLWl0ZW1zIGxpOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0Q1RDVENTtcbiAgY29sb3I6ICM0NDQ7IH1cblxuLnNlbGVjdHJpYy1pdGVtcyAuZGlzYWJsZWQge1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9NTApO1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNjY2ICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLnNlbGVjdHJpYy1pdGVtcyAuc2VsZWN0cmljLWdyb3VwIC5zZWxlY3RyaWMtZ3JvdXAtbGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjNDQ0OyB9XG5cbi5zZWxlY3RyaWMtaXRlbXMgLnNlbGVjdHJpYy1ncm91cC5kaXNhYmxlZCBsaSB7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zZWxlY3RyaWMtaXRlbXMgLnNlbGVjdHJpYy1ncm91cCBsaSB7XG4gIHBhZGRpbmctbGVmdDogMjVweDsgfVxuXG4vKiEgVGFibGVzYXcgLSB2Mi4wLjMgLSAyMDE2LTA1LTAyXG4qIGh0dHBzOi8vZ2l0aHViLmNvbS9maWxhbWVudGdyb3VwL3RhYmxlc2F3XG4qIENvcHlyaWdodCAoYykgMjAxNiBGaWxhbWVudCBHcm91cDsgTGljZW5zZWQgTUlUICovXG50YWJsZS50YWJsZXNhdyB7XG4gIGVtcHR5LWNlbGxzOiBzaG93O1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi50YWJsZXNhdyB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi8qIFN0cnVjdHVyZSAqL1xuLnRhYmxlc2F3IHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi50YWJsZXNhdyB0aCxcbi50YWJsZXNhdyB0ZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IC41ZW0gLjdlbTsgfVxuXG4udGFibGVzYXcgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGgge1xuICBwYWRkaW5nLXRvcDogLjllbTtcbiAgcGFkZGluZy1ib3R0b206IC43ZW07IH1cblxuLnRhYmxlc2F3LWVuaGFuY2VkIC50YWJsZXNhdy1iYXIgLmJ0biB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgd2hpdGU7XG4gIGNvbG9yOiAjNGE0YTRhO1xuICBjbGVhcjogYm90aDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udDogYm9sZCAyMHB4LzEgc2Fucy1zZXJpZjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAuNWVtIC44NWVtIC40ZW0gLjg1ZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMCAjZmZmO1xuICB3aWR0aDogMTAwJTtcbiAgLyogVGhlbWluZyAqL1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIDUwJSwgcmdiYSgxNzAsIDE3MCwgMTcwLCAwLjEpIDU1JSwgcmdiYSgxMjAsIDEyMCwgMTIwLCAwLjE1KSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkgNTAlLCByZ2JhKDE3MCwgMTcwLCAxNzAsIDAuMSkgNTUlLCByZ2JhKDEyMCwgMTIwLCAxMjAsIDAuMTUpIDEwMCUpO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUgIWltcG9ydGFudDtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBib3JkZXItcmFkaXVzOiAuMjVlbTsgfVxuXG4udGFibGVzYXctZW5oYW5jZWQgLnRhYmxlc2F3LWJhciBhLmJ0biB7XG4gIGNvbG9yOiAjMWM5NWQ0OyB9XG5cbi50YWJsZXNhdy1lbmhhbmNlZCAudGFibGVzYXctYmFyIC5idG46aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLyogRGVmYXVsdCByYWRpby9jaGVja2JveCBzdHlsaW5nIGhvcml6b25hbCBjb250cm9sZ3JvdXBzLiAqL1xuLnRhYmxlc2F3LWVuaGFuY2VkIC50YWJsZXNhdy1iYXIgLmJ0bjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMTAwLCAxMDAsIDEwMCwgMC4zNSkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgNzAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgxMDAsIDEwMCwgMTAwLCAwLjM1KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA3MCUpOyB9XG5cbi50YWJsZXNhdy1lbmhhbmNlZCAudGFibGVzYXctYmFyIC5idG46aG92ZXIsXG4udGFibGVzYXctZW5oYW5jZWQgLnRhYmxlc2F3LWJhciAuYnRuOmZvY3VzIHtcbiAgY29sb3I6ICMyMDhkZTM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIG91dGxpbmU6IG5vbmU7IH1cblxuLnRhYmxlc2F3LWJhciAuYnRuOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIC4zNWVtICM0ZmFlZWYgIWltcG9ydGFudDsgfVxuXG4udGFibGVzYXctYmFyIC5idG4tc2VsZWN0IHNlbGVjdCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAyO1xuICBtaW4taGVpZ2h0OiAxZW07IH1cblxuLnRhYmxlc2F3LWJhciAuYnRuLXNlbGVjdCBzZWxlY3Qge1xuICBvcGFjaXR5OiAwO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi50YWJsZXNhdy1iYXIgLmJ0biBzZWxlY3Qgb3B0aW9uIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyB9XG5cbi50YWJsZXNhdy1lbmhhbmNlZCAudGFibGVzYXctYmFyIC5idG4uYnRuLXNlbGVjdCB7XG4gIGNvbG9yOiAjNGQ0ZDRkO1xuICBwYWRkaW5nLXJpZ2h0OiAyLjVlbTtcbiAgbWluLXdpZHRoOiA3LjI1ZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtaW5kZW50OiAwOyB9XG5cbi50YWJsZXNhdy1iYXIgLmJ0bi5idG4tc21hbGwsXG4udGFibGVzYXctYmFyIC5idG4uYnRuLW1pY3JvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDsgfVxuXG4udGFibGVzYXctYmFyIC5idG4uYnRuLXNtYWxsIHtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gIHBhZGRpbmc6IC4zZW0gMWVtIC4zZW0gMWVtOyB9XG5cbi50YWJsZXNhdy1iYXIgLmJ0bi5idG4tbWljcm8ge1xuICBmb250LXNpemU6IC44MTI1ZW07XG4gIHBhZGRpbmc6IC40ZW0gLjdlbSAuMjVlbSAuN2VtOyB9XG5cbi50YWJsZXNhdy1lbmhhbmNlZCAudGFibGVzYXctYmFyIC5idG4tc2VsZWN0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4udGFibGVzYXctYmFyIC5idG4tc2VsZWN0OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogI2U1ZTVlNTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3gtc2hhZG93OiAwIDJweCAycHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI1KTtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLnRhYmxlc2F3LWJhciAuYnRuLXNlbGVjdC5idG4tc21hbGwsXG4udGFibGVzYXctYmFyIC5idG4tc2VsZWN0LmJ0bi1taWNybyB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNWVtOyB9XG5cbi50YWJsZXNhdy1iYXIgLmJ0bi1zZWxlY3Q6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAuMjVlbSAuNDVlbTtcbiAgY29udGVudDogXCJcXDI1YmNcIjtcbiAgZm9udC1zaXplOiAuNTVlbTtcbiAgcGFkZGluZy10b3A6IDEuMmVtO1xuICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxLjhlbTsgfVxuXG4udGFibGVzYXctYmFyIC5idG4tc2VsZWN0LmJ0bi1zbWFsbDphZnRlcixcbi50YWJsZXNhdy1iYXIgLmJ0bi1zZWxlY3QuYnRuLW1pY3JvOmFmdGVyIHtcbiAgd2lkdGg6IDEuMmVtO1xuICBmb250LXNpemU6IC41ZW07XG4gIHBhZGRpbmctdG9wOiAxZW07XG4gIHBhZGRpbmctcmlnaHQ6IC41ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY1O1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuXG4vKiBDb2x1bW4gbmF2aWdhdGlvbiBidXR0b25zIGZvciBzd2lwZSBhbmQgY29sdW1udG9nZ2xlIHRhYmxlcyAqL1xuLnRhYmxlc2F3LWFkdmFuY2UgLmJ0biB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMCAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAuMjVlbTsgfVxuXG4udGFibGVzYXctYWR2YW5jZSAuYnRuLmJ0bi1taWNybyB7XG4gIGZvbnQtc2l6ZTogLjgxMjVlbTtcbiAgcGFkZGluZzogLjNlbSAuN2VtIC4yNWVtIC43ZW07IH1cblxuLnRhYmxlc2F3LWJhciAudGFibGVzYXctYWR2YW5jZSBhLnRhYmxlc2F3LW5hdi1idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxLjhlbTtcbiAgaGVpZ2h0OiAxLjhlbTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC41ZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4udGFibGVzYXctYmFyIC50YWJsZXNhdy1hZHZhbmNlIGEudGFibGVzYXctbmF2LWJ0bi5sZWZ0OmJlZm9yZSxcbi50YWJsZXNhdy1iYXIgLnRhYmxlc2F3LWFkdmFuY2UgYS50YWJsZXNhdy1uYXYtYnRuLnJpZ2h0OmJlZm9yZSxcbi50YWJsZXNhdy1iYXIgLnRhYmxlc2F3LWFkdmFuY2UgYS50YWJsZXNhdy1uYXYtYnRuLmRvd246YmVmb3JlLFxuLnRhYmxlc2F3LWJhciAudGFibGVzYXctYWR2YW5jZSBhLnRhYmxlc2F3LW5hdi1idG4udXA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDAwMjBcIjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlOyB9XG5cbi50YWJsZXNhdy1iYXIgLnRhYmxlc2F3LWFkdmFuY2UgYS50YWJsZXNhdy1uYXYtYnRuLmRvd246YmVmb3JlIHtcbiAgbGVmdDogLjVlbTtcbiAgdG9wOiAuNjVlbTtcbiAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IDVweCBzb2xpZCAjODA4MDgwOyB9XG5cbi50YWJsZXNhdy1iYXIgLnRhYmxlc2F3LWFkdmFuY2UgYS50YWJsZXNhdy1uYXYtYnRuLnVwOmJlZm9yZSB7XG4gIGxlZnQ6IC41ZW07XG4gIHRvcDogLjY1ZW07XG4gIGJvcmRlci1sZWZ0OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiA1cHggc29saWQgIzgwODA4MDsgfVxuXG4udGFibGVzYXctYmFyIC50YWJsZXNhdy1hZHZhbmNlIGEudGFibGVzYXctbmF2LWJ0bi5sZWZ0OmJlZm9yZSxcbi50YWJsZXNhdy1iYXIgLnRhYmxlc2F3LWFkdmFuY2UgYS50YWJsZXNhdy1uYXYtYnRuLnJpZ2h0OmJlZm9yZSB7XG4gIHRvcDogLjQ1ZW07XG4gIGJvcmRlci10b3A6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG5cbi50YWJsZXNhdy1iYXIgLnRhYmxlc2F3LWFkdmFuY2UgYS50YWJsZXNhdy1uYXYtYnRuLmxlZnQ6YmVmb3JlIHtcbiAgbGVmdDogLjZlbTtcbiAgYm9yZGVyLXJpZ2h0OiA1cHggc29saWQgIzgwODA4MDsgfVxuXG4udGFibGVzYXctYmFyIC50YWJsZXNhdy1hZHZhbmNlIGEudGFibGVzYXctbmF2LWJ0bi5yaWdodDpiZWZvcmUge1xuICBsZWZ0OiAuN2VtO1xuICBib3JkZXItbGVmdDogNXB4IHNvbGlkICM4MDgwODA7IH1cblxuLnRhYmxlc2F3LWFkdmFuY2UgYS50YWJsZXNhdy1uYXYtYnRuLmRpc2FibGVkIHtcbiAgb3BhY2l0eTogLjI1O1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MjUpO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi8qIFRhYmxlIFRvb2xiYXIgKi9cbi50YWJsZXNhdy1iYXIge1xuICBjbGVhcjogYm90aDtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IH1cblxuLnRhYmxlc2F3LXRvb2xiYXIge1xuICBmb250LXNpemU6IC44NzVlbTtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnRhYmxlc2F3LXRvb2xiYXIgbGFiZWwge1xuICBwYWRkaW5nOiAuNWVtIDA7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICM4ODg7XG4gIG1hcmdpbi1yaWdodDogLjVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4udGFibGVzYXctYmFyIC5idG4sXG4udGFibGVzYXctZW5oYW5jZWQgLnRhYmxlc2F3LWJhciAuYnRuIHtcbiAgbWFyZ2luLXRvcDogLjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogLjVlbTsgfVxuXG4udGFibGVzYXctYmFyIC5idG4tc2VsZWN0LFxuLnRhYmxlc2F3LWVuaGFuY2VkIC50YWJsZXNhdy1iYXIgLmJ0bi1zZWxlY3Qge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi50YWJsZXNhdy1iYXIgLnRhYmxlc2F3LXRvb2xiYXIgLmJ0biB7XG4gIG1hcmdpbi1sZWZ0OiAuNGVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxZW07XG4gIHBhZGRpbmctbGVmdDogLjNlbTsgfVxuXG4udGFibGVzYXctYmFyIC50YWJsZXNhdy10b29sYmFyIC5idG4tc2VsZWN0IHtcbiAgbWluLXdpZHRoOiAwOyB9XG5cbi50YWJsZXNhdy1iYXIgLnRhYmxlc2F3LXRvb2xiYXIgLmJ0bi1zZWxlY3Q6YWZ0ZXIge1xuICBwYWRkaW5nLXRvcDogLjllbTsgfVxuXG4udGFibGVzYXctYmFyIC50YWJsZXNhdy10b29sYmFyIHNlbGVjdCB7XG4gIGNvbG9yOiAjODg4O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLnRhYmxlc2F3LXRvb2xiYXIgfiB0YWJsZSB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi50YWJsZXNhdy10b29sYmFyIC5hMTF5LXNtIHtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDsgfVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjRlbSkge1xuICAudGFibGVzYXctdG9vbGJhciAuYTExeS1zbSB7XG4gICAgY2xpcDogbm9uZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgfSB9XG5cbi8qIFRhYmxlIHJvd3MgaGF2ZSBhIGdyYXkgYm90dG9tIHN0cm9rZSBieSBkZWZhdWx0ICovXG4udGFibGVzYXctc3RhY2sgdGJvZHkgdHIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RmZGZkZjsgfVxuXG4udGFibGVzYXctc3RhY2sgdGQgLnRhYmxlc2F3LWNlbGwtbGFiZWwsXG4udGFibGVzYXctc3RhY2sgdGggLnRhYmxlc2F3LWNlbGwtbGFiZWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIE1vYmlsZSBmaXJzdCBzdHlsZXM6IEJlZ2luIHdpdGggdGhlIHN0YWNrZWQgcHJlc2VudGF0aW9uIGF0IG5hcnJvdyB3aWR0aHMgKi9cbkBtZWRpYSBvbmx5IGFsbCB7XG4gIC8qIFNob3cgdGhlIHRhYmxlIGNlbGxzIGFzIGEgYmxvY2sgbGV2ZWwgZWxlbWVudCAqL1xuICAudGFibGVzYXctc3RhY2sgdGQsXG4gIC50YWJsZXNhdy1zdGFjayB0aCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAudGFibGVzYXctc3RhY2sgdHIge1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuICAvKiBNYWtlIHRoZSBsYWJlbCBlbGVtZW50cyBhIHBlcmNlbnRhZ2Ugd2lkdGggKi9cbiAgLnRhYmxlc2F3LXN0YWNrIHRkIC50YWJsZXNhdy1jZWxsLWxhYmVsLFxuICAudGFibGVzYXctc3RhY2sgdGggLnRhYmxlc2F3LWNlbGwtbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAgLjZlbSAwIDA7XG4gICAgd2lkdGg6IDMwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLyogRm9yIGdyb3VwZWQgaGVhZGVycywgaGF2ZSBhIGRpZmZlcmVudCBzdHlsZSB0byB2aXN1YWxseSBzZXBhcmF0ZSB0aGUgbGV2ZWxzIGJ5IGNsYXNzaW5nIHRoZSBmaXJzdCBsYWJlbCBpbiBlYWNoIGNvbCBncm91cCAqL1xuICAudGFibGVzYXctc3RhY2sgdGggLnRhYmxlc2F3LWNlbGwtbGFiZWwtdG9wLFxuICAudGFibGVzYXctc3RhY2sgdGQgLnRhYmxlc2F3LWNlbGwtbGFiZWwtdG9wIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAuNGVtIDA7XG4gICAgbWFyZ2luOiAuNGVtIDA7IH1cbiAgLnRhYmxlc2F3LWNlbGwtbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC8qIEF2b2lkIGRvdWJsZSBzdHJva2VzIHdoZW4gc3RhY2tlZCAqL1xuICAudGFibGVzYXctc3RhY2sgdGJvZHkgdGguZ3JvdXAge1xuICAgIG1hcmdpbi10b3A6IC0xcHg7IH1cbiAgLyogQXZvaWQgZG91YmxlIHN0cm9rZXMgd2hlbiBzdGFja2VkICovXG4gIC50YWJsZXNhdy1zdGFjayB0aC5ncm91cCBiLnRhYmxlc2F3LWNlbGwtbGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLnRhYmxlc2F3LXN0YWNrIHRoZWFkIHRkLFxuICAudGFibGVzYXctc3RhY2sgdGhlYWQgdGgge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnRhYmxlc2F3LXN0YWNrIHRib2R5IHRkLFxuICAudGFibGVzYXctc3RhY2sgdGJvZHkgdGgge1xuICAgIGNsZWFyOiBsZWZ0O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC50YWJsZXNhdy1jZWxsLWxhYmVsIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gIC50YWJsZXNhdy1jZWxsLWNvbnRlbnQge1xuICAgIG1heC13aWR0aDogNjclO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAudGFibGVzYXctc3RhY2sgdGQ6ZW1wdHksXG4gIC50YWJsZXNhdy1zdGFjayB0aDplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi8qIE1lZGlhIHF1ZXJ5IHRvIHNob3cgYXMgYSBzdGFuZGFyZCB0YWJsZSBhdCA1NjBweCAoMzVlbSB4IDE2cHgpIG9yIHdpZGVyICovXG5AbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAudGFibGVzYXctc3RhY2sgdHIge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdzsgfVxuICAvKiBTaG93IHRoZSB0YWJsZSBoZWFkZXIgcm93cyAqL1xuICAudGFibGVzYXctc3RhY2sgdGQsXG4gIC50YWJsZXNhdy1zdGFjayB0aCxcbiAgLnRhYmxlc2F3LXN0YWNrIHRoZWFkIHRkLFxuICAudGFibGVzYXctc3RhY2sgdGhlYWQgdGgge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC8qIEhpZGUgdGhlIGxhYmVscyBpbiBlYWNoIGNlbGwgKi9cbiAgLnRhYmxlc2F3LXN0YWNrIHRkIC50YWJsZXNhdy1jZWxsLWxhYmVsLFxuICAudGFibGVzYXctc3RhY2sgdGggLnRhYmxlc2F3LWNlbGwtbGFiZWwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi50YWJsZXNhdy1maXgtcGVyc2lzdCB7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7IH1cblxuQG1lZGlhIG9ubHkgYWxsIHtcbiAgLyogVW5jaGVja2VkIG1hbnVhbGx5OiBBbHdheXMgaGlkZSAqL1xuICAudGFibGVzYXctc3dpcGUgdGgudGFibGVzYXctY2VsbC1oaWRkZW4sXG4gIC50YWJsZXNhdy1zd2lwZSB0ZC50YWJsZXNhdy1jZWxsLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5idG4udGFibGVzYXctY29sdW1udG9nZ2xlLWJ0biBzcGFuIHtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4udGFibGVzYXctY29sdW1udG9nZ2xlLWJ0bndyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8qIGZvciBkaWFsb2cgcG9zaXRpb25pbmcgKi8gfVxuXG4udGFibGVzYXctY29sdW1udG9nZ2xlLWJ0bndyYXAgLmRpYWxvZy1jb250ZW50IHtcbiAgcGFkZGluZzogLjVlbTsgfVxuXG4udGFibGVzYXctY29sdW1udG9nZ2xlIHRib2R5IHRkIHtcbiAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuXG4vKiBSZW1vdmUgdG9wL2JvdHRvbSBtYXJnaW5zIGFyb3VuZCB0aGUgZmllbGRjb250YWluIG9uIGNoZWNrIGxpc3QgKi9cbi50YWJsZXNhdy1jb2x1bW50b2dnbGUtcG9wdXAge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi50YWJsZXNhdy1jb2x1bW50b2dnbGUtYnRud3JhcC52aXNpYmxlIC50YWJsZXNhdy1jb2x1bW50b2dnbGUtcG9wdXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDJlbTtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IC41ZW0gLjhlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgYm94LXNoYWRvdzogMCAxcHggMnB4ICNjY2M7XG4gIGJvcmRlci1yYWRpdXM6IC4yZW07XG4gIHotaW5kZXg6IDE7IH1cblxuLnRhYmxlc2F3LWNvbHVtbnRvZ2dsZS1wb3B1cCBmaWVsZHNldCB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKiBIaWRlIGFsbCBwcmlvcml0aXplZCBjb2x1bW5zIGJ5IGRlZmF1bHQgKi9cbkBtZWRpYSBvbmx5IGFsbCB7XG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGgudGFibGVzYXctcHJpb3JpdHktNixcbiAgLnRhYmxlc2F3LWNvbHVtbnRvZ2dsZSB0ZC50YWJsZXNhdy1wcmlvcml0eS02LFxuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRoLnRhYmxlc2F3LXByaW9yaXR5LTUsXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGQudGFibGVzYXctcHJpb3JpdHktNSxcbiAgLnRhYmxlc2F3LWNvbHVtbnRvZ2dsZSB0aC50YWJsZXNhdy1wcmlvcml0eS00LFxuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRkLnRhYmxlc2F3LXByaW9yaXR5LTQsXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGgudGFibGVzYXctcHJpb3JpdHktMyxcbiAgLnRhYmxlc2F3LWNvbHVtbnRvZ2dsZSB0ZC50YWJsZXNhdy1wcmlvcml0eS0zLFxuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRoLnRhYmxlc2F3LXByaW9yaXR5LTIsXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGQudGFibGVzYXctcHJpb3JpdHktMixcbiAgLnRhYmxlc2F3LWNvbHVtbnRvZ2dsZSB0aC50YWJsZXNhdy1wcmlvcml0eS0xLFxuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRkLnRhYmxlc2F3LXByaW9yaXR5LTEge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4udGFibGVzYXctY29sdW1udG9nZ2xlLWJ0bndyYXAgLmRpYWxvZy1jb250ZW50IHtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAxZW07XG4gIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgd2lkdGg6IDEyZW07XG4gIG1heC13aWR0aDogMThlbTtcbiAgbWFyZ2luOiAtLjVlbSBhdXRvIDA7IH1cblxuLnRhYmxlc2F3LWNvbHVtbnRvZ2dsZS1idG53cmFwIC5kaWFsb2ctY29udGVudDpmb2N1cyB7XG4gIG91dGxpbmUtc3R5bGU6IG5vbmU7IH1cblxuLyogUHJlc2V0IGJyZWFrcG9pbnRzIGlmIFwiXCIgY2xhc3MgYWRkZWQgdG8gdGFibGUgKi9cbi8qIFNob3cgcHJpb3JpdHkgMSBhdCAzMjBweCAoMjBlbSB4IDE2cHgpICovXG5AbWVkaWEgKG1pbi13aWR0aDogMjBlbSkge1xuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRoLnRhYmxlc2F3LXByaW9yaXR5LTEsXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGQudGFibGVzYXctcHJpb3JpdHktMSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDsgfSB9XG5cbi8qIFNob3cgcHJpb3JpdHkgMiBhdCA0ODBweCAoMzBlbSB4IDE2cHgpICovXG5AbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRoLnRhYmxlc2F3LXByaW9yaXR5LTIsXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGQudGFibGVzYXctcHJpb3JpdHktMiB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDsgfSB9XG5cbi8qIFNob3cgcHJpb3JpdHkgMyBhdCA2NDBweCAoNDBlbSB4IDE2cHgpICovXG5AbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRoLnRhYmxlc2F3LXByaW9yaXR5LTMsXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGQudGFibGVzYXctcHJpb3JpdHktMyB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRib2R5IHRkIHtcbiAgICBsaW5lLWhlaWdodDogMjsgfSB9XG5cbi8qIFNob3cgcHJpb3JpdHkgNCBhdCA4MDBweCAoNTBlbSB4IDE2cHgpICovXG5AbWVkaWEgKG1pbi13aWR0aDogNTBlbSkge1xuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRoLnRhYmxlc2F3LXByaW9yaXR5LTQsXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGQudGFibGVzYXctcHJpb3JpdHktNCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDsgfSB9XG5cbi8qIFNob3cgcHJpb3JpdHkgNSBhdCA5NjBweCAoNjBlbSB4IDE2cHgpICovXG5AbWVkaWEgKG1pbi13aWR0aDogNjBlbSkge1xuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRoLnRhYmxlc2F3LXByaW9yaXR5LTUsXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGQudGFibGVzYXctcHJpb3JpdHktNSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDsgfSB9XG5cbi8qIFNob3cgcHJpb3JpdHkgNiBhdCAxLDEyMHB4ICg3MGVtIHggMTZweCkgKi9cbkBtZWRpYSAobWluLXdpZHRoOiA3MGVtKSB7XG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGgudGFibGVzYXctcHJpb3JpdHktNixcbiAgLnRhYmxlc2F3LWNvbHVtbnRvZ2dsZSB0ZC50YWJsZXNhdy1wcmlvcml0eS02IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9IH1cblxuQG1lZGlhIG9ubHkgYWxsIHtcbiAgLyogVW5jaGVja2VkIG1hbnVhbGx5OiBBbHdheXMgaGlkZSAqL1xuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRoLnRhYmxlc2F3LWNlbGwtaGlkZGVuLFxuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRkLnRhYmxlc2F3LWNlbGwtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC8qIENoZWNrZWQgbWFudWFsbHk6IEFsd2F5cyBzaG93ICovXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGgudGFibGVzYXctY2VsbC12aXNpYmxlLFxuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRkLnRhYmxlc2F3LWNlbGwtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDsgfSB9XG5cbi50YWJsZXNhdy1jb2x1bW50b2dnbGUtcG9wdXAgLmJ0bi1ncm91cCA+IGxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IC4yZW0gMDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4udGFibGVzYXctY29sdW1udG9nZ2xlLXBvcHVwIC5idG4tZ3JvdXAgPiBsYWJlbCBpbnB1dCB7XG4gIG1hcmdpbi1yaWdodDogLjhlbTsgfVxuXG4udGFibGVzYXctc29ydGFibGUsXG4udGFibGVzYXctc29ydGFibGUgdGhlYWQsXG4udGFibGVzYXctc29ydGFibGUgdGhlYWQgdHIsXG4udGFibGVzYXctc29ydGFibGUgdGhlYWQgdHIgdGgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnRhYmxlc2F3LXNvcnRhYmxlIHRoZWFkIHRyIHRoIHtcbiAgcGFkZGluZy1yaWdodDogMS42ZW07XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuLnRhYmxlc2F3LXNvcnRhYmxlIHRoLnRhYmxlc2F3LXNvcnRhYmxlLWhlYWQsXG4udGFibGVzYXctc29ydGFibGUgdHI6Zmlyc3QtY2hpbGQgdGgudGFibGVzYXctc29ydGFibGUtaGVhZCB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLnRhYmxlc2F3LXNvcnRhYmxlIHRoLnRhYmxlc2F3LXNvcnRhYmxlLWhlYWQgYnV0dG9uIHtcbiAgcGFkZGluZy10b3A6IC45ZW07XG4gIHBhZGRpbmctYm90dG9tOiAuN2VtO1xuICBwYWRkaW5nLWxlZnQ6IC42ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuNmVtOyB9XG5cbi50YWJsZXNhdy1zb3J0YWJsZSAudGFibGVzYXctc29ydGFibGUtaGVhZCBidXR0b24ge1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250OiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi50YWJsZXNhdy1zb3J0YWJsZSAudGFibGVzYXctc29ydGFibGUtaGVhZC50YWJsZXNhdy1zb3J0YWJsZS1hc2NlbmRpbmcgYnV0dG9uOmFmdGVyLFxuLnRhYmxlc2F3LXNvcnRhYmxlIC50YWJsZXNhdy1zb3J0YWJsZS1oZWFkLnRhYmxlc2F3LXNvcnRhYmxlLWRlc2NlbmRpbmcgYnV0dG9uOmFmdGVyIHtcbiAgd2lkdGg6IDdweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBjb250ZW50OiBcIlxcMDAyMFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAuNWVtOyB9XG5cbi50YWJsZXNhdy1zb3J0YWJsZSAudGFibGVzYXctc29ydGFibGUtaGVhZC50YWJsZXNhdy1zb3J0YWJsZS1hc2NlbmRpbmcgYnV0dG9uOmFmdGVyIHtcbiAgY29udGVudDogXCJcXDIxOTFcIjsgfVxuXG4udGFibGVzYXctc29ydGFibGUgLnRhYmxlc2F3LXNvcnRhYmxlLWhlYWQudGFibGVzYXctc29ydGFibGUtZGVzY2VuZGluZyBidXR0b246YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcMjE5M1wiOyB9XG5cbi50YWJsZXNhdy1zb3J0YWJsZSAubm90LWFwcGxpY2FibGU6YWZ0ZXIge1xuICBjb250ZW50OiBcIi0tXCI7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi50YWJsZXNhdy1zb3J0YWJsZSAubm90LWFwcGxpY2FibGUgc3BhbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnRhYmxlc2F3LWFkdmFuY2Uge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLnRhYmxlc2F3LWFkdmFuY2UubWluaW1hcCB7XG4gIG1hcmdpbi1yaWdodDogLjRlbTsgfVxuXG4udGFibGVzYXctYWR2YW5jZS1kb3RzIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4udGFibGVzYXctYWR2YW5jZS1kb3RzIGxpIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAuNGVtIC4yZW07IH1cblxuLnRhYmxlc2F3LWFkdmFuY2UtZG90cyBsaSBpIHtcbiAgd2lkdGg6IC4yNWVtO1xuICBoZWlnaHQ6IC4yNWVtO1xuICBiYWNrZ3JvdW5kOiAjNTU1O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLnRhYmxlc2F3LWFkdmFuY2UtZG90cy1oaWRlIHtcbiAgb3BhY2l0eTogLjI1O1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MjUpO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi8qIGVuZGluamVjdCAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXHRQcm9qZWN0XG5cdD09PT09PT09PT1cblx0RG9zc2llclxuXG5cdEF1dGhvclxuXHQ9PT09PT09PT09XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICw4ICAsOFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgODggIDg4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA4OCAgODhcbiAgICBgOGIgICAgICBkYiAgICAgIGQ4JyAgLGFkUFBZYmEsODggIDg4ICA4OCAgICxhZFBQWWJhLCAgIDg4LGRQUFliYSxcbiAgICAgYDhiICAgIGQ4OGIgICAgZDgnICBhOFwiICAgICBcIlk4OCAgODggIDg4ICBhOFwiICAgICBcIjhhICA4OFAnICAgIFwiOGFcbiAgICAgIGA4YiAgZDgnYDhiICBkOCcgICA4YiAgICAgICAgODggIDg4ICA4OCAgOGIgICAgICAgZDggIDg4ICAgICAgIGQ4XG4gICAgICAgYDhiZDgnICBgOGJkOCcgICAgXCI4YSwgICAsYWQ4OCAgODggIDg4ICBcIjhhLCAgICxhOFwiICA4OGIsICAgLGE4XCJcbiAgICAgICAgIFlQICAgICAgWVAgICAgICAgYFwiWWJiZFBcIiA4OCAgODggIDg4ICAgYFwiWWJiZFBcIicgICA4OGBZYmJkUFwiJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgODhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDhcIlxuXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogR2xvYmFsIFN0eWxlc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuOnJvb3Qge1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuXG4qIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbmh0bWwsIGJvZHkge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbmltZyB7XG4gIHRyYW5zaXRpb246IGluaGVyaXQ7IH1cbiAgaW1nLmltYWdlLWNvdmVyIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBvYmplY3QtcG9zaXRpb246IGNlbnRlcjsgfVxuICBpbWcub2JqZWN0LWZpdCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgaW1nLmltZy1mdWxsLXdpZHRoIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG5zdmcge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuYnV0dG9uIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG5wIHtcbiAgZm9udC1zaXplOiAxLjE0Mjg2cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC40cHg7XG4gIGxpbmUtaGVpZ2h0OiAycmVtOyB9XG5cbmEge1xuICB0cmFuc2l0aW9uOiBhbGwgNDAwbXMgZWFzZTsgfVxuICBhW2NsYXNzXj1cImljb24tXCJdOmJlZm9yZSwgYVtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDEyNSU7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgZm9udC1mYW1pbHk6ICdpY29uLWZvbnQnICFpbXBvcnRhbnQ7XG4gICAgc3BlYWs6IG5vbmU7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIGFbaHJlZl49XCJtYWlsdG86XCJdIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxuXG50aW1lIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS43MTQyOTsgfVxuXG4ucm93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5oMSwgLmNhcmQtdGlsZSAuY2FyZC1jb250ZW50IGg1IHtcbiAgZm9udC1zaXplOiAxLjcxNDI5cmVtO1xuICBsaW5lLWhlaWdodDogMS4xODc1O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjcxNDI5cmVtOyB9XG5cbi5oMiB7XG4gIGZvbnQtc2l6ZTogMS40Mjg1N3JlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTg3NTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMS43MTQyOXJlbTsgfVxuXG4uaDMge1xuICBmb250LXNpemU6IDEuNDI4NTdyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE4NzU7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuNzE0MjlyZW07IH1cblxuLmg0IHtcbiAgZm9udC1zaXplOiAxLjI4NTcxcmVtO1xuICBsaW5lLWhlaWdodDogMS4xODc1O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAyLjI4NTcxcmVtOyB9XG5cbi5oNSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTg3NTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMi4yODU3MXJlbTsgfVxuXG4uaDYge1xuICBmb250LXNpemU6IDAuOTI4NTdyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE4NzU7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDIuMjg1NzFyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmgxLCAuY2FyZC10aWxlIC5jYXJkLWNvbnRlbnQgaDUge1xuICAgIGZvbnQtc2l6ZTogMi4yODU3MXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjcxNDI5cmVtOyB9XG4gIC5oMiB7XG4gICAgZm9udC1zaXplOiAycmVtOyB9XG4gIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjcxNDI5cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNDI4NTdyZW07IH1cbiAgLmg0IHtcbiAgICBmb250LXNpemU6IDEuNDI4NTdyZW07IH1cbiAgLmg1IHtcbiAgICBmb250LXNpemU6IDEuMTQyODZyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMi4yODU3MXJlbTsgfVxuICAuaDYge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjI4NTcxcmVtOyB9IH1cblxuLnJvdy5jb2xsYXBzZS5leHBhbmRlZCAucm93IHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAucm93LmNvbGxhcHNlLmV4cGFuZGVkIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC04cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtOHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnJvdy5jb2xsYXBzZS5leHBhbmRlZCAucm93IC5yb3cge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTEycHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEycHg7IH0gfVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDsgfVxuICBoMSBhLCBoMiBhLCBoMyBhLCBoNCBhLCBoNSBhLCBoNiBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICBoMS5kaXNwbGF5LCBoMi5kaXNwbGF5LCBoMy5kaXNwbGF5LCBoNC5kaXNwbGF5LCBoNS5kaXNwbGF5LCBoNi5kaXNwbGF5IHtcbiAgICBmb250LWZhbWlseTogXCJBY3RhIEhlYWRsaW5lIFcwMFwiLCBcIkFjdGEgSGVhZGxpbmVcIiwgc2VyaWY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wOTA5MWVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBoMS5sYXJnZS1kaXNwbGF5LCBoMi5sYXJnZS1kaXNwbGF5LCBoMy5sYXJnZS1kaXNwbGF5LCBoNC5sYXJnZS1kaXNwbGF5LCBoNS5sYXJnZS1kaXNwbGF5LCBoNi5sYXJnZS1kaXNwbGF5IHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkFjdGEgSGVhZGxpbmUgVzAwXCIsIFwiQWN0YSBIZWFkbGluZVwiLCBzZXJpZjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wOTA5MWVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgICAgY29sb3I6IGluaGVyaXQ7IH0gfVxuICBoMS53aGl0ZSwgaDIud2hpdGUsIGgzLndoaXRlLCBoNC53aGl0ZSwgaDUud2hpdGUsIGg2LndoaXRlIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICBoMS53LWNvbG9yLCBoMi53LWNvbG9yLCBoMy53LWNvbG9yLCBoNC53LWNvbG9yLCBoNS53LWNvbG9yLCBoNi53LWNvbG9yIHtcbiAgICBjb2xvcjogI0RDQzE4RTsgfVxuICBoMSBzbWFsbCwgaDIgc21hbGwsIGgzIHNtYWxsLCBoNCBzbWFsbCwgaDUgc21hbGwsIGg2IHNtYWxsIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41NzE0M3JlbTsgfVxuXG4uc3VidGl0bGUsIC5zZWNvbmRhcnktbmF2IGxpLCBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6IDEuNzE0Mjk7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7IH1cblxuaDQsIGg1LCBoNiB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgaDEuZGlzcGxheSB7XG4gICAgZm9udC1zaXplOiAzLjE0Mjg2cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtaGVpZ2h0OiA4MDBweCkge1xuICBoMSwgLmgxLCAuY2FyZC10aWxlIC5jYXJkLWNvbnRlbnQgaDUge1xuICAgIGZvbnQtc2l6ZTogMS43MTQyOXJlbTsgfVxuICAgIGgxLmRpc3BsYXksIC5oMS5kaXNwbGF5LCAuY2FyZC10aWxlIC5jYXJkLWNvbnRlbnQgaDUuZGlzcGxheSB7XG4gICAgICBmb250LXNpemU6IDIuMjg1NzFyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgcDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9IH1cblxuLyoqKipcbiAqICBCYXNlIFN0eWxlc1xuICovXG4ubm8tYnVsbGV0Omxhc3QtY2hpbGQsIC5saW5rczpsYXN0LWNoaWxkLCAuaW5saW5lLWxpc3Q6bGFzdC1jaGlsZCwgI21lbnUtbGlua3MgI3ByaW1hcnk6bGFzdC1jaGlsZCwgLmdhbGxlcnktdGh1bWJuYWlscyAuZ2FsbGVyeS1zdWItbWVudTpsYXN0LWNoaWxkLCAubG9jYXRpb25zLXdyYXBwZXIgLmxvY2F0aW9ucy1saXN0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmJ1dHRvbiB7XG4gIGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBOZXh0IFcwMVwiLCBcIkF2ZW5pciBOZXh0XCIsIEF2ZW5pciwgRnV0dXJhLCBcIkNlbnR1cnkgR290aGljXCIsIHNhbnMtc2VyaWY7IH1cblxuLnJnLWJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgcGFkZGluZzogMS4yM2VtIDEuODVlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RDQzE4RTtcbiAgY29sb3I6ICNmZmY7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZy1idG4ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLnJnLWJ0bjpob3ZlciwgLnJnLWJ0bjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NmYWE2NTtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAucmctYnRuLnNtYWxsLWJvcmRlci1idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBwYWRkaW5nOiAxLjIzZW0gMS44NWVtO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRENDMThFO1xuICAgIGNvbG9yOiAjRENDMThFOyB9XG4gICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZy1idG4uc21hbGwtYm9yZGVyLWJ0biB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gICAgLnJnLWJ0bi5zbWFsbC1ib3JkZXItYnRuLCAucmctYnRuLnNtYWxsLWJvcmRlci1idG46aG92ZXIsIC5yZy1idG4uc21hbGwtYm9yZGVyLWJ0bjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5yZy1idG4uc21hbGwtYm9yZGVyLWJ0bi5kaXNhYmxlZCwgLnJnLWJ0bi5zbWFsbC1ib3JkZXItYnRuLmRpc2FibGVkOmhvdmVyLCAucmctYnRuLnNtYWxsLWJvcmRlci1idG4uZGlzYWJsZWQ6Zm9jdXMsIC5yZy1idG4uc21hbGwtYm9yZGVyLWJ0bltkaXNhYmxlZF0sIC5yZy1idG4uc21hbGwtYm9yZGVyLWJ0bltkaXNhYmxlZF06aG92ZXIsIC5yZy1idG4uc21hbGwtYm9yZGVyLWJ0bltkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAucmctYnRuLnNtYWxsLWJvcmRlci1idG46aG92ZXIsIC5yZy1idG4uc21hbGwtYm9yZGVyLWJ0bjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICM4YTY5MmI7XG4gICAgICBjb2xvcjogIzhhNjkyYjsgfVxuICAgICAgLnJnLWJ0bi5zbWFsbC1ib3JkZXItYnRuOmhvdmVyLmRpc2FibGVkLCAucmctYnRuLnNtYWxsLWJvcmRlci1idG46aG92ZXJbZGlzYWJsZWRdLCAucmctYnRuLnNtYWxsLWJvcmRlci1idG46Zm9jdXMuZGlzYWJsZWQsIC5yZy1idG4uc21hbGwtYm9yZGVyLWJ0bjpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRENDMThFO1xuICAgICAgICBjb2xvcjogI0RDQzE4RTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZy1idG4ubWVkaXVtLWJvcmRlci1idG4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgcGFkZGluZzogMS4yM2VtIDEuODVlbTtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI0RDQzE4RTtcbiAgICAgIGNvbG9yOiAjRENDMThFOyB9XG4gICAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnJnLWJ0bi5tZWRpdW0tYm9yZGVyLWJ0biB7XG4gICAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgIC5yZy1idG4ubWVkaXVtLWJvcmRlci1idG4sIC5yZy1idG4ubWVkaXVtLWJvcmRlci1idG46aG92ZXIsIC5yZy1idG4ubWVkaXVtLWJvcmRlci1idG46Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLnJnLWJ0bi5tZWRpdW0tYm9yZGVyLWJ0bi5kaXNhYmxlZCwgLnJnLWJ0bi5tZWRpdW0tYm9yZGVyLWJ0bi5kaXNhYmxlZDpob3ZlciwgLnJnLWJ0bi5tZWRpdW0tYm9yZGVyLWJ0bi5kaXNhYmxlZDpmb2N1cywgLnJnLWJ0bi5tZWRpdW0tYm9yZGVyLWJ0bltkaXNhYmxlZF0sIC5yZy1idG4ubWVkaXVtLWJvcmRlci1idG5bZGlzYWJsZWRdOmhvdmVyLCAucmctYnRuLm1lZGl1bS1ib3JkZXItYnRuW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAucmctYnRuLm1lZGl1bS1ib3JkZXItYnRuOmhvdmVyLCAucmctYnRuLm1lZGl1bS1ib3JkZXItYnRuOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjOGE2OTJiO1xuICAgICAgICBjb2xvcjogIzhhNjkyYjsgfVxuICAgICAgICAucmctYnRuLm1lZGl1bS1ib3JkZXItYnRuOmhvdmVyLmRpc2FibGVkLCAucmctYnRuLm1lZGl1bS1ib3JkZXItYnRuOmhvdmVyW2Rpc2FibGVkXSwgLnJnLWJ0bi5tZWRpdW0tYm9yZGVyLWJ0bjpmb2N1cy5kaXNhYmxlZCwgLnJnLWJ0bi5tZWRpdW0tYm9yZGVyLWJ0bjpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNEQ0MxOEU7XG4gICAgICAgICAgY29sb3I6ICNEQ0MxOEU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5yZy1idG4ubGFyZ2UtYm9yZGVyLWJ0biB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBwYWRkaW5nOiAxLjIzZW0gMS44NWVtO1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjRENDMThFO1xuICAgICAgY29sb3I6ICNEQ0MxOEU7IH1cbiAgICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAucmctYnRuLmxhcmdlLWJvcmRlci1idG4ge1xuICAgICAgICBvdXRsaW5lOiAwOyB9XG4gICAgICAucmctYnRuLmxhcmdlLWJvcmRlci1idG4sIC5yZy1idG4ubGFyZ2UtYm9yZGVyLWJ0bjpob3ZlciwgLnJnLWJ0bi5sYXJnZS1ib3JkZXItYnRuOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5yZy1idG4ubGFyZ2UtYm9yZGVyLWJ0bi5kaXNhYmxlZCwgLnJnLWJ0bi5sYXJnZS1ib3JkZXItYnRuLmRpc2FibGVkOmhvdmVyLCAucmctYnRuLmxhcmdlLWJvcmRlci1idG4uZGlzYWJsZWQ6Zm9jdXMsIC5yZy1idG4ubGFyZ2UtYm9yZGVyLWJ0bltkaXNhYmxlZF0sIC5yZy1idG4ubGFyZ2UtYm9yZGVyLWJ0bltkaXNhYmxlZF06aG92ZXIsIC5yZy1idG4ubGFyZ2UtYm9yZGVyLWJ0bltkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLnJnLWJ0bi5sYXJnZS1ib3JkZXItYnRuOmhvdmVyLCAucmctYnRuLmxhcmdlLWJvcmRlci1idG46Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM4YTY5MmI7XG4gICAgICAgIGNvbG9yOiAjOGE2OTJiOyB9XG4gICAgICAgIC5yZy1idG4ubGFyZ2UtYm9yZGVyLWJ0bjpob3Zlci5kaXNhYmxlZCwgLnJnLWJ0bi5sYXJnZS1ib3JkZXItYnRuOmhvdmVyW2Rpc2FibGVkXSwgLnJnLWJ0bi5sYXJnZS1ib3JkZXItYnRuOmZvY3VzLmRpc2FibGVkLCAucmctYnRuLmxhcmdlLWJvcmRlci1idG46Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRENDMThFO1xuICAgICAgICAgIGNvbG9yOiAjRENDMThFOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkuNDI4NTdlbSkge1xuICAgIC5yZy1idG4ueGxhcmdlLWJvcmRlci1idG4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgcGFkZGluZzogMS4yM2VtIDEuODVlbTtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI0RDQzE4RTtcbiAgICAgIGNvbG9yOiAjRENDMThFOyB9XG4gICAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnJnLWJ0bi54bGFyZ2UtYm9yZGVyLWJ0biB7XG4gICAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgIC5yZy1idG4ueGxhcmdlLWJvcmRlci1idG4sIC5yZy1idG4ueGxhcmdlLWJvcmRlci1idG46aG92ZXIsIC5yZy1idG4ueGxhcmdlLWJvcmRlci1idG46Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgICAgLnJnLWJ0bi54bGFyZ2UtYm9yZGVyLWJ0bi5kaXNhYmxlZCwgLnJnLWJ0bi54bGFyZ2UtYm9yZGVyLWJ0bi5kaXNhYmxlZDpob3ZlciwgLnJnLWJ0bi54bGFyZ2UtYm9yZGVyLWJ0bi5kaXNhYmxlZDpmb2N1cywgLnJnLWJ0bi54bGFyZ2UtYm9yZGVyLWJ0bltkaXNhYmxlZF0sIC5yZy1idG4ueGxhcmdlLWJvcmRlci1idG5bZGlzYWJsZWRdOmhvdmVyLCAucmctYnRuLnhsYXJnZS1ib3JkZXItYnRuW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAucmctYnRuLnhsYXJnZS1ib3JkZXItYnRuOmhvdmVyLCAucmctYnRuLnhsYXJnZS1ib3JkZXItYnRuOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjOGE2OTJiO1xuICAgICAgICBjb2xvcjogIzhhNjkyYjsgfVxuICAgICAgICAucmctYnRuLnhsYXJnZS1ib3JkZXItYnRuOmhvdmVyLmRpc2FibGVkLCAucmctYnRuLnhsYXJnZS1ib3JkZXItYnRuOmhvdmVyW2Rpc2FibGVkXSwgLnJnLWJ0bi54bGFyZ2UtYm9yZGVyLWJ0bjpmb2N1cy5kaXNhYmxlZCwgLnJnLWJ0bi54bGFyZ2UtYm9yZGVyLWJ0bjpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNEQ0MxOEU7XG4gICAgICAgICAgY29sb3I6ICNEQ0MxOEU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDBlbSkge1xuICAgIC5yZy1idG4ueHhsYXJnZS1ib3JkZXItYnRuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgIHBhZGRpbmc6IDEuMjNlbSAxLjg1ZW07XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNEQ0MxOEU7XG4gICAgICBjb2xvcjogI0RDQzE4RTsgfVxuICAgICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZy1idG4ueHhsYXJnZS1ib3JkZXItYnRuIHtcbiAgICAgICAgb3V0bGluZTogMDsgfVxuICAgICAgLnJnLWJ0bi54eGxhcmdlLWJvcmRlci1idG4sIC5yZy1idG4ueHhsYXJnZS1ib3JkZXItYnRuOmhvdmVyLCAucmctYnRuLnh4bGFyZ2UtYm9yZGVyLWJ0bjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAucmctYnRuLnh4bGFyZ2UtYm9yZGVyLWJ0bi5kaXNhYmxlZCwgLnJnLWJ0bi54eGxhcmdlLWJvcmRlci1idG4uZGlzYWJsZWQ6aG92ZXIsIC5yZy1idG4ueHhsYXJnZS1ib3JkZXItYnRuLmRpc2FibGVkOmZvY3VzLCAucmctYnRuLnh4bGFyZ2UtYm9yZGVyLWJ0bltkaXNhYmxlZF0sIC5yZy1idG4ueHhsYXJnZS1ib3JkZXItYnRuW2Rpc2FibGVkXTpob3ZlciwgLnJnLWJ0bi54eGxhcmdlLWJvcmRlci1idG5bZGlzYWJsZWRdOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5yZy1idG4ueHhsYXJnZS1ib3JkZXItYnRuOmhvdmVyLCAucmctYnRuLnh4bGFyZ2UtYm9yZGVyLWJ0bjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzhhNjkyYjtcbiAgICAgICAgY29sb3I6ICM4YTY5MmI7IH1cbiAgICAgICAgLnJnLWJ0bi54eGxhcmdlLWJvcmRlci1idG46aG92ZXIuZGlzYWJsZWQsIC5yZy1idG4ueHhsYXJnZS1ib3JkZXItYnRuOmhvdmVyW2Rpc2FibGVkXSwgLnJnLWJ0bi54eGxhcmdlLWJvcmRlci1idG46Zm9jdXMuZGlzYWJsZWQsIC5yZy1idG4ueHhsYXJnZS1ib3JkZXItYnRuOmZvY3VzW2Rpc2FibGVkXSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0RDQzE4RTtcbiAgICAgICAgICBjb2xvcjogI0RDQzE4RTsgfSB9XG5cbi5ib3JkZXItYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBwYWRkaW5nOiAxLjIzZW0gMS44NWVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjRENDMThFO1xuICBjb2xvcjogI0RDQzE4RTtcbiAgdHJhbnNpdGlvbjogYWxsIDQwMG1zIGVhc2U7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYm9yZGVyLWJ0biB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuYm9yZGVyLWJ0biwgLmJvcmRlci1idG46aG92ZXIsIC5ib3JkZXItYnRuOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYm9yZGVyLWJ0bi5kaXNhYmxlZCwgLmJvcmRlci1idG4uZGlzYWJsZWQ6aG92ZXIsIC5ib3JkZXItYnRuLmRpc2FibGVkOmZvY3VzLCAuYm9yZGVyLWJ0bltkaXNhYmxlZF0sIC5ib3JkZXItYnRuW2Rpc2FibGVkXTpob3ZlciwgLmJvcmRlci1idG5bZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYm9yZGVyLWJ0bjpob3ZlciwgLmJvcmRlci1idG46Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzhhNjkyYjtcbiAgICBjb2xvcjogIzhhNjkyYjsgfVxuICAgIC5ib3JkZXItYnRuOmhvdmVyLmRpc2FibGVkLCAuYm9yZGVyLWJ0bjpob3ZlcltkaXNhYmxlZF0sIC5ib3JkZXItYnRuOmZvY3VzLmRpc2FibGVkLCAuYm9yZGVyLWJ0bjpmb2N1c1tkaXNhYmxlZF0ge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI0RDQzE4RTtcbiAgICAgIGNvbG9yOiAjRENDMThFOyB9XG4gIC5ib3JkZXItYnRuLndoaXRlIHtcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZmZmO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJvcmRlci1idG4ud2hpdGU6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5ib3JkZXItYnRuLnNtYWxsLXJnLWJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIHBhZGRpbmc6IDEuMjNlbSAxLjg1ZW07XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNEQ0MxOEU7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmJvcmRlci1idG4uc21hbGwtcmctYnRuIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAuYm9yZGVyLWJ0bi5zbWFsbC1yZy1idG46aG92ZXIsIC5ib3JkZXItYnRuLnNtYWxsLXJnLWJ0bjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZhYTY1O1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYm9yZGVyLWJ0bi5tZWRpdW0tcmctYnRuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgIHBhZGRpbmc6IDEuMjNlbSAxLjg1ZW07XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNEQ0MxOEU7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5ib3JkZXItYnRuLm1lZGl1bS1yZy1idG4ge1xuICAgICAgICBvdXRsaW5lOiAwOyB9XG4gICAgICAuYm9yZGVyLWJ0bi5tZWRpdW0tcmctYnRuOmhvdmVyLCAuYm9yZGVyLWJ0bi5tZWRpdW0tcmctYnRuOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NmYWE2NTtcbiAgICAgICAgY29sb3I6ICNmZmY7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ib3JkZXItYnRuLmxhcmdlLXJnLWJ0biB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBwYWRkaW5nOiAxLjIzZW0gMS44NWVtO1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRENDMThFO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYm9yZGVyLWJ0bi5sYXJnZS1yZy1idG4ge1xuICAgICAgICBvdXRsaW5lOiAwOyB9XG4gICAgICAuYm9yZGVyLWJ0bi5sYXJnZS1yZy1idG46aG92ZXIsIC5ib3JkZXItYnRuLmxhcmdlLXJnLWJ0bjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjZmFhNjU7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkuNDI4NTdlbSkge1xuICAgIC5ib3JkZXItYnRuLnhsYXJnZS1yZy1idG4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgcGFkZGluZzogMS4yM2VtIDEuODVlbTtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0RDQzE4RTtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmJvcmRlci1idG4ueGxhcmdlLXJnLWJ0biB7XG4gICAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgIC5ib3JkZXItYnRuLnhsYXJnZS1yZy1idG46aG92ZXIsIC5ib3JkZXItYnRuLnhsYXJnZS1yZy1idG46Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZhYTY1O1xuICAgICAgICBjb2xvcjogI2ZmZjsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMGVtKSB7XG4gICAgLmJvcmRlci1idG4ueHhsYXJnZS1yZy1idG4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgcGFkZGluZzogMS4yM2VtIDEuODVlbTtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0RDQzE4RTtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmJvcmRlci1idG4ueHhsYXJnZS1yZy1idG4ge1xuICAgICAgICBvdXRsaW5lOiAwOyB9XG4gICAgICAuYm9yZGVyLWJ0bi54eGxhcmdlLXJnLWJ0bjpob3ZlciwgLmJvcmRlci1idG4ueHhsYXJnZS1yZy1idG46Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2ZhYTY1O1xuICAgICAgICBjb2xvcjogI2ZmZjsgfSB9XG4gIC5ib3JkZXItYnRuOmFjdGl2ZSwgLmJvcmRlci1idG46aG92ZXIsIC5ib3JkZXItYnRuOmZvY3VzIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4ucmctYnRuLCAuYm9yZGVyLWJ0biB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuOTI4NTdyZW07XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgLnJnLWJ0bi5leHBhbmRlZCwgLmJvcmRlci1idG4uZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAucmctYnRuW2NsYXNzKj1cImljb24tXCJdLCAuYm9yZGVyLWJ0bltjbGFzcyo9XCJpY29uLVwiXSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAucmctYnRuLCAuYm9yZGVyLWJ0biB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5pbmxpbmUtbGlzdCBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaW5saW5lLWxpc3QgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH0gfVxuXG4udHdvLWNvbHVtbi10ZXh0ICoge1xuICBicmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnR3by1jb2x1bW4tdGV4dCB7XG4gICAgY29sdW1uLWNvdW50OiAyO1xuICAgIGNvbHVtbi1nYXA6IDE2cHg7IH1cbiAgICAudHdvLWNvbHVtbi10ZXh0IHA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjE0Mjg2cmVtOyB9IH1cblxudWwudHdvLWNvbHVtbi10ZXh0IGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmltZy5hbGlnbmxlZnQge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG5cbmltZy5hbGlnbnJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuXG4udGV4dC11cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbmJvZHkubmF2LW9wZW5lZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgYm9keS5uYXYtb3BlbmVkIC5uYXYtaGVhZGVyIHN2ZywgYm9keS5uYXYtb3BlbmVkIC5uYXYtZm9vdGVyIHN2ZyB7XG4gICAgZmlsbDogI2ZmZjsgfVxuXG4ubmF2LWhlYWRlciwgLm5hdi1mb290ZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB6LWluZGV4OiA1NzU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwOyB9XG4gIC5uYXYtaGVhZGVyLmxvY2tlZCwgLm5hdi1mb290ZXIubG9ja2VkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICAubmF2LW9wZW5lZCAubmF2LWhlYWRlci5sb2NrZWQsIC5uYXYtb3BlbmVkIC5uYXYtZm9vdGVyLmxvY2tlZCB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7IH1cbiAgLm5hdi1oZWFkZXIgc3ZnLCAubmF2LWZvb3RlciBzdmcge1xuICAgIGZpbGw6ICNmZmY7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC50ZW1wbGF0ZS1tYXAgLm5hdi1oZWFkZXIgc3ZnLCAucGFnZS1jb250YWN0IC5uYXYtaGVhZGVyIHN2ZywgLnRlbXBsYXRlLW1hcCAubmF2LWZvb3RlciBzdmcsIC5wYWdlLWNvbnRhY3QgLm5hdi1mb290ZXIgc3ZnIHtcbiAgICAgICAgZmlsbDogIzFBMTgxODsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnBhZ2UtY29udGFjdCAubmF2LWhlYWRlciBzdmcsIC5wYWdlLWNvbnRhY3QgLm5hdi1mb290ZXIgc3ZnIHtcbiAgICAgICAgZmlsbDogI2ZmZjsgfSB9XG4gIC5uYXYtaGVhZGVyID4gLnJvdywgLm5hdi1mb290ZXIgPiAucm93IHtcbiAgICBwYWRkaW5nOiAyLjU3MTQzcmVtIDEuNzE0MjlyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubmF2LWhlYWRlciA+IC5yb3csIC5uYXYtZm9vdGVyID4gLnJvdyB7XG4gICAgICAgIHBhZGRpbmc6IDAgNC41NzE0M3JlbTsgfSB9XG4gIC5uYXYtaGVhZGVyIGJ1dHRvbiwgLm5hdi1oZWFkZXIgYSwgLm5hdi1mb290ZXIgYnV0dG9uLCAubmF2LWZvb3RlciBhIHtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuICAubmF2LWhlYWRlciBidXR0b24sIC5uYXYtZm9vdGVyIGJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgICAubmF2LWhlYWRlciBidXR0b24gc3ZnLCAubmF2LWhlYWRlciBidXR0b24gc3BhbiwgLm5hdi1mb290ZXIgYnV0dG9uIHN2ZywgLm5hdi1mb290ZXIgYnV0dG9uIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgLm5hdi1oZWFkZXIgYnV0dG9uIHNwYW4sIC5uYXYtZm9vdGVyIGJ1dHRvbiBzcGFuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyLjQyODU3cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDIuMTlweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5uYXYtaGVhZGVyIGJ1dHRvbi5yZy1idG4sIC5uYXYtZm9vdGVyIGJ1dHRvbi5yZy1idG4ge1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5uYXYtaGVhZGVyIHtcbiAgdG9wOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAubmF2LWhlYWRlciAuY29sdW1ucyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAubmF2LWhlYWRlciA+IC5yb3cge1xuICAgICAgcGFkZGluZzogMXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubmF2LWhlYWRlciB7XG4gICAgICBwYWRkaW5nOiAxLjU3MTQzcmVtIDAgMS43MTQyOXJlbTsgfSB9XG4gIC5uYXYtaGVhZGVyLmxvY2tlZCAubWVudS10b2dnbGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAubmF2LWhlYWRlciAubG9nby13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiA0cHg7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5uYXYtaGVhZGVyIC5sb2dvLXdyYXBwZXIgLm1lbnUtdG9nZ2xlLCAubmF2LWhlYWRlciAubG9nby13cmFwcGVyIC5ob21lLWxpbmsge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgLm5hdi1oZWFkZXIgLmxvZ28td3JhcHBlciAubWVudS10b2dnbGUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyLjI4NTcxcmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm5hdi1oZWFkZXIgLmxvZ28td3JhcHBlciAuaG9tZS1saW5rIHtcbiAgICAgICAgbWFyZ2luLXRvcDogM3B4OyB9IH1cbiAgICAubmF2LWhlYWRlciAubG9nby13cmFwcGVyIC5ob21lLWxpbmsgc3ZnIHtcbiAgICAgIHdpZHRoOiA4LjU3MTQzcmVtO1xuICAgICAgaGVpZ2h0OiAycmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5uYXYtaGVhZGVyIC5sb2dvLXdyYXBwZXIgLmhvbWUtbGluayBzdmcge1xuICAgICAgICAgIHdpZHRoOiAxMC45Mjg1N3JlbTtcbiAgICAgICAgICBoZWlnaHQ6IDIuMjg1NzFyZW07IH0gfVxuICAubmF2LWhlYWRlciAubW9iaWxlLW1lbnUtdG9nZ2xlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiA0cHg7XG4gICAgcmlnaHQ6IDRweDsgfVxuXG4ubmF2LWZvb3RlciB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogaW5oZXJpdDtcbiAgbWFyZ2luLXJpZ2h0OiA0LjY0Mjg2cmVtO1xuICBtYXgtd2lkdGg6IDE4MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5uYXYtZm9vdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm5hdi1mb290ZXIge1xuICAgICAgcGFkZGluZzogMCAwIDIuNXJlbTsgfSB9XG5cbi5maXhlZC1uYXYtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2UtaW4tb3V0LCB6LWluZGV4IDBzIGxpbmVhciA0MDBtczsgfVxuICAuZml4ZWQtbmF2LXdyYXBwZXIub3BlbmVkIHtcbiAgICB6LWluZGV4OiA1MDE7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2UtaW4tb3V0OyB9XG4gIC5maXhlZC1uYXYtd3JhcHBlciAubmF2LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogNi44NTcxNHJlbSAxLjE0Mjg2cmVtIDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5maXhlZC1uYXYtd3JhcHBlciAubmF2LWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDEwLjcxNDI5cmVtIDQuNTcxNDNyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5maXhlZC1uYXYtd3JhcHBlciAubmF2LWNvbnRhaW5lciA+IC5yb3cubGFyZ2UtYWxpZ24tbWlkZGxlIHtcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgLmZpeGVkLW5hdi13cmFwcGVyIC5tZW51LWNvbnRlbnQge1xuICAgIGZsZXg6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkuNDI4NTdlbSkge1xuICAgICAgLmZpeGVkLW5hdi13cmFwcGVyIC5tZW51LWNvbnRlbnQge1xuICAgICAgICB3aWR0aDogODMuMzMzMzMlOyB9IH1cbiAgICAuZml4ZWQtbmF2LXdyYXBwZXIgLm1lbnUtY29udGVudCA+IC5yb3cge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5maXhlZC1uYXYtd3JhcHBlciAubmF2LWJhY2tncm91bmQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICAgIC5maXhlZC1uYXYtd3JhcHBlciAubmF2LWJhY2tncm91bmQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM0LCAzMiwgMzIsIDAuOCk7IH1cblxuLm1lbnUtdG9nZ2xlIFtjbGFzc149XCJpY29uLVwiXSwgLm1lbnUtdG9nZ2xlIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBmb250LXNpemU6IDEuNzE0MjlyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tZW51LXRvZ2dsZSBbY2xhc3NePVwiaWNvbi1cIl0sIC5tZW51LXRvZ2dsZSBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgICAgIGZvbnQtc2l6ZTogMi41NzE0M3JlbTsgfSB9XG5cbi5tZW51LXRvZ2dsZSBzdmcsIC5tZW51LXRvZ2dsZSBbY2xhc3NePVwiaWNvbi1cIl0sIC5tZW51LXRvZ2dsZSBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgd2lkdGg6IDIuMjg1NzFyZW07XG4gIGhlaWdodDogMS43MTQyOXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lbnUtdG9nZ2xlIHN2ZywgLm1lbnUtdG9nZ2xlIFtjbGFzc149XCJpY29uLVwiXSwgLm1lbnUtdG9nZ2xlIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xuICAgICAgd2lkdGg6IDMuMTQyODZyZW07XG4gICAgICBoZWlnaHQ6IDIuNTcxNDNyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNtZW51LWxpbmtzICNwcmltYXJ5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDQuNTcxNDNyZW0pO1xuICAgIG1heC13aWR0aDogNDkuNzE0MjlyZW07IH0gfVxuXG4jbWVudS1saW5rcyAjcHJpbWFyeSA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgI21lbnUtbGlua3MgI3ByaW1hcnkgPiBsaSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAxLjcxNDI5cmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIkFjdGEgSGVhZGxpbmUgVzAwXCIsIFwiQWN0YSBIZWFkbGluZVwiLCBzZXJpZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjY2NjY3O1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgICNtZW51LWxpbmtzICNwcmltYXJ5ID4gbGkgPiBhIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCk7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICNtZW51LWxpbmtzICNwcmltYXJ5ID4gbGkgPiBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNEQ0MxOEU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICNtZW51LWxpbmtzICNwcmltYXJ5ID4gbGkgPiBhIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDIuODU3MTRyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjQ7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiA1LjQ1cHg7IH0gfVxuICAjbWVudS1saW5rcyAjcHJpbWFyeSA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAjbWVudS1saW5rcyAjcHJpbWFyeSA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUyKTsgfVxuICAgICAgI21lbnUtbGlua3MgI3ByaW1hcnkgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYS5hY3RpdmU6aG92ZXIge1xuICAgICAgICBjb2xvcjogI0RDQzE4RTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgI21lbnUtbGlua3MgI3ByaW1hcnkgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYTphZnRlciB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcImljb24tZm9udFwiO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgY29udGVudDogXCLugIJcIjsgfVxuICAgICAgI21lbnUtbGlua3MgI3ByaW1hcnkgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYTphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6IC0wLjkyODU3cmVtO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgZm9udC1zaXplOiAwLjcxNDI5cmVtO1xuICAgICAgICBjb2xvcjogI0RDQzE4RTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAjbWVudS1saW5rcyAjcHJpbWFyeSA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhLmFjdGl2ZSArIC5zdWItbWVudSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjQpOyB9XG4gICAgICAjbWVudS1saW5rcyAjcHJpbWFyeSA+IGxpLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4gPiBhLmFjdGl2ZTphZnRlciB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC0xKTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgI21lbnUtbGlua3MgI3ByaW1hcnkgPiBsaS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuID4gYSArIC5zdWItbWVudSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbiNtZW51LWxpbmtzIC5sYXJnZS02Omxhc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogc29saWQgMXB4ICNmZmY7IH1cblxuI21lbnUtbGlua3MgLm5hdi10YWIge1xuICBoZWlnaHQ6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4jbWVudS1saW5rcyAuc3ViLW1lbnUge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgaGVpZ2h0OiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjbWVudS1saW5rcyAuc3ViLW1lbnUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgI21lbnUtbGlua3MgLnN1Yi1tZW51IGxpIHtcbiAgICBmb250LXNpemU6IDEuMTQyODZyZW07XG4gICAgbGluZS1oZWlnaHQ6IDIuNTtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4OyB9XG4gICAgI21lbnUtbGlua3MgLnN1Yi1tZW51IGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjU3MTQzcmVtOyB9XG4gICAgI21lbnUtbGlua3MgLnN1Yi1tZW51IGxpOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDAuNTcxNDNyZW07IH1cbiAgICAjbWVudS1saW5rcyAuc3ViLW1lbnUgbGkgYSB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgI21lbnUtbGlua3MgLnN1Yi1tZW51IGxpIGE6aG92ZXIsICNtZW51LWxpbmtzIC5zdWItbWVudSBsaSBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICNEQ0MxOEU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICNtZW51LWxpbmtzIC5zdWItbWVudSB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlO1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAgICNtZW51LWxpbmtzIC5zdWItbWVudSBsaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS43MTQyOXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMuMzMzMzM7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7IH0gfVxuXG4jcHJvdmVuYW5jZS1wcm9wZXJ0aWVzIC5jb2x1bW4sICNwcm92ZW5hbmNlLXByb3BlcnRpZXMgLmNvbHVtbnMge1xuICBwYWRkaW5nOiAxLjcxNDI5cmVtIDQuNTcxNDNyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICNwcm92ZW5hbmNlLXByb3BlcnRpZXMgLmNvbHVtbiwgI3Byb3ZlbmFuY2UtcHJvcGVydGllcyAuY29sdW1ucyB7XG4gICAgICBwYWRkaW5nOiAxLjcxNDI5cmVtIDMuNDI4NTdyZW07IH0gfVxuXG4jcHJvdmVuYW5jZS1wcm9wZXJ0aWVzIGEgc3ZnIHtcbiAgdHJhbnNpdGlvbjogaW5oZXJpdDtcbiAgZmlsbDogI2ZmZjtcbiAgbWFyZ2luLWJvdHRvbTogLjI1cmVtO1xuICBwYWRkaW5nOiAxcmVtOyB9XG5cbiNwcm92ZW5hbmNlLXByb3BlcnRpZXMgYTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmOyB9XG4gICNwcm92ZW5hbmNlLXByb3BlcnRpZXMgYTpob3ZlciBzdmcge1xuICAgIGZpbGw6ICNEQ0MxOEU7IH1cblxuI3Byb3ZlbmFuY2UtcHJvcGVydGllcyAuaG90ZWwtbG9jYXRpb24ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbi5wcm92ZW5hbmNlLXRvZ2dsZSBzdmcge1xuICB3aWR0aDogOC41NzE0M3JlbTtcbiAgaGVpZ2h0OiA0LjU3MTQzcmVtO1xuICBmaWxsOiAjZmZmOyB9XG5cbi5oaWRlLWZvci1sYXJnZSAucHJvdmVuYW5jZS10b2dnbGUge1xuICBtYXJnaW46IDQuNTcxNDNyZW0gYXV0byA2Ljg1NzE0cmVtOyB9XG5cbi5zZWNvbmRhcnktbmF2IGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDEuMTQyODZyZW07IH1cbiAgLnNlY29uZGFyeS1uYXYgbGkgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgcGFkZGluZzogMCAwIDAuNDI4NTdyZW07IH1cbiAgLnNlY29uZGFyeS1uYXYgbGkuY3VycmVudC1wYWdlIHtcbiAgICBjb2xvcjogI0RDQzE4RTtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggI0RDQzE4RTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC1oZWlnaHQ6IDgwMHB4KSB7XG4gIC5maXhlZC1uYXYtd3JhcHBlciAubmF2LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNi42NjY2N3Z3O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE2LjY2NjY3dnc7IH1cbiAgI21lbnUtbGlua3MgI3ByaW1hcnkge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAjbWVudS1saW5rcyAjcHJpbWFyeSA+IGxpID4gYSB7XG4gICAgICBmb250LXNpemU6IDEuNzE0MjlyZW07XG4gICAgICBsaW5lLWhlaWdodDogMi42NjY2NzsgfVxuICAjbWVudS1saW5rcyAuc3ViLW1lbnUgbGkge1xuICAgIGZvbnQtc2l6ZTogMS4xNDI4NnJlbTtcbiAgICBsaW5lLWhlaWdodDogMzsgfSB9XG5cbmJvZHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4uc21hbGwtYWxpZ24tbGVmdCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4uc21hbGwtYWxpZ24tcmlnaHQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5zbWFsbC1hbGlnbi1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uc21hbGwtYWxpZ24tanVzdGlmeSB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4uc21hbGwtYWxpZ24tc3BhY2VkIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cblxuLnNtYWxsLWFsaWduLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG5cbi5zbWFsbC1hbGlnbi1zZWxmLXRvcCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cblxuLnNtYWxsLWFsaWduLWJvdHRvbSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG4uc21hbGwtYWxpZ24tc2VsZi1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuXG4uc21hbGwtYWxpZ24tbWlkZGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uc21hbGwtYWxpZ24tc2VsZi1taWRkbGUge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cblxuLnNtYWxsLWFsaWduLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXG4uc21hbGwtYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLWFsaWduLWxlZnQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAubWVkaXVtLWFsaWduLXJpZ2h0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC5tZWRpdW0tYWxpZ24tY2VudGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAubWVkaXVtLWFsaWduLWp1c3RpZnkge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAubWVkaXVtLWFsaWduLXNwYWNlZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgLm1lZGl1bS1hbGlnbi10b3Age1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC5tZWRpdW0tYWxpZ24tc2VsZi10b3Age1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cbiAgLm1lZGl1bS1hbGlnbi1ib3R0b20ge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuICAubWVkaXVtLWFsaWduLXNlbGYtYm90dG9tIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuICAubWVkaXVtLWFsaWduLW1pZGRsZSB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAubWVkaXVtLWFsaWduLXNlbGYtbWlkZGxlIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cbiAgLm1lZGl1bS1hbGlnbi1zdHJldGNoIHtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuICAubWVkaXVtLWFsaWduLXNlbGYtc3RyZXRjaCB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1hbGlnbi1sZWZ0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgLmxhcmdlLWFsaWduLXJpZ2h0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC5sYXJnZS1hbGlnbi1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5sYXJnZS1hbGlnbi1qdXN0aWZ5IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLmxhcmdlLWFsaWduLXNwYWNlZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgLmxhcmdlLWFsaWduLXRvcCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgLmxhcmdlLWFsaWduLXNlbGYtdG9wIHtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG4gIC5sYXJnZS1hbGlnbi1ib3R0b20ge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuICAubGFyZ2UtYWxpZ24tc2VsZi1ib3R0b20ge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG4gIC5sYXJnZS1hbGlnbi1taWRkbGUge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmxhcmdlLWFsaWduLXNlbGYtbWlkZGxlIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cbiAgLmxhcmdlLWFsaWduLXN0cmV0Y2gge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC5sYXJnZS1hbGlnbi1zZWxmLXN0cmV0Y2gge1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OS40Mjg1N2VtKSB7XG4gIC54bGFyZ2UtYWxpZ24tbGVmdCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC54bGFyZ2UtYWxpZ24tcmlnaHQge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgLnhsYXJnZS1hbGlnbi1jZW50ZXIge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC54bGFyZ2UtYWxpZ24tanVzdGlmeSB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC54bGFyZ2UtYWxpZ24tc3BhY2VkIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuICAueGxhcmdlLWFsaWduLXRvcCB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgLnhsYXJnZS1hbGlnbi1zZWxmLXRvcCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuICAueGxhcmdlLWFsaWduLWJvdHRvbSB7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG4gIC54bGFyZ2UtYWxpZ24tc2VsZi1ib3R0b20ge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG4gIC54bGFyZ2UtYWxpZ24tbWlkZGxlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC54bGFyZ2UtYWxpZ24tc2VsZi1taWRkbGUge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuICAueGxhcmdlLWFsaWduLXN0cmV0Y2gge1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC54bGFyZ2UtYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwZW0pIHtcbiAgLnh4bGFyZ2UtYWxpZ24tbGVmdCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIC54eGxhcmdlLWFsaWduLXJpZ2h0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC54eGxhcmdlLWFsaWduLWNlbnRlciB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgLnh4bGFyZ2UtYWxpZ24tanVzdGlmeSB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC54eGxhcmdlLWFsaWduLXNwYWNlZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cbiAgLnh4bGFyZ2UtYWxpZ24tdG9wIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuICAueHhsYXJnZS1hbGlnbi1zZWxmLXRvcCB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuICAueHhsYXJnZS1hbGlnbi1ib3R0b20ge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuICAueHhsYXJnZS1hbGlnbi1zZWxmLWJvdHRvbSB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7IH1cbiAgLnh4bGFyZ2UtYWxpZ24tbWlkZGxlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC54eGxhcmdlLWFsaWduLXNlbGYtbWlkZGxlIHtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cbiAgLnh4bGFyZ2UtYWxpZ24tc3RyZXRjaCB7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLnh4bGFyZ2UtYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9IH1cblxuI21haW4tY29udGFpbmVyIHtcbiAgZmxleDogMSAwIGF1dG87IH1cblxuLnNlY3Rpb24tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5zZWN0aW9uLWNvbnRhaW5lci53LWJhY2tncm91bmQgLnNlY3Rpb24tYmFja2dyb3VuZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2VjdGlvbi1jb250YWluZXIuZnVsbC1oZWlnaHQge1xuICAgICAgbWluLWhlaWdodDogMTAwdmg7IH0gfVxuICAuc2VjdGlvbi1jb250YWluZXI6Zmlyc3QtY2hpbGQ6bm90KC5mdWxsLWhlaWdodCkge1xuICAgIG1hcmdpbi10b3A6IDEwcmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNlY3Rpb24tY29udGFpbmVyOmZpcnN0LWNoaWxkOm5vdCguZnVsbC1oZWlnaHQpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTcuMTQyODZyZW07IH1cbiAgICAgICAgLnNlY3Rpb24tY29udGFpbmVyOmZpcnN0LWNoaWxkOm5vdCguZnVsbC1oZWlnaHQpLnNlY29uZGFyeS1uYXZpZ2F0aW9uLXNlY3Rpb24ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDExLjQyODU3cmVtOyB9IH1cbiAgLnNlY3Rpb24tY29udGFpbmVyOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIHBhZGRpbmc6IDYuODU3MTRyZW0gMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zZWN0aW9uLWNvbnRhaW5lcjpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICAgIHBhZGRpbmc6IDkuMTQyODZyZW0gMDsgfSB9XG4gIC5zZWN0aW9uLWNvbnRhaW5lciArIC5zZWN0aW9uLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDIuMjg1NzFyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuc2VjdGlvbi1jb250YWluZXIgKyAuc2VjdGlvbi1jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMi4yODU3MXJlbTsgfSB9XG4gIC5zZWN0aW9uLWNvbnRhaW5lcjpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMy40Mjg1N3JlbTsgfVxuICAuc2VjdGlvbi1jb250YWluZXIubm8tcGFkZGluZywgLnNlY3Rpb24tY29udGFpbmVyLm5vLXBhZGRpbmc6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZzogMDsgfVxuICAuc2VjdGlvbi1jb250YWluZXIgLnNlY3Rpb24tYmFja2dyb3VuZCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIHotaW5kZXg6IC0xOyB9XG4gICAgLnNlY3Rpb24tY29udGFpbmVyIC5zZWN0aW9uLWJhY2tncm91bmQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzIsIDMyLCAwLjgpOyB9XG4gIC5zZWN0aW9uLWNvbnRhaW5lciA+IC5yb3cge1xuICAgIHBhZGRpbmctbGVmdDogMTZweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNnB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnNlY3Rpb24tY29udGFpbmVyID4gLnJvdyB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTJweDsgfSB9XG4gIC5zZWN0aW9uLWNvbnRhaW5lci5mdWxsLXdpZHRoID4gLnJvdyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnNlY29uZGFyeS1uYXZpZ2F0aW9uLXNlY3Rpb24gKyAuc2VjdGlvbi1jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAyLjU3MTQzcmVtOyB9XG4gIC5zZWN0aW9uLWNvbnRhaW5lciAuc2Nyb2xsLWluZGljYXRvciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMjhweDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG4gICAgLnNlY3Rpb24tY29udGFpbmVyIC5zY3JvbGwtaW5kaWNhdG9yOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIu6AglwiOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNlY3Rpb24tY29udGFpbmVyIC5zY3JvbGwtaW5kaWNhdG9yIHtcbiAgICAgICAgYm90dG9tOiA3NnB4OyB9IH1cblxuLnNpdGUtbWFwLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMTByZW07XG4gIHBhZGRpbmc6IDA7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoOyB9XG5cbi5wYWdlLWZ1bGwtYmFja2dyb3VuZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAtMTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gIC5wYWdlLWZ1bGwtYmFja2dyb3VuZDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzIsIDMyLCAwLjgpOyB9XG5cbi5zZWN0aW9uLWNvbnRhaW5lcjpsYXN0LWNoaWxkLFxuLnNlY3Rpb24tY29udGFpbmVyICsgLnNlY3Rpb24tY29udGFpbmVyLFxuLmZ1bGwtd2lkdGgtZ3JpZCB7XG4gIHBhZGRpbmc6IDFyZW0gMDsgfVxuICAuc2VjdGlvbi1jb250YWluZXI6bGFzdC1jaGlsZCA+IC5yb3csXG4gIC5zZWN0aW9uLWNvbnRhaW5lciArIC5zZWN0aW9uLWNvbnRhaW5lciA+IC5yb3csXG4gIC5mdWxsLXdpZHRoLWdyaWQgPiAucm93IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmZhcS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiA3Ljg1NzE0cmVtIDAgNy44NTcxNHJlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmFxLXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDE0LjI4NTcxcmVtIDAgOC41NzE0M3JlbSAhaW1wb3J0YW50OyB9IH1cblxuI3NpdGUtZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUExODE4O1xuICBmb250LXNpemU6IDAuOTI4NTdyZW07IH1cbiAgI3NpdGUtZm9vdGVyIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjQ2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNzY5MjM7IH1cbiAgICAjc2l0ZS1mb290ZXIgcCArIHAge1xuICAgICAgbWFyZ2luLXRvcDogMS4xNDI4NnJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAjc2l0ZS1mb290ZXIgPiAucm93IHtcbiAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjMzgzNzNBOyB9IH1cbiAgI3NpdGUtZm9vdGVyID4gLnJvdyAucm93IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgI3NpdGUtZm9vdGVyID4gLnJvdzpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjc2l0ZS1mb290ZXIgPiAucm93IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNC41NzE0M3JlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQuNTcxNDNyZW07IH0gfVxuICAjc2l0ZS1mb290ZXIgLnNvY2lhbCB7XG4gICAgbWFyZ2luOiAycmVtIDEuNzE0MjlyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgI3NpdGUtZm9vdGVyIC5zb2NpYWwgbGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjcxNDI5cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAjc2l0ZS1mb290ZXIgLnNvY2lhbCBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAjc2l0ZS1mb290ZXIgLnNvY2lhbCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICAgICNzaXRlLWZvb3RlciAuc29jaWFsIGxpIGEge1xuICAgICAgZm9udC1zaXplOiAxLjU3MTQzcmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICNzaXRlLWZvb3RlciAuc29jaWFsIGxpIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4zNTcxNHJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgI3NpdGUtZm9vdGVyIC5zb2NpYWwge1xuICAgICAgICBtYXJnaW46IDIuMjg1NzFyZW0gYXV0bzsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgI3NpdGUtZm9vdGVyIC5zb2NpYWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgI3NpdGUtZm9vdGVyIC5ob3RlbC1pbmZvIHtcbiAgICBwYWRkaW5nOiAyLjg1NzE0cmVtIDEuMTQyODZyZW0gMS43MTQyOXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgI3NpdGUtZm9vdGVyIC5ob3RlbC1pbmZvLCAjc2l0ZS1mb290ZXIgLm1pc2MtbGlua3MsICNzaXRlLWZvb3RlciAuc3Vic2NyaWJlLXNvY2lhbCB7XG4gICAgICBwYWRkaW5nOiA0LjU3MTQzcmVtIDEycHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAjc2l0ZS1mb290ZXIgLmhvdGVsLWluZm8ge1xuICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICMzODM3M0E7IH1cbiAgICAjc2l0ZS1mb290ZXIgLm1pc2MtbGlua3MgPiAucm93ID4gLmNvbHVtbiwgI3NpdGUtZm9vdGVyIC5taXNjLWxpbmtzID4gLnJvdyA+IC5jb2x1bW5zIHtcbiAgICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAjMzgzNzNBOyB9IH1cbiAgI3NpdGUtZm9vdGVyIC5jb3B5cmlnaHQsICNzaXRlLWZvb3RlciAuZm9vdGVyLWNvbHVtbi1oZWFkaW5nIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjE0Mjg2cmVtOyB9XG4gICNzaXRlLWZvb3RlciAuZm9vdGVyLWxvZ28gc3ZnIHtcbiAgICB3aWR0aDogMy4yODU3MXJlbTtcbiAgICBoZWlnaHQ6IDQuMjcxNDNyZW07XG4gICAgZmlsbDogI2ZmZjsgfVxuXG4jdXRpbGl0eSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDU0cHg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgI3V0aWxpdHkge1xuICAgICAgbWFyZ2luOiAyLjg1NzE0cmVtIDAgNi43MTQyOXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAjdXRpbGl0eSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgY29sdW1uLWNvdW50OiAyO1xuICAgICAgY29sdW1uLWdhcDogMTZweDsgfVxuICAgICAgI3V0aWxpdHkgbGkge1xuICAgICAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH0gfVxuICAjdXRpbGl0eSBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAxLjIxNDI5cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgI3V0aWxpdHkgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIDAgMC43MTQyOXJlbTsgfSB9XG4gICAgI3V0aWxpdHkgbGk6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgICN1dGlsaXR5IGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgICAjdXRpbGl0eSBsaSArIGxpIHtcbiAgICAgICAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggIzM4MzczQTsgfSB9XG4gICN1dGlsaXR5IGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgICN1dGlsaXR5IGEge1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgICAjdXRpbGl0eSBhOmhvdmVyLCAjdXRpbGl0eSBhOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogI0RDQzE4RTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAjdXRpbGl0eSBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDAuODU3MTRyZW0gMS43MTQyOXJlbTsgfSB9XG5cbi8qIENvbXBvbmVudHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiNwcmVsb2FkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjMjIyMDIwO1xuICB6LWluZGV4OiA5OTk5OyB9XG4gICNwcmVsb2FkZXIgLnByZWxvYWRlci13cmFwcGVyIHtcbiAgICBmbGV4OiBub25lO1xuICAgIG1heC13aWR0aDogMjUlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICNwcmVsb2FkZXIgLnByZWxvYWRlci13cmFwcGVyIHN2ZyB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWF4LXdpZHRoOiA2Ljg1NzE0cmVtO1xuICAgICAgbWF4LWhlaWdodDogNi44NTcxNHJlbTtcbiAgICAgIGZpbGw6ICNmZmY7IH1cbiAgICAjcHJlbG9hZGVyIC5wcmVsb2FkZXItd3JhcHBlciAjcGFnZS1wcm9ncmVzcyB7XG4gICAgICBtYXJnaW4tdG9wOiAyLjU3MTQzcmVtO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDEuNzE0MjlyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4zMzMzMztcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5ib29raW5nLXdpZGdldCAuZmllbGRzLXdyYXBwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5ib29raW5nLXdpZGdldCAuYm9va2luZy1maWVsZHMge1xuICBmb250LXNpemU6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIC5ib29raW5nLXdpZGdldCAuYm9va2luZy1maWVsZHMgaW5wdXQsIC5ib29raW5nLXdpZGdldCAuYm9va2luZy1maWVsZHMgc2VsZWN0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwLjg1NzE0cmVtO1xuICAgIGZvbnQtc2l6ZTogMC45Mjg1N3JlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGhlaWdodDogMy4xNDI4NnJlbTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggI2ZmZjtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyLjE0Mjg2cmVtO1xuICAgIG1hcmdpbjogMCAxMnB4OyB9XG4gICAgLmJvb2tpbmctd2lkZ2V0IC5ib29raW5nLWZpZWxkcyBpbnB1dDpmaXJzdC1jaGlsZCwgLmJvb2tpbmctd2lkZ2V0IC5ib29raW5nLWZpZWxkcyBzZWxlY3Q6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAuYm9va2luZy13aWRnZXQgLmJvb2tpbmctZmllbGRzIGlucHV0Omxhc3QtY2hpbGQsIC5ib29raW5nLXdpZGdldCAuYm9va2luZy1maWVsZHMgc2VsZWN0Omxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5ib29raW5nLXdpZGdldCAuYm9va2luZy1maWVsZHMgaW5wdXQuZGF0ZXBpY2tlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKFwic3ByaXRlc2hlZXQuc3ZnI2NhbGVuZGFyXCIsIFwiW2ZpbGxdOiAjRENDMThFXCIpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTZweCAxNnB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQ7IH1cbiAgLmJvb2tpbmctd2lkZ2V0IC5ib29raW5nLWZpZWxkcyBzZWxlY3Qge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogc3ZnKFwic3ByaXRlc2hlZXQuc3ZnI2NoZXZyb24tZG93blwiLCBcIltmaWxsXTogI0RDQzE4RVwiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEycHggOHB4O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQ7IH1cblxuLm1vYmlsZS1ib29rLW5vdy1idG4ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogLTY1cHg7XG4gIHBhZGRpbmc6IDEuMTVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjRENDMThFO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgei1pbmRleDogMjAwMDA7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAuMjVzIGVhc2UtaW4tb3V0OyB9XG5cbi5vcGVudGFibGUge1xuICBib3JkZXI6IHNvbGlkIDFweCAjRENDMThFO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIG1hcmdpbi1ib3R0b206IDEuMTQyODZyZW07IH1cbiAgLm9wZW50YWJsZSBpbnB1dCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDEuMTQyODZyZW0gMS40Mjg1N3JlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzLjE0Mjg2cmVtO1xuICAgIGhlaWdodDogMy40Mjg1N3JlbTtcbiAgICBmb250LXNpemU6IDAuODU3MTRyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuNzVweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlubGluZShcIi4uL3Nwcml0ZXNoZWV0L2NoZXZyb24tZG93bi5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE2cHggYXV0bztcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAxM3B4KSBjZW50ZXI7IH1cbiAgICAub3BlbnRhYmxlIGlucHV0OmZvY3VzIHtcbiAgICAgIGJvcmRlcjogMDsgfVxuICAub3BlbnRhYmxlIGlucHV0LCAub3BlbnRhYmxlIC5zZWxlY3RyaWMge1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW46IDA7IH1cbiAgLm9wZW50YWJsZSBpbnB1dCArIGlucHV0LCAub3BlbnRhYmxlIGlucHV0ICsgLnNlbGVjdHJpYy13cmFwcGVyLCAub3BlbnRhYmxlIC5zZWxlY3RyaWMtd3JhcHBlciArIGlucHV0LCAub3BlbnRhYmxlIC5zZWxlY3RyaWMtd3JhcHBlciArIC5zZWxlY3RyaWMtd3JhcHBlciB7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4IHJnYmEoMjIwLCAxOTMsIDE0MiwgMC41KTsgfVxuICAub3BlbnRhYmxlIGJ1dHRvbiB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBjb2xvcjogIzIyMjAyMDsgfVxuXG4uY2Fyb3VzZWwtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uc2xpY2stc2xpZGVyLCAuc2xpY2stbGlzdCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uc2xpY2stbmV4dCxcbi5zbGljay1wcmV2IHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bzsgfVxuICAuc2xpY2stbmV4dDpiZWZvcmUsXG4gIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgZm9udC1zaXplOiAwLjg1NzE0cmVtOyB9XG5cbi5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDIuMjg1NzFyZW07XG4gIHJpZ2h0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNsaWNrLWRvdHMge1xuICAgICAgYm90dG9tOiA1MCU7XG4gICAgICByaWdodDogNXJlbTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuICAgICAgd2lkdGg6IGF1dG87IH0gfVxuICAuc2xpY2stZG90cyBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDAgMC44NTcxNHJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zbGljay1kb3RzIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMS4yODU3MXJlbTsgfSB9XG4gICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyOiBzb2xpZCAycHggI2ZmZjsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuc2xpY2stZG90cyBsaSBidXR0b24ge1xuICAgICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICAgIGhlaWdodDogMTJweDsgfSB9XG4gICAgICAuc2xpY2stZG90cyBsaSBidXR0b24sIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlOyB9XG4gICAgICAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0RDQzE4RTsgfVxuICAgIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjRENDMThFOyB9XG4gICAgICAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS41KTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjI1KTsgfSB9XG5cbi5zbGljay1zbGlkZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTsgfVxuICAuc2xpY2stc2xpZGU6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLnNsaWNrLXNsaWRlLnNsaWNrLWN1cnJlbnQsIC5zbGljay1zbGlkZS5zbGljay1hY3RpdmUge1xuICAgIHotaW5kZXg6IDU7IH1cblxuW3R5cGU9J3RleHQnXSxcblt0eXBlPSdwYXNzd29yZCddLFxuW3R5cGU9J2RhdGUnXSxcblt0eXBlPSdkYXRldGltZSddLFxuW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG5bdHlwZT0nbW9udGgnXSxcblt0eXBlPSd3ZWVrJ10sXG5bdHlwZT0nZW1haWwnXSxcblt0eXBlPSdudW1iZXInXSxcblt0eXBlPSdzZWFyY2gnXSxcblt0eXBlPSd0ZWwnXSxcblt0eXBlPSd0aW1lJ10sXG5bdHlwZT0ndXJsJ10sXG5bdHlwZT0nY29sb3InXSxcbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiA0OHB4O1xuICBwYWRkaW5nOiAxLjE0Mjg2cmVtIDEuNDI4NTdyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAxLjc1cHg7IH1cbiAgW3R5cGU9J3RleHQnXTo6cGxhY2Vob2xkZXIsXG4gIFt0eXBlPSdwYXNzd29yZCddOjpwbGFjZWhvbGRlcixcbiAgW3R5cGU9J2RhdGUnXTo6cGxhY2Vob2xkZXIsXG4gIFt0eXBlPSdkYXRldGltZSddOjpwbGFjZWhvbGRlcixcbiAgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106OnBsYWNlaG9sZGVyLFxuICBbdHlwZT0nbW9udGgnXTo6cGxhY2Vob2xkZXIsXG4gIFt0eXBlPSd3ZWVrJ106OnBsYWNlaG9sZGVyLFxuICBbdHlwZT0nZW1haWwnXTo6cGxhY2Vob2xkZXIsXG4gIFt0eXBlPSdudW1iZXInXTo6cGxhY2Vob2xkZXIsXG4gIFt0eXBlPSdzZWFyY2gnXTo6cGxhY2Vob2xkZXIsXG4gIFt0eXBlPSd0ZWwnXTo6cGxhY2Vob2xkZXIsXG4gIFt0eXBlPSd0aW1lJ106OnBsYWNlaG9sZGVyLFxuICBbdHlwZT0ndXJsJ106OnBsYWNlaG9sZGVyLFxuICBbdHlwZT0nY29sb3InXTo6cGxhY2Vob2xkZXIsXG4gIHRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gICAgb3BhY2l0eTogMTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgc2VsZWN0IHtcbiAgICBmb250LXNpemU6IDEuMTQyODZyZW07IH0gfVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgdGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbmlucHV0LmRhdGVwaWNrZXIge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi51aS1kYXRlcGlja2VyIHtcbiAgbWFyZ2luLXRvcDogMS43MTQyOXJlbTtcbiAgcGFkZGluZzogMC41NzE0M3JlbTtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI0RDQzE4RTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMDIwOyB9XG4gIC50ZW1wbGF0ZS1tZWV0aW5ncy1ldmVudHMgLnVpLWRhdGVwaWNrZXIge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcbiAgICBmb250LXNpemU6IDAuOTI4NTdyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjc1cHg7IH1cbiAgLnVpLWRhdGVwaWNrZXIgdGFibGUudWktZGF0ZXBpY2tlci1jYWxlbmRhciB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLnVpLWRhdGVwaWNrZXIgdGFibGUudWktZGF0ZXBpY2tlci1jYWxlbmRhciB0aGVhZCwgLnVpLWRhdGVwaWNrZXIgdGFibGUudWktZGF0ZXBpY2tlci1jYWxlbmRhciB0Ym9keSwgLnVpLWRhdGVwaWNrZXIgdGFibGUudWktZGF0ZXBpY2tlci1jYWxlbmRhciB0Zm9vdCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogMDsgfVxuICAgIC51aS1kYXRlcGlja2VyIHRhYmxlLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgdGgsIC51aS1kYXRlcGlja2VyIHRhYmxlLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgdGQge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIC51aS1kYXRlcGlja2VyIHRhYmxlLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgdGQge1xuICAgICAgcGFkZGluZzogMC4yODU3MXJlbTsgfVxuICAgIC51aS1kYXRlcGlja2VyIHRhYmxlLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgdGJvZHkgdHIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiBcImljb24tZm9udFwiO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGNvbnRlbnQ6IFwi7oCEXCI7IH1cbiAgLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldi1ob3ZlciB7XG4gICAgbGVmdDogMnB4OyB9XG4gIC51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQ6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogXCJpY29uLWZvbnRcIjtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBjb250ZW50OiBcIu6AhlwiOyB9XG4gIC51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQtaG92ZXIge1xuICAgIHJpZ2h0OiAycHg7IH1cbiAgLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldjpiZWZvcmUsIC51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQ6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gIC51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYtaG92ZXIsIC51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQtaG92ZXIge1xuICAgIHRvcDogMnB4OyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuMjg1NzFyZW07XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBsaW5lLWhlaWdodDogMi4wNzY5MjtcbiAgICBtYXJnaW46IDA7IH1cbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0gKyBsYWJlbDpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMS4yODU3MXJlbTtcbiAgICAgIGhlaWdodDogMS4yODU3MXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IC05cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuODU3MTRyZW07XG4gICAgICBib3JkZXI6IHNvbGlkIDJweCAjZmZmO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA5cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtNHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC00cHg7XG4gICAgICB3aWR0aDogMC41NzE0M3JlbTtcbiAgICAgIGhlaWdodDogMC41NzE0M3JlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDQwMG1zIGVhc2U7IH1cbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLm5mLWNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuXG4uZm9ybS1lbGVtZW50IC5oZWFkaW5nLXJvdyB7XG4gIG1hcmdpbi10b3A6IDIuMjg1NzFyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb3JtLWVsZW1lbnQgLmhlYWRpbmctcm93IHtcbiAgICAgIG1hcmdpbi10b3A6IDIuODU3MTRyZW07IH0gfVxuICAuZm9ybS1lbGVtZW50IC5oZWFkaW5nLXJvdyBoMSwgLmZvcm0tZWxlbWVudCAuaGVhZGluZy1yb3cgaDIsIC5mb3JtLWVsZW1lbnQgLmhlYWRpbmctcm93IGgzLCAuZm9ybS1lbGVtZW50IC5oZWFkaW5nLXJvdyBoNCwgLmZvcm0tZWxlbWVudCAuaGVhZGluZy1yb3cgaDUsIC5mb3JtLWVsZW1lbnQgLmhlYWRpbmctcm93IGg2IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi5mb3JtLWVsZW1lbnQgLnN1Ym1pdC1yb3cge1xuICBtYXJnaW4tdG9wOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9ybS1lbGVtZW50IC5zdWJtaXQtcm93IHtcbiAgICAgIG1hcmdpbi10b3A6IDIuNDI4NTdyZW07IH0gfVxuXG4uZm9ybS1lbGVtZW50IHAsIC5mb3JtLWVsZW1lbnQgbGFiZWwge1xuICBmb250LXNpemU6IDEuMTQyODZyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjdweDtcbiAgbGluZS1oZWlnaHQ6IDEuNzU7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIC5mb3JtLWVsZW1lbnQgcDpsYXN0LWNoaWxkLCAuZm9ybS1lbGVtZW50IGxhYmVsOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmZvcm0tZWxlbWVudCAuc3VidGl0bGUsIC5mb3JtLWVsZW1lbnQgLnNlY29uZGFyeS1uYXYgbGksIC5zZWNvbmRhcnktbmF2IC5mb3JtLWVsZW1lbnQgbGksIC5mb3JtLWVsZW1lbnQgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWwge1xuICBsaW5lLWhlaWdodDogMi4wNzY5MjsgfVxuXG4uZm9ybS1lbGVtZW50IC5zZWxlY3RyaWMge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5mb3JtLWVsZW1lbnQgaW5wdXQsIC5mb3JtLWVsZW1lbnQgdGV4dGFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5mb3JtLWVsZW1lbnQgLnJvdyAuY29sdW1uLCAuZm9ybS1lbGVtZW50IC5yb3cgLmNvbHVtbnMge1xuICBtYXJnaW4tdG9wOiAwLjg1NzE0cmVtOyB9XG4gIC5mb3JtLWVsZW1lbnQgLnJvdyAuY29sdW1uOmZpcnN0LWNoaWxkLCAuZm9ybS1lbGVtZW50IC5yb3cgLmNvbHVtbnM6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLmZvcm0tZWxlbWVudCAucm93IC5jb2x1bW46bGFzdC1jaGlsZCwgLmZvcm0tZWxlbWVudCAucm93IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDAuODU3MTRyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VjdGlvbi1jb250YWluZXIuZm9ybS1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLXRvcDogOC41NzE0M3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogOC41NzE0M3JlbTsgfVxuICAgIC5zZWN0aW9uLWNvbnRhaW5lci5mb3JtLXNlY3Rpb246bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOC41NzE0M3JlbTsgfSB9XG5cbi5zZWN0aW9uLWNvbnRhaW5lci5mb3JtLXNlY3Rpb246Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2VjdGlvbi1jb250YWluZXIuZm9ybS1zZWN0aW9uOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy10b3A6IDEycmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDlyZW07IH0gfVxuXG4ubmYtZm9ybS1jb250IC5uZi1yb3cge1xuICBtYXJnaW4tbGVmdDogLTAuNTcxNDNyZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNTcxNDNyZW07IH1cblxuLm5mLWZvcm0tY29udCAubmYtbXVsdGktY2VsbCAubmYtY2VsbCB7XG4gIHBhZGRpbmc6IDAgMC41NzE0M3JlbTsgfVxuXG4ubmYtZm9ybS1jb250IC5uZi1maWVsZC1jb250YWluZXIsIC5uZi1mb3JtLWNvbnQgI25pbmphX2Zvcm1zX3JlcXVpcmVkX2l0ZW1zLCAubmYtZm9ybS1jb250IC5uZi1mb3JtLWZpZWxkcy1yZXF1aXJlZCB7XG4gIG1hcmdpbi1ib3R0b206IDEuMTQyODZyZW07IH1cblxuLm5mLWZvcm0tY29udCAubmYtZmllbGQgaDMge1xuICBtYXJnaW4tdG9wOiAxLjcxNDI5cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjU3MTQzcmVtOyB9XG5cbi5saXN0LXJhZGlvLXdyYXAgLm5mLWZpZWxkLWxhYmVsIHtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDsgfVxuICAubGlzdC1yYWRpby13cmFwIC5uZi1maWVsZC1sYWJlbCBsYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5saXN0LXJhZGlvLXdyYXAgLm5mLWZpZWxkLWVsZW1lbnQgdWw6OmJlZm9yZSwgLmxpc3QtcmFkaW8td3JhcCAubmYtZmllbGQtZWxlbWVudCB1bDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogJyAnO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTsgfVxuXG4ubGlzdC1yYWRpby13cmFwIC5uZi1maWVsZC1lbGVtZW50IHVsOjphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5saXN0LXJhZGlvLXdyYXAgLm5mLWZpZWxkLWVsZW1lbnQgdWwgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMS43MTQyOXJlbSAhaW1wb3J0YW50OyB9XG5cbi5uZi1maWVsZC1lbGVtZW50IHNlbGVjdCB7XG4gIHBhZGRpbmc6IDFyZW0gMi4zNTcxNHJlbSAxcmVtIDEuNDI4NTdyZW07XG4gIGxldHRlci1zcGFjaW5nOiAxLjc1cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMC45Mjg1N3JlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAubmYtZmllbGQtZWxlbWVudCBzZWxlY3Qge1xuICAgICAgZm9udC1zaXplOiAxLjE0Mjg2cmVtOyB9IH1cblxuLm5mLWZpZWxkLWVsZW1lbnQgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG4gIGhlaWdodDogNDhweDtcbiAgcGFkZGluZzogMTJweCAyMHB4OyB9XG5cbnNlbGVjdCBvcHRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzFBMTgxODsgfVxuXG4ubWFwLWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLmluZm9Cb3gge1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50OyB9XG5cbi5pYi1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICBmb250LWZhbWlseTogXCJBdmVuaXIgTmV4dCBXMDFcIiwgXCJBdmVuaXIgTmV4dFwiLCBBdmVuaXIsIEZ1dHVyYSwgXCJDZW50dXJ5IEdvdGhpY1wiLCBzYW5zLXNlcmlmO1xuICBib3gtc2hhZG93OiAwIDhweCAxNnB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuICAuaWItY29udGVudCAuaWItaW1hZ2Uge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDJweDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMnB4OyB9XG4gICAgLmliLWNvbnRlbnQgLmliLWltYWdlIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5pYi1jb250ZW50IC5pYi1pbWFnZSBmaWdjYXB0aW9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBjb2xvcjogIzFBMTgxODtcbiAgICAgIHBhZGRpbmc6IDJyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mjg1N3JlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxLjc1cHg7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMnB4OyB9XG4gICAgICAuaWItY29udGVudCAuaWItaW1hZ2UgZmlnY2FwdGlvbjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtOHB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiA4cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci10b3A6IDE0cHggc29saWQgI2ZmZjsgfVxuICAuaWItY29udGVudCAuaWItYm94IHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHg7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAjMUExODE4O1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4OyB9XG4gICAgLmliLWNvbnRlbnQgLmliLWJveCBoNSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgLmliLWNvbnRlbnQgLmliLWJveCBzdmcge1xuICAgICAgd2lkdGg6IDkuNTcxNDNyZW07XG4gICAgICBoZWlnaHQ6IDJyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjE0Mjg2cmVtOyB9XG4gICAgLmliLWNvbnRlbnQgLmliLWJveCBwOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuaWItY29udGVudCAuaWItY3RhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRENDMThFO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAwLjkyODU3cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjc1cHg7XG4gICAgcGFkZGluZzogMS4xNDI4NnJlbTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDJweDsgfVxuICAgIC5pYi1jb250ZW50IC5pYi1jdGE6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC04cHg7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yaWdodDogOHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXRvcDogMTRweCBzb2xpZCAjRENDMThFOyB9XG5cbi5tb2RhYWwtd3JhcHBlciAubW9kYWFsLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwOyB9XG4gIC5tb2RhYWwtd3JhcHBlciAubW9kYWFsLWNsb3NlOmJlZm9yZSwgLm1vZGFhbC13cmFwcGVyIC5tb2RhYWwtY2xvc2U6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm1vZGFhbC13cmFwcGVyIC5tb2RhYWwtY2xvc2U6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5tb2RhYWwtd3JhcHBlciAubW9kYWFsLWNsb3NlIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogIzFBMTgxODtcbiAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIGNsaXA6IGF1dG87XG4gICAgZm9udC1zaXplOiAwO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuICAgIC5tb2RhYWwtd3JhcHBlciAubW9kYWFsLWNsb3NlIHNwYW46YmVmb3JlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImljb24tZm9udFwiO1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBjb250ZW50OiBcIu6AiFwiOyB9XG4gICAgLm1vZGFhbC13cmFwcGVyIC5tb2RhYWwtY2xvc2Ugc3BhbjpiZWZvcmUge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG5cbi5tb2RhYWwtY29udGFpbmVyIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi8qIHRoZW1lOiBcInByb3ZlbmFuY2VcIiAqL1xuLm1DUy1wcm92ZW5hbmNlIC5tQ1NCX2NvbnRhaW5lciB7XG4gIG1hcmdpbi1yaWdodDogMTJweDsgfVxuXG4ubUNTLXByb3ZlbmFuY2UubUNTQl9zY3JvbGxUb29scyB7XG4gIHdpZHRoOiAxMnB4OyB9XG5cbi5tQ1MtcHJvdmVuYW5jZS5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxQTE4MTg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5tQ1MtcHJvdmVuYW5jZS5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFBMTgxODtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLm1DUy1wcm92ZW5hbmNlLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtcHJvdmVuYW5jZS5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDhweDtcbiAgbWFyZ2luOiA2cHggYXV0bzsgfVxuXG4vKiB0aGVtZTogXCJwcm92ZW5hbmNlXCIgKi9cbi5tQ1MtcHJvdmVuYW5jZS5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4ubUNTLXByb3ZlbmFuY2UubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0RDQzE4RTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLm1DUy1wcm92ZW5hbmNlLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQ0MxOEU7IH1cblxuLm1DUy1wcm92ZW5hbmNlLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLXByb3ZlbmFuY2UubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRENDMThFOyB9XG5cbi5tQ1MtcHJvdmVuYW5jZS5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuXG4ubUNTLXByb3ZlbmFuY2UubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuXG4ubUNTLXByb3ZlbmFuY2UubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuXG4ubUNTLXByb3ZlbmFuY2UubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNlbGVjdHJpYy1lbGVtZW50IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5zZWxlY3RyaWMge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI0RDQzE4RTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBtYXJnaW4tYm90dG9tOiAxLjE0Mjg2cmVtOyB9XG4gIC5zZWxlY3RyaWMtaG92ZXIgLnNlbGVjdHJpYyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjRENDMThFOyB9XG4gIC5zZWxlY3RyaWMtd2hpdGUgLnNlbGVjdHJpYyB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmOyB9XG4gIC5zZWxlY3RyaWMgLmxhYmVsIHtcbiAgICBmb250LXNpemU6IDAuODU3MTRyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjc1cHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgaGVpZ2h0OiAzLjQyODU3cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzLjQyODU3cmVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNDI4NTdyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiA0LjU3MTQzcmVtO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5zZWxlY3RyaWMgLmJ1dHRvbiB7XG4gICAgaGVpZ2h0OiAxLjcxNDI5cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItbGVmdDogc29saWQgMXB4ICNEQ0MxOEU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgd2lkdGg6IDMuMTQyODZyZW07XG4gICAgaGVpZ2h0OiAxLjcxNDI5cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5zZWxlY3RyaWMgLmJ1dHRvbjphZnRlciB7XG4gICAgICBmb250LWZhbWlseTogXCJpY29uLWZvbnRcIjtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgY29udGVudDogXCLugIJcIjsgfVxuICAgIC5zZWxlY3RyaWMgLmJ1dHRvbjphZnRlciB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjcxNDI5cmVtO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1zaXplOiAwLjcxNDI5cmVtOyB9XG4gIC5zZWxlY3RyaWMtZ2FsbGVyeS1zZWxlY3QgLnNlbGVjdHJpYyB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLnNlbGVjdHJpYy1nYWxsZXJ5LXNlbGVjdCAuc2VsZWN0cmljIC5sYWJlbCB7XG4gICAgICBjb2xvcjogIzFBMTgxODtcbiAgICAgIGhlaWdodDogNC41NzE0M3JlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0LjU3MTQzcmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuNzE0MjlyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDQuNTcxNDNyZW07IH1cbiAgICAuc2VsZWN0cmljLWdhbGxlcnktc2VsZWN0IC5zZWxlY3RyaWMgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogNC4xNDI4NnJlbTtcbiAgICAgIGhlaWdodDogNC41NzE0M3JlbTtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjRTZFNkU2OyB9XG4gICAgICAuc2VsZWN0cmljLWdhbGxlcnktc2VsZWN0IC5zZWxlY3RyaWMgLmJ1dHRvbjphZnRlciB7XG4gICAgICAgIGNvbG9yOiAjRENDMThFO1xuICAgICAgICBsaW5lLWhlaWdodDogNC41NzE0M3JlbTsgfVxuXG4uc2VsZWN0cmljLWl0ZW1zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjAyMDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI0RDQzE4RTsgfVxuICAuc2VsZWN0cmljLWl0ZW1zIGxpIHtcbiAgICBmb250LXNpemU6IDAuODU3MTRyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMS43NXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZzogMC41NzE0M3JlbSAxLjQyODU3cmVtO1xuICAgIGNvbG9yOiAjRENDMThFOyB9XG4gICAgLnNlbGVjdHJpYy1pdGVtcyBsaS5kaXNhYmxlZCB7XG4gICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9XG4gICAgLnNlbGVjdHJpYy1pdGVtcyBsaTpob3ZlciB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNEQ0MxOEU7IH1cblxuLnNvY2lhbCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5zb2NpYWwgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIG1haW4gLnNvY2lhbCBsaSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgICAuc29jaWFsIGxpIGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxLjI4NTcxcmVtOyB9XG4gICAgICAuc29jaWFsIGxpIGE6YmVmb3JlIHtcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgIC5zb2NpYWwgbGkgYSBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4uc3Vic2NyaWJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwIDEuNzE0MjlyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zdWJzY3JpYmUge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG4gIC5zdWJzY3JpYmUgLmlucHV0LWdyb3VwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5zdWJzY3JpYmUgaW5wdXRbdHlwZT1cImVtYWlsXCJdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBmb250LXNpemU6IDAuOTI4NTdyZW07XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyOiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDIuMjVweDtcbiAgICBwYWRkaW5nOiAyLjcxNDI5cmVtIDJyZW0gMi43MTQyOXJlbSAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuc3Vic2NyaWJlIGlucHV0W3R5cGU9XCJlbWFpbFwiXSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMnJlbSAwIDA7IH0gfVxuICAgIC5zdWJzY3JpYmUgaW5wdXRbdHlwZT1cImVtYWlsXCJdOjpwbGFjZWhvbGRlciB7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgY29sb3I6ICNEQ0MxOEU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5zdWJzY3JpYmUgaW5wdXRbdHlwZT1cImVtYWlsXCJdIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnN1YnNjcmliZSBpbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuICAgICAgICBmb250LWZhbWlseTogXCJBY3RhIEhlYWRsaW5lIFcwMFwiLCBcIkFjdGEgSGVhZGxpbmVcIiwgc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yODU3MXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDIuMjVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuMjIyMjI7IH1cbiAgICAgICAgLnN1YnNjcmliZSBpbnB1dFt0eXBlPVwiZW1haWxcIl06OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBjb2xvcjogIzRFNEQ1MDsgfSB9XG4gICAgLnN1YnNjcmliZSBpbnB1dFt0eXBlPVwiZW1haWxcIl06dmFsaWQge1xuICAgICAgY29sb3I6ICNEQ0MxOEU7IH1cbiAgICAgIC5zdWJzY3JpYmUgaW5wdXRbdHlwZT1cImVtYWlsXCJdOnZhbGlkICsgLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIGNvbG9yOiAjRENDMThFOyB9XG4gICAgICAgIC5zdWJzY3JpYmUgaW5wdXRbdHlwZT1cImVtYWlsXCJdOnZhbGlkICsgLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSBzdmcge1xuICAgICAgICAgIGZpbGw6ICNEQ0MxOEU7IH1cbiAgLnN1YnNjcmliZSBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgY29sb3I6ICM0RTRENTA7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZzogMi43MTQyOXJlbSAwO1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zdWJzY3JpYmUgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICAuc3Vic2NyaWJlIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiAwLjkyODU3cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDIuMjVweDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuMTQyODZyZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIC5zdWJzY3JpYmUgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0gc3ZnIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAyLjI4NTcxcmVtO1xuICAgICAgaGVpZ2h0OiAxLjcxNDI5cmVtO1xuICAgICAgZmlsbDogIzRFNEQ1MDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5zdWJzY3JpYmUgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0gc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zdWJzY3JpYmUgYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0gc3ZnIHtcbiAgICAgICAgd2lkdGg6IDMuMjg1NzFyZW07XG4gICAgICAgIGhlaWdodDogMi4yODU3MXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAud3Vmb28tc3Vic2NyaWJlLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMS43MTQyOXJlbSAxLjE0Mjg2cmVtIDAuMjg1NzFyZW07IH0gfVxuXG4udGFibGUtZWxlbWVudCB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IH1cbiAgLnRhYmxlLWVsZW1lbnQgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGgge1xuICAgIGZvbnQtc2l6ZTogMC44NTcxNHJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuMjVweDtcbiAgICBsaW5lLWhlaWdodDogMS4zMzMzMztcbiAgICBwYWRkaW5nOiAwIDAuODU3MTRyZW0gMC40Mjg1N3JlbTsgfVxuICAgIC50YWJsZS1lbGVtZW50IHRoZWFkIHRyOmZpcnN0LWNoaWxkIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50YWJsZS1lbGVtZW50IHRoZWFkIHRyOmZpcnN0LWNoaWxkIHRoIHtcbiAgICAgICAgcGFkZGluZzogMCAwLjg1NzE0cmVtIDIuMjg1NzFyZW07IH1cbiAgICAgICAgLnRhYmxlLWVsZW1lbnQgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMS43MTQyOXJlbTsgfVxuICAgICAgICAudGFibGUtZWxlbWVudCB0aGVhZCB0cjpmaXJzdC1jaGlsZCB0aDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgLnRhYmxlLWVsZW1lbnQgdGJvZHkgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRhYmxlLWVsZW1lbnQgdGJvZHkgdHIgdGQge1xuICAgICAgcGFkZGluZzogMC44NTcxNHJlbTsgfVxuICAgICAgLnRhYmxlLWVsZW1lbnQgdGJvZHkgdHIgdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNzE0MjlyZW07IH1cbiAgICAgIC50YWJsZS1lbGVtZW50IHRib2R5IHRyIHRkOmxhc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50YWJsZS1lbGVtZW50IHRib2R5IHRyOmhvdmVyIHtcbiAgICAgIGJvcmRlcjogc29saWQgMXB4ICNEQ0MxOEU7IH1cbiAgICAgIC50YWJsZS1lbGVtZW50IHRib2R5IHRyOmhvdmVyIHRkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICNEQ0MxOEU7IH0gfVxuICAudGFibGUtZWxlbWVudCB0aCwgLnRhYmxlLWVsZW1lbnQgdGQge1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgLnRhYmxlLWVsZW1lbnQgdGQge1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnRhYmxlLWVsZW1lbnQgdGQge1xuICAgICAgICBwYWRkaW5nOiAwLjQyODU3cmVtIDAuNzE0MjlyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50YWJsZS1lbGVtZW50IHRkIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI4NTcxcmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7IH0gfVxuXG4udGFibGVzYXctYWR2YW5jZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogTGF5b3V0IFN0eWxlc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogaW5qZWN0Om1vZHVsZXMgKi9cbi5jYXJkLXNsaWRlciAuc2xpY2stc2xpZGUge1xuICBwYWRkaW5nOiAwIDZweDsgfVxuXG4uY2FyZC10aWxlIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5jYXJkLXRpbGUgLmNhcmQtaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5jYXJkLXRpbGUgLmNhcmQtaW1hZ2UgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHBhZGRpbmctdG9wOiA5Mi45NjYzNiU7IH1cbiAgICAuY2FyZC10aWxlIC5jYXJkLWltYWdlIGltZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfVxuICAuY2FyZC10aWxlIC5jYXJkLWNvbnRlbnQgaDUge1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgLmNhcmQtdGlsZSAubW9iaWxlLWNhcmQtbGluayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogNTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLmNhcmQtdGlsZSAubW9iaWxlLWNhcmQtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmNhcmQtdGlsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgICAuY2FyZC10aWxlIC5jYXJkLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgY29sb3I6ICM5ZDgwNDc7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xNDI4NnJlbTtcbiAgICAgICAgcGFkZGluZzogMi4yODU3MXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VCRTlFODtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAgICAgICAuY2FyZC10aWxlIC5jYXJkLWNvbnRlbnQgaDUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIC5jYXJkLXRpbGUgLmNhcmQtY29udGVudCBwIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgICAgLnNwZWNpYWwtb2ZmZXJzLWNhcm91c2VsIC5jYXJkLXRpbGUgLmNhcmQtY29udGVudCBwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaG9tZSAuc2VjdGlvbi1jb250YWluZXIuY2VudGVyLXRleHQtc2VjdGlvbiBoMSB7XG4gICAgZm9udC1mYW1pbHk6IFwiQWN0YSBIZWFkbGluZSBXMDBcIiwgXCJBY3RhIEhlYWRsaW5lXCIsIHNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMy43MTQyOXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yMzA3NztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiA0cHg7IH0gfVxuXG4uaWUxMS0xNSAuaW1hZ2UtZ3JpZCAuYWxpZ24tc3RyZXRjaCAuZ3JpZC10aWxlIC5pbWFnZS1jb250YWluZXIgLmltYWdlLWNvdmVyLm9iamVjdC1maXQsXG4uaWUxMS0xNSAuaW1hZ2UtZ3JpZC5pbWFnZS1ncmlkLWh5YnJpZCAuYWxpZ24tc3RyZXRjaCAuaW1hZ2UtY29udGFpbmVyIC5pbWFnZS1jb3Zlci5vYmplY3QtZml0IHtcbiAgcGFkZGluZy10b3A6IDMwJTtcbiAgcGFkZGluZy1ib3R0b206IDMwJTtcbiAgYmFja2dyb3VuZC1vcmlnaW46IGJvcmRlci1ib3ggIWltcG9ydGFudDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmltYWdlLWdyaWQge1xuICAgIG1hcmdpbi1sZWZ0OiAtMC44NTcxNHJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjg1NzE0cmVtOyB9IH1cblxuLmltYWdlLWdyaWQgLmZsZXgtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5pbWFnZS1ncmlkIC5pbWFnZS1ncmlkLWh5YnJpZCAuaW1hZ2UtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxLjQyODU3cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5pbWFnZS1ncmlkIC5pbWFnZS1ncmlkLWh5YnJpZCAuaW1hZ2UtY29udGFpbmVyIGZpZ2NhcHRpb24ge1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjQyODU3cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaW1hZ2UtZ3JpZCAuaW1hZ2UtZ3JpZC1oeWJyaWQgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjI4NTcxcmVtOyB9IH1cblxuLmltYWdlLWdyaWQgLmdyaWQtdGlsZSwgLmltYWdlLWdyaWQuaW1hZ2UtZ3JpZC1oeWJyaWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAuODU3MTRyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LWJhc2lzOiBhdXRvOyB9XG4gIC5pbWFnZS1ncmlkIC5ncmlkLXRpbGU6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCwgLmltYWdlLWdyaWQuaW1hZ2UtZ3JpZC1oeWJyaWQ6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaWUxMSAuaW1hZ2UtZ3JpZCAuZ3JpZC10aWxlOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQsIC5pZTExIC5pbWFnZS1ncmlkLmltYWdlLWdyaWQtaHlicmlkOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICAuaW1hZ2UtZ3JpZCAuZ3JpZC10aWxlIC5pbWFnZS1jb250YWluZXIsIC5pbWFnZS1ncmlkLmltYWdlLWdyaWQtaHlicmlkIC5pbWFnZS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmllMTEgLmltYWdlLWdyaWQgLmdyaWQtdGlsZSAuaW1hZ2UtY29udGFpbmVyLCAuaWUxMSAuaW1hZ2UtZ3JpZC5pbWFnZS1ncmlkLWh5YnJpZCAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgLmltYWdlLWdyaWQgLmdyaWQtdGlsZSBmaWdjYXB0aW9uLCAuaW1hZ2UtZ3JpZC5pbWFnZS1ncmlkLWh5YnJpZCBmaWdjYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAyLjI4NTcxcmVtIDAgMDsgfVxuICAgIC5pbWFnZS1ncmlkIC5ncmlkLXRpbGUgZmlnY2FwdGlvbiBoMywgLmltYWdlLWdyaWQuaW1hZ2UtZ3JpZC1oeWJyaWQgZmlnY2FwdGlvbiBoMyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjE0Mjg2cmVtOyB9XG4gICAgLmltYWdlLWdyaWQgLmdyaWQtdGlsZSBmaWdjYXB0aW9uIHAsIC5pbWFnZS1ncmlkLmltYWdlLWdyaWQtaHlicmlkIGZpZ2NhcHRpb24gcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjU3MTQzcmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmltYWdlLWdyaWQgLmdyaWQtdGlsZSBmaWdjYXB0aW9uLCAuaW1hZ2UtZ3JpZC5pbWFnZS1ncmlkLWh5YnJpZCBmaWdjYXB0aW9uIHtcbiAgICAgICAgcGFkZGluZzogMy43MTQyOXJlbSAwIDIuMjg1NzFyZW07IH0gfVxuICAuaW1hZ2UtZ3JpZCAuZ3JpZC10aWxlIC5ob3Zlci1jYXB0aW9uLCAuaW1hZ2UtZ3JpZC5pbWFnZS1ncmlkLWh5YnJpZCAuaG92ZXItY2FwdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDIuMjg1NzFyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KC0xODBkZWcsIHJnYmEoMzQsIDMyLCAzMiwgMCkgMjMlLCByZ2JhKDM0LCAzMiwgMzIsIDAuNzIpIDEwMCUpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLmltYWdlLWdyaWQgLmdyaWQtdGlsZTpob3ZlciAuaG92ZXItY2FwdGlvbiwgLmltYWdlLWdyaWQuaW1hZ2UtZ3JpZC1oeWJyaWQ6aG92ZXIgLmhvdmVyLWNhcHRpb24ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAuaW1hZ2UtZ3JpZCAuZ3JpZC10aWxlLnctY29udGVudCAuaW1hZ2UtY29udGFpbmVyLCAuaW1hZ2UtZ3JpZC5pbWFnZS1ncmlkLWh5YnJpZC53LWNvbnRlbnQgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS40Mjg1N3JlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5pbWFnZS1ncmlkIC5ncmlkLXRpbGUudy1jb250ZW50IC5pbWFnZS1jb250YWluZXIsIC5pbWFnZS1ncmlkLmltYWdlLWdyaWQtaHlicmlkLnctY29udGVudCAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi4yODU3MXJlbTsgfVxuICAgICAgICAuaW1hZ2UtZ3JpZCAuZ3JpZC10aWxlLnctY29udGVudCAuaW1hZ2UtY29udGFpbmVyIGZpZ2NhcHRpb24sIC5pbWFnZS1ncmlkLmltYWdlLWdyaWQtaHlicmlkLnctY29udGVudCAuaW1hZ2UtY29udGFpbmVyIGZpZ2NhcHRpb24ge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgICAgICAgLmltYWdlLWdyaWQgLmdyaWQtdGlsZS53LWNvbnRlbnQgLmltYWdlLWNvbnRhaW5lciBmaWdjYXB0aW9uLmhvdmVyLWNhcHRpb24sIC5pbWFnZS1ncmlkLmltYWdlLWdyaWQtaHlicmlkLnctY29udGVudCAuaW1hZ2UtY29udGFpbmVyIGZpZ2NhcHRpb24uaG92ZXItY2FwdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtOyB9IH1cbiAgLmltYWdlLWdyaWQgLmdyaWQtdGlsZS53LWltYWdlLWxpbmsgLmhvdmVyLWNhcHRpb24sIC5pbWFnZS1ncmlkLmltYWdlLWdyaWQtaHlicmlkLnctaW1hZ2UtbGluayAuaG92ZXItY2FwdGlvbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHBhZGRpbmc6IDEuNDI4NTdyZW0gMS41cmVtOyB9XG5cbi5oaXN0b3J5LWNvbnRlbnQtd3JhcHBlciAuaGlzdG9yeS1pbWFnZS1yb3cge1xuICBtYXJnaW4tdG9wOiAycmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaGlzdG9yeS1jb250ZW50LXdyYXBwZXIgLmhpc3RvcnktaW1hZ2Utcm93IHtcbiAgICAgIG1hcmdpbi10b3A6IDVyZW07IH0gfVxuXG4uaGlzdG9yeS1jb250ZW50LXdyYXBwZXIgLmNhcHRpb24ge1xuICBtYXJnaW46IDFyZW0gYXV0byAycmVtO1xuICBtYXgtd2lkdGg6IDYzLjQyODU3cmVtO1xuICBjb2xvcjogI0RDQzE4RTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhpc3RvcnktY29udGVudC13cmFwcGVyIC5jYXB0aW9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVyZW07IH0gfVxuXG4uaGlzdG9yeS1jb250ZW50LXdyYXBwZXIgLmJvcmRlci1idG4ge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaGlzdG9yeS1jb250ZW50LXdyYXBwZXIgLmJvcmRlci1idG4ge1xuICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07IH0gfVxuXG4uc2VjdGlvbi1jb250YWluZXIuaW50cm8tc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMTAwdmg7IH1cbiAgLnNlY3Rpb24tY29udGFpbmVyLmludHJvLXNlY3Rpb24gLm1vYmlsZS1sb2dvIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgZmlsbDogI2ZmZjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgIC5zZWN0aW9uLWNvbnRhaW5lci5pbnRyby1zZWN0aW9uIC5tb2JpbGUtbG9nbyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAuc2VjdGlvbi1jb250YWluZXIuaW50cm8tc2VjdGlvbiAubW9iaWxlLWxvZ28gc3ZnOmZpcnN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiA3M3B4O1xuICAgICAgaGVpZ2h0OiA5NnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjhweDsgfVxuICAgIC5zZWN0aW9uLWNvbnRhaW5lci5pbnRyby1zZWN0aW9uIC5tb2JpbGUtbG9nbyBzdmc6bGFzdC1jaGlsZCB7XG4gICAgICB3aWR0aDogMjA0cHg7XG4gICAgICBoZWlnaHQ6IDQzcHg7IH1cblxuLmxhbmRpbmctY2Fyb3VzZWwgLnNsaWRlLWhvbGRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMCAxLjc4NTcxcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfVxuICAuaG9tZSAubGFuZGluZy1jYXJvdXNlbCAuc2xpZGUtaG9sZGVyIHtcbiAgICBoZWlnaHQ6IDEwMHZoOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5sYW5kaW5nLWNhcm91c2VsIC5zbGlkZS1ob2xkZXIgLnNsaWRlLWNhcHRpb24td3JhcHBlciAuc2xpZGUtY2FwdGlvbiB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGFuZGluZy1jYXJvdXNlbCAuc2xpZGUtaG9sZGVyIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxhbmRpbmctY2Fyb3VzZWwgLnNsaWRlLWhvbGRlciB7XG4gICAgICBwYWRkaW5nOiAwIDQuNTcxNDNyZW07XG4gICAgICBoZWlnaHQ6IDEwMHZoOyB9IH1cbiAgLmxhbmRpbmctY2Fyb3VzZWwgLnNsaWRlLWhvbGRlciAuc2xpZGUtY2FwdGlvbi13cmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGFuZGluZy1jYXJvdXNlbCAuc2xpZGUtaG9sZGVyIC5zbGlkZS1jYXB0aW9uLXdyYXBwZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDc1JTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkuNDI4NTdlbSkge1xuICAgICAgLmxhbmRpbmctY2Fyb3VzZWwgLnNsaWRlLWhvbGRlciAuc2xpZGUtY2FwdGlvbi13cmFwcGVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMGVtKSB7XG4gICAgICAubGFuZGluZy1jYXJvdXNlbCAuc2xpZGUtaG9sZGVyIC5zbGlkZS1jYXB0aW9uLXdyYXBwZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDU1JTsgfSB9XG4gICAgLmxhbmRpbmctY2Fyb3VzZWwgLnNsaWRlLWhvbGRlciAuc2xpZGUtY2FwdGlvbi13cmFwcGVyIC5zbGlkZS1jYXB0aW9uIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsZXg6IG5vbmU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgei1pbmRleDogNTsgfVxuICAgICAgLmxhbmRpbmctY2Fyb3VzZWwgLnNsaWRlLWhvbGRlciAuc2xpZGUtY2FwdGlvbi13cmFwcGVyIC5zbGlkZS1jYXB0aW9uIGgzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogN3JlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjc1cmVtO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxLjI1cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5sYW5kaW5nLWNhcm91c2VsIC5zbGlkZS1ob2xkZXIgLnNsaWRlLWNhcHRpb24td3JhcHBlciAuc2xpZGUtY2FwdGlvbiBoMyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfSB9XG4gICAgICAubGFuZGluZy1jYXJvdXNlbCAuc2xpZGUtaG9sZGVyIC5zbGlkZS1jYXB0aW9uLXdyYXBwZXIgLnNsaWRlLWNhcHRpb24gc3BhbiB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LWZhbWlseTogXCJBY3RhIEhlYWRsaW5lIFcwMFwiLCBcIkFjdGEgSGVhZGxpbmVcIiwgc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yODU3MXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgICAgICAubGFuZGluZy1jYXJvdXNlbCAuc2xpZGUtaG9sZGVyIC5zbGlkZS1jYXB0aW9uLXdyYXBwZXIgLnNsaWRlLWNhcHRpb24gc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuNDVyZW07IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLmxhbmRpbmctY2Fyb3VzZWwgLnNsaWRlLWhvbGRlciAuc2xpZGUtY2FwdGlvbi13cmFwcGVyIC5zbGlkZS1jYXB0aW9uIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiA0LjExNDI5cmVtO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE2MzE5OyB9IH1cbiAgICAgIC5sYW5kaW5nLWNhcm91c2VsIC5zbGlkZS1ob2xkZXIgLnNsaWRlLWNhcHRpb24td3JhcHBlciAuc2xpZGUtY2FwdGlvbiBwIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3MzBweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjE0Mjg2cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS43NXJlbTsgfVxuICAgICAgICAubGFuZGluZy1jYXJvdXNlbCAuc2xpZGUtaG9sZGVyIC5zbGlkZS1jYXB0aW9uLXdyYXBwZXIgLnNsaWRlLWNhcHRpb24gcDo6YmVmb3JlIHtcbiAgICAgICAgICBtYXJnaW46IDEuMjVyZW0gMCAxLjVyZW07XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgICAgd2lkdGg6IDIuMjVyZW07XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0RDQzE4RTtcbiAgICAgICAgICBjb250ZW50OiBcIlwiOyB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgICAgLmxhbmRpbmctY2Fyb3VzZWwgLnNsaWRlLWhvbGRlciAuc2xpZGUtY2FwdGlvbi13cmFwcGVyIC5zbGlkZS1jYXB0aW9uIHA6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMS41cmVtIDAgMS43NXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgICAubGFuZGluZy1jYXJvdXNlbCAuc2xpZGUtaG9sZGVyIC5zbGlkZS1jYXB0aW9uLXdyYXBwZXIgLnNsaWRlLWNhcHRpb24gcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMjg1NzFyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMnJlbTsgfSB9XG4gICAgICAubGFuZGluZy1jYXJvdXNlbCAuc2xpZGUtaG9sZGVyIC5zbGlkZS1jYXB0aW9uLXdyYXBwZXIgLnNsaWRlLWNhcHRpb24gYSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5sYW5kaW5nLWNhcm91c2VsIC5zbGlkZS1ob2xkZXIgLnNsaWRlLWNhcHRpb24td3JhcHBlciAuc2xpZGUtY2FwdGlvbiBhIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07IH0gfVxuICAubGFuZGluZy1jYXJvdXNlbCAuc2xpZGUtaG9sZGVyOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDM0LCAzMiwgMzIsIDAuMzIpO1xuICAgIHotaW5kZXg6IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5tb3JwaGluZy1ib3gge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tb3JwaGluZy1ib3gge1xuICAgIGxlZnQ6IDMuNDI4NTdyZW07XG4gICAgbWF4LXdpZHRoOiA1NDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9IH1cblxuLm1vcnBoaW5nLWJveCBoMSwgLm1vcnBoaW5nLWJveCBoMiwgLm1vcnBoaW5nLWJveCBoMywgLm1vcnBoaW5nLWJveCBoNCwgLm1vcnBoaW5nLWJveCBoNSwgLm1vcnBoaW5nLWJveCBoNiB7XG4gIG1hcmdpbi1ib3R0b206IDEuNzE0MjlyZW07IH1cblxuLm1vcnBoaW5nLWJveCBoMSB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjg1NzFyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjg1NzE0cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubW9ycGhpbmctYm94IGgxIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNzE0MjlyZW07IH0gfVxuXG4ubW9ycGhpbmctYm94IHAge1xuICBtYXJnaW4tYm90dG9tOiAxLjcxNDI5cmVtO1xuICBsaW5lLWhlaWdodDogMS44NTcxNHJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAubW9ycGhpbmctYm94IHA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubW9ycGhpbmctYm94IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiA1MHZoO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuICAgIHdpZHRoOiA0MS42NjY2NyU7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgICBjb2xvcjogIzIyMjAyMDsgfVxuICAgIC5tb3JwaGluZy1ib3ggaDEgc21hbGwsIC5tb3JwaGluZy1ib3ggaDIgc21hbGwsIC5tb3JwaGluZy1ib3ggaDMgc21hbGwsIC5tb3JwaGluZy1ib3ggaDQgc21hbGwsIC5tb3JwaGluZy1ib3ggaDUgc21hbGwsIC5tb3JwaGluZy1ib3ggaDYgc21hbGwge1xuICAgICAgY29sb3I6ICMyMjIwMjA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC1oZWlnaHQ6IDgwMHB4KSB7XG4gIC5tb3JwaGluZy1ib3gge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2NDBweDsgfSB9XG5cbi5tb3JwaC1jb250ZW50LXdyYXBwZXIge1xuICBwYWRkaW5nOiAyLjg1NzE0cmVtIDAgMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1vcnBoLWNvbnRlbnQtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nOiA0LjU3MTQzcmVtIDMuNDI4NTdyZW0gMy40Mjg1N3JlbTsgfSB9XG5cbi5tb3JwaC10b2dnbGUsIC5tb2RhYWwtd3JhcHBlciAubW9kYWFsLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXI6IHNvbGlkIDFweCByZ2JhKDM0LCAzMiwgMzIsIDAuMTYpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDEuMTQyODZyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHotaW5kZXg6IDU7IH1cbiAgLm1vcnBoLXRvZ2dsZSBzdmcsIC5tb2RhYWwtd3JhcHBlciAubW9kYWFsLWNsb3NlIHN2ZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDQwMG1zIGVhc2U7IH1cbiAgLmNvbGxhcHNlZCAubW9ycGgtdG9nZ2xlIHN2ZywgLmNvbGxhcHNlZCAubW9kYWFsLXdyYXBwZXIgLm1vZGFhbC1jbG9zZSBzdmcsIC5tb2RhYWwtd3JhcHBlciAuY29sbGFwc2VkIC5tb2RhYWwtY2xvc2Ugc3ZnIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7IH1cbiAgLm1vcnBoLXRvZ2dsZSBzdmcsIC5tb2RhYWwtd3JhcHBlciAubW9kYWFsLWNsb3NlIHN2ZyB7XG4gICAgd2lkdGg6IDEuMTQyODZyZW07XG4gICAgaGVpZ2h0OiAxLjE0Mjg2cmVtO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLm1vcnBoLXRvZ2dsZSwgLm1vZGFhbC13cmFwcGVyIC5tb2RhYWwtY2xvc2Uge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1vcnBoLWNvbnRlbnQge1xuICAgIGhlaWdodDogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLm1vcnBoLWNvbnRlbnQgYTpub3QoLnJnLWJ0bik6bm90KC5ib3JkZXItYnRuKSB7XG4gICAgICBjb2xvcjogIzlkODA0NzsgfVxuICAgICAgLm1vcnBoLWNvbnRlbnQgYTpub3QoLnJnLWJ0bik6bm90KC5ib3JkZXItYnRuKTpob3ZlciwgLm1vcnBoLWNvbnRlbnQgYTpub3QoLnJnLWJ0bik6bm90KC5ib3JkZXItYnRuKTphY3RpdmUge1xuICAgICAgICBjb2xvcjogIzRFNEQ1MDsgfVxuICAgIC5tb3JwaC1jb250ZW50LmlzLWFjdGl2ZSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgb3BhY2l0eTogMTsgfSB9XG5cbi5tb3JwaC1jb250ZW50LXJldmVhbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiA0LjU3MTQzcmVtIDMuNDI4NTdyZW0gMy40Mjg1N3JlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHQtYmx1ZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGVhc2UtaW4tb3V0OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1vcnBoLWNvbnRlbnQtc2Nyb2xsZXIge1xuICAgIG1heC1oZWlnaHQ6IDE4cmVtOyB9IH1cblxuLm1vcnBoLWNvbnRlbnQtc2Nyb2xsZXIge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cblxuLm1vcnBoLWNvbnRlbnQtc2Nyb2xsZXIgLm1DUy1wcm92ZW5hbmNlLXI4LWRhcmsubUNTQl9zY3JvbGxUb29scyB7XG4gIHdpZHRoOiA0cHg7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubW9ycGgtY29udGVudCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IH0gfVxuXG4ubUNTLXByb3ZlbmFuY2UtcjgtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuXG4ubUNTLXByb3ZlbmFuY2UtcjgtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubW9kdWxlLW9mZmVycy1jYXJvdXNlbCAuc2xpY2stc2xpZGUge1xuICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICBwZXJzcGVjdGl2ZTogOTAwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIDQwMG1zIGVhc2U7IH1cbiAgICAubW9kdWxlLW9mZmVycy1jYXJvdXNlbCAuc2xpY2stc2xpZGUgLmNhcmQtdGlsZSB7XG4gICAgICBvcGFjaXR5OiAwLjA1O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwdncpIHJvdGF0ZVkoMjVkZWcpO1xuICAgICAgdHJhbnNpdGlvbjogaW5oZXJpdDsgfVxuICAgIC5tb2R1bGUtb2ZmZXJzLWNhcm91c2VsIC5zbGljay1zbGlkZS5zbGljay1jdXJyZW50IC5jYXJkLXRpbGUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgwKTsgfVxuICAgIC5tb2R1bGUtb2ZmZXJzLWNhcm91c2VsIC5zbGljay1zbGlkZS5zbGljay1jdXJyZW50IH4gLnNsaWNrLXNsaWRlIC5jYXJkLXRpbGUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHZ3KSByb3RhdGVZKC0yNWRlZyk7IH0gfVxuXG4ubW9kdWxlLW9mZmVycy1jYXJvdXNlbCAuc2xpY2stcHJldixcbi5tb2R1bGUtb2ZmZXJzLWNhcm91c2VsIC5zbGljay1uZXh0IHtcbiAgei1pbmRleDogNTsgfVxuICAubW9kdWxlLW9mZmVycy1jYXJvdXNlbCAuc2xpY2stcHJldjpiZWZvcmUsXG4gIC5tb2R1bGUtb2ZmZXJzLWNhcm91c2VsIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgZm9udC1zaXplOiAxLjcxNDI5cmVtOyB9XG5cbi5tb2R1bGUtb2ZmZXJzLWNhcm91c2VsIC5zbGljay1wcmV2IHtcbiAgbGVmdDogMTAlOyB9XG5cbi5tb2R1bGUtb2ZmZXJzLWNhcm91c2VsIC5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IDEwJTsgfVxuXG4ubW9kdWxlLW9mZmVycy1jYXJvdXNlbCAuY2FyZC10aWxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubW9kdWxlLW9mZmVycy1jYXJvdXNlbCAuY2FyZC10aWxlIC5jYXJkLWltYWdlIC5pbWFnZS1jb250YWluZXIge1xuICAgICAgcGFkZGluZy10b3A6IDg4LjQ5NTU4JTsgfVxuICAgIC5tb2R1bGUtb2ZmZXJzLWNhcm91c2VsIC5jYXJkLXRpbGUgLmNhcmQtY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzgzNzNBO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgcGFkZGluZzogNS4xNDI4NnJlbSAzLjcxNDI5cmVtIDMuMTQyODZyZW07IH1cbiAgICAgIC5tb2R1bGUtb2ZmZXJzLWNhcm91c2VsIC5jYXJkLXRpbGUgLmNhcmQtY29udGVudCBoNSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNzE0MjlyZW07IH1cbiAgICAgIC5tb2R1bGUtb2ZmZXJzLWNhcm91c2VsIC5jYXJkLXRpbGUgLmNhcmQtY29udGVudCBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS43MTQyOXJlbTsgfVxuICAgICAgICAubW9kdWxlLW9mZmVycy1jYXJvdXNlbCAuY2FyZC10aWxlIC5jYXJkLWNvbnRlbnQgcCAucmctYnRuICsgYSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDEuNzE0MjlyZW07IH1cbiAgICAgICAgLm1vZHVsZS1vZmZlcnMtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1jb250ZW50IHAgYSB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBjb2xvcjogIzlkODA0NztcbiAgICAgICAgICBmb250LXNpemU6IDAuOTI4NTdyZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4OyB9XG4gICAgICAgICAgLm1vZHVsZS1vZmZlcnMtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1jb250ZW50IHAgYTpob3ZlciwgLm1vZHVsZS1vZmZlcnMtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1jb250ZW50IHAgYTpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogI0RDQzE4RTsgfVxuICAgICAgICAubW9kdWxlLW9mZmVycy1jYXJvdXNlbCAuY2FyZC10aWxlIC5jYXJkLWNvbnRlbnQgcCBhLnJnLWJ0biB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1vZHVsZS1vZmZlcnMtY2Fyb3VzZWwgLmNhcmQtdGlsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiByb3cgd3JhcDsgfVxuICAgICAgLm1vZHVsZS1vZmZlcnMtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1pbWFnZSwgLm1vZHVsZS1vZmZlcnMtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1jb250ZW50IHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7IH0gfVxuXG4ubW9kdWxlLXByb21vcy1jYXJvdXNlbCwgLm1vZHVsZS12ZW51ZS1jYXJvdXNlbCB7XG4gIHBhZGRpbmc6IDMuNTcxNDNyZW0gMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1vZHVsZS1wcm9tb3MtY2Fyb3VzZWwsIC5tb2R1bGUtdmVudWUtY2Fyb3VzZWwge1xuICAgICAgcGFkZGluZzogNS4zNTcxNHJlbSAwOyB9XG4gICAgICAubW9kdWxlLXByb21vcy1jYXJvdXNlbCAuc2xpY2stc2xpZGUsIC5tb2R1bGUtdmVudWUtY2Fyb3VzZWwgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgcGFkZGluZzogMCAxMnB4O1xuICAgICAgICBwZXJzcGVjdGl2ZTogOTAwcHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlOyB9XG4gICAgICAgIC5tb2R1bGUtcHJvbW9zLWNhcm91c2VsIC5zbGljay1zbGlkZSAuY2FyZC10aWxlLCAubW9kdWxlLXZlbnVlLWNhcm91c2VsIC5zbGljay1zbGlkZSAuY2FyZC10aWxlIHtcbiAgICAgICAgICBvcGFjaXR5OiAwLjA1O1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMy4xMjV2dykgcm90YXRlWSgyNWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogaW5oZXJpdDsgfVxuICAgICAgICAubW9kdWxlLXByb21vcy1jYXJvdXNlbCAuc2xpY2stc2xpZGUuc2xpY2stY3VycmVudCAuY2FyZC10aWxlLCAubW9kdWxlLXZlbnVlLWNhcm91c2VsIC5zbGljay1zbGlkZS5zbGljay1jdXJyZW50IC5jYXJkLXRpbGUge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKDApOyB9XG4gICAgICAgIC5tb2R1bGUtcHJvbW9zLWNhcm91c2VsIC5zbGljay1zbGlkZS5zbGljay1jdXJyZW50IH4gLnNsaWNrLXNsaWRlIC5jYXJkLXRpbGUsIC5tb2R1bGUtdmVudWUtY2Fyb3VzZWwgLnNsaWNrLXNsaWRlLnNsaWNrLWN1cnJlbnQgfiAuc2xpY2stc2xpZGUgLmNhcmQtdGlsZSB7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEzLjEyNXZ3KSByb3RhdGVZKC0yNWRlZyk7IH0gfVxuICAubW9kdWxlLXByb21vcy1jYXJvdXNlbCAuc2xpY2stcHJldiwgLm1vZHVsZS12ZW51ZS1jYXJvdXNlbCAuc2xpY2stcHJldixcbiAgLm1vZHVsZS1wcm9tb3MtY2Fyb3VzZWwgLnNsaWNrLW5leHQsIC5tb2R1bGUtdmVudWUtY2Fyb3VzZWwgLnNsaWNrLW5leHQge1xuICAgIHotaW5kZXg6IDU7IH1cbiAgICAubW9kdWxlLXByb21vcy1jYXJvdXNlbCAuc2xpY2stcHJldjpiZWZvcmUsIC5tb2R1bGUtdmVudWUtY2Fyb3VzZWwgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAgIC5tb2R1bGUtcHJvbW9zLWNhcm91c2VsIC5zbGljay1uZXh0OmJlZm9yZSwgLm1vZHVsZS12ZW51ZS1jYXJvdXNlbCAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgICAgZm9udC1zaXplOiAxLjcxNDI5cmVtOyB9XG4gIC5tb2R1bGUtcHJvbW9zLWNhcm91c2VsIC5zbGljay1wcmV2LCAubW9kdWxlLXZlbnVlLWNhcm91c2VsIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiA1JTsgfVxuICAubW9kdWxlLXByb21vcy1jYXJvdXNlbCAuc2xpY2stbmV4dCwgLm1vZHVsZS12ZW51ZS1jYXJvdXNlbCAuc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IDUlOyB9XG4gIC5tb2R1bGUtcHJvbW9zLWNhcm91c2VsIC5jYXJkLXRpbGUsIC5tb2R1bGUtdmVudWUtY2Fyb3VzZWwgLmNhcmQtdGlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubW9kdWxlLXByb21vcy1jYXJvdXNlbCAuY2FyZC10aWxlIC5jYXJkLWltYWdlLCAubW9kdWxlLXZlbnVlLWNhcm91c2VsIC5jYXJkLXRpbGUgLmNhcmQtaW1hZ2Uge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgICAgLm1vZHVsZS1wcm9tb3MtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1pbWFnZSAuaW1hZ2UtY29udGFpbmVyLCAubW9kdWxlLXZlbnVlLWNhcm91c2VsIC5jYXJkLXRpbGUgLmNhcmQtaW1hZ2UgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDcwLjQyMjU0JTsgfVxuICAgICAgICAubW9kdWxlLXByb21vcy1jYXJvdXNlbCAuY2FyZC10aWxlIC5jYXJkLWltYWdlOmJlZm9yZSwgLm1vZHVsZS12ZW51ZS1jYXJvdXNlbCAuY2FyZC10aWxlIC5jYXJkLWltYWdlOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMzZweDtcbiAgICAgICAgICByaWdodDogMzZweDtcbiAgICAgICAgICBsZWZ0OiAzNnB4O1xuICAgICAgICAgIGJvdHRvbTogMzZweDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBib3JkZXI6IHNvbGlkIDJweCAjRENDMThFO1xuICAgICAgICAgIHotaW5kZXg6IDM7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMGVtKSB7XG4gICAgICAubW9kdWxlLXByb21vcy1jYXJvdXNlbCAuY2FyZC10aWxlIC5jYXJkLWltYWdlIC5pbWFnZS1jb250YWluZXIsIC5tb2R1bGUtdmVudWUtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1pbWFnZSAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIGhlaWdodDogODB2aDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLm1vZHVsZS1wcm9tb3MtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1jb250ZW50LCAubW9kdWxlLXZlbnVlLWNhcm91c2VsIC5jYXJkLXRpbGUgLmNhcmQtY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBwYWRkaW5nOiAzLjcxNDI5cmVtIDMuNDI4NTdyZW0gMi4yODU3MXJlbTtcbiAgICAgICAgY29sb3I6ICMxQTE4MTg7XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDI0cHggMCByZ2JhKDAsIDAsIDAsIDAuMTYpO1xuICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAycHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5tb2R1bGUtcHJvbW9zLWNhcm91c2VsIC5jYXJkLXRpbGUgLmNhcmQtY29udGVudCwgLm1vZHVsZS12ZW51ZS1jYXJvdXNlbCAuY2FyZC10aWxlIC5jYXJkLWNvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBib3R0b206IDI1JTtcbiAgICAgICAgbGVmdDogLTMycHg7XG4gICAgICAgIHJpZ2h0OiA1MCU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1JSk7XG4gICAgICAgIHBhZGRpbmc6IDMuNzE0MjlyZW0gMy40Mjg1N3JlbSAyLjI4NTcxcmVtO1xuICAgICAgICBjb2xvcjogIzFBMTgxODtcbiAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMjRweCAwIHJnYmEoMCwgMCwgMCwgMC4xNik7IH1cbiAgICAgICAgLm1vZHVsZS1wcm9tb3MtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1jb250ZW50IGg1LCAubW9kdWxlLXZlbnVlLWNhcm91c2VsIC5jYXJkLXRpbGUgLmNhcmQtY29udGVudCBoNSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS43MTQyOXJlbTsgfVxuICAgICAgICAubW9kdWxlLXByb21vcy1jYXJvdXNlbCAuY2FyZC10aWxlIC5jYXJkLWNvbnRlbnQgcCwgLm1vZHVsZS12ZW51ZS1jYXJvdXNlbCAuY2FyZC10aWxlIC5jYXJkLWNvbnRlbnQgcCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS43MTQyOXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1vZHVsZS1yb29tcy1jYXJvdXNlbCAuc2xpY2stc2xpZGUge1xuICAgIHBhZGRpbmc6IDA7IH0gfVxuXG4ubW9kdWxlLXJvb21zLWNhcm91c2VsIC5zbGljay1wcmV2LFxuLm1vZHVsZS1yb29tcy1jYXJvdXNlbCAuc2xpY2stbmV4dCB7XG4gIHdpZHRoOiAzLjQyODU3cmVtO1xuICBoZWlnaHQ6IDMuNDI4NTdyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjAsIDE5MywgMTQyLCAwLjUyKTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgei1pbmRleDogNTsgfVxuICAubW9kdWxlLXJvb21zLWNhcm91c2VsIC5zbGljay1wcmV2OmJlZm9yZSxcbiAgLm1vZHVsZS1yb29tcy1jYXJvdXNlbCAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMy40Mjg1N3JlbTsgfVxuXG4ubW9kdWxlLXJvb21zLWNhcm91c2VsIC5zbGljay1wcmV2IHtcbiAgbGVmdDogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDJweDsgfVxuICAubW9kdWxlLXJvb21zLWNhcm91c2VsIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLugINcIjsgfVxuXG4ubW9kdWxlLXJvb21zLWNhcm91c2VsIC5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMnB4OyB9XG4gIC5tb2R1bGUtcm9vbXMtY2Fyb3VzZWwgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIu6AhVwiOyB9XG5cbi5tb2R1bGUtcm9vbXMtY2Fyb3VzZWwgLmNhcmQtdGlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1vZHVsZS1yb29tcy1jYXJvdXNlbCAuY2FyZC10aWxlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgICAgIC5tb2R1bGUtcm9vbXMtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAubW9kdWxlLXJvb21zLWNhcm91c2VsIC5jYXJkLXRpbGUgLmNhcmQtaW1hZ2UgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDcyLjI4NDY0JTsgfVxuICAgICAgICAubW9kdWxlLXJvb21zLWNhcm91c2VsIC5jYXJkLXRpbGUgLmNhcmQtaW1hZ2U6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzQsIDMyLCAzMiwgMC42KTtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlO1xuICAgICAgICAgIHotaW5kZXg6IDE7IH1cbiAgICAgIC5tb2R1bGUtcm9vbXMtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1jb250ZW50IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTIlLCAtNDklKTtcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbSAxLjc1cmVtO1xuICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAjRENDMThFO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgNDAwbXMgZWFzZTtcbiAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbi5tb2R1bGUtcm9vbXMtY2Fyb3VzZWwgLnNsaWNrLXNsaWRlIGEgLmNhcmQtY29udGVudCB7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgY29sb3IgLjE1cyBlYXNlLWluLW91dDsgfVxuXG4ubW9kdWxlLXJvb21zLWNhcm91c2VsIC5zbGljay1zbGlkZSBhOmhvdmVyIC5jYXJkLXRpbGUgLmNhcmQtaW1hZ2U6YmVmb3JlIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4ubW9kdWxlLXJvb21zLWNhcm91c2VsIC5zbGljay1zbGlkZSBhOmhvdmVyIC5jYXJkLXRpbGUgLmNhcmQtY29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNEQ0MxOEU7IH1cblxuLnNlY3Rpb24tY29udGFpbmVyLm1vZHVsZS1yb29tcyB7XG4gIHBhZGRpbmctYm90dG9tOiAwOyB9XG5cbi8qIGVuZGluamVjdCAqL1xuLyogaW5qZWN0OnRlbXBsYXRlcyAqL1xuLnBhZ2UtY29udGFjdCAubWFwLWNvbnRhaW5lciAjaG90ZWwtbWFwIHtcbiAgaGVpZ2h0OiAxMTAuOTMzMzN2dzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UtY29udGFjdCAubWFwLWNvbnRhaW5lciAjaG90ZWwtbWFwIHtcbiAgICAgIGhlaWdodDogMTAwdmg7IH0gfVxuXG4ucGFnZS1jb250YWN0IC5jb250YWN0LWNvbnRlbnQge1xuICBwYWRkaW5nLXRvcDogMi41NzE0M3JlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnBhZ2UtY29udGFjdCAuY29udGFjdC1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctdG9wOiA3LjcxNDI5cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5wYWdlLWNvbnRhY3QgLmNvbnRhY3QtY29udGVudCAubWVkaXVtLTEyIHAge1xuICAgICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuICAgICAgLnBhZ2UtY29udGFjdCAuY29udGFjdC1jb250ZW50IC5tZWRpdW0tMTIgcDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAucGFnZS1jb250YWN0IC5jb250YWN0LWNvbnRlbnQgLm1lZGl1bS0xMiBwLnRleHQtbGVmdCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAucGFnZS1jb250YWN0IC5jb250YWN0LWNvbnRlbnQgLm1lZGl1bS0xMiAuY29udGFjdC1idG4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMTBweCk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmNvbnRhY3QtbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjcxNDI5cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250YWN0LW5hbWUge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmNvbnRhY3QtYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgcGFkZGluZzogMS4yM2VtIDEuODVlbTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0RDQzE4RTtcbiAgICBjb2xvcjogI0RDQzE4RTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxNnB4KTsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuY29udGFjdC1idG4ge1xuICAgICAgb3V0bGluZTogMDsgfVxuICAgIC5jb250YWN0LWJ0biwgLmNvbnRhY3QtYnRuOmhvdmVyLCAuY29udGFjdC1idG46Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuY29udGFjdC1idG4uZGlzYWJsZWQsIC5jb250YWN0LWJ0bi5kaXNhYmxlZDpob3ZlciwgLmNvbnRhY3QtYnRuLmRpc2FibGVkOmZvY3VzLCAuY29udGFjdC1idG5bZGlzYWJsZWRdLCAuY29udGFjdC1idG5bZGlzYWJsZWRdOmhvdmVyLCAuY29udGFjdC1idG5bZGlzYWJsZWRdOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmNvbnRhY3QtYnRuOmhvdmVyLCAuY29udGFjdC1idG46Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjOGE2OTJiO1xuICAgICAgY29sb3I6ICM4YTY5MmI7IH1cbiAgICAgIC5jb250YWN0LWJ0bjpob3Zlci5kaXNhYmxlZCwgLmNvbnRhY3QtYnRuOmhvdmVyW2Rpc2FibGVkXSwgLmNvbnRhY3QtYnRuOmZvY3VzLmRpc2FibGVkLCAuY29udGFjdC1idG46Zm9jdXNbZGlzYWJsZWRdIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0RDQzE4RTtcbiAgICAgICAgY29sb3I6ICNEQ0MxOEU7IH1cbiAgICAuY29udGFjdC1idG4uZXhwYW5kZWQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLmNvbnRhY3QtYnRuOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBhdHRyKHRpdGxlKTsgfVxuICAgIC5jb250YWN0LWJ0biBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuY29udGFjdC1idG4gKyAuY29udGFjdC1idG4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250YWN0LWJ0biB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4OyB9XG4gICAgLmNvbnRhY3QtYnRuLmV4cGFuZGVkIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmNvbnRhY3QtYnRuICsgLmNvbnRhY3QtYnRuIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjcxNDI5cmVtO1xuICAgICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAjZmZmO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjcxNDI5cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS5kZWZhdWx0LXRlbXBsYXRlIC5zZWN0aW9uLWNvbnRhaW5lci5mdWxsLWhlaWdodDpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXRvcDogMTUuNzE0MjlyZW07IH0gfVxuXG4uZXJyb3I0MDQgLmVycm9yLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtaGVpZ2h0OiA4MDBweCkge1xuICAuZmFxLXNlY3Rpb24ge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7XG4gICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuXG4uZmFxLXNlY3Rpb24gaDEge1xuICBtYXJnaW4tYm90dG9tOiAwLjg1NzE0cmVtOyB9XG5cbi5mYXEtc2VjdGlvbiBwOmZpcnN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAyLjI4NTcxcmVtOyB9XG5cbi5mYXEtc2VjdGlvbiBiIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDsgfVxuXG4uYWNjb3JkaW9uLXRpbGUge1xuICBib3JkZXI6IHNvbGlkIDFweCAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIG1hcmdpbi1ib3R0b206IDEuMTQyODZyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hY2NvcmRpb24tdGlsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjI4NTcxcmVtOyB9IH1cbiAgLmFjY29yZGlvbi10aWxlIC5hY2NvcmRpb24tdGlsZS10aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nOiAycmVtIDIuMjg1NzFyZW07XG4gICAgcGFkZGluZy1yaWdodDogMi44NTcxNHJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAwLjkyODU3cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjg2cHg7IH1cbiAgICAuYWNjb3JkaW9uLXRpbGUgLmFjY29yZGlvbi10aWxlLXRpdGxlOmFmdGVyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImljb24tZm9udFwiO1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBjb250ZW50OiBcIu6AklwiOyB9XG4gICAgLmFjY29yZGlvbi10aWxlIC5hY2NvcmRpb24tdGlsZS10aXRsZTphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDIuNTcxNDNyZW07XG4gICAgICByaWdodDogMS4yODU3MXJlbTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGZvbnQtc2l6ZTogMS4xNDI4NnJlbTtcbiAgICAgIGNvbG9yOiAjRENDMThFOyB9XG4gIC5hY2NvcmRpb24tdGlsZSAuYWNjb3JkaW9uLXRpbGUtY29udGVudCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nOiAwIDIuMjg1NzFyZW0gMnJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7IH1cbiAgICAuYWNjb3JkaW9uLXRpbGUgLmFjY29yZGlvbi10aWxlLWNvbnRlbnQgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgICAuYWNjb3JkaW9uLXRpbGUgLmFjY29yZGlvbi10aWxlLWNvbnRlbnQgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5hY2NvcmRpb24tdGlsZSAuYWNjb3JkaW9uLXRpbGUtY29udGVudCBhIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAuYWNjb3JkaW9uLXRpbGUgLmFjY29yZGlvbi10aWxlLWNvbnRlbnQgYTpob3ZlciwgLmFjY29yZGlvbi10aWxlIC5hY2NvcmRpb24tdGlsZS1jb250ZW50IGE6Zm9jdXMge1xuICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpOyB9XG4gIC5hY2NvcmRpb24tdGlsZS5leHBhbmRlZCB7XG4gICAgYm9yZGVyLWNvbG9yOiAjRENDMThFO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNEQ0MxOEU7XG4gICAgY29sb3I6ICMyMjIwMjA7IH1cbiAgICAuYWNjb3JkaW9uLXRpbGUuZXhwYW5kZWQgLmFjY29yZGlvbi10aWxlLXRpdGxlOmFmdGVyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImljb24tZm9udFwiO1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBjb250ZW50OiBcIu6AkVwiOyB9XG4gICAgLmFjY29yZGlvbi10aWxlLmV4cGFuZGVkIC5hY2NvcmRpb24tdGlsZS10aXRsZTphZnRlciB7XG4gICAgICBjb2xvcjogIzlkODA0NzsgfVxuICAgIC5hY2NvcmRpb24tdGlsZS5leHBhbmRlZCAuYWNjb3JkaW9uLXRpbGUtY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uZmFxLW1hc29ucnkgLmFjY29yZGlvbi10aWxlLCAuZmFxLW1hc29ucnkgLmZhcS1ncmlkLXNpemVyIHtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5mYXEtbWFzb25yeSAuYWNjb3JkaW9uLXRpbGUsIC5mYXEtbWFzb25yeSAuZmFxLWdyaWQtc2l6ZXIge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMjRweCk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZhcS1tYXNvbnJ5IC5hY2NvcmRpb24tdGlsZSwgLmZhcS1tYXNvbnJ5IC5mYXEtZ3JpZC1zaXplciB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxNnB4KTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LWhlaWdodDogODAwcHgpIHtcbiAgICAuZmFxLW1hc29ucnkgLmFjY29yZGlvbi10aWxlLCAuZmFxLW1hc29ucnkgLmZhcS1ncmlkLXNpemVyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDI0cHgpOyB9IH1cblxuLnRlbXBsYXRlLWZvb2QtZHJpbmsgI21haW4tY29udGFpbmVyIHtcbiAgbWluLWhlaWdodDogMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWN0aW9uLWNvbnRhaW5lciArIC5rd2lja3Mtc2VjdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IDYuNDI4NTdyZW07IH0gfVxuXG4uc2VjdGlvbi1jb250YWluZXIuZm9vZC1kcmluay10YWJzIHtcbiAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnNlY3Rpb24tY29udGFpbmVyLmZvb2QtZHJpbmstdGFicyB7XG4gICAgICBtYXJnaW4tdG9wOiA0cmVtOyB9XG4gICAgICAuc2VjdGlvbi1jb250YWluZXIuZm9vZC1kcmluay10YWJzIC5jb2x1bW4sIC5zZWN0aW9uLWNvbnRhaW5lci5mb29kLWRyaW5rLXRhYnMgLmNvbHVtbnMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjI4NTcxcmVtOyB9XG4gICAgICAgIC5zZWN0aW9uLWNvbnRhaW5lci5mb29kLWRyaW5rLXRhYnMgLmNvbHVtbjpsYXN0LWNoaWxkLCAuc2VjdGlvbi1jb250YWluZXIuZm9vZC1kcmluay10YWJzIC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4ucmVzdGF1cmFudC1sb2dvLCAjcmVzdGF1cmFudC1zZWxlY3RvciAucmVzdGF1cmFudC1sb2dvLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdHJhbnNpdGlvbjogYWxsIDQwMG1zIGVhc2UtaW4tb3V0O1xuICB6LWluZGV4OiA1OyB9XG5cbi5wYW5lbC1wcmV2aWV3IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlLWluLW91dDtcbiAgei1pbmRleDogMzsgfVxuXG4jcmVzdGF1cmFudC1zZWxlY3RvciB7XG4gIGhlaWdodDogMjkuMjg1NzF2dzsgfVxuICAjcmVzdGF1cmFudC1zZWxlY3Rvcjo6YmVmb3JlLCAjcmVzdGF1cmFudC1zZWxlY3Rvcjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gICNyZXN0YXVyYW50LXNlbGVjdG9yOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgI3Jlc3RhdXJhbnQtc2VsZWN0b3IgPiBsaSB7XG4gICAgdG9wOiAwO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAjcmVzdGF1cmFudC1zZWxlY3RvciAucmVzdGF1cmFudC1sb2dvLCAjcmVzdGF1cmFudC1zZWxlY3RvciAucmVzdGF1cmFudC1sb2dvLXRleHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlLWluLW91dDsgfVxuICAjcmVzdGF1cmFudC1zZWxlY3RvciAucmVzdGF1cmFudC1sb2dvLCAjcmVzdGF1cmFudC1zZWxlY3RvciAucmVzdGF1cmFudC1sb2dvLXRleHQge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gICNyZXN0YXVyYW50LXNlbGVjdG9yIC5yZXN0YXVyYW50LWxvZ28tdGV4dCB7XG4gICAgZm9udC1mYW1pbHk6IFwiQWN0YSBIZWFkbGluZSBXMDBcIiwgXCJBY3RhIEhlYWRsaW5lXCIsIHNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMi4yODU3MXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMS4zNTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgI3Jlc3RhdXJhbnQtc2VsZWN0b3IgLmt3aWNrcy1leHBhbmRlZCAucmVzdGF1cmFudC1zbGlkZXIge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgI3Jlc3RhdXJhbnQtc2VsZWN0b3IgLmt3aWNrcy1leHBhbmRlZCAucmVzdGF1cmFudC1sb2dvLCAjcmVzdGF1cmFudC1zZWxlY3RvciAua3dpY2tzLWV4cGFuZGVkIC5yZXN0YXVyYW50LWxvZ28tdGV4dCB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB6LWluZGV4OiAtMTsgfVxuICAjcmVzdGF1cmFudC1zZWxlY3RvciAua3dpY2tzLWV4cGFuZGVkIC5wYW5lbC1wcmV2aWV3IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IC0xOyB9XG4gICNyZXN0YXVyYW50LXNlbGVjdG9yIC5yZXN0YXVyYW50LXNsaWRlciB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICAjcmVzdGF1cmFudC1zZWxlY3RvciAucmVzdGF1cmFudC1zbGlkZXIsICNyZXN0YXVyYW50LXNlbGVjdG9yIC5yZXN0YXVyYW50LXNsaWRlciA+IGRpdiwgI3Jlc3RhdXJhbnQtc2VsZWN0b3IgLnJlc3RhdXJhbnQtc2xpZGVyIC5zbGljay1saXN0LCAjcmVzdGF1cmFudC1zZWxlY3RvciAucmVzdGF1cmFudC1zbGlkZXIgLnNsaWNrLXRyYWNrIHtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgICNyZXN0YXVyYW50LXNlbGVjdG9yIC5yZXN0YXVyYW50LXNsaWRlciAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG5cbi50YWItcGFuZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDY4LjA4NTExdnc7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC50YWItcGFuZWwge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi50YWItY29udGVudCB7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAudGFiLWNvbnRlbnQgPiAucm93IHtcbiAgICBwYWRkaW5nOiAyLjg1NzE0cmVtIDAgMy40Mjg1N3JlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50YWItY29udGVudCA+IC5yb3cge1xuICAgICAgICBwYWRkaW5nOiA5LjI4NTcxcmVtIDA7IH0gfVxuICAudGFiLWNvbnRlbnQgYTpub3QoW2NsYXNzKj0nYnRuJ10pIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgIC50YWItY29udGVudCBhOm5vdChbY2xhc3MqPSdidG4nXSk6aG92ZXIsIC50YWItY29udGVudCBhOm5vdChbY2xhc3MqPSdidG4nXSk6Zm9jdXMge1xuICAgICAgY29sb3I6ICNEQ0MxOEU7IH1cbiAgLnRhYi1jb250ZW50IC5zb2NpYWwgYSB7XG4gICAgY29sb3I6ICNEQ0MxOEU7IH1cbiAgICAudGFiLWNvbnRlbnQgLnNvY2lhbCBhOmhvdmVyLCAudGFiLWNvbnRlbnQgLnNvY2lhbCBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZDBhYzY3OyB9XG4gIC50YWItY29udGVudCBwLCAudGFiLWNvbnRlbnQgLm9wZW50YWJsZSwgLnRhYi1jb250ZW50IHVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtOyB9XG4gICAgLnRhYi1jb250ZW50IHA6bGFzdC1jaGlsZCwgLnRhYi1jb250ZW50IC5vcGVudGFibGU6bGFzdC1jaGlsZCwgLnRhYi1jb250ZW50IHVsOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ucmVzdGF1cmFudC1zbGlkZXIge1xuICBtYXgtd2lkdGg6IDEwMHZ3OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucmVzdGF1cmFudC1zbGlkZXIgLnNsaWNrLWRvdHMge1xuICAgICAgcmlnaHQ6IDEuNTcxNDNyZW07IH0gfVxuICAucmVzdGF1cmFudC1zbGlkZXIgLnNsaWNrLXNsaWRlIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB9XG5cbiNyZXN0YXVyYW50LXRhYnMge1xuICB3aWR0aDogMTAwJTsgfVxuICAjcmVzdGF1cmFudC10YWJzIC5yZXZlYWxlZCAucmVzdGF1cmFudC1sb2dvLCAjcmVzdGF1cmFudC10YWJzIC5yZXZlYWxlZCAjcmVzdGF1cmFudC1zZWxlY3RvciAucmVzdGF1cmFudC1sb2dvLXRleHQsICNyZXN0YXVyYW50LXNlbGVjdG9yICNyZXN0YXVyYW50LXRhYnMgLnJldmVhbGVkIC5yZXN0YXVyYW50LWxvZ28tdGV4dCwgI3Jlc3RhdXJhbnQtdGFicyAucmV2ZWFsZWQgLnBhbmVsLXByZXZpZXcge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgei1pbmRleDogLTE7IH1cbiAgI3Jlc3RhdXJhbnQtdGFicyAucmVzdGF1cmFudC1zbGlkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgei1pbmRleDogMTsgfVxuICAgICNyZXN0YXVyYW50LXRhYnMgLnJlc3RhdXJhbnQtc2xpZGVyLCAjcmVzdGF1cmFudC10YWJzIC5yZXN0YXVyYW50LXNsaWRlciA+IGRpdiwgI3Jlc3RhdXJhbnQtdGFicyAucmVzdGF1cmFudC1zbGlkZXIgLnNsaWNrLWxpc3QsICNyZXN0YXVyYW50LXRhYnMgLnJlc3RhdXJhbnQtc2xpZGVyIC5zbGljay10cmFjayB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAjcmVzdGF1cmFudC10YWJzIC5yZXN0YXVyYW50LXNsaWRlciAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5yZXN0YXVyYW50LXBhbmVsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgei1pbmRleDogNDtcbiAgdHJhbnNpdGlvbjogLjM1cyBlYXNlLWluLW91dDsgfVxuICAucmVzdGF1cmFudC1wYW5lbC1vdmVybGF5OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4uaG9tZSAuaW50cm8tc2VjdGlvbiAuY2Fyb3VzZWwtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7IH1cblxuLmhvbWUgLmludHJvLXNlY3Rpb24gKyAuc2VjdGlvbi1jb250YWluZXIge1xuICB6LWluZGV4OiAxOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdhbGxlcnktc2VjdGlvbiB7XG4gICAgei1pbmRleDogMDsgfSB9XG5cbi5zZWxlY3RyaWMtZ2FsbGVyeS1zZWxlY3Qge1xuICBtYXJnaW4tdG9wOiA0LjM1NzE0cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2VsZWN0cmljLWdhbGxlcnktc2VsZWN0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uY2FwdGlvbi13cmFwcGVyIHtcbiAgcGFkZGluZzogMS4xNDI4NnJlbSAxLjcxNDI5cmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzQsIDMyLCAzMiwgMC44KTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jYXB0aW9uLXdyYXBwZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMTYuNjQyODZyZW07XG4gICAgICBib3R0b206IDQuNTcxNDNyZW07XG4gICAgICBwYWRkaW5nOiAwIDJyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAycHggI2ZmZjtcbiAgICAgIG1heC13aWR0aDogNDAlO1xuICAgICAgei1pbmRleDogNTsgfSB9XG5cbi50ZW1wbGF0ZS1nYWxsZXJ5IG1haW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmdhbGxlcnktY2Fyb3VzZWwgLmltYWdlLWNvbnRhaW5lciB7XG4gIGhlaWdodDogNjguMDg1MTF2dzsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5nYWxsZXJ5LWNhcm91c2VsIC5pbWFnZS1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwdmg7IH1cbiAgLmdhbGxlcnktY2Fyb3VzZWw6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMTIuNTcxNDNyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG9wYWNpdHk6IDAuNTI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KC0xODBkZWcsIHJnYmEoMzQsIDMyLCAzMiwgMCkgMCUsICMyMjIwMjAgMTAwJSk7XG4gICAgei1pbmRleDogMTsgfSB9XG5cbi5nYWxsZXJ5LXRodW1ibmFpbHMge1xuICBwYWRkaW5nOiAwLjU3MTQzcmVtIDEuMTQyODZyZW0gMi43MTQyOXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNCwgMzIsIDMyLCAwLjgpOyB9XG4gIC5nYWxsZXJ5LXRodW1ibmFpbHM6OmJlZm9yZSwgLmdhbGxlcnktdGh1bWJuYWlsczo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5nYWxsZXJ5LXRodW1ibmFpbHM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdhbGxlcnktdGh1bWJuYWlscyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB3aWR0aDogOC44NTcxNHJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZzogMDsgfSB9XG4gIC5nYWxsZXJ5LXRodW1ibmFpbHMgLmdhbGxlcnktc2VsZWN0LXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmdhbGxlcnktdGh1bWJuYWlscyAuZ2FsbGVyeS1zZWxlY3Qtd3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuZ2FsbGVyeS10aHVtYm5haWxzIC5nYWxsZXJ5LXNlbGVjdC1idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEuNzE0MjlyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMC44NTcxNHJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjcxcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjRTZFNkU2O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMnB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAuZ2FsbGVyeS10aHVtYm5haWxzIC5nYWxsZXJ5LXNlbGVjdC1idXR0b24gLmljb24tZ2FsbGVyeSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAjRENDMThFO1xuICAgICAgZm9udC1zaXplOiAxLjcxNDI5cmVtOyB9XG4gIC5nYWxsZXJ5LXRodW1ibmFpbHMgLmdhbGxlcnktc3ViLW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAxMDAlO1xuICAgIHdpZHRoOiAyMi4yODU3MXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIzMSwgMjMxLCAyMzEsIDAuOSk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMnB4OyB9XG4gICAgLmdhbGxlcnktdGh1bWJuYWlscyAuZ2FsbGVyeS1zdWItbWVudSBsaSB7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgZm9udC1zaXplOiAwLjkyODU3cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuODZweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgIC5nYWxsZXJ5LXRodW1ibmFpbHMgLmdhbGxlcnktc3ViLW1lbnUgbGkgKyBsaSB7XG4gICAgICAgIGJvcmRlci10b3A6IHNvbGlkIDFweCAjY2NjOyB9XG4gICAgICAuZ2FsbGVyeS10aHVtYm5haWxzIC5nYWxsZXJ5LXN1Yi1tZW51IGxpLmFjdGl2ZSBhIHtcbiAgICAgICAgY29sb3I6ICNBQ0FDQUM7IH1cbiAgICAgICAgLmdhbGxlcnktdGh1bWJuYWlscyAuZ2FsbGVyeS1zdWItbWVudSBsaS5hY3RpdmUgYTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAuZ2FsbGVyeS10aHVtYm5haWxzIC5nYWxsZXJ5LXN1Yi1tZW51IGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAxLjcxNDI5cmVtIDJyZW07XG4gICAgICBjb2xvcjogIzFBMTgxODsgfVxuICAgICAgLmdhbGxlcnktdGh1bWJuYWlscyAuZ2FsbGVyeS1zdWItbWVudSBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNEQ0MxOEU7IH1cbiAgLmdhbGxlcnktdGh1bWJuYWlscyBbZGF0YS10aHVtYl0ge1xuICAgIHBhZGRpbmc6IDAuNTcxNDNyZW07XG4gICAgd2lkdGg6IDI1JTtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIC5nYWxsZXJ5LXRodW1ibmFpbHMgW2RhdGEtdGh1bWJdIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5nYWxsZXJ5LXRodW1ibmFpbHMgW2RhdGEtdGh1bWJdIHtcbiAgICAgICAgd2lkdGg6IDE2LjY2NjY3JTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmdhbGxlcnktdGh1bWJuYWlscyBbZGF0YS10aHVtYl0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxLjQyODU3cmVtOyB9IH1cbiAgICAuZ2FsbGVyeS10aHVtYm5haWxzIFtkYXRhLXRodW1iXS5zbGljay1jdXJyZW50IGltZyB7XG4gICAgICBib3JkZXI6IHNvbGlkIDRweCAjRENDMThFOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2FsbGVyeS10aHVtYm5haWxzIC5nYWxsZXJ5LW5hdiAuc2xpY2stbGlzdCB7XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjMxLCAyMzEsIDIzMSwgMC45KTsgfSB9XG4gIC5nYWxsZXJ5LXRodW1ibmFpbHMgLmdhbGxlcnktbmF2IC5zbGljay1wcmV2LFxuICAuZ2FsbGVyeS10aHVtYm5haWxzIC5nYWxsZXJ5LW5hdiAuc2xpY2stbmV4dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAxLjE0Mjg2cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgICAuZ2FsbGVyeS10aHVtYm5haWxzIC5nYWxsZXJ5LW5hdiAuc2xpY2stcHJldjpiZWZvcmUsXG4gICAgLmdhbGxlcnktdGh1bWJuYWlscyAuZ2FsbGVyeS1uYXYgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43MTQyOXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgY29sb3I6ICNEQ0MxOEU7IH1cbiAgLmdhbGxlcnktdGh1bWJuYWlscyAuZ2FsbGVyeS1uYXYgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDA7IH1cbiAgICAuZ2FsbGVyeS10aHVtYm5haWxzIC5nYWxsZXJ5LW5hdiAuc2xpY2stcHJldjpiZWZvcmUge1xuICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbi1mb250XCI7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGNvbnRlbnQ6IFwi7oCHXCI7IH1cbiAgLmdhbGxlcnktdGh1bWJuYWlscyAuZ2FsbGVyeS1uYXYgLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAycHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5nYWxsZXJ5LXRodW1ibmFpbHMgLmdhbGxlcnktbmF2IC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgICBmb250LWZhbWlseTogXCJpY29uLWZvbnRcIjtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgY29udGVudDogXCLugIJcIjsgfVxuXG4uaGlzdG9yeS1pbWFnZS1ibG9jayB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuNTcxNDNyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oaXN0b3J5LWltYWdlLWJsb2NrIHtcbiAgICAgIG1hcmdpbi10b3A6IDMuNTcxNDNyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiA0LjY0Mjg2cmVtOyB9IH1cbiAgLmhpc3RvcnktaW1hZ2UtYmxvY2sgaW1nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4wNzE0M3JlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5oaXN0b3J5LWltYWdlLWJsb2NrIGltZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNzg1NzFyZW07IH0gfVxuICAuaGlzdG9yeS1pbWFnZS1ibG9jayBmaWdjYXB0aW9uIHtcbiAgICBjb2xvcjogI0RDQzE4RTsgfVxuXG4uaGlzdG9yeS1jdGEge1xuICBtYXJnaW4tdG9wOiAxLjc4NTcxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oaXN0b3J5LWN0YSB7XG4gICAgICBtYXJnaW4tdG9wOiAzLjU3MTQzcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNy4xNDI4NnJlbTsgfSB9XG5cbi50ZW1wbGF0ZS1tYXAgLm1hcC1jb250YWluZXIgI25laWdoYm9yaG9vZC1tYXAge1xuICBoZWlnaHQ6IDExMC45MzMzM3Z3OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudGVtcGxhdGUtbWFwIC5tYXAtY29udGFpbmVyICNuZWlnaGJvcmhvb2QtbWFwIHtcbiAgICAgIGhlaWdodDogMTAwdmg7IH0gfVxuXG4ubWFwLWFjY29yZGlvbi13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDJyZW0gMS43MTQyOXJlbSAzLjE0Mjg2cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWFwLWFjY29yZGlvbi13cmFwcGVyIHtcbiAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICBwYWRkaW5nOiAxMy43MTQyOXJlbSAwO1xuICAgICAgbWF4LWhlaWdodDogMTAwdmg7IH0gfVxuXG4jbWFwLWFjY29yZGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgI21hcC1hY2NvcmRpb24gLnVpLWFjY29yZGlvbi1oZWFkZXIge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LWZhbWlseTogXCJBY3RhIEhlYWRsaW5lIFcwMFwiLCBcIkFjdGEgSGVhZGxpbmVcIiwgc2VyaWY7XG4gICAgZm9udC1zaXplOiAxLjcxNDI5cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY2NjY3O1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjVweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBhZGRpbmc6IDEuMTQyODZyZW0gMDtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggIzRFNEQ1MDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gICAgI21hcC1hY2NvcmRpb24gLnVpLWFjY29yZGlvbi1oZWFkZXI6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbi1mb250XCI7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGNvbnRlbnQ6IFwi7oCSXCI7IH1cbiAgICAjbWFwLWFjY29yZGlvbiAudWktYWNjb3JkaW9uLWhlYWRlcjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgY29sb3I6ICNEQ0MxOEU7XG4gICAgICBmb250LXNpemU6IDEuMTQyODZyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgI21hcC1hY2NvcmRpb24gLnVpLWFjY29yZGlvbi1oZWFkZXI6YWZ0ZXIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS43MTQyOXJlbTtcbiAgICAgICAgICByaWdodDogMi4zNTcxNHJlbTsgfSB9XG4gICAgI21hcC1hY2NvcmRpb24gLnVpLWFjY29yZGlvbi1oZWFkZXIudWktYWNjb3JkaW9uLWhlYWRlci1hY3RpdmU6YWZ0ZXIge1xuICAgICAgZm9udC1mYW1pbHk6IFwiaWNvbi1mb250XCI7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGNvbnRlbnQ6IFwi7oCRXCI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAjbWFwLWFjY29yZGlvbiAudWktYWNjb3JkaW9uLWhlYWRlciB7XG4gICAgICAgIHBhZGRpbmc6IDIuNDI4NTdyZW0gNC4xNDI4NnJlbTsgfVxuICAgICAgICAjbWFwLWFjY29yZGlvbiAudWktYWNjb3JkaW9uLWhlYWRlcjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggIzRFNEQ1MDsgfSB9XG4gICNtYXAtYWNjb3JkaW9uIC51aS1hY2NvcmRpb24tY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggIzRFNEQ1MDsgfVxuXG4ubG9jYXRpb25zLXdyYXBwZXIge1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmxvY2F0aW9ucy13cmFwcGVyIC5sb2NhdGlvbnMtbGlzdCBsaSB7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAubG9jYXRpb25zLXdyYXBwZXIgLmxvY2F0aW9ucy1saXN0IGxpIC5ib3JkZXItYnRuIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMXJlbTsgfVxuICAgIC5sb2NhdGlvbnMtd3JhcHBlciAubG9jYXRpb25zLWxpc3QgbGkgLmxvY2F0aW9uLWxpbmsge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIHBhZGRpbmc6IDAuODU3MTRyZW0gMDtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDEuNzVweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAgIC5sb2NhdGlvbnMtd3JhcHBlciAubG9jYXRpb25zLWxpc3QgbGkgLmxvY2F0aW9uLWxpbms6YWZ0ZXIge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcImljb24tZm9udFwiO1xuICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIGNvbnRlbnQ6IFwi7oCCXCI7IH1cbiAgICAgICAgLmxvY2F0aW9ucy13cmFwcGVyIC5sb2NhdGlvbnMtbGlzdCBsaSAubG9jYXRpb24tbGluazphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICBjb2xvcjogI0RDQzE4RTtcbiAgICAgICAgICBmb250LXNpemU6IDAuNTcxNDNyZW07IH1cbiAgICAgICAgLmxvY2F0aW9ucy13cmFwcGVyIC5sb2NhdGlvbnMtbGlzdCBsaSAubG9jYXRpb24tbGluay5hY3RpdmU6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgtMSk7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAubG9jYXRpb25zLXdyYXBwZXIgLmxvY2F0aW9ucy1saXN0IGxpIC5sb2NhdGlvbi1saW5rIHtcbiAgICAgICAgICBwYWRkaW5nOiAxLjcxNDI5cmVtIDQuMTQyODZyZW07IH1cbiAgICAgICAgICAubG9jYXRpb25zLXdyYXBwZXIgLmxvY2F0aW9ucy1saXN0IGxpIC5sb2NhdGlvbi1saW5rOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNEQ0MxOEU7IH0gfVxuICAgIC5sb2NhdGlvbnMtd3JhcHBlciAubG9jYXRpb25zLWxpc3QgbGkgKyBsaSB7XG4gICAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggIzRFNEQ1MDsgfVxuICAubG9jYXRpb25zLXdyYXBwZXIgLmxvY2F0aW9ucy1saXN0IC5sb2NhdGlvbi1pbmZvIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGhlaWdodDogMDsgfVxuICAgIC5sb2NhdGlvbnMtd3JhcHBlciAubG9jYXRpb25zLWxpc3QgLmxvY2F0aW9uLWluZm8gPiAucm93IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtOHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtOHB4OyB9XG4gICAgICAubG9jYXRpb25zLXdyYXBwZXIgLmxvY2F0aW9ucy1saXN0IC5sb2NhdGlvbi1pbmZvID4gLnJvdzpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuNTcxNDNyZW07IH1cbiAgICAgIC5sb2NhdGlvbnMtd3JhcHBlciAubG9jYXRpb25zLWxpc3QgLmxvY2F0aW9uLWluZm8gPiAucm93Omxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjE0Mjg2cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxvY2F0aW9ucy13cmFwcGVyIC5sb2NhdGlvbnMtbGlzdCAubG9jYXRpb24taW5mbyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWN0aW9uLWNvbnRhaW5lci5mbG9vci1wbGFuLXNlY3Rpb24ge1xuICAgIHBhZGRpbmctdG9wOiA2Ljg1NzE0cmVtOyB9XG4gICAgLnNlY3Rpb24tY29udGFpbmVyLmZsb29yLXBsYW4tc2VjdGlvbiArIC5zZWN0aW9uLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogNi44NTcxNHJlbTsgfSB9XG5cbi52ZW51ZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC52ZW51ZS1saW5rIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogNTsgfVxuICAudmVudWUtbGluayAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDY4LjA4NTExdnc7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudmVudWUtbGluayAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgICAgaGVpZ2h0OiAyMHZ3OyB9IH1cbiAgICAudmVudWUtbGluayAuaW1hZ2UtY29udGFpbmVyOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzQsIDMyLCAzMiwgMC42NCk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDQwMG1zIGVhc2U7IH1cbiAgLnZlbnVlLWxpbmsgZmlnY2FwdGlvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH1cbiAgICAudmVudWUtbGluayBmaWdjYXB0aW9uIGgzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNzE0MjlyZW07IH1cbiAgLnZlbnVlLWxpbms6aG92ZXIgLmltYWdlLWNvbnRhaW5lcjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTYsIDU1LCA1OCwgMC4xNik7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VjdGlvbi1jb250YWluZXIudmVudWUtZGVzY3JpcHRpb24tc2VjdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IDkuMjg1NzFyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnNpbmdsZS1yb29tcyAubGFuZGluZy1jYXJvdXNlbCAuc2xpZGUtaG9sZGVyIHtcbiAgICBoZWlnaHQ6IDkwLjE0NDIzdnc7IH0gfVxuXG4uZ3JpZC10aWxlLnctaW1hZ2UtbGluayAuaW1hZ2UtY29udGFpbmVyOmhvdmVyIGltZyB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmdyaWQtdGlsZS53LWltYWdlLWxpbmsgLmltYWdlLWNvbnRhaW5lcjpob3ZlciAucm9vbXMtb3ZlcnZpZXctbGluayB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmdyaWQtdGlsZS53LWltYWdlLWxpbmsgLmltYWdlLWNvbnRhaW5lciBpbWcge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZS1pbi1vdXQ7IH1cblxuLmdyaWQtdGlsZS53LWltYWdlLWxpbmsgLnJvb21zLW92ZXJ2aWV3LWxpbmsge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZS1pbi1vdXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNSk7IH1cblxuLmdyaWQtdGlsZS53LWltYWdlLWxpbmsgLmhvdmVyLWNhcHRpb24ge1xuICB6LWluZGV4OiAxMTsgfVxuXG4uc2VjdGlvbi1jb250YWluZXIuc3BlY2lhbC1vZmZlcnMtc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDYuODU3MTRyZW0gMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNlY3Rpb24tY29udGFpbmVyLnNwZWNpYWwtb2ZmZXJzLXNlY3Rpb24ge1xuICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICBwYWRkaW5nOiAxOC4yODU3MXJlbSAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLnNsaWNrLXNsaWRlIHtcbiAgICBwYWRkaW5nOiAwIDEycHg7XG4gICAgcGVyc3BlY3RpdmU6IDkwMHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCA0MDBtcyBlYXNlOyB9XG4gICAgLnNwZWNpYWwtb2ZmZXJzLWNhcm91c2VsIC5zbGljay1zbGlkZSAuY2FyZC10aWxlIHtcbiAgICAgIG9wYWNpdHk6IDAuMTU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXZ3KSByb3RhdGVZKDI1ZGVnKTtcbiAgICAgIHRyYW5zaXRpb246IGluaGVyaXQ7IH1cbiAgICAuc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLnNsaWNrLXNsaWRlOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyMDIwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDV2dykgcm90YXRlWSgyNWRlZyk7IH1cbiAgICAuc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLnNsaWNrLXNsaWRlLnNsaWNrLWN1cnJlbnQgLmNhcmQtdGlsZSwgLnNwZWNpYWwtb2ZmZXJzLWNhcm91c2VsIC5zbGljay1zbGlkZS5zbGljay1hY3RpdmUgLmNhcmQtdGlsZSwgLnNwZWNpYWwtb2ZmZXJzLWNhcm91c2VsIC5zbGljay1zbGlkZS5zbGljay1jZW50ZXIgLmNhcmQtdGlsZSwgLnNwZWNpYWwtb2ZmZXJzLWNhcm91c2VsIC5zbGljay1zbGlkZTpudGgtY2hpbGQoMik6bnRoLWxhc3QtY2hpbGQoMikgLmNhcmQtdGlsZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKDApICFpbXBvcnRhbnQ7IH1cbiAgICAuc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLnNsaWNrLXNsaWRlLnNsaWNrLWN1cnJlbnQ6YWZ0ZXIsIC5zcGVjaWFsLW9mZmVycy1jYXJvdXNlbCAuc2xpY2stc2xpZGUuc2xpY2stYWN0aXZlOmFmdGVyLCAuc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLnNsaWNrLXNsaWRlLnNsaWNrLWNlbnRlcjphZnRlciwgLnNwZWNpYWwtb2ZmZXJzLWNhcm91c2VsIC5zbGljay1zbGlkZTpudGgtY2hpbGQoMik6bnRoLWxhc3QtY2hpbGQoMik6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgwKSAhaW1wb3J0YW50OyB9XG4gICAgLnNwZWNpYWwtb2ZmZXJzLWNhcm91c2VsIC5zbGljay1zbGlkZS5zbGljay1jdXJyZW50IH4gLnNsaWNrLXNsaWRlOm5vdCguc2xpY2stY3VycmVudCk6bm90KC5zbGljay1hY3RpdmUpOm5vdCguc2xpY2stY2VudGVyKSAuY2FyZC10aWxlLCAuc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLnNsaWNrLXNsaWRlLnNsaWNrLWFjdGl2ZSB+IC5zbGljay1zbGlkZTpub3QoLnNsaWNrLWN1cnJlbnQpOm5vdCguc2xpY2stYWN0aXZlKTpub3QoLnNsaWNrLWNlbnRlcikgLmNhcmQtdGlsZSwgLnNwZWNpYWwtb2ZmZXJzLWNhcm91c2VsIC5zbGljay1zbGlkZS5zbGljay1jZW50ZXIgfiAuc2xpY2stc2xpZGU6bm90KC5zbGljay1jdXJyZW50KTpub3QoLnNsaWNrLWFjdGl2ZSk6bm90KC5zbGljay1jZW50ZXIpIC5jYXJkLXRpbGUsIC5zcGVjaWFsLW9mZmVycy1jYXJvdXNlbCAuc2xpY2stc2xpZGU6bnRoLWNoaWxkKDIpOm50aC1sYXN0LWNoaWxkKDIpIH4gLnNsaWNrLXNsaWRlOm5vdCguc2xpY2stY3VycmVudCk6bm90KC5zbGljay1hY3RpdmUpOm5vdCguc2xpY2stY2VudGVyKSAuY2FyZC10aWxlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXZ3KSByb3RhdGVZKC0yNWRlZyk7IH1cbiAgICAuc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLnNsaWNrLXNsaWRlLnNsaWNrLWN1cnJlbnQgfiAuc2xpY2stc2xpZGU6bm90KC5zbGljay1jdXJyZW50KTpub3QoLnNsaWNrLWFjdGl2ZSk6bm90KC5zbGljay1jZW50ZXIpOmFmdGVyLCAuc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLnNsaWNrLXNsaWRlLnNsaWNrLWFjdGl2ZSB+IC5zbGljay1zbGlkZTpub3QoLnNsaWNrLWN1cnJlbnQpOm5vdCguc2xpY2stYWN0aXZlKTpub3QoLnNsaWNrLWNlbnRlcik6YWZ0ZXIsIC5zcGVjaWFsLW9mZmVycy1jYXJvdXNlbCAuc2xpY2stc2xpZGUuc2xpY2stY2VudGVyIH4gLnNsaWNrLXNsaWRlOm5vdCguc2xpY2stY3VycmVudCk6bm90KC5zbGljay1hY3RpdmUpOm5vdCguc2xpY2stY2VudGVyKTphZnRlciwgLnNwZWNpYWwtb2ZmZXJzLWNhcm91c2VsIC5zbGljay1zbGlkZTpudGgtY2hpbGQoMik6bnRoLWxhc3QtY2hpbGQoMikgfiAuc2xpY2stc2xpZGU6bm90KC5zbGljay1jdXJyZW50KTpub3QoLnNsaWNrLWFjdGl2ZSk6bm90KC5zbGljay1jZW50ZXIpOmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXZ3KSByb3RhdGVZKC0yNWRlZyk7IH0gfVxuXG4uc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLnNsaWNrLXByZXYsXG4uc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLnNsaWNrLW5leHQge1xuICB6LWluZGV4OiA1OyB9XG4gIC5zcGVjaWFsLW9mZmVycy1jYXJvdXNlbCAuc2xpY2stcHJldjpiZWZvcmUsXG4gIC5zcGVjaWFsLW9mZmVycy1jYXJvdXNlbCAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgIGZvbnQtc2l6ZTogMS43MTQyOXJlbTsgfVxuXG4uc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLnNsaWNrLXByZXYge1xuICBsZWZ0OiA1JTsgfVxuXG4uc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLnNsaWNrLW5leHQge1xuICByaWdodDogNSU7IH1cblxuLnNwZWNpYWwtb2ZmZXJzLWNhcm91c2VsIC5jYXJkLXRpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLnNwZWNpYWwtb2ZmZXJzLWNhcm91c2VsIC5jYXJkLXRpbGUgLmNhcmQtaW1hZ2UgLmltYWdlLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogNzguMjg3NDYlOyB9XG4gICAgLnNwZWNpYWwtb2ZmZXJzLWNhcm91c2VsIC5jYXJkLXRpbGUgLmNhcmQtY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgY29sb3I6ICMyMjIwMjA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgcGFkZGluZy1ib3R0b206IDQuMTQyODZyZW07IH1cbiAgICAgIC5zcGVjaWFsLW9mZmVycy1jYXJvdXNlbCAuY2FyZC10aWxlIC5jYXJkLWNvbnRlbnQgaDMge1xuICAgICAgICBjb2xvcjogIzIyMjAyMDsgfVxuICAgICAgICAuc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1jb250ZW50IGgzIHNtYWxsIHtcbiAgICAgICAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgICAgLnNwZWNpYWwtb2ZmZXJzLWNhcm91c2VsIC5jYXJkLXRpbGUgLmNhcmQtY29udGVudCAucmctYnRuLCAuc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1jb250ZW50IC5ib3JkZXItYnRuIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRENDMThFO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1pbWFnZSAuaW1hZ2UtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA3MSU7IH1cbiAgICAuc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzODM3M0E7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBwYWRkaW5nOiAzLjU3MTQzcmVtIDIuNTcxNDNyZW0gMnJlbTsgfVxuICAgICAgLnNwZWNpYWwtb2ZmZXJzLWNhcm91c2VsIC5jYXJkLXRpbGUgLmNhcmQtY29udGVudCBoNSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgICAgIC5zcGVjaWFsLW9mZmVycy1jYXJvdXNlbCAuY2FyZC10aWxlIC5jYXJkLWNvbnRlbnQgcCAucmctYnRuIHtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgIC5zcGVjaWFsLW9mZmVycy1jYXJvdXNlbCAuY2FyZC10aWxlIC5jYXJkLWNvbnRlbnQgcCAucmctYnRuICsgYSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxLjcxNDI5cmVtOyB9XG4gICAgLnNwZWNpYWwtb2ZmZXJzLWNhcm91c2VsIC5jYXJkLXRpbGUuZmVhdHVyZWQgLmNhcmQtY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRENDMThFO1xuICAgICAgY29sb3I6ICMyMjIwMjA7IH1cbiAgICAgIC5zcGVjaWFsLW9mZmVycy1jYXJvdXNlbCAuY2FyZC10aWxlLmZlYXR1cmVkIC5jYXJkLWNvbnRlbnQgaDMge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDsgfSB9XG5cbi5tb2R1bGUtdmVudWUtY2Fyb3VzZWwgLmNhcmQtdGlsZSAuY2FyZC1pbWFnZTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5mbG9hdGluZy1jYXB0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYm90dG9tOiAyMCU7XG4gIGxlZnQ6IDExJTtcbiAgcmlnaHQ6IDYwJTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUlKTtcbiAgcGFkZGluZzogMi4yODU3MXJlbSAzLjQyODU3cmVtIDIuMjg1NzFyZW07XG4gIGNvbG9yOiAjMUExODE4O1xuICB6LWluZGV4OiA1O1xuICBib3gtc2hhZG93OiAwIDhweCAyNHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE2KTsgfVxuICAuZmxvYXRpbmctY2FwdGlvbiBoNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4xNDI4NnJlbTsgfVxuICAuZmxvYXRpbmctY2FwdGlvbiBwOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5mbG9hdGluZy1jYXB0aW9uIHtcbiAgICAgIHJpZ2h0OiA1MCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZsb2F0aW5nLWNhcHRpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uZmxvb3JwbGFuLXRodW1ibmFpbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uZmxvb3JwbGFuLWJ0biB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogOC4zMzMzMyU7XG4gIHJpZ2h0OiAxNi42NjY2NyU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGREZERkQ7XG4gIHdpZHRoOiAzLjQyODU3cmVtO1xuICBoZWlnaHQ6IDMuNDI4NTdyZW07XG4gIGxpbmUtaGVpZ2h0OiAzLjQyODU3cmVtO1xuICBjb2xvcjogIzFBMTgxODtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnZlbnVlLWRlc2NyaXB0aW9uLXNlY3Rpb24gLmNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDIuMjg1NzFyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWN0aW9uLWNvbnRhaW5lci52ZW51ZS1kZXNjcmlwdGlvbi1zZWN0aW9uICsgLnNlY3Rpb24tY29udGFpbmVyLmZvcm0tc2VjdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMTIuODU3MTRyZW07IH0gfVxuXG4vKiBlbmRpbmplY3QgKi9cbiIsIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjQuM1xuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gRGVwZW5kZW5jaWVzXG5AaW1wb3J0ICcuLi9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy9taXNzaW5nLWRlcGVuZGVuY2llcyc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvdHJ1ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9jb250YWluJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyBTZXR0aW5nc1xuLy8gaW1wb3J0IHlvdXIgb3duIGBzZXR0aW5nc2AgaGVyZSBvclxuLy8gaW1wb3J0IGFuZCBtb2RpZnkgdGhlIGRlZmF1bHQgc2V0dGluZ3MgdGhyb3VnaFxuLy8gQGltcG9ydCAnc2V0dGluZ3Mvc2V0dGluZ3MnO1xuXG4vLyBTYXNzIHV0aWxpdGllc1xuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gR2xvYmFsIHZhcmlhYmxlcyBhbmQgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAneHktZ3JpZC94eS1ncmlkJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICdmb3Jtcy9mb3Jtcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2xvc2UtYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJpbGxkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxleCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Jlc3BvbnNpdmUtZW1iZWQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYWJlbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhLW9iamVjdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51LWljb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9vZmYtY2FudmFzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb3JiaXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmV2ZWFsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RpY2t5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3dpdGNoJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFibGUnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGl0bGUtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9wLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RodW1ibmFpbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Rvb2x0aXAnO1xuQGltcG9ydCAncHJvdG90eXBlL3Byb3RvdHlwZSc7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoXG4gICRmbGV4OiB0cnVlLFxuICAkcHJvdG90eXBlOiBmYWxzZVxuKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICR4eS1ncmlkIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuXG4gIEBpZiAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XG4gIH1cblxuICBAaWYgJHByb3RvdHlwZSB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlcztcbiAgfVxufVxuIiwiLy8gSGVscGVyIGZ1bmN0aW9uIGZvciB0aGUgbm9ybWFsaXplKCkgbWl4aW4uXG5AZnVuY3Rpb24gX25vcm1hbGl6ZS1pbmNsdWRlKCRzZWN0aW9uLCAkZXhjbHVkZTogbnVsbCkge1xuICAvLyBJbml0aWFsaXplIHRoZSBnbG9iYWwgdmFyaWFibGVzIG5lZWRlZCBieSB0aGlzIGZ1bmN0aW9uLlxuICBAaWYgbm90IGdsb2JhbF92YXJpYWJsZV9leGlzdHMoX25vcm1hbGl6ZS1pbmNsdWRlKSB7XG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogKCkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiAoKSAhZ2xvYmFsO1xuICB9XG4gIC8vIFNpbmNlIHdlIGFyZSBnaXZlbiAyIHBhcmFtZXRlcnMsIHNldCB0aGUgZ2xvYmFsIHZhcmlhYmxlcy5cbiAgQGlmICRleGNsdWRlICE9IG51bGwge1xuICAgICRpbmNsdWRlOiAkc2VjdGlvbjtcbiAgICAvLyBTYXNzIGRvZXNuJ3QgaGF2ZSBzdGF0aWMgdmFyaWFibGVzLCBzbyB0aGUgd29yay1hcm91bmQgaXMgdG8gc3R1ZmYgdGhlc2VcbiAgICAvLyB2YWx1ZXMgaW50byBnbG9iYWwgdmFyaWFibGVzIHNvIHdlIGNhbiBhY2Nlc3MgdGhlbSBpbiBmdXR1cmUgY2FsbHMuXG4gICAgJF9ub3JtYWxpemUtaW5jbHVkZTogaWYodHlwZS1vZigkaW5jbHVkZSkgPT0gJ2xpc3QnLCAkaW5jbHVkZSwgKCRpbmNsdWRlKSkgIWdsb2JhbDtcbiAgICAkX25vcm1hbGl6ZS1leGNsdWRlOiBpZih0eXBlLW9mKCRleGNsdWRlKSA9PSAnbGlzdCcsICRleGNsdWRlLCAoJGV4Y2x1ZGUpKSAhZ2xvYmFsO1xuICAgIEByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmICRzZWN0aW9uIGlzIGluIHRoZSAkaW5jbHVkZSBsaXN0LlxuICBAaWYgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgJHNlY3Rpb24pIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgLy8gSWYgJGluY2x1ZGUgaXMgc2V0IHRvIChhbGwpLCBtYWtlIHN1cmUgJHNlY3Rpb24gaXMgbm90IGluICRleGNsdWRlLlxuICBAZWxzZSBpZiBub3QgaW5kZXgoJF9ub3JtYWxpemUtZXhjbHVkZSwgJHNlY3Rpb24pIGFuZCBpbmRleCgkX25vcm1hbGl6ZS1pbmNsdWRlLCBhbGwpIHtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cbiAgQHJldHVybiBmYWxzZTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZSgkaW5jbHVkZTogKGFsbCksICRleGNsdWRlOiAoKSkge1xuICAvLyBJbml0aWFsaXplIHRoZSBoZWxwZXIgZnVuY3Rpb24gYnkgcGFzc2luZyBpdCB0aGlzIG1peGluJ3MgcGFyYW1ldGVycy5cbiAgJGluaXQ6IF9ub3JtYWxpemUtaW5jbHVkZSgkaW5jbHVkZSwgJGV4Y2x1ZGUpO1xuXG4gIC8vIElmIHdlJ3ZlIGN1c3RvbWl6ZWQgYW55IGZvbnQgdmFyaWFibGVzLCB3ZSdsbCBuZWVkIGV4dHJhIHByb3BlcnRpZXMuXG4gIEBpZiAkYmFzZS1mb250LXNpemUgIT0gMTZweFxuICAgIG9yICRiYXNlLWxpbmUtaGVpZ2h0ICE9IDI0cHhcbiAgICBvciAkYmFzZS11bml0ICE9ICdlbSdcbiAgICBvciAkaDEtZm9udC1zaXplICE9IDIgICAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDItZm9udC1zaXplICE9IDEuNSAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDMtZm9udC1zaXplICE9IDEuMTcgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDQtZm9udC1zaXplICE9IDEgICAgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDUtZm9udC1zaXplICE9IDAuODMgKiAkYmFzZS1mb250LXNpemVcbiAgICBvciAkaDYtZm9udC1zaXplICE9IDAuNjcgKiAkYmFzZS1mb250LXNpemUge1xuICAgICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtOiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvKiEgbm9ybWFsaXplLXNjc3MgfCBNSVQvR1BMdjIgTGljZW5zZSB8IGJpdC5seS9ub3JtYWxpemUtc2NzcyAqL1xuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZG9jdW1lbnQpIHtcbiAgICAvKiBEb2N1bWVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDMuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAgICAgKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gICAgICovXG5cbiAgICBodG1sIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTsgLyogMSAqL1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLy8gQ29ycmVjdCBvbGQgYnJvd3NlciBidWcgdGhhdCBwcmV2ZW50ZWQgYWNjZXNzaWJsZSByZXNpemluZyBvZiB0ZXh0XG4gICAgICAgIC8vIHdoZW4gcm9vdCBmb250LXNpemUgaXMgc2V0IHdpdGggcHggb3IgZW0uXG4gICAgICAgIGZvbnQtc2l6ZTogKCRiYXNlLWZvbnQtc2l6ZSAvIDE2cHgpICogMTAwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDIgKi9cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDIgKi9cbiAgICAgIH1cbiAgICAgIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDMgKi9cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHNlY3Rpb25zKSB7XG4gICAgLyogU2VjdGlvbnNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBib2R5IHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGFydGljbGUsXG4gICAgYXNpZGUsXG4gICAgZm9vdGVyLFxuICAgIGhlYWRlcixcbiAgICBuYXYsXG4gICAgc2VjdGlvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gICAgICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGgxIHtcbiAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8qIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiAqL1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIG1hcmdpbjogMC42N2VtIDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgyLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMy1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgzLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg0IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNC1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg0LWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg1IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNS1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg1LWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg2IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg2LWZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShncm91cGluZykge1xuICAgIC8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIC8qKlxuICAgICAgICogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAqL1xuXG4gICAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cblxuICAgICAgZGwsXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIFR1cm4gb2ZmIG1hcmdpbnMgb24gbmVzdGVkIGxpc3RzLlxuICAgICAgICovXG5cbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBvbCxcbiAgICAgICAgdWwge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBkZCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG5cbiAgICAgIG9sLFxuICAgICAgdWwge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGZpZ2NhcHRpb24sXG4gICAgZmlndXJlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAgICAgKi9cblxuICAgIGZpZ3VyZSB7XG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgJGluZGVudC1hbW91bnQpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDFlbSAkaW5kZW50LWFtb3VudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgICAqL1xuXG4gICAgaHIge1xuICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgICAgIGhlaWdodDogMDsgLyogMSAqL1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cblxuICAgIG1haW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIC8qKlxuICAgICAgICogU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAqL1xuXG4gICAgICBwLFxuICAgICAgcHJlIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgcHJlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGxpbmtzKSB7XG4gICAgLyogTGlua3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAgICAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAgICAgKi9cblxuICAgIGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIDEgKi9cbiAgICAgIC13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6IG9iamVjdHM7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIG91dGxpbmUgb24gZm9jdXNlZCBsaW5rcyB3aGVuIHRoZXkgYXJlIGFsc28gYWN0aXZlIG9yIGhvdmVyZWRcbiAgICAgKiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cblxuICAgIGE6YWN0aXZlLFxuICAgIGE6aG92ZXIge1xuICAgICAgb3V0bGluZS13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHRleHQpIHtcbiAgICAvKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGFiYnJbdGl0bGVdIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAgICAgKi9cblxuICAgIGIsXG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgY29kZSxcbiAgICBrYmQsXG4gICAgc2FtcCB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICAgICAqL1xuXG4gICAgZGZuIHtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBtYXJrIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogODAlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgICAqIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHN1YixcbiAgICBzdXAge1xuICAgICAgZm9udC1zaXplOiA3NSU7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICB9XG5cbiAgICBzdWIge1xuICAgICAgYm90dG9tOiAtMC4yNWVtO1xuICAgIH1cblxuICAgIHN1cCB7XG4gICAgICB0b3A6IC0wLjVlbTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGVtYmVkZGVkKSB7XG4gICAgLyogRW1iZWRkZWQgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGF1ZGlvLFxuICAgIHZpZGVvIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICAgICAqL1xuXG4gICAgYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuXG4gICAgc3ZnOm5vdCg6cm9vdCkge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGZvcm1zKSB7XG4gICAgLyogRm9ybXNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBidXR0b24sXG4gICAgaW5wdXQsXG4gICAgb3B0Z3JvdXAsXG4gICAgc2VsZWN0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1mb250LWZhbWlseTsgLyogMSAqL1xuICAgICAgZm9udC1zaXplOiAxMDAlOyAvKiAxICovXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBsaW5lLWhlaWdodDogKCRiYXNlLWxpbmUtaGVpZ2h0IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICAgICAgfVxuICAgICAgbWFyZ2luOiAwOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5cbiAgICBidXR0b24ge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gICAgICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIHNlbGVjdCB7IC8qIDEgKi9cbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gICAgfVxuXG4gICAgYnV0dG9uLFxuICAgIFt0eXBlPVwiYnV0dG9uXCJdLFxuICAgIFt0eXBlPVwicmVzZXRcIl0sXG4gICAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICAgKi9cblxuICAgICAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgKi9cblxuICAgICAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuXG4gICAgaW5wdXQge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgICAgcGFkZGluZzogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXG4gICAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLyogMiAqL1xuXG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi9cblxuICAgICAgJjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAxICovXG4gICAgICBmb250OiBpbmhlcml0OyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBmaWVsZHNldCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICAgICAgbWFyZ2luOiAwIDJweDtcbiAgICAgIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgICAgKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gICAgICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBsZWdlbmQge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICAgICAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgICAgIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICAgICAgcGFkZGluZzogMDsgLyogMyAqL1xuICAgICAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgICAqL1xuXG4gICAgcHJvZ3Jlc3Mge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFLlxuICAgICAqL1xuXG4gICAgdGV4dGFyZWEge1xuICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShpbnRlcmFjdGl2ZSkge1xuICAgIC8qIEludGVyYWN0aXZlXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICAgICAqL1xuXG4gICAgZGV0YWlscyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHN1bW1hcnkge1xuICAgICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICAgIH1cblxuICAgIC8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBtZW51IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKlxuICAgICAgICAgKiAxLiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2luLlxuICAgICAgICAgKiAyLiBTZXQgY29uc2lzdGVudCBzcGFjZSBmb3IgdGhlIGxpc3Qgc3R5bGUgaW1hZ2UuXG4gICAgICAgICAqL1xuXG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTsgLyogMSAqL1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAkaW5kZW50LWFtb3VudDsgLyogMiAqL1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAgICovXG5cbiAgICAgICAgbWVudSAmLFxuICAgICAgICBvbCAmLFxuICAgICAgICB1bCAmIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKHNjcmlwdGluZykge1xuICAgIC8qIFNjcmlwdGluZ1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cblxuICAgIGNhbnZhcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICB0ZW1wbGF0ZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaGlkZGVuKSB7XG4gICAgLyogSGlkZGVuXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAgICAgKi9cblxuICAgIFtoaWRkZW5dIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gVmFyaWFibGVzXG4vL1xuLy8gWW91IGNhbiBvdmVycmlkZSB0aGUgZGVmYXVsdCB2YWx1ZXMgYnkgc2V0dGluZyB0aGUgdmFyaWFibGVzIGluIHlvdXIgU2Fzc1xuLy8gYmVmb3JlIGltcG9ydGluZyB0aGUgbm9ybWFsaXplLXNjc3MgbGlicmFyeS5cblxuLy8gVGhlIGZvbnQgc2l6ZSBzZXQgb24gdGhlIHJvb3QgaHRtbCBlbGVtZW50LlxuJGJhc2UtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgYmFzZSBsaW5lIGhlaWdodCBkZXRlcm1pbmVzIHRoZSBiYXNpYyB1bml0IG9mIHZlcnRpY2FsIHJoeXRobS5cbiRiYXNlLWxpbmUtaGVpZ2h0OiAyNHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgbGVuZ3RoIHVuaXQgaW4gd2hpY2ggdG8gb3V0cHV0IHZlcnRpY2FsIHJoeXRobSB2YWx1ZXMuXG4vLyBTdXBwb3J0ZWQgdmFsdWVzOiBweCwgZW0sIHJlbS5cbiRiYXNlLXVuaXQ6ICdlbScgIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5LlxuJGJhc2UtZm9udC1mYW1pbHk6IHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vIFRoZSBmb250IHNpemVzIGZvciBoMS1oNi5cbiRoMS1mb250LXNpemU6IDIgICAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAxLjUgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogMS4xNyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6IDEgICAgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDUtZm9udC1zaXplOiAwLjgzICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg2LWZvbnQtc2l6ZTogMC42NyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuLy8gVGhlIGFtb3VudCBsaXN0cyBhbmQgYmxvY2txdW90ZXMgYXJlIGluZGVudGVkLlxuJGluZGVudC1hbW91bnQ6IDQwcHggIWRlZmF1bHQ7XG5cbi8vIFRoZSBmb2xsb3dpbmcgdmFyaWFibGUgY29udHJvbHMgd2hldGhlciBub3JtYWxpemUtc2NzcyB3aWxsIG91dHB1dFxuLy8gZm9udC1zaXplcywgbGluZS1oZWlnaHRzIGFuZCBibG9jay1sZXZlbCB0b3AvYm90dG9tIG1hcmdpbnMgdGhhdCBmb3JtIGEgYmFzaWNcbi8vIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgcGFnZSwgd2hpY2ggZGlmZmVycyBmcm9tIHRoZSBvcmlnaW5hbCBOb3JtYWxpemUuY3NzLlxuLy8gSG93ZXZlciwgY2hhbmdpbmcgYW55IG9mIHRoZSB2YXJpYWJsZXMgYWJvdmUgd2lsbCBjYXVzZVxuLy8gJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0gdG8gYmUgYXV0b21hdGljYWxseSBzZXQgdG8gdHJ1ZS5cbiRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtOiBmYWxzZSAhZGVmYXVsdDtcbiIsIi8vXG4vLyBWZXJ0aWNhbCBSaHl0aG1cbi8vXG4vLyBUaGlzIGlzIHRoZSBtaW5pbWFsIGFtb3VudCBvZiBjb2RlIG5lZWRlZCB0byBjcmVhdGUgdmVydGljYWwgcmh5dGhtIGluIG91clxuLy8gQ1NTLiBJZiB5b3UgYXJlIGxvb2tpbmcgZm9yIGEgcm9idXN0IHNvbHV0aW9uLCBsb29rIGF0IHRoZSBleGNlbGxlbnQgVHlwZXlcbi8vIGxpYnJhcnkuIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2pwdGFyYW50by90eXBleVxuXG5AZnVuY3Rpb24gbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplLCAkdW5pdDogJGJhc2UtdW5pdCkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9IHB4IHtcbiAgICBAZXJyb3IgXCJUaGUgbm9ybWFsaXplIHZlcnRpY2FsLXJoeXRobSBtb2R1bGUgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBAaWYgJHVuaXQgPT0gcmVtIHtcbiAgICBAcmV0dXJuICgkdmFsdWUgLyAkYmFzZS1mb250LXNpemUpICogMXJlbTtcbiAgfVxuICBAZWxzZSBpZiAkdW5pdCA9PSBlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJHJlbGF0aXZlLXRvKSAqIDFlbTtcbiAgfVxuICBAZWxzZSB7IC8vICR1bml0ID09IHB4XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbn1cblxuQG1peGluIG5vcm1hbGl6ZS1mb250LXNpemUoJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdweCcge1xuICAgIEBlcnJvciBcIm5vcm1hbGl6ZS1mb250LXNpemUoKSBvbmx5IHN1cHBvcnRzIHB4IGlucHV0cy4gVGhlIHR5cGV5IGxpYnJhcnkgaXMgYmV0dGVyLlwiO1xuICB9XG4gIGZvbnQtc2l6ZTogbm9ybWFsaXplLXJoeXRobSgkdmFsdWUsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtcmh5dGhtKCRwcm9wZXJ0eSwgJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgJHZhbHVlLWxpc3Q6ICR2YWx1ZXM7XG4gICRzZXA6IHNwYWNlO1xuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSAnbGlzdCcge1xuICAgICRzZXA6IGxpc3Qtc2VwYXJhdG9yKCR2YWx1ZXMpO1xuICB9XG4gIEBlbHNlIHtcbiAgICAkdmFsdWUtbGlzdDogYXBwZW5kKCgpLCAkdmFsdWVzKTtcbiAgfVxuXG4gICRub3JtYWxpemVkLXZhbHVlczogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkdmFsdWUtbGlzdCB7XG4gICAgQGlmIHVuaXRsZXNzKCR2YWx1ZSkgYW5kICR2YWx1ZSAhPSAwIHtcbiAgICAgICR2YWx1ZTogJHZhbHVlICogbm9ybWFsaXplLXJoeXRobSgkYmFzZS1saW5lLWhlaWdodCwgJHJlbGF0aXZlLXRvKTtcbiAgICB9XG4gICAgJG5vcm1hbGl6ZWQtdmFsdWVzOiBhcHBlbmQoJG5vcm1hbGl6ZWQtdmFsdWVzLCAkdmFsdWUsICRzZXApO1xuICB9XG4gICN7JHByb3BlcnR5fTogJG5vcm1hbGl6ZWQtdmFsdWVzO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLW1hcmdpbigkdmFsdWVzLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSkge1xuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKG1hcmdpbiwgJHZhbHVlcywgJHJlbGF0aXZlLXRvKTtcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkZm9udC1zaXplLCAkbWluLWxpbmUtcGFkZGluZzogMnB4KSB7XG4gICRsaW5lczogY2VpbCgkZm9udC1zaXplIC8gJGJhc2UtbGluZS1oZWlnaHQpO1xuICAvLyBJZiBsaW5lcyBhcmUgY3JhbXBlZCBpbmNsdWRlIHNvbWUgZXh0cmEgbGVhZGluZy5cbiAgQGlmICgkbGluZXMgKiAkYmFzZS1saW5lLWhlaWdodCAtICRmb250LXNpemUpIDwgKCRtaW4tbGluZS1wYWRkaW5nICogMikge1xuICAgICRsaW5lczogJGxpbmVzICsgMTtcbiAgfVxuICBAaW5jbHVkZSBub3JtYWxpemUtcmh5dGhtKGxpbmUtaGVpZ2h0LCAkbGluZXMsICRmb250LXNpemUpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIGZvcmNlLWF0dHJpYnV0ZS1uZXN0aW5nLCBmb3JjZS1wc2V1ZG8tbmVzdGluZywgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIHByaW1hcnk6ICMxNzc5YmEsXG4gIHNlY29uZGFyeTogIzc2NzY3NixcbiAgc3VjY2VzczogIzNhZGI3NixcbiAgd2FybmluZzogI2ZmYWUwMCxcbiAgYWxlcnQ6ICNjYzRiMzcsXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbGlnaHQgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBtZWRpdW0gZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgZGFyayBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmF5OiAjOGE4YThhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgYmxhY2sgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibGFjazogIzBhMGEwYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIHdoaXRlIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kd2hpdGU6ICNmZWZlZmUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIExpc3RcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBhbnRpYWxpYXNlZCB0eXBlLCB1c2luZyB0aGUgYC13ZWJraXQtZm9udC1zbW9vdGhpbmdgIGFuZCBgLW1vei1vc3gtZm9udC1zbW9vdGhpbmdgIENTUyBwcm9wZXJ0aWVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIG1hcmdpbiBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcGFkZGluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBvc2l0aW9uaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIG5vcm1hbCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIGJvbGQgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBlbGVtZW50cyB0aGF0IGhhdmUgYSBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1yYWRpdXM6IDAgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBDYW4gYmUgb3ZlcndyaXR0ZW4gYXQgaW5kaXZpZHVhbCBtZW51IGNvbXBvbmVudCBsZXZlbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIE5lc3RlZCBtYXJnaW4gZm9yIHN1Ym1lbnUuXG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIHRleHQgZGlyZWN0aW9uIG9mIHRoZSBDU1MuIENhbiBiZSBlaXRoZXIgYGx0cmAgb3IgYHJ0bGAuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGZvciBjb21wb25lbnRzIHRoYXQgc3VwcG9ydCBpdC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLWZsZXhib3g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVkIHJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIHByb3RvdHlwZXMgaWYgYXBwbGljYWJsZVxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJ1dHRvbiBjdXJzb3IncyB2YWx1ZSwgYGF1dG9gIGJ5IGRlZmF1bHRcbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG8gIWRlZmF1bHQ7XG5cbkBpZiBub3QgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICBAZXJyb3IgJ0luICRmb3VuZGF0aW9uLXBhbGV0dGUsIHlvdSBtdXN0IGhhdmUgYSBjb2xvciBuYW1lZCBcInByaW1hcnlcIi4nO1xufVxuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgdGV4dCBkaXJlY3Rpb25cbiRnbG9iYWwtbGVmdDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIHJpZ2h0LCBsZWZ0KTtcbiRnbG9iYWwtcmlnaHQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBsZWZ0LCByaWdodCk7XG5cbi8vLyBHbG9iYWwgdG9sZXJhbmNlIGZvciBjb2xvciBwaWNrIGNvbnRyYXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMCAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuJHByaW1hcnktY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRzZWNvbmRhcnktY29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuJHN1Y2Nlc3MtY29sb3I6IGdldC1jb2xvcihzdWNjZXNzKTtcbiR3YXJuaW5nLWNvbG9yOiBnZXQtY29sb3Iod2FybmluZyk7XG4kYWxlcnQtY29sb3I6IGdldC1jb2xvcihhbGVydCk7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXMge1xuICBAaW5jbHVkZSAtemYtbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6ICcjey16Zi1icC1zZXJpYWxpemUoJGJyZWFrcG9pbnRzKX0nO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIE1ha2UgcmVzZXQgaW5oZXJpdCBmb250LWZhbWlseSBpbnN0ZWFkIG9mIHNldHRpbmdzIHNhbnMtc2VyaWZcbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSW50ZXJuYWwgY2xhc3NlcyB0byBzaG93L2hpZGUgZWxlbWVudHMgaW4gSmF2YVNjcmlwdFxuICAuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pcy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gTG9hZHMgbm9ybWFsaXplLmNzcy5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiAtemYtbm9ybWFsaXplIHtcbiAgQGluY2x1ZGUgbm9ybWFsaXplKCk7XG59XG4iLCIvLyAgRm91bmRhdGlvbiBmb3IgU2l0ZXMgU2V0dGluZ3Ncbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy9cbi8vICBUYWJsZSBvZiBDb250ZW50czpcbi8vXG4vLyAgIDEuIEdsb2JhbFxuLy8gICAyLiBCcmVha3BvaW50c1xuLy8gICAzLiBUaGUgR3JpZFxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vICAgNS4gVHlwb2dyYXBoeSBIZWxwZXJzXG4vLyAgIDYuIEFiaWRlXG4vLyAgIDcuIEFjY29yZGlvblxuLy8gICA4LiBBY2NvcmRpb24gTWVudVxuLy8gICA5LiBCYWRnZVxuLy8gIDEwLiBCcmVhZGNydW1ic1xuLy8gIDExLiBCdXR0b25cbi8vICAxMi4gQnV0dG9uIEdyb3VwXG4vLyAgMTMuIENhbGxvdXRcbi8vICAxNC4gQ2FyZFxuLy8gIDE1LiBDbG9zZSBCdXR0b25cbi8vICAxNi4gRHJpbGxkb3duXG4vLyAgMTcuIERyb3Bkb3duXG4vLyAgMTguIERyb3Bkb3duIE1lbnVcbi8vICAxOS4gRm9ybXNcbi8vICAyMC4gTGFiZWxcbi8vICAyMS4gTWVkaWEgT2JqZWN0XG4vLyAgMjIuIE1lbnVcbi8vICAyMy4gTWV0ZXJcbi8vICAyNC4gT2ZmLWNhbnZhc1xuLy8gIDI1LiBPcmJpdFxuLy8gIDI2LiBQYWdpbmF0aW9uXG4vLyAgMjcuIFByb2dyZXNzIEJhclxuLy8gIDI4LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAgMjkuIFJldmVhbFxuLy8gIDMwLiBTbGlkZXJcbi8vICAzMS4gU3dpdGNoXG4vLyAgMzIuIFRhYmxlXG4vLyAgMzMuIFRhYnNcbi8vICAzNC4gVGh1bWJuYWlsXG4vLyAgMzUuIFRpdGxlIEJhclxuLy8gIDM2LiBUb29sdGlwXG4vLyAgMzcuIFRvcCBCYXJcblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gMS4gR2xvYmFsXG4vLyAtLS0tLS0tLS1cblxuJGdsb2JhbC1mb250LXNpemU6IDE0cHg7XG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMzkyKTtcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuXHRwcmltYXJ5OiAjRENDMThFLFxuXHRzZWNvbmRhcnk6ICM5ZDgwNDcsXG5cdHN1Y2Nlc3M6ICMzYWRiNzYsXG5cdHdhcm5pbmc6ICNmZmFlMDAsXG5cdGFsZXJ0OiAjY2M0YjM3LFxuKTtcbi8vICRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbi8vIFx0cHJpbWFyeTogI0RDQzE4RSxcbi8vIFx0c2Vjb25kYXJ5OiAjQjE5MDUwLFxuLy8gXHRzdWNjZXNzOiAjM2FkYjc2LFxuLy8gXHR3YXJuaW5nOiAjZmZhZTAwLFxuLy8gXHRhbGVydDogI2NjNGIzNyxcbi8vICk7XG4kZm9vdGVyLWJhY2tncm91bmQ6ICMxQTE4MTg7XG4kZm9vdGVyLXNlcGVyYXRvci1jb2xvcjogIzM4MzczQTtcblxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG4kYWNjZW50LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuJGxpZ2h0LWdyYXk6ICM5MDhmOGY7XG4kbWVkaXVtLWdyYXk6ICM0RTRENTA7XG4kZGFyay1ncmF5OiAjMjIyMDIwO1xuJGJsYWNrOiAjMUExODE4O1xuJHdoaXRlOiAjZmZmO1xuJGJvZHktYmFja2dyb3VuZDogIzIyMjAyMDtcbiRib2R5LWZvbnQtY29sb3I6ICR3aGl0ZTtcbiRib2R5LWZvbnQtZmFtaWx5OiAnQXZlbmlyIE5leHQgVzAxJywgJ0F2ZW5pciBOZXh0JywgQXZlbmlyLCBGdXR1cmEsICdDZW50dXJ5IEdvdGhpYycsIHNhbnMtc2VyaWY7XG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZTtcbiRnbG9iYWwtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC1wYWRkaW5nOiAxcmVtO1xuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XG4kZ2xvYmFsLXdlaWdodC1ib2xkOiA2MDA7XG4kZ2xvYmFsLXJhZGl1czogMnB4O1xuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xuJGdsb2JhbC1mbGV4Ym94OiB0cnVlO1xuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlO1xuXG4kZmVhdHVyZWQtb2ZmZXItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kY2FyZC1jb250ZW50LWJhY2tncm91bmQ6ICNFQkU5RTg7XG5cbi8vIDIuIEJyZWFrcG9pbnRzXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWtwb2ludHM6IChcblx0c21hbGw6IDAsXG5cdG1lZGl1bTogNjQwcHgsXG5cdGxhcmdlOiAxMDI0cHgsXG5cdHhsYXJnZTogJGdsb2JhbC13aWR0aCxcblx0eHhsYXJnZTogMTYwMHB4LFxuKTtcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UgeGxhcmdlIHh4bGFyZ2UpO1xuXG4vLyAzLiBUaGUgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJGdyaWQtcm93LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcbiRncmlkLWNvbHVtbi1ndXR0ZXI6IChcblx0c21hbGw6IDE2cHgsXG5cdG1lZGl1bTogMjRweCxcbik7XG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogZmFsc2U7XG4kYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWw7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiRoZWFkZXItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGhlYWRlci1saW5laGVpZ2h0OiAoMzgvMzIpO1xuJGhlYWRlci1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNCk7XG4kaGVhZGVyLXN0eWxlczogKFxuXHRzbWFsbDogKFxuXHRcdCdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuXHRcdCdoMic6ICgnZm9udC1zaXplJzogMjAsICdtYXJnaW4tYm90dG9tJzogMjQpLFxuXHRcdCdoMyc6ICgnZm9udC1zaXplJzogMjApLFxuXHRcdCdoNCc6ICgnZm9udC1zaXplJzogMTgsICdtYXJnaW4tYm90dG9tJzogMzIpLFxuXHRcdCdoNSc6ICgnZm9udC1zaXplJzogMTQsICdtYXJnaW4tYm90dG9tJzogMzIpLFxuXHRcdCdoNic6ICgnZm9udC1zaXplJzogMTMsICdtYXJnaW4tYm90dG9tJzogMzIpLFxuXHQpLFxuXHRtZWRpdW06IChcblx0XHQnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDMyLCAnbWFyZ2luLWJvdHRvbSc6IDI0KSxcblx0XHQnaDInOiAoJ2ZvbnQtc2l6ZSc6IDI4KSxcblx0XHQnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDI0LCAnbWFyZ2luLWJvdHRvbSc6IDIwKSxcblx0XHQnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcblx0XHQnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE2LCAnbWFyZ2luLWJvdHRvbSc6IDMyKSxcblx0XHQnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE0LCAnbWFyZ2luLWJvdHRvbSc6IDMyKSxcblx0KSxcbik7XG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kc21hbGwtZm9udC1zaXplOiAxcmVtO1xuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAoMjQvMTQpO1xuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kY29kZS1jb2xvcjogJGJsYWNrO1xuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG5cbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xuXG4vLyA2LiBBYmlkZVxuLy8gLS0tLS0tLS1cblxuJGFiaWRlLWlucHV0czogdHJ1ZTtcbiRhYmlkZS1sYWJlbHM6IHRydWU7XG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gNy4gQWNjb3JkaW9uXG4vLyAtLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlO1xuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IGluaGVyaXQ7XG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6IHRyYW5zcGFyZW50O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMDtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDA7XG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbSAwO1xuXG4vLyA4LiBBY2NvcmRpb24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyA5LiBCYWRnZVxuLy8gLS0tLS0tLS1cblxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJhZGdlLWNvbG9yOiAkd2hpdGU7XG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbTtcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW07XG5cbi8vIDEwLiBCcmVhZGNydW1ic1xuLy8gLS0tLS0tLS0tLS0tLS0tXG5cbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtO1xuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g6IHRydWU7XG5cbi8vIDExLiBCdXR0b25cbi8vIC0tLS0tLS0tLS1cblxuJGJ1dHRvbi1wYWRkaW5nOiAxLjIzZW0gMS44NWVtO1xuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xuJGJ1dHRvbi1maWxsOiBzb2xpZDtcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSk7XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGU7XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGJ1dHRvbi1zaXplczogKFxuXHR0aW55OiAwLjZyZW0sXG5cdHNtYWxsOiAwLjc1cmVtLFxuXHRkZWZhdWx0OiAwLjlyZW0sXG5cdGxhcmdlOiAxLjI1cmVtLFxuKTtcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCU7XG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCU7XG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuXG4vLyAxMi4gQnV0dG9uIEdyb3VwXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW07XG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4O1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbic7XG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNjtcbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZTtcblxuLy8gMTMuIENhbGxvdXRcbi8vIC0tLS0tLS0tLS0tXG5cbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlO1xuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpO1xuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwO1xuJGNhbGxvdXQtcGFkZGluZzogMXJlbTtcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZDtcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJTtcblxuLy8gMTQuIENhcmRcbi8vIC0tLS0tLS0tXG5cbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kY2FyZC1zaGFkb3c6IG5vbmU7XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRjYXJkLW1hcmdpbjogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDE1LiBDbG9zZSBCdXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcblx0c21hbGw6IDAuNjZyZW0sXG5cdG1lZGl1bTogMXJlbSxcbik7XG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG5cdHNtYWxsOiAwLjMzZW0sXG5cdG1lZGl1bTogMC41cmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG5cdHNtYWxsOiAxLjVlbSxcblx0bWVkaXVtOiAyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcblxuLy8gMTYuIERyaWxsZG93blxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XG4kZHJpbGxkb3duLWFycm93czogdHJ1ZTtcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHg7XG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZTtcblxuLy8gMTcuIERyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGRyb3Bkb3duLXNpemVzOiAoXG5cdHRpbnk6IDEwMHB4LFxuXHRzbWFsbDogMjAwcHgsXG5cdGxhcmdlOiA0MDBweCxcbik7XG5cbi8vIDE4LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweDtcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG5cbi8vIDE5LiBGb3Jtc1xuLy8gLS0tLS0tLS0tXG5cbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICRibGFjaztcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcbiRzZWxlY3QtYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkd2hpdGU7XG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kaW5wdXQtY29sb3I6ICR3aGl0ZTtcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJHdoaXRlO1xuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGlucHV0LWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6IHRyYW5zcGFyZW50O1xuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6IHJnYmEoJHdoaXRlLCAuMjQpO1xuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRpbnB1dC1jb2xvcjtcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkaW5wdXQtY29sb3I7XG4kaW5wdXQtc2hhZG93OiBub25lO1xuJGlucHV0LXNoYWRvdy1mb2N1czogbm9uZTtcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIwLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG5cbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRsYWJlbC1jb2xvcjogJHdoaXRlO1xuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW07XG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjEuIE1lZGlhIE9iamVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcblxuLy8gMjIuIE1lbnVcbi8vIC0tLS0tLS0tXG5cbiRtZW51LW1hcmdpbjogMDtcbiRtZW51LW1hcmdpbi1uZXN0ZWQ6IDFyZW07XG4kbWVudS1pdGVtLXBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kbWVudS1ib3JkZXI6ICRsaWdodC1ncmF5O1xuXG4vLyAyMy4gTWV0ZXJcbi8vIC0tLS0tLS0tLVxuXG4kbWV0ZXItaGVpZ2h0OiAxcmVtO1xuJG1ldGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kbWV0ZXItYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG1ldGVyLWZpbGwtZ29vZDogJHN1Y2Nlc3MtY29sb3I7XG4kbWV0ZXItZmlsbC1tZWRpdW06ICR3YXJuaW5nLWNvbG9yO1xuJG1ldGVyLWZpbGwtYmFkOiAkYWxlcnQtY29sb3I7XG5cbi8vIDI0LiBPZmYtY2FudmFzXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kb2ZmY2FudmFzLXNpemU6IDI1MHB4O1xuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplOiAyNTBweDtcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNyk7XG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxO1xuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTA7XG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDE7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZTtcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlO1xuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KTtcbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCc7XG5cbi8vIDI1LiBPcmJpdFxuLy8gLS0tLS0tLS0tXG5cbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMDtcblxuLy8gMjYuIFBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApO1xuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKTtcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGU7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtcbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlO1xuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xuXG4vLyAyNy4gUHJvZ3Jlc3MgQmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDI4LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcblx0ZGVmYXVsdDogNCBieSAzLFxuXHR3aWRlc2NyZWVuOiAxNiBieSA5LFxuKTtcblxuLy8gMjkuIFJldmVhbFxuLy8gLS0tLS0tLS0tLVxuXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRyZXZlYWwtd2lkdGg6IDYwMHB4O1xuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHJldmVhbC16aW5kZXg6IDEwMDU7XG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpO1xuXG4vLyAzMC4gU2xpZGVyXG4vLyAtLS0tLS0tLS0tXG5cbiRzbGlkZXItd2lkdGgtdmVydGljYWw6IDAuNXJlbTtcbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4kc2xpZGVyLWhlaWdodDogMC41cmVtO1xuJHNsaWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc2xpZGVyLWhhbmRsZS1oZWlnaHQ6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLXdpZHRoOiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRzbGlkZXItb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcbiRzbGlkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMzEuIFN3aXRjaFxuLy8gLS0tLS0tLS0tLVxuXG4kc3dpdGNoLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yO1xuJHN3aXRjaC1oZWlnaHQ6IDJyZW07XG4kc3dpdGNoLWhlaWdodC10aW55OiAxLjVyZW07XG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW07XG4kc3dpdGNoLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW47XG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kc3dpdGNoLXBhZGRsZS1vZmZzZXQ6IDAuMjVyZW07XG4kc3dpdGNoLXBhZGRsZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuXG4vLyAzMi4gVGFibGVcbi8vIC0tLS0tLS0tLVxuXG4kdGFibGUtYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4kdGFibGUtY29sb3Itc2NhbGU6IDUlO1xuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApO1xuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJTtcbiR0YWJsZS1yb3ctaG92ZXI6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuJHRhYmxlLWlzLXN0cmlwZWQ6IGZhbHNlO1xuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogJHRhYmxlLWJhY2tncm91bmQ7XG4kdGFibGUtc3RyaXBlOiBldmVuO1xuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogJHRhYmxlLWJhY2tncm91bmQ7XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogJHRhYmxlLWJhY2tncm91bmQ7XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogdHJ1ZTtcblxuLy8gMzMuIFRhYnNcbi8vIC0tLS0tLS0tXG5cbiR0YWItbWFyZ2luOiAwO1xuJHRhYi1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiR0YWItY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudDtcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItaXRlbS1mb250LXNpemU6IGluaGVyaXQ7XG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogdHJhbnNwYXJlbnQ7XG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAwO1xuJHRhYi1leHBhbmQtbWF4OiA2O1xuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuJHRhYi1jb250ZW50LWJvcmRlcjogdHJhbnNwYXJlbnQ7XG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gMzQuIFRodW1ibmFpbFxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGh1bWJuYWlsLWJvcmRlcjogc29saWQgNHB4ICR3aGl0ZTtcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpO1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSk7XG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDM1LiBUaXRsZSBCYXJcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjaztcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXk7XG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuXG4vLyAzNi4gVG9vbHRpcFxuLy8gLS0tLS0tLS0tLS1cblxuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXk7XG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlO1xuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbTtcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2O1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMzcuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b3BiYXItcGFkZGluZzogMC41cmVtO1xuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vLyBcbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSByaWdodCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICgtMSkqJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSkgLyAoJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiAjeyRyZ2J9Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAkaSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuLy8vIEBsaW5rIGh0dHA6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwwLDAsMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGNsaXAtcGF0aDogaW5zZXQoNTAlKTtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIGNsaXAtcGF0aDogbm9uZTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgaXRlcmF0ZSBvdmVyIGJyZWFrcG9pbnRzIHdpdGhvdXQgZG9pbmcgdGhlIG1lZGlhIHF1ZXJ5IGl0c2VsZi4gVXNlZnVsIGZvciBtb3JlIGNvbXBsZXggbWVkaWEgcXVlcnkgZ2VuZXJhdGlvbiBhcyBpbiB0aGUgbWFyZ2luIGdyaWQuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IHRydWUsICRhdXRvLWluc2VydC1icmVha3BvaW50czogdHJ1ZSkge1xuICAkbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcblxuICBAaWYgbm90ICRzbWFsbCB7XG4gICAgJGxpc3Q6IHNsLXJlbW92ZSgkbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUgaW4gJGxpc3Qge1xuICAgICQtemYtc2l6ZTogJG5hbWUgIWdsb2JhbDtcblxuICAgIEBpZiAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSB0aGUgYEBjb250ZW50YCBwYXNzZWQgdG8gdGhlIG1peGluIHdpdGggYSB2YWx1ZSBgJC16Zi1icC12YWx1ZWAgcmVsYXRlZCB0byBhIGJyZWFrcG9pbnQsIGRlcGVuZGluZyBvbiB0aGUgYCRuYW1lYCBwYXJhbWV0ZXI6XG4vLy8gLSBGb3IgYSBzaW5nbGUgdmFsdWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGlzIHZhbHVlLlxuLy8vIC0gRm9yIGEgYnJlYWtwb2ludCBuYW1lLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAuXG4vLy8gLSBGb3IgXCJhdXRvXCIsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYCBhbmQgaXMgcGFzc2VkIHRvIGBAY29udGVudGAsIHdoaWNoIGlzIG1hZGUgcmVzcG9uc2l2ZSBmb3IgZWFjaCBicmVha3BvaW50IG9mIGAkbWFwYC5cbi8vLyBAcGFyYW0ge051bWJlcnxBcnJheXxLZXl3b3JkfSAkbmFtZSBbYXV0b10gLSBTaW5nbGUgdmFsdWUsIGJyZWFrcG9pbnQgbmFtZSwgb3IgbGlzdCBvZiBicmVha3BvaW50IG5hbWVzIHRvIHVzZS4gXCJhdXRvXCIgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBNYXAgb2YgYnJlYWtwb2ludHMgYW5kIHZhbHVlcyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLlxuQG1peGluIC16Zi1icmVha3BvaW50LXZhbHVlKFxuICAkbmFtZTogYXV0byxcbiAgJG1hcDogbnVsbFxuKSB7XG4gIEBpZiAkbmFtZSA9PSBhdXRvIGFuZCB0eXBlLW9mKCRtYXApID09ICdtYXAnIHtcbiAgICAvLyBcImF1dG9cIlxuICAgIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGspIHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJHYsICRtYXApIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gYnJlYWtwb2ludCBuYW1lXG4gICAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdzdHJpbmcnIHtcbiAgICAgICRuYW1lOiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkbmFtZSk7XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsZXgtZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgYSBmbGV4IGdyaWQgcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfExpc3R9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlIGZvciB0aGlzIHJvdy4gSWYgc2V0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpLCB0aGUgZ2xvYmFsIGNvbHVtbiBjb3VudCB3aWxsIGJlIHVzZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYmFzZSBbdHJ1ZV0gLSBTZXQgdG8gYGZhbHNlYCB0byBwcmV2ZW50IGJhc2ljIHN0eWxlcyBmcm9tIGJlaW5nIG91dHB1dC4gVXNlZnVsIGlmIHlvdSdyZSBjYWxsaW5nIHRoaXMgbWl4aW4gb24gdGhlIHNhbWUgZWxlbWVudCB0d2ljZSwgYXMgaXQgcHJldmVudHMgZHVwbGljYXRlIENTUyBvdXRwdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucywgaW4gY2FzZSB0aGUgcm93IGlzIG5lc3RlZC4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBmbGV4LWdyaWQtcm93KFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICRzaXplOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmFzZTogdHJ1ZSxcbiAgJHdyYXA6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcnMpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKCRzaXplKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGJhc2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgJHdyYXA7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zLCAkYmFzZSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDYWxjdWxhdGVzIHRoZSBgZmxleGAgcHJvcGVydHkgZm9yIGEgZmxleCBncmlkIGNvbHVtbi4gSXQgYWNjZXB0cyBhbGwgb2YgdGhlIHNhbWUgdmFsdWVzIGFzIHRoZSBiYXNpYyBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIGFsb25nIHdpdGggdHdvIGV4dHJhczpcbi8vLyAgIC0gYGV4cGFuZGAgKHRoZSBkZWZhdWx0KSB3aWxsIG1ha2UgdGhlIGNvbHVtbiBleHBhbmQgdG8gZmlsbCBzcGFjZS5cbi8vLyAgIC0gYHNocmlua2Agd2lsbCBtYWtlIHRoZSBjb2x1bW4gY29udHJhY3QsIHNvIGl0IG9ubHkgdGFrZXMgdXAgdGhlIGhvcml6b250YWwgc3BhY2UgaXQgbmVlZHMuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uXG5AZnVuY3Rpb24gZmxleC1ncmlkLWNvbHVtbigkY29sdW1uczogZXhwYW5kKSB7XG4gICRmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuXG4gIEBpZiAkY29sdW1ucyA9PSBzaHJpbmsge1xuICAgICRmbGV4OiAwIDAgYXV0bztcbiAgfVxuICBAZWxzZSBpZiAkY29sdW1ucyAhPSBleHBhbmQge1xuICAgICRmbGV4OiAwIDAgZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG5cbiAgQHJldHVybiAkZmxleDtcbn1cblxuLy8vIENyZWF0ZXMgYSBjb2x1bW4gZm9yIGEgZmxleCBncmlkLiBCeSBkZWZhdWx0LCB0aGUgY29sdW1uIHdpbGwgc3RyZXRjaCB0byB0aGUgZnVsbCB3aWR0aCBvZiBpdHMgY29udGFpbmVyLCBidXQgdGhpcyBjYW4gYmUgb3ZlcnJpZGRlbiB3aXRoIHNpemluZyBjbGFzc2VzLCBvciBieSB1c2luZyB0aGUgYHVuc3RhY2tgIGNsYXNzIG9uIHRoZSBwYXJlbnQgZmxleCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZmxleC1ncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycyB3aWR0aC4gU2VlIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyYCBtaXhpbi5cbkBtaXhpbiBmbGV4LWdyaWQtY29sdW1uKFxuICAkY29sdW1uczogZXhwYW5kLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIC8vIEJhc2UgcHJvcGVydGllc1xuICBAaW5jbHVkZSBmbGV4LWdyaWQtc2l6ZSgkY29sdW1ucyk7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAvLyBmaXhlcyByZWNlbnQgQ2hyb21lIHZlcnNpb24gbm90IGxpbWl0aW5nIGNoaWxkIHdpZHRoXG4gIC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM0OTM0NTg2L3doaXRlLXNwYWNlLW5vd3JhcC1hbmQtZmxleGJveC1kaWQtbm90LXdvcmstaW4tY2hyb21lXG4gIEBpZiAkY29sdW1ucyA9PSBleHBhbmQge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGJsb2NrIGdyaWQgZm9yIGEgZmxleCBncmlkIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBjb2x1bW5zIHRvIGRpc3BsYXkgb24gZWFjaCByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciAtIFNlbGVjdG9yIHRvIHVzZSB0byB0YXJnZXQgY29sdW1ucyB3aXRoaW4gdGhlIHJvdy5cbkBtaXhpbiBmbGV4LWdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbidcbikge1xuICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICRwY3Q6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgICBmbGV4OiAwIDAgJHBjdDtcbiAgICBtYXgtd2lkdGg6ICRwY3Q7XG4gIH1cbn1cblxuLy8vIENoYW5nZXMgdGhlIHdpZHRoIGZsZXggZ3JpZCBjb2x1bW4uXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgW2V4cGFuZF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGZsZXgtZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBmbGV4LWdyaWQtc2l6ZSgkY29sdW1uczogbnVsbCkge1xuICAkY29sdW1uczogJGNvbHVtbnMgb3IgZXhwYW5kO1xuXG4gIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuXG4gIC8vIG1heC13aWR0aCBmaXhlcyBJRSAxMC8xMSBub3QgcmVzcGVjdGluZyB0aGUgZmxleC1iYXNpcyBwcm9wZXJ0eVxuICBAaWYgJGNvbHVtbnMgIT0gZXhwYW5kIGFuZCAkY29sdW1ucyAhPSBzaHJpbmsge1xuICAgIG1heC13aWR0aDogZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG59XG5cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC1ncmlkIHtcbiAgLy8gUm93XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3c7XG5cbiAgICAvLyBOZXN0aW5nIGJlaGF2aW9yXG4gICAgJiAucm93IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3cobmVzdCwgJGJhc2U6IGZhbHNlKTtcblxuICAgICAgJi5jb2xsYXBzZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXhwYW5kZWQgcm93XG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG5cbiAgICAgIC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC5leHBhbmRlZCkgLnJvdyB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG4gICAgfVxuXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBVbmRvIG5lZ2F0aXZlIG1hcmdpbnNcbiAgICAvLyBGcm9tIGNvbGxhcHNlZCBjaGlsZFxuICAgICYuaXMtY29sbGFwc2UtY2hpbGQsXG4gICAgJi5jb2xsYXBzZSA+IC5jb2x1bW4gPiAucm93IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtblxuICAuY29sdW1uIHtcbiAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uO1xuICB9XG5cbiAgLy8gQ29sdW1uIHJvd1xuICAvLyBUaGUgZG91YmxlIC5yb3cgY2xhc3MgaXMgbmVlZGVkIHRvIGJ1bXAgdXAgdGhlIHNwZWNpZmljaXR5XG4gIC5jb2x1bW4ucm93LnJvdyB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBUbyBwcm9wZXJseSBuZXN0IGEgY29sdW1uIHJvdywgcGFkZGluZyBhbmQgbWFyZ2luIGlzIHJlbW92ZWRcbiAgLnJvdyAuY29sdW1uLnJvdy5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCRpKTtcbiAgICAgICAgbWF4LXdpZHRoOiBncmlkLWNvbHVtbigkaSk7XG4gICAgICB9XG5cbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRvKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCbG9jayBncmlkXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkYmxvY2stZ3JpZC1tYXgge1xuICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1sYXlvdXQoJGkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkLXpmLXNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLy8gU2l6aW5nIChleHBhbmQpXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtc2l6ZSkge1xuICAgICAgICAuI3skLXpmLXNpemV9LWV4cGFuZCB7XG4gICAgICAgICAgZmxleDogZmxleC1ncmlkLWNvbHVtbigpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEF1dG8tc3RhY2tpbmcvdW5zdGFja2luZ1xuICAgICAgQGF0LXJvb3QgKHdpdGhvdXQ6IG1lZGlhKSB7XG4gICAgICAgIC5yb3cuI3skLXpmLXNpemV9LXVuc3RhY2sge1xuICAgICAgICAgID4gLmNvbHVtbiB7XG4gICAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKDEwMCUpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBjb2xsYXBzaW5nXG4gICAgLiN7JC16Zi1zaXplfS1jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4geyBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTsgfVxuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tdW5jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4geyBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJC16Zi1zaXplKTsgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNpemluZyAoc2hyaW5rKVxuICAuc2hyaW5rIHtcbiAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKHNocmluayk7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZCBjb2x1bW5zXG4gIC5jb2x1bW4tYmxvY2sge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW1hcmdpbjtcbiAgfVxuXG4gIC5jb2x1bW5zIHtcbiAgICBAZXh0ZW5kIC5jb2x1bW47IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgcGxhY2Vob2xkZXItaW4tZXh0ZW5kXG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2hhbmdlIHRoZSBiZWhhdmlvciBvZiBjb2x1bW5zIGRlZmluZWQgaW5zaWRlIHRoaXMgbWl4aW4gdG8gdXNlIGEgZGlmZmVyZW50IGNvbHVtbiBjb3VudC5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHJvb3QgW2ZhbHNlXVxuLy8vICAgSWYgYGZhbHNlYCwgc2VsZWN0b3JzIGluc2lkZSB0aGlzIG1peGluIHdpbGwgbmVzdCBpbnNpZGUgdGhlIHBhcmVudCBzZWxlY3Rvci5cbi8vLyAgIElmIGB0cnVlYCwgc2VsZWN0b3JzIHdpbGwgbm90IG5lc3QuXG5AbWl4aW4gZ3JpZC1jb250ZXh0KFxuICAkY29sdW1ucyxcbiAgJHJvb3Q6IGZhbHNlXG4pIHtcbiAgLy8gU3RvcmUgdGhlIGN1cnJlbnQgY29sdW1uIGNvdW50IHNvIGl0IGNhbiBiZSByZS1zZXQgbGF0ZXJcbiAgJG9sZC1ncmlkLWNvbHVtbi1jb3VudDogJGdyaWQtY29sdW1uLWNvdW50O1xuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRjb2x1bW5zICFnbG9iYWw7XG5cbiAgQGlmICRyb290IHtcbiAgICBAYXQtcm9vdCB7IEBjb250ZW50OyB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgb2xkIGNvbHVtbiBjb3VudFxuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRvbGQtZ3JpZC1jb2x1bW4tY291bnQgIWdsb2JhbDtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIHJvdy5cbi8vLyBAY29udGVudFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIFtudWxsXSAtIENvbHVtbiBjb3VudCBmb3IgdGhpcyByb3cuIGBudWxsYCB3aWxsIHVzZSB0aGUgZGVmYXVsdCBjb2x1bW4gY291bnQuXG4vLy8gQHBhcmFtIHtLZXl3b3Jkc30gJGJlaGF2aW9yIFtudWxsXVxuLy8vICAgTW9kaWZpY2F0aW9ucyB0byB0aGUgZGVmYXVsdCBncmlkIHN0eWxlcy4gYG5lc3RgIGluZGljYXRlcyB0aGUgcm93IHdpbGwgYmUgcGxhY2VkIGluc2lkZSBhbm90aGVyIHJvdy4gYGNvbGxhcHNlYCBpbmRpY2F0ZXMgdGhhdCB0aGUgY29sdW1ucyBpbnNpZGUgdGhpcyByb3cgd2lsbCBub3QgaGF2ZSBwYWRkaW5nLiBgbmVzdCBjb2xsYXBzZWAgY29tYmluZXMgYm90aCBiZWhhdmlvcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGNmIFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgYSBjbGVhcmZpeC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93KFxuICAkY29sdW1uczogbnVsbCxcbiAgJGJlaGF2aW9yOiBudWxsLFxuICAkc2l6ZTogJGdyaWQtcm93LXdpZHRoLFxuICAkY2Y6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcblxuICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBuZXN0KSAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRndXR0ZXJzKTtcblxuICAgIEBpZiBpbmRleCgkYmVoYXZpb3IsIGNvbGxhcHNlKSAhPSBudWxsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctc2l6ZSgkc2l6ZSk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgQGlmICRjZiB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEludmVydHMgdGhlIG1hcmdpbnMgb2YgYSByb3cgdG8gbmVzdCBpdCBpbnNpZGUgb2YgYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZSB3aGVuIGludmVydGluZyBtYXJnaW5zLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtcm93LW5lc3QoJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgJG1hcmdpbjogcmVtLWNhbGMoLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICQtemYtc2l6ZSkpIC8gMiAqIC0xO1xuXG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXQgYSBncmlkIHJvdyBzaXplXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG5AbWl4aW4gZ3JpZC1yb3ctc2l6ZSgkc2l6ZTogJGdyaWQtcm93LXdpZHRoKSB7XG4gIEBpZiAkc2l6ZSA9PSBleHBhbmQge1xuICAgICRzaXplOiBub25lO1xuICB9XG5cbiAgbWF4LXdpZHRoOiAkc2l6ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIFJlbW92ZXMgdGhlIHVuaXQgKGUuZy4gcHgsIGVtLCByZW0pIGZyb20gYSB2YWx1ZSwgcmV0dXJuaW5nIHRoZSBudW1iZXIgb25seS5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbnVtIC0gTnVtYmVyIHRvIHN0cmlwIHVuaXQgZnJvbS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBzYW1lIG51bWJlciwgc2FucyB1bml0LlxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bSkge1xuICBAcmV0dXJuICRudW0gLyAoJG51bSAqIDAgKyAxKTtcbn1cblxuLy8vIENvbnZlcnRzIG9uZSBvciBtb3JlIHBpeGVsIHZhbHVlcyBpbnRvIG1hdGNoaW5nIHJlbSB2YWx1ZXMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkdmFsdWVzIC0gT25lIG9yIG1vcmUgdmFsdWVzIHRvIGNvbnZlcnQuIEJlIHN1cmUgdG8gc2VwYXJhdGUgdGhlbSB3aXRoIHNwYWNlcyBhbmQgbm90IGNvbW1hcy4gSWYgeW91IG5lZWQgdG8gY29udmVydCBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0LCB3cmFwIHRoZSBsaXN0IGluIHBhcmVudGhlc2VzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBUaGUgYmFzZSB2YWx1ZSB0byB1c2Ugd2hlbiBjYWxjdWxhdGluZyB0aGUgYHJlbWAuIElmIHlvdSdyZSB1c2luZyBGb3VuZGF0aW9uIG91dCBvZiB0aGUgYm94LCB0aGlzIGlzIDE2cHguIElmIHRoaXMgcGFyYW1ldGVyIGlzIGBudWxsYCwgdGhlIGZ1bmN0aW9uIHdpbGwgcmVmZXJlbmNlIHRoZSBgJGJhc2UtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXRzIGNvbnZlcnQgb3VyIHZhbHVlIHRvIHBpeGVscyB0b29cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnJScge1xuICAgICR2YWx1ZTogKCR2YWx1ZSAvIDEwMCUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqICRiYXNlO1xuICB9XG5cbiAgLy8gJ3B4J1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcge1xuICAgIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSk7XG4gIH1cblxuICAvLyBhc3N1bWUgdGhhdCBsaW5lLWhlaWdodHMgZ3JlYXRlcm4gdGhlbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnWW91ciBzbWFsbGVzdCBicmVha3BvaW50IChkZWZpbmVkIGluICRicmVha3BvaW50cykgbXVzdCBiZSBzZXQgdG8gXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgZm9yIG1heC13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IDA7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBFdmVudHVhbCBvdXRwdXRcbiAgJHN0cjogJyc7XG4gIC8vIElzIGl0IGEgbmFtZWQgbWVkaWEgcXVlcnk/XG4gICRuYW1lZDogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09ICdsYW5kc2NhcGUnIG9yICRicCA9PSAncG9ydHJhaXQnIHtcbiAgICBAcmV0dXJuICcob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG4gIEBlbHNlIGlmICRicCA9PSAncmV0aW5hJyB7XG4gICAgQHJldHVybiAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSc7XG4gIH1cblxuICAvLyBUcnkgdG8gcHVsbCBhIG5hbWVkIGJyZWFrcG9pbnQgb3V0IG9mIHRoZSAkYnJlYWtwb2ludHMgbWFwXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gJ3N0cmluZycge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICAgJGJwLW1heDogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgIH1cblxuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJGJwKTtcbiAgICAgICRuYW1lZDogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJwOiAwO1xuICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogXCIjeyR2YWx9XCIgaXMgbm90IGRlZmluZWQgaW4geW91ciAkYnJlYWtwb2ludHMgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbnZlcnQgYW55IHBpeGVsLCByZW0sIG9yIHVuaXRsZXNzIHZhbHVlIHRvIGVtXG4gICRicDogLXpmLWJwLXRvLWVtKCRicCk7XG4gIEBpZiAkYnAtbWF4IHtcbiAgICAkYnAtbWF4OiAtemYtYnAtdG8tZW0oJGJwLW1heCkgLSAoMS8xNik7XG4gIH1cblxuICAvLyBDb25kaXRpb25zIHRvIHNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb25cbiAgLy8gLSBJdCdzIGEgbmFtZWQgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBkb3duXCIgb3IgXCIwIHVwXCJcbiAgLy8gLSBJdCdzIGEgbnVtZXJpYyBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIFwiICsgYW55dGhpbmdcbiAgQGlmICRicCA+IDBlbSBvciAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gYG9ubHlgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbikgYW5kIChtYXgtd2lkdGg6IG4pYFxuICAgIEBpZiAkZGlyID09ICdvbmx5JyB7XG4gICAgICAvLyBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gXCJvbmx5XCIgcmFuZ2VcbiAgICAgIEBpZiAkbmFtZWQgPT0gdHJ1ZSB7XG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWluLXdpZHRoXCIgaWYgdGhlIGZsb29yIGlzIGdyZWF0ZXIgdGhhbiAwXG4gICAgICAgIEBpZiAkYnAgPiAwZW0ge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG5cbiAgICAgICAgICAvLyBPbmx5IGFkZCBcImFuZFwiIHRvIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICAgJHN0cjogJHN0ciArICcgYW5kICc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gT25seSB1c2UgXCJtYXgtd2lkdGhcIiBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JGJwLW1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYGRvd25gIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1heC13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGRpciA9PSAnZG93bicge1xuICAgICAgJG1heDogaWYoJG5hbWVkLCAkYnAtbWF4LCAkYnApO1xuXG4gICAgICAvLyBTa2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uIGlmIGlucHV0IHZhbHVlIGlzIGV4YWN0bHkgXCIwIGRvd25cIixcbiAgICAgIC8vIHVubGVzcyB0aGUgZnVuY3Rpb24gd2FzIGNhbGxlZCBhcyBcInNtYWxsIGRvd25cIiwgaW4gd2hpY2ggY2FzZSBpdCdzIGp1c3QgXCJzbWFsbCBvbmx5XCJcbiAgICAgIEBpZiAkbmFtZWQgb3IgJGJwID4gMGVtIHtcbiAgICAgICAgQGlmICRtYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRtYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgdXBgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGJwID4gMGVtIHtcbiAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcCwgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlKSB7XG4gICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICR2YWx1ZSk7XG4gICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuXG4gICRvbGQtemYtc2l6ZTogbnVsbDtcblxuICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICB9XG4gICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgQGlmICRzdHIgPT0gJycge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgQGVsc2Uge1xuICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICBAaWYgJGJwICE9IG51bGwgYW5kICRicCA8PSAkcGJwIHtcbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRvbGQtemYtc2l6ZSAhPSBudWxsIHtcbiAgICAvLyBSZXN0b3JlIHRoZSBvbGQgYnJlYWtwb2ludCBzaXplXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJC16Zi1zaXplOiBudWxsICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIENvbnZlcnMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZF9rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmRfa2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZF9rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2luZyAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbmcuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBzbWFsbCkge1xuICAkc21hbGwtdXA6IHNjcmVlbjtcbiAgJHNtYWxsLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9Jyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkZ3V0dGVyIFthdXRvXVxuLy8vICAgU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRndXR0ZXJzIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBndXR0ZXIgcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRndXR0ZXJzIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRndXR0ZXIsICRndXR0ZXJzKSB7XG4gICAgJHBhZGRpbmc6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpIC8gMjtcblxuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gIH1cbn1cblxuLy8vIENvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlbW92aW5nIHRoZSBwYWRkaW5nLiAqKk5vdGU6Kiogb25seSB1c2UgdGhpcyBtaXhpbiB3aXRoaW4gYSBicmVha3BvaW50LiBUbyBjb2xsYXBzZSBhIGNvbHVtbidzIGd1dHRlcnMgb24gYWxsIHNjcmVlbiBzaXplcywgdXNlIHRoZSBgJGd1dHRlcmAgcGFyYW1ldGVyIG9mIHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4gaW5zdGVhZC5cbkBtaXhpbiBncmlkLWNvbHVtbi1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigwKTtcbn1cblxuLy8vIFVuLWNvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlLWFkZGluZyB0aGUgcGFkZGluZy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZ3V0dGVyIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLlxuQG1peGluIGdyaWQtY29sdW1uLXVuY29sbGFwc2UoJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBncmlkLWNvbHVtbi1ndXR0ZXIoKS4gZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuNC4nO1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXIpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1ndXR0ZXJcbkBtaXhpbiBncmlkLWNvbC1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXIsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1jb2xsYXBzZVxuQG1peGluIGdyaWQtY29sLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tY29sbGFwc2U7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bmNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bmNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtdW5jb2xsYXBzZSgkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IGdyaWQtY29sLWd1dHRlcigpLiBncmlkLWNvbC11bmNvbGxhcHNlKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXVuY29sbGFwc2UoJGd1dHRlcik7XG59XG5cbi8vLyBTZXRzIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zIHRvIG1hdGNoIGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkbWFyZ2luIFthdXRvXVxuLy8vICAgVGhlIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkbWFyZ2lucyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkbWFyZ2lucyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcmdpbnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tbWFyZ2luIChcbiAgJG1hcmdpbjogYXV0byxcbiAgJG1hcmdpbnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkbWFyZ2luLCAkbWFyZ2lucykge1xuICAgICRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENhbGN1bGF0ZXMgdGhlIHdpZHRoIG9mIGEgY29sdW1uIGJhc2VkIG9uIGEgbnVtYmVyIG9mIGZhY3RvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkY29sdW1uc1xuLy8vICAgV2lkdGggb2YgdGhlIGNvbHVtbi4gQWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgcGVyY2VudGFnZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGNvbHVtbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgc2luZ2xlIGRpZ2l0IHdpbGwgbWFrZSB0aGUgY29sdW1uIHNwYW4gdGhhdCBudW1iZXIgb2YgY29sdW1ucyB3aWRlLCB0YWtpbmcgaW50byBhY2NvdW50IHRoZSBjb2x1bW4gY291bnQgb2YgdGhlIHBhcmVudCByb3cuXG4vLy8gICAtIEEgbGlzdCBvZiB0aGUgZm9ybWF0IFwieCBvZiB5XCIgKHdpdGhvdXQgcXVvdGVzKSB3aWxsIG1ha2UgYSBjb2x1bW4gdGhhdCBpcyAqeCogY29sdW1ucyB3aWRlLCBhc3N1bWluZyAqeSogdG90YWwgY29sdW1ucyBmb3IgdGhlIHBhcmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgY2FsY3VsYXRlZCBwZXJjZW50YWdlIHZhbHVlLlxuQGZ1bmN0aW9uIGdyaWQtY29sdW1uKCRjb2x1bW5zKSB7XG4gICR3aWR0aDogMCU7XG5cbiAgLy8gUGFyc2luZyBwZXJjZW50cywgZGVjaW1hbHMsIGFuZCBjb2x1bW4gY291bnRzXG4gIEBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbnVtYmVyJyB7XG4gICAgQGlmIHVuaXQoJGNvbHVtbnMpID09ICclJyB7XG4gICAgICAkd2lkdGg6ICRjb2x1bW5zO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkY29sdW1ucyA8IDEge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcbiAgICB9XG4gIH1cblxuICAvLyBQYXJzaW5nIFwibiBvZiBuXCIgZXhwcmVzc2lvbnNcbiAgQGVsc2UgaWYgdHlwZS1vZigkY29sdW1ucykgPT0gJ2xpc3QnIHtcbiAgICBAaWYgbGVuZ3RoKCRjb2x1bW5zKSAhPSAzIHtcbiAgICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgdGhlIGZvcm1hdCBcIm4gb2YgblwiLic7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZShudGgoJGNvbHVtbnMsIDEpIC8gbnRoKCRjb2x1bW5zLCAzKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQW55dGhpbmcgZWxzZSBpcyBpbmNvcnJlY3RcbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIuJztcbiAgfVxuXG4gIEByZXR1cm4gJHdpZHRoO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4oXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG4gIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAvLyBMYXN0IGNvbHVtbiBhbGlnbm1lbnRcbiAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4gcm93LiBUaGlzIGlzIHRoZSBlcXVpdmFsZW50IG9mIGFkZGluZyBgLnJvd2AgYW5kIGAuY29sdW1uYCB0byB0aGUgc2FtZSBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gV2lkdGggb2YgdGhlIGd1dHRlcnMgb24gZWl0aGVyIHNpZGUgb2YgdGhlIGNvbHVtbiByb3cuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtcm93O1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gICYsXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQGZ1bmN0aW9uIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQHJldHVybiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBtaXhpbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcm93KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1yb3dcbkBtaXhpbiBncmlkLWNvbC1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCRndXR0ZXJzKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFJlcG9zaXRpb24gYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkcG9zaXRpb24gLSBEaXJlY3Rpb24gYW5kIGFtb3VudCB0byBtb3ZlLiBUaGUgY29sdW1uIHdpbGwgbW92ZSBlcXVhbCB0byB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbiBjb3VudCBzcGVjaWZpZWQuIEEgcG9zaXRpdmUgbnVtYmVyIHdpbGwgcHVzaCB0aGUgY29sdW1uIHRvIHRoZSByaWdodCwgd2hpbGUgYSBuZWdhdGl2ZSBudW1iZXIgd2lsbCBwdWxsIGl0IHRvIHRoZSBsZWZ0LiBTZXQgdG8gY2VudGVyIHRvIGNlbnRlciB0aGUgY29sdW1uLlxuQG1peGluIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbikge1xuICBAaWYgdHlwZS1vZigkcG9zaXRpb24pID09ICdudW1iZXInIHtcbiAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKCRwb3NpdGlvbiAvICRncmlkLWNvbHVtbi1jb3VudCk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBjZW50ZXIge1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uLXBvc2l0aW9uKCkuIEVudGVyIGEgcG9zaXRpdmUgb3IgbmVnYXRpdmUgbnVtYmVyLCBvciBjZW50ZXIuJztcbiAgfVxufVxuXG4vLy8gUmVzZXQgYSBwb3NpdGlvbiBkZWZpbml0aW9uLlxuQG1peGluIGdyaWQtY29sdW1uLXVucG9zaXRpb24ge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+LTxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7ICBcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLCAuaDEsXG4gIGgyLCAuaDIsXG4gIGgzLCAuaDMsXG4gIGg0LCAuaDQsXG4gIGg1LCAuaDUsXG4gIGg2LCAuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSwgLiN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDaXRhdGlvbnNcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG4gICAgY29sb3I6ICRjaXRlLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyLCBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogaGVscDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIFxuICAvLyBDb2RlXG4gIGNvZGUge1xuICAgIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG5cbiAgICBib3JkZXI6ICRjb2RlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkY29kZS1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRrZXlzdHJva2UtcGFkZGluZztcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlzdHJva2UtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAka2V5c3Ryb2tlLWZvbnQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRrZXlzdHJva2UtcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAka2V5c3Ryb2tlLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktaGVscGVyc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxlYWQtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdG9wIG1hcmdpbiBmb3Igc3ViaGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG4kcHJpbnQtaHJlZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNhc3MtbGludDpkaXNhYmxlLWFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgQGlmICRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kcyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcblxuICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4gICAgLy8gRGlzcGxheSB0aGUgVVJMIG9mIGEgbGluayBhZnRlciB0aGUgdGV4dFxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgIEBpZiAkcHJpbnQtaHJlZnMge1xuICAgICAgYVtocmVmXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cihocmVmKSAnKSc7IH1cbiAgICB9XG5cbiAgICAvLyBEb24ndCBkaXNwbGF5IHRoZSBVUkwgZm9yIGltYWdlcyBvciBKYXZhU2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAgLmlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgICBhW2hyZWZePScjJ106YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuXG4gICAgLy8gRGlzcGxheSB3aGF0IGFuIGFiYnJldmlhdGlvbiBzdGFuZHMgZm9yIGFmdGVyIHRoZSB0ZXh0XG4gICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJzsgfVxuXG4gICAgLy8gUHJldmVudCBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGEgYmxvY2txdW90ZSBvciBwcmVmb3JtYXR0ZWQgdGV4dCBibG9ja1xuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gaDVicC5jb20vdFxuICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG5cbiAgICB0cixcbiAgICBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cblxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICAvLyBBdm9pZCBwYWdlIGJyZWFrcyBhZnRlciBhIGhlYWRpbmdcbiAgICBoMixcbiAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG5cbiAgICAvLyBIZWxwZXIgdG8gcmUtYWxsb3cgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBjZXJ0YWluIGVsZW1lbnRzIChlLmcuIHByZSwgYmxvY2txdW90ZSwgdHIpXG4gICAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vL1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBAdHlwZSBGb250XG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYXJvdW5kIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmaWxsIGZvciBidXR0b25zLiBDYW4gZWl0aGVyIGJlIGBzb2xpZGAgb3IgYGhvbGxvd2AuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGJ1dHRvbi1maWxsOiBzb2xpZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgZm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggZm9yIGhvbGxvdyBvdXRsaW5lIGJ1dHRvbnNcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICBmb250LWZhbWlseTogJGJ1dHRvbi1mb250LWZhbWlseTtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG5cbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgYmFja2dyb3VuZCBmaWxsIG9uIGhvdmVyIGFuZCBmb2N1cyBmb3IgaG9sbG93IGJ1dHRvbnMuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdyB7XG4gICYsXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0ge1xuICAgICYsXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZGlzYWJsZWQgc3R5bGVzIHRvIGEgYnV0dG9uIGJ5IGZhZGluZyB0aGUgZWxlbWVudCwgcmVzZXRpbmcgdGhlIGN1cnNvciwgYW5kIGRpc2FibGluZyBwb2ludGVyIGV2ZW50cy5cbi8vLyBAcGFyYW0gW0NvbG9yXSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAcGFyYW0gW0NvbG9yXSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcblxuICBAaWYgJHN0eWxlID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRzdHlsZSA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRuYW1lfS5kcm9wZG93bjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0eWxlXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQ7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkKCRjb2xvciwgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIb2xsb3cgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENsZWFyIHN0eWxlXG4gICAgQGlmICRidXR0b24tZmlsbCAhPSBjbGVhciB7XG4gICAgICAmLmNsZWFyIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcblxuICAgICAgICAgICAgJiwgJjpob3ZlcixcbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAmLFxuICAgICAgICAgICAgICAmLmRpc2FibGVkLFxuICAgICAgICAgICAgICAmW2Rpc2FibGVkXSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cbiAgYS5idXR0b24ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGZvcm0gYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdztcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXRleHQge1xuICAvLyBUZXh0IGlucHV0c1xuICAje3RleHQtaW5wdXRzKCl9LFxuICB0ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyBUZXh0IGFyZWFzXG4gIHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmW3Jvd3NdIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIC8vIFBsYWNlaG9sZGVyIHRleHRcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIERpc2FibGVkL3JlYWRvbmx5IHN0YXRlXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb24gYnV0dG9uLWxpa2UgaW5wdXRzXG4gIFt0eXBlPSdzdWJtaXQnXSxcbiAgW3R5cGU9J2J1dHRvbiddIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWJ1dHRvbi1yYWRpdXM7XG4gIH1cblxuICAvLyBSZXNldCBOb3JtYWxpemUgc2V0dGluZyBjb250ZW50LWJveCB0byBzZWFyY2ggZWxlbWVudHNcbiAgaW5wdXRbdHlwZT0nc2VhcmNoJ10geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gTnVtYmVyIGlucHV0IHN0eWxlc1xuICBbdHlwZT0nbnVtYmVyJ10ge1xuICAgIEBpZiBub3QgJGlucHV0LW51bWJlci1zcGlubmVycyB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4XG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1jaGVja2JveCB7XG4gIFt0eXBlPSdmaWxlJ10sXG4gIFt0eXBlPSdjaGVja2JveCddLFxuICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXQvbGFiZWwgc2libGluZ3NcbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3IgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgZm9ybSBsYWJlbHMuIFRoZSBoaWdoZXIgdGhlIG51bWJlciwgdGhlIG1vcmUgc3BhY2UgYmV0d2VlbiB0aGUgbGFiZWwgYW5kIGl0cyBpbnB1dCBmaWVsZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjggIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcblxuICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuQG1peGluIGZvcm0tbGFiZWwtbWlkZGxlIHtcbiAgJGlucHV0LWJvcmRlci13aWR0aDogZ2V0LWJvcmRlci12YWx1ZSgkaW5wdXQtYm9yZGVyLCB3aWR0aCk7XG5cbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyAyICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkpIDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tbGFiZWwge1xuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgZm9ybS1sYWJlbDtcblxuICAgICYubWlkZGxlIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWwtbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHN0eWxlIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1oZWxwdGV4dCB7XG4gIC5oZWxwLXRleHQge1xuICAgICRtYXJnaW4tdG9wOiAoJGZvcm0tc3BhY2luZyAqIDAuNSkgKiAtMTtcblxuICAgIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wO1xuICAgIGZvbnQtc2l6ZTogJGhlbHB0ZXh0LWZvbnQtc2l6ZTtcbiAgICBmb250LXN0eWxlOiAkaGVscHRleHQtZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGhlbHB0ZXh0LWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0L3JpZ2h0IHBhZGRpbmcgb2YgYW4gcHJlL3Bvc3RmaXhlZCBpbnB1dCBsYWJlbFxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXByZXBvc3RmaXgge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSArICRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCB0YWJsZSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDAsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMpO1xuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICVpbnB1dC1ncm91cC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXByZWZpeC1wYWRkaW5nO1xuICAgIGJvcmRlcjogJGlucHV0LXByZWZpeC1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kO1xuXG4gICAgY29sb3I6ICRpbnB1dC1wcmVmaXgtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC1wcmVmaXgtYm9yZGVyKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGlucHV0LFxuICAgIGJ1dHRvbixcbiAgICBsYWJlbCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcblxuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgICAgfVxuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBidW1wIG5lZWRlZCB0byBwcmV2ZW50IG92ZXJyaWRlIGJ5IGJ1dHRvbnNcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBiZXR3ZWVuIHRoZSBsZWdlbmQgdGV4dCBhbmQgZmllbGRzZXQgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG5AbWl4aW4gZmllbGRzZXQge1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXI7XG5cbiAgbGVnZW5kIHtcbiAgICAvLyBDb3ZlcnMgdXAgdGhlIGZpZWxkc2V0J3MgYm9yZGVyIHRvIGNyZWF0ZSBhcnRpZmljaWFsIHBhZGRpbmdcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogcmVtLWNhbGMoLTMpO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBkcm9wZG93biB0cmlhbmdsZSBpbnNpZGUgc2VsZWN0IG1lbnVzLiBTZXQgdG8gYHRyYW5zcGFyZW50YCB0byByZW1vdmUgaXQgZW50aXJlbHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLXNlbGVjdCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmICRzZWxlY3QtdHJpYW5nbGUtY29sb3IgIT0gdHJhbnNwYXJlbnQge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtdHJpYW5nbGUoJHNlbGVjdC10cmlhbmdsZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRnbG9iYWwtcmlnaHQgKC0kZm9ybS1zcGFjaW5nKSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG5cbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICgkZm9ybS1zcGFjaW5nICogMS41KTtcbiAgfVxuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBIaWRlIHRoZSBkcm9wZG93biBhcnJvdyBzaG93biBpbiBuZXdlciBJRSB2ZXJzaW9uc1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdG8gdXNlIGZvciBsYWJlbHMgb2YgaW52YWxpZCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWxpZ2h0ZW4gWzEwJV0gLSBMaWdodG5lc3MgbGV2ZWwgb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gZm9ybS1pbnB1dC1lcnJvcihcbiAgJGJhY2tncm91bmQ6ICRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQsXG4gICRiYWNrZ3JvdW5kLWxpZ2h0ZW46IDEwJVxuKSB7XG4gICY6bm90KDpmb2N1cykge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KCRiYWNrZ3JvdW5kLCAkd2hpdGUsICRiYWNrZ3JvdW5kLWxpZ2h0ZW4pO1xuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtZXJyb3ItY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZXJyb3Ige1xuICBAaWYgJGFiaWRlLWlucHV0cyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGludmFsaWQgaW5wdXRzXG4gICAgLmlzLWludmFsaWQtaW5wdXQge1xuICAgICAgQGluY2x1ZGUgZm9ybS1pbnB1dC1lcnJvcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJGFiaWRlLWxhYmVscyB7XG4gICAgLy8gRXJyb3IgY2xhc3MgZm9yIGxhYmVscyBvZiBpbnZhbGlkIG91dHB1dHNcbiAgICAuaXMtaW52YWxpZC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDtcbiAgICB9XG4gIH1cblxuICAvLyBGb3JtIGVycm9yIGVsZW1lbnRcbiAgLmZvcm0tZXJyb3Ige1xuICAgIEBpbmNsdWRlIGZvcm0tZXJyb3I7XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYXJkXG4vLy8vXG5cbi8vLyBEZWZ1YWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FyZHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBzdHlsZS5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY2FyZCBzaGFkb3cuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luLlxuLy8vIEB0eXBlIG51bWJlclxuJGNhcmQtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYXJkIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gZm9udCBjb2xvciBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiAtIEJvdHRvbSBtYXJnaW4gb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkYm9yZGVyIC0gQm9yZGVyIGFyb3VuZCB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRyYWRpdXMgLSBib3JkZXIgcmFkaXVzIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHNoYWRvdyAtIGJveCBzaGFkb3cgb2YgdGhlIGNhcmQuXG5AbWl4aW4gY2FyZC1jb250YWluZXIoXG4gICRiYWNrZ3JvdW5kOiAkY2FyZC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRjYXJkLWZvbnQtY29sb3IsXG4gICRtYXJnaW46ICRjYXJkLW1hcmdpbi1ib3R0b20sXG4gICRib3JkZXI6ICRjYXJkLWJvcmRlcixcbiAgJHJhZGl1czogJGNhcmQtYm9yZGVyLXJhZGl1cyxcbiAgJHNoYWRvdzogJGNhcmQtc2hhZG93XG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxuXG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuXG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYXJkIGRpdmlkZXIuXG5AbWl4aW4gY2FyZC1kaXZpZGVyKFxuICAkYmFja2dyb3VuZDogJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kLFxuICAkcGFkZGluZzogJGNhcmQtcGFkZGluZ1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cbiAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYXJkIHNlY3Rpb24uXG5AbWl4aW4gY2FyZC1zZWN0aW9uKFxuICAkcGFkZGluZzogJGNhcmQtcGFkZGluZ1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG5cbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNhcmQge1xuICAuY2FyZCB7XG4gICAgQGluY2x1ZGUgY2FyZC1jb250YWluZXI7XG4gIH1cblxuICAuY2FyZC1kaXZpZGVyIHtcbiAgICBAaW5jbHVkZSBjYXJkLWRpdmlkZXI7XG4gIH1cblxuICAuY2FyZC1zZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBjYXJkLXNlY3Rpb247XG4gIH1cblxuICAvLyBGb3IgSUUgMTEgLSBGbGV4YnVnXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MvaXNzdWVzLzc1XG4gIC5jYXJkLWltYWdlIHtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNsb3NlLWJ1dHRvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLiBUaGUgZmlyc3QgdmFsdWUgc2hvdWxkIGJlIGByaWdodGAgb3IgYGxlZnRgLCBhbmQgdGhlIHNlY29uZCB2YWx1ZSBzaG91bGQgYmUgYHRvcGAgb3IgYGJvdHRvbWAuXG4vLy8gQHR5cGUgTGlzdFxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3AgIWRlZmF1bHQ7XG5cbi8vLyBSaWdodCAob3IgbGVmdCkgb2Zmc2V0KHMpIGZvciBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcbiAgc21hbGw6IDAuNjZyZW0sXG4gIG1lZGl1bTogMXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUb3AgKG9yIGJvdHRvbSkgb2Zmc2V0KHMpIGZvciBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG4gIHNtYWxsOiAwLjMzZW0sXG4gIG1lZGl1bTogMC41cmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplKHMpIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGluZS1oZWlnaHQgb2YgdGhlIGNsb3NlIGJ1dHRvbi4gSXQgYWZmZWN0cyB0aGUgc3BhY2luZyBvZiB0aGUgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIENvbG9yXG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24gd2hlbiBiZWluZyBob3ZlcmVkIG9uLlxuLy8vIEB0eXBlIENvbG9yXG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjayAhZGVmYXVsdDtcblxuXG4vLy8gR2V0IHRoZSBzaXplIGFuZCBwb3NpdGlvbiBmb3IgYSBjbG9zZSBidXR0b24uIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIG51bWJlciwgdGhlIG51bWJlciBpcyByZXR1cm5lZC4gSWYgdGhlIGlucHV0IHZhbHVlIGlzIGEgY29uZmlnIG1hcCBhbmQgdGhlIG1hcCBoYXMgdGhlIGtleSBgJHNpemVgLCB0aGUgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICR2YWx1ZSAtIEEgbnVtYmVyIG9yIG1hcCB0aGF0IHJlcHJlc2VudHMgdGhlIHNpemUgb3IgcG9zaXRpb24gdmFsdWUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gVGhlIHNpemUgb2YgdGhlIGNsb3NlIGJ1dHRvbiB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IFRoZSBnaXZlbiBudW1iZXIgb3IgdGhlIHZhbHVlIGZvdW5kIGluIHRoZSBtYXAuXG5AZnVuY3Rpb24gLXpmLWdldC1zaXplLXZhbCgkdmFsdWUsICRzaXplKSB7XG4gIC8vIENoZWNrIGlmIHRoZSB2YWx1ZSBpcyBhIG51bWJlclxuICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAvLyBJZiBpdCBpcywganVzdCByZXR1cm4gdGhlIG51bWJlclxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIHNpemUgbmFtZSBleGlzdHMgaW4gdGhlIHZhbHVlIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkdmFsdWUsICRzaXplKSB7XG4gICAgLy8gSWYgaXQgZG9lcywgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkdmFsdWUsICRzaXplKTtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gb2YgYSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSBbbWVkaXVtXSAtIFRoZSBzaXplIHRvIHVzZS4gU2V0IHRvIGBzbWFsbGAgdG8gY3JlYXRlIGEgc21hbGwgY2xvc2UgYnV0dG9uLiBUaGUgJ21lZGl1bScgdmFsdWVzIGRlZmluZWQgaW4gYCRjbG9zZWJ1dHRvbi0qYCB2YXJpYWJsZXMgd2lsbCBiZSB1c2VkIGFzIHRoZSBkZWZhdWx0IHNpemUgYW5kIHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uXG5AbWl4aW4gY2xvc2UtYnV0dG9uLXNpemUoJHNpemUpIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgI3skeH06IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsLCAkc2l6ZSk7XG4gICN7JHl9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWwsICRzaXplKTtcbiAgZm9udC1zaXplOiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1zaXplLCAkc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0LCAkc2l6ZSk7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjbG9zZSBidXR0b24sIHVzaW5nIHRoZSBzdHlsZXMgaW4gdGhlIHNldHRpbmdzIHZhcmlhYmxlcy5cbkBtaXhpbiBjbG9zZS1idXR0b24ge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3ItaG92ZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uIHtcbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgY2xvc2UtYnV0dG9uO1xuXG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIGNsb3NlLWJ1dHRvbi1zaXplKHNtYWxsKSB9XG4gICAgJiwgJi5tZWRpdW0geyBAaW5jbHVkZSBjbG9zZS1idXR0b24tc2l6ZShtZWRpdW0pIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVudVxuLy8vL1xuXG4vLy8gTWFyZ2luIG9mIGEgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIExlZnQtaGFuZCBtYXJnaW4gb2YgYSBuZXN0ZWQgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgaXRlbXMgaW4gYSBwaWxsIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pdGVtcy1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBzaW1wbGUgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LXNpbXBsZS1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYW4gaG92ZXJlZCBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IHN0YXRlLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgYWN0aXZlYCB3aXRoIGBpcy1hY3RpdmVgLiBcbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCBgYWN0aXZlYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtc3RhdGUtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IGNlbnRlcmVkLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgLm1lbnUtY2VudGVyZWQgPiAubWVudWAgd2l0aCBgLm1lbnUuYWxpZ24tY2VudGVyYC4gXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYG1lbnUtY2VudGVyZWRgIHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIHVzaW5nIGBpY29uLSpgIGNsYXNzZXMgd2l0aG91dCBgLmljb25zYCBjbGFzc2VzXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgdGhpcyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciBhIE1lbnUuXG5AbWl4aW4gbWVudS1iYXNlIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICBsaSB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB9XG5cbiAgYSxcbiAgLmJ1dHRvbiB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRtZW51LWl0ZW1zLXBhZGRpbmc7XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb2YgaW5uZXIgZWxlbWVudHNcbiAgaW5wdXQsXG4gIHNlbGVjdCxcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgaW5wdXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4vLy8gRXhwYW5kcyB0aGUgaXRlbXMgb2YgYSBNZW51LCBzbyBlYWNoIGl0ZW0gaXMgdGhlIHNhbWUgd2lkdGguXG5AbWl4aW4gbWVudS1leHBhbmQge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWxpZ24gbWVudSBpdGVtcy5cbkBtaXhpbiBtZW51LWFsaWduKCRhbGlnbm1lbnQpIHtcbiAgQGlmICRhbGlnbm1lbnQgPT0gbGVmdCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSByaWdodCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG5cbiAgICAgICYudmVydGljYWwge1xuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IGNlbnRlciB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIGRpcmVjdGlvbiBvZiBhIE1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIFtob3Jpem9udGFsXSAtIERpcmVjdGlvbiBvZiB0aGUgTWVudS4gQ2FuIGJlIGBob3Jpem9udGFsYCBvciBgdmVydGljYWxgLlxuQG1peGluIG1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBtZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2ltcGxlIE1lbnUsIHdoaWNoIGhhcyBubyBwYWRkaW5nIG9yIGhvdmVyIHN0YXRlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbJGdsb2JhbC1sZWZ0XSAtIERpcmVjdGlvbiBvZiB0aGUgbWVudS4gVGhpcyBlZmZlY3RzIHRoZSBzaWRlIG9mIHRoZSBgPGxpPmAgdGhhdCByZWNlaXZlcyB0aGUgbWFyZ2luLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWFyZ2luIFskbWVudS1zaW1wbGUtbWFyZ2luXSAtIFRoZSBtYXJnaW4gdG8gYXBwbHkgdG8gZWFjaCBgPGxpPmAuXG5AbWl4aW4gbWVudS1zaW1wbGUoJGRpcjogJGdsb2JhbC1sZWZ0LCAkbWFyZ2luOiAkbWVudS1zaW1wbGUtbWFyZ2luKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICBsaSArIGxpIHtcbiAgICBtYXJnaW4tI3skZGlyfTogJG1hcmdpbjtcbiAgfVxuXG4gIGEge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG5lc3RlZCBNZW51LCBieSBhZGRpbmcgYG1hcmdpbi1sZWZ0YCB0byB0aGUgbWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkbWFyZ2luIFskbWVudS1uZXN0ZWQtbWFyZ2luXSAtIExlbmd0aCBvZiB0aGUgbWFyZ2luLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJG5lc3RlZC1hbGlnbm1lbnQgW2xlZnRdIC0gQWxpZ25tZW50IG9mIHRoZSBuZXN0ZWQgY2xhc3NcbkBtaXhpbiBtZW51LW5lc3RlZChcbiAgJG1hcmdpbjogJG1lbnUtbmVzdGVkLW1hcmdpbixcbiAgJG5lc3RlZC1hbGlnbm1lbnQ6IGxlZnRcbikge1xuICBAaWYgJG5lc3RlZC1hbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkbWFyZ2luO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRtYXJnaW47XG4gIH1cblxufVxuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGljb25zIGluIG1lbnVzLlxuQG1peGluIG1lbnUtaWNvbnMoKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGltZyxcbiAgICBpLFxuICAgIHN2ZyB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICArIHNwYW4ge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBwb3NpdGlvbiBjbGFzc2VzIGZvciBpY29ucyB3aXRoaW4gYSBtZW51LlxuQG1peGluIG1lbnUtaWNvbi1wb3NpdGlvbigkcG9zaXRpb246IGxlZnQsICRzcGFjaW5nOiAkbWVudS1pY29uLXNwYWNpbmcpIHtcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gJHNwYWNpbmc7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogJHNwYWNpbmcgYXV0byAwO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbWVudS10ZXh0IHtcbiAgcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG5cbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuQG1peGluIG1lbnUtc3RhdGUtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgY29sb3I6ICRtZW51LWl0ZW0tY29sb3ItYWN0aXZlO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1tZW51IHtcbiAgLm1lbnUge1xuICAgIEBpbmNsdWRlIG1lbnUtYmFzZTtcblxuICAgIC8vIERlZmF1bHQgb3JpZW50YXRpb246IGhvcml6b250YWxcbiAgICAmLCAmLmhvcml6b250YWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgb3JpZW50YXRpb24gbW9kaWZpZXJcbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICAvLyBFdmVuLXdpZHRoIG1vZGlmaWVyIGZvciBob3Jpem9udGFsIG9yaWVudGF0aW9uXG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICB9XG5cbiAgICAvLyBTaW1wbGVcbiAgICAmLnNpbXBsZSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXNpbXBsZTtcbiAgICB9XG5cbiAgICAvLyBCcmVha3BvaW50IHNwZWNpZmljIHZlcnNpb25zXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IGZhbHNlKSB7XG4gICAgICAmLiN7JC16Zi1zaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS1leHBhbmRlZCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS1zaW1wbGUge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZXN0aW5nXG4gICAgJi5uZXN0ZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQ7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBCYXNlIFN0eWxlc1xuICAgICYuaWNvbnMge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29ucztcbiAgICB9XG5cbiAgICAvLyBCYWNrd2FyZCBDb21wYXRpYmlsaXR5IGZvciBhY3RpdmUgc3RhdGVcbiAgICBAaWYgJG1lbnUtaWNvbnMtYmFjay1jb21wYXQge1xuICAgICAgJi5pY29uLXRvcCxcbiAgICAgICYuaWNvbi1yaWdodCxcbiAgICAgICYuaWNvbi1ib3R0b20sXG4gICAgICAmLmljb24tbGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWNvbiBMZWZ0XG4gICAgJi5pY29uLWxlZnQge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKGxlZnQpO1xuICAgIH1cblxuICAgIC8vIEljb24gUmlnaHRcbiAgICAmLmljb24tcmlnaHQge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKHJpZ2h0KTtcbiAgICB9XG5cbiAgICAvLyBJY29uIFRvcFxuICAgICYuaWNvbi10b3Age1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKHRvcCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBCb3R0b21cbiAgICAmLmljb24tYm90dG9tIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihib3R0b20pO1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc3RhdGUtYWN0aXZlO1xuICAgIH1cbiAgICBcbiAgICAvLyBCYWNrd2FyZCBDb21wYXRpYmlsaXR5IGZvciBhY3RpdmUgc3RhdGVcbiAgICBAaWYgJG1lbnUtc3RhdGUtYmFjay1jb21wYXQge1xuICAgICAgLmFjdGl2ZSA+IGEge1xuICAgICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbGlnbiBsZWZ0XG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtbGVmdH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBBbGlnbiByaWdodFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLXJpZ2h0fSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKHJpZ2h0KTtcblxuICAgICAgLm5lc3RlZCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRuZXN0ZWQtYWxpZ25tZW50OiByaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gY2VudGVyXG4gICAgJi5hbGlnbi1jZW50ZXIge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihjZW50ZXIpO1xuICAgIH1cblxuICAgIC5tZW51LXRleHQge1xuICAgICAgQGluY2x1ZGUgbWVudS10ZXh0O1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdCB7XG4gICAgLm1lbnUtY2VudGVyZWQge1xuICAgICAgPiAubWVudSB7XG4gICAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGNlbnRlcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJldmVudCBGT1VDIHdoZW4gdXNpbmcgdGhlIFJlc3BvbnNpdmUgTWVudSBwbHVnaW5cbiAgLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJlc3BvbnNpdmUtZW1iZWRcbi8vLy9cblxuLy8vIE1hcmdpbiBiZWxvdyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gQXNwZWN0IHJhdGlvcyB1c2VkIHRvIGRldGVybWluZSBwYWRkaW5nLWJvdHRvbSBvZiByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lcnMuXG4vLy8gQHR5cGUgTWFwXG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxuKSAhZGVmYXVsdDtcblxuLy8gV0FSTklORzogV2lsbCBiZSByZW1vdmVkIGluIHZlcnNpb24gNi40XG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpbzogZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge1N0cmluZ3xMaXN0fSAkcmF0aW8gW2RlZmF1bHRdIC0gUmF0aW8gb2YgdGhlIGNvbnRhaW5lci4gQ2FuIGJlIGEga2V5IGZyb20gdGhlIGAkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3NgIG1hcCBvciBhIGxpc3QgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuQG1peGluIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KSB7XG4gIEBpZiB0eXBlLW9mKCRyYXRpbykgPT0gJ3N0cmluZycge1xuICAgICRyYXRpbzogbWFwLWdldCgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsICRyYXRpbyk7XG4gIH1cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b207XG4gIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgaWZyYW1lLFxuICBvYmplY3QsXG4gIGVtYmVkLFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQge1xuICAucmVzcG9uc2l2ZS1lbWJlZCxcbiAgLmZsZXgtdmlkZW8ge1xuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KTtcblxuICAgICRyYXRpb3M6IG1hcC1yZW1vdmUoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLGRlZmF1bHQpO1xuXG4gICAgQGVhY2ggJG5hbWUsICRyYXRpbyBpbiAkcmF0aW9zIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LXZpZGVvIHtcbiAgQHdhcm4gJ1RoaXMgbWl4aW4gaXMgYmVpbmcgcmVwbGFjZWQgYnkgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkKCkuIGZvdW5kYXRpb24tZmxleC12aWRlbygpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuNC4nO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG59XG5cbkBtaXhpbiBmbGV4LXZpZGVvKCRyYXRpbzogJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW8pIHtcbiAgQHdhcm4gJ1RoaXMgbWl4aW4gaXMgYmVpbmcgcmVwbGFjZWQgYnkgcmVzcG9uc2l2ZS1lbWJlZCgpLiBmbGV4LXZpZGVvKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gRmluZHMgdGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yIG9mIHR3byBpbnRlZ2Vycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYSAtIEZpcnN0IG51bWJlciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYiAtIFNlY29uZCBudW1iZXIgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvci5cbkBmdW5jdGlvbiBnY2QoJGEsICRiKSB7XG4gIC8vIEZyb206IGh0dHA6Ly9yb3NldHRhY29kZS5vcmcvd2lraS9HcmVhdGVzdF9jb21tb25fZGl2aXNvciNKYXZhU2NyaXB0XG4gIEBpZiAoJGIgIT0gMCkge1xuICAgIEByZXR1cm4gZ2NkKCRiLCAkYSAlICRiKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBhYnMoJGEpO1xuICB9XG59XG5cbi8vLyBIYW5kbGVzIGRlY2ltYWwgZXhwb25lbnRzIGJ5IHRyeWluZyB0byBjb252ZXJ0IHRoZW0gaW50byBhIGZyYWN0aW9uIGFuZCB0aGVuIHVzZSBhIG50aC1yb290LWFsZ29yaXRobSBmb3IgcGFydHMgb2YgdGhlIGNhbGN1bGF0aW9uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBUaGUgYmFzZSBudW1iZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRleHBvbmVudCAtIFRoZSBleHBvbmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBwcm9kdWN0IG9mIHRoZSBleHBvbmVudGlhdGlvbi5cbkBmdW5jdGlvbiBwb3coJGJhc2UsICRleHBvbmVudCwgJHByZWM6IDE2KSB7XG4gIEBpZiAoZmxvb3IoJGV4cG9uZW50KSAhPSAkZXhwb25lbnQpIHtcbiAgICAkcHJlYzIgOiBwb3coMTAsICRwcmVjKTtcbiAgICAkZXhwb25lbnQ6IHJvdW5kKCRleHBvbmVudCAqICRwcmVjMik7XG4gICAgJGRlbm9taW5hdG9yOiBnY2QoJGV4cG9uZW50LCAkcHJlYzIpO1xuICAgIEByZXR1cm4gbnRoLXJvb3QocG93KCRiYXNlLCAkZXhwb25lbnQgLyAkZGVub21pbmF0b3IpLCAkcHJlYzIgLyAkZGVub21pbmF0b3IsICRwcmVjKTtcbiAgfVxuXG4gICR2YWx1ZTogJGJhc2U7XG4gIEBpZiAkZXhwb25lbnQgPiAxIHtcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqICRiYXNlO1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZXhwb25lbnQgPCAxIHtcbiAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoIC0kZXhwb25lbnQge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgLyAkYmFzZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIG50aC1yb290KCRudW0sICRuOiAyLCAkcHJlYzogMTIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL050aF9yb290I0phdmFTY3JpcHRcbiAgJHg6IDE7XG5cbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkcHJlYyB7XG4gICAgJHg6IDEgLyAkbiAqICgoJG4gLSAxKSAqICR4ICsgKCRudW0gLyBwb3coJHgsICRuIC0gMSkpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHg7XG59XG5cbi8vLyBDYWxjdWxhdGVzIHRoZSBoZWlnaHQgYXMgYSBwZXJjZW50YWdlIG9mIHRoZSB3aWR0aCBmb3IgYSBnaXZlbiByYXRpby5cbi8vLyBAcGFyYW0ge0xpc3R9ICRyYXRpbyAtIFJhdGlvIHRvIHVzZSB0byBjYWxjdWxhdGUgdGhlIGhlaWdodCwgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuLy8vIEByZXR1cm4ge051bWJlcn0gQSBwZXJjZW50YWdlIHZhbHVlIGZvciB0aGUgaGVpZ2h0IHJlbGF0aXZlIHRvIHRoZSB3aWR0aCBvZiBhIHJlc3BvbnNpdmUgY29udGFpbmVyLlxuQGZ1bmN0aW9uIHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKSB7XG4gICR3OiBudGgoJHJhdGlvLCAxKTtcbiAgJGg6IG50aCgkcmF0aW8sIDMpO1xuICBAcmV0dXJuICRoIC8gJHcgKiAxMDAlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbGFiZWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGUgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgb2YgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYmFzZSBzdHlsZXMgZm9yIGEgbGFiZWwuXG5AbWl4aW4gbGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6ICRsYWJlbC1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6ICRsYWJlbC1yYWRpdXM7XG5cbiAgZm9udC1zaXplOiAkbGFiZWwtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1sYWJlbCB7XG4gIC5sYWJlbCB7XG4gICAgQGluY2x1ZGUgbGFiZWw7XG5cbiAgICBiYWNrZ3JvdW5kOiAkbGFiZWwtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGxhYmVsLWNvbG9yO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkbGFiZWwtcGFsZXR0ZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkY29sb3IsICgkbGFiZWwtY29sb3IsICRsYWJlbC1jb2xvci1hbHQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lZGlhLW9iamVjdFxuLy8vL1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIExlZnQgYW5kIHJpZ2h0IHBhZGRpbmcgb24gc2VjdGlvbnMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggb2YgaW1hZ2VzIHdpdGhpbiBhIG1lZGlhIG9iamVjdCwgd2hlbiB0aGUgb2JqZWN0IGlzIHN0YWNrZWQgdmVydGljYWxseS4gU2V0IHRvICdhdXRvJyB0byB1c2UgdGhlIGltYWdlJ3MgbmF0dXJhbCB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbWVkaWEgb2JqZWN0IGNvbnRhaW5lci5cbkBtaXhpbiBtZWRpYS1vYmplY3QtY29udGFpbmVyIHtcbiAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCBibG9jayk7XG4gIG1hcmdpbi1ib3R0b206ICRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3Igc2VjdGlvbnMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGluZyBbJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZ10gLSBQYWRkaW5nIGJldHdlZW4gc2VjdGlvbnMuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LXNlY3Rpb24oJHBhZGRpbmc6ICRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmcpIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogJHBhZGRpbmc7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1sZWZ0fTogJHBhZGRpbmc7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0byBzdGFjayBzZWN0aW9ucyBvZiBhIG1lZGlhIG9iamVjdC4gQXBwbHkgdGhpcyB0byB0aGUgc2VjdGlvbiBlbGVtZW50cywgbm90IHRoZSBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LXN0YWNrIHtcbiAgcGFkZGluZzogMDtcbiAgcGFkZGluZy1ib3R0b206ICRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0IHtcbiAgLm1lZGlhLW9iamVjdCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LWNvbnRhaW5lcjtcblxuICAgIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgfVxuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAmLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2stZm9yLSN7JC16Zi16ZXJvLWJyZWFrcG9pbnR9IC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LXN0YWNrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LXNlY3Rpb247XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICYubWFpbi1zZWN0aW9uIHtcbiAgICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJi5taWRkbGUge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuXG4gICAgICAmLmJvdHRvbSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBvZmYtY2FudmFzXG4vLy8vXG5cbi8vLyBXaWR0aCBtYXAgb2YgYSBsZWZ0L3JpZ2h0IG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTWFwXG4kb2ZmY2FudmFzLXNpemVzOiAoXG4gIHNtYWxsOiAyNTBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgbWFwIG9mIGEgdG9wL2JvdHRvbSBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE1hcFxuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIENvbG9yXG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBmb3IgdGhlIG9mZi1jYW52YXMgb3ZlcmxhcCBwYW5lbC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KSAhZGVmYXVsdDtcblxuLy8vIElubmVyIGJveCBzaGFkb3cgc2l6ZSBmb3IgdGhlIG9mZi1jYW52YXMgcHVzaCBwYW5lbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemU6IDIwcHggIWRlZmF1bHQ7XG5cbi8vLyBJbm5lciBib3ggc2hhZG93IGNvbG9yIGZvciB0aGUgb2ZmLWNhbnZhcyBwdXNoIHBhbmVsLlxuLy8vIEB0eXBlIENvbG9yXG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIGNvbnRlbnQgb3ZlcmxheS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg6IDExICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHdpdGggdGhlIGBwdXNoYCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTIgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgd2l0aCB0aGUgYG92ZXJsYXBgIHRyYW5zaXRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAxMyAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB1c2luZyB0aGUgYHJldmVhbC1mb3ItKmAgY2xhc3NlcyBvciBtaXhpbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTIgIWRlZmF1bHQ7XG5cbi8vLyBMZW5ndGggb2YgdGhlIGFuaW1hdGlvbiBvbiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cyAhZGVmYXVsdDtcblxuLy8vIFRpbWluZyBmdW5jdGlvbiBvZiB0aGUgYW5pbWF0aW9uIG9uIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgS2V5d29yZFxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYSByZXZlYWxlZCBvZmYtY2FudmFzIHdpbGwgYmUgZml4ZWQtcG9zaXRpb24sIGFuZCBzY3JvbGwgd2l0aCB0aGUgc2NyZWVuLlxuLy8vIEB0eXBlIEJvb2xcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIG92ZXJsYXkgdGhhdCBhcHBlYXJzIHdoZW4gYW4gb2ZmLWNhbnZhcyBwYW5lbCBpcyBvcGVuLlxuLy8vIEB0eXBlIENvbG9yXG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gQ1NTIGNsYXNzIHVzZWQgZm9yIHRoZSBtYWluIGNvbnRlbnQgYXJlYS4gVGhlIG9mZi1jYW52YXMgbWl4aW5zIHVzZSB0aGlzIHRvIHRhcmdldCB0aGUgcGFnZSBjb250ZW50LlxuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JyAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzZWxpbmUgc3R5bGVzIGZvciBvZmYtY2FudmFzLiBUaGlzIENTUyBpcyByZXF1aXJlZCB0byBtYWtlIHRoZSBvdGhlciBwaWVjZXMgd29yay5cbkBtaXhpbiBvZmYtY2FudmFzLWJhc2ljcyB7XG5cbiAgLy8vIFRyYW5zZm9ybSBkZXByZWNhdGVkIHNpemUgc2V0dGluZ3MgaW50byBtYXAgJiBzaG93IHdhcm5pbmdcbiAgQGlmIHZhcmlhYmxlLWV4aXN0cyhvZmZjYW52YXMtc2l6ZSkge1xuICAgICRvZmZjYW52YXMtc2l6ZXM6IChzbWFsbDogJG9mZmNhbnZhcy1zaXplLCBtZWRpdW06ICRvZmZjYW52YXMtc2l6ZSkgIWdsb2JhbDtcbiAgICBAd2FybiAnJG9mZmNhbnZhcy1zaXplIGlzIGRlcHJlY2F0ZWQgYW5kIG5vdCB1c2VkIGFueW1vcmUhIFBsZWFzZSB1cGRhdGUgeW91ciBzZXR0aW5ncyBhbmQgdXNlIHRoZSBtYXAgJG9mZmNhbnZhcy1zaXplcyBpbnN0ZWFkJztcbiAgfVxuICBAaWYgdmFyaWFibGUtZXhpc3RzKG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplKSB7XG4gICAgJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKHNtYWxsOiAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemUsIG1lZGl1bTogJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplKSAhZ2xvYmFsO1xuICAgIEB3YXJuICckb2ZmY2FudmFzLXZlcnRpY2FsLXNpemUgaXMgZGVwcmVjYXRlZCBhbmQgbm90IHVzZWQgYW55bW9yZSEgUGxlYXNlIHVwZGF0ZSB5b3VyIHNldHRpbmdzIGFuZCB1c2UgdGhlIG1hcCAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzIGluc3RlYWQnO1xuICB9XG5cbiAgLy8gQ2hlY2tzIHRoZSB6LWluZGV4ZXMgYW5kIGluY3JlYXNlIHRoZW0gZHVlIHRvIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LlxuICAvLyBUaGlzIGlzIG5lY2Vzc2FyeSBiZWNhdXNlIHRoZSBvdmVybGF5J3Mgei1pbmRleCBpcyBuZXcgc2luY2UgdjYuNCBhbmQgbWF5IGJlIGlkZW50aWNhbCB0byB0aGUgdXNlciBjdXN0b20gc2V0dGluZ3Mgb2YgdGhlIHB1c2ggei1pbmRleC5cbiAgQGlmICRvZmZjYW52YXMtcHVzaC16aW5kZXggPD0gJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCB7ICRvZmZjYW52YXMtcHVzaC16aW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggKyAxICFnbG9iYWw7IH1cbiAgQGlmICRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXggPD0gJG9mZmNhbnZhcy1wdXNoLXppbmRleCB7ICRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6ICRvZmZjYW52YXMtcHVzaC16aW5kZXggKyAxICFnbG9iYWw7IH1cbiAgQGlmICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCA8PSAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4IHsgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4ICsgMSAhZ2xvYmFsOyB9XG5cbiAgLy8gSGlkZXMgb3ZlcmZsb3cgb24gYm9keSB3aGVuIGFuIG9mZi1jYW52YXMgcGFuZWwgaXMgb3Blbi5cbiAgLmlzLW9mZi1jYW52YXMtb3BlbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgb3ZlcmxheSAoZ2VuZXJhdGVkIGJ5IEphdmFTY3JpcHQpXG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4O1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmcsIHZpc2liaWxpdHkgJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nO1xuXG4gICAgYmFja2dyb3VuZDogJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ7XG5cbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgJi5pcy1jbG9zYWJsZSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJi5pcy1vdmVybGF5LWFic29sdXRlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG5cbiAgICAmLmlzLW92ZXJsYXktZml4ZWQge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYW4gb2ZmLWNhbnZhcyB3cmFwcGVyLlxuQG1peGluIG9mZi1jYW52YXMtd3JhcHBlcigpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGFuIG9mZi1jYW52YXMgcGFuZWwuXG5AbWl4aW4gb2ZmLWNhbnZhcy1iYXNlKFxuICAkYmFja2dyb3VuZDogJG9mZmNhbnZhcy1iYWNrZ3JvdW5kLFxuICAkdHJhbnNpdGlvbjogJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nLFxuICAkZml4ZWQ6IHRydWVcbikge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgQGlmICRmaXhlZCA9PSB0cnVlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gIC8vIFNldCB0aGUgb2ZmLWNhbnZhcyB6LWluZGV4LlxuICB6LWluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4O1xuXG4gIC8vIEluY3JlYXNlIENTUyBzcGVjaWZpY2l0eVxuICAmLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleDtcbiAgfVxuXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuXG4gIC8vIEhpZGUgaW5hY3RpdmUgb2ZmLWNhbnZhcyB3aXRoaW4gdGhlIGNvbnRlbnQgdGhhdCBoYXZlIHRoZSBzYW1lIHBvc2l0aW9uXG4gICYuaXMtY2xvc2VkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBPdmVybGFwIG9ubHkgc3R5bGVzLlxuICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDtcblxuICAgICYuaXMtb3BlbiB7XG4gICAgICBib3gtc2hhZG93OiAkb2ZmY2FudmFzLXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAvLyBTZXRzIHRyYW5zZm9ybSB0byAwIHRvIHNob3cgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbiAgJi5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gcG9zaXRpb24gYW4gb2ZmLWNhbnZhcyBwYW5lbCB0byB0aGUgbGVmdC9yaWdodC90b3AvYm90dG9tLlxuQG1peGluIG9mZi1jYW52YXMtcG9zaXRpb24oXG4gICRwb3NpdGlvbjogbGVmdCxcbiAgJG9yaWVudGF0aW9uOiBob3Jpem9udGFsLFxuICAkc2l6ZXM6IGlmKCRvcmllbnRhdGlvbiA9PSBob3Jpem9udGFsLCAkb2ZmY2FudmFzLXNpemVzLCAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzKVxuKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcblxuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICB3aWR0aDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBoZWlnaHQ6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBoZWlnaHQ6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUgaXMgc2V0LCBhZGQgaW5uZXIgYm94LXNoYWRvdy5cbiAgLy8gVGhpcyBtaW1pY3MgdGhlIG9mZi1jYW52YXMgcGFuZWwgaGF2aW5nIGEgbG93ZXIgei1pbmRleCwgd2l0aG91dCBoYXZpbmcgdG8gaGF2ZSBvbmUuXG4gIEBpZiAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplIHtcbiAgICAmLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyhyaWdodCwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3cobGVmdCwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KGJvdHRvbSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KHRvcCwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG5cbi8vLyBTZXRzIHRoZSBzdHlsZXMgZm9yIHRoZSBjb250ZW50IGNvbnRhaW5lci5cbkBtaXhpbiBvZmYtY2FudmFzLWNvbnRlbnQoKSB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIC8vIFRyYW5zZm9ybSBzY29wZSB1bnRpbCB0aGUgZWxlbWVudCBpcyBjbG9zZWQgKG1ha2VzIHN1cmUgdHJhbnNpdGlvbmVuZCBnZXRzIHRyaWdnZXJlZClcbiAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuXG4gIC8vIENvbnNpZGVyIGVsZW1lbnQgJiBjb250ZW50LCBuZXN0ZWQgaW4gYW5vdGhlciBjb250ZW50XG4gIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0aGF0IHJldmVhbCBhbiBvZmYtY2FudmFzIHBhbmVsLlxuQG1peGluIG9mZi1jYW52YXMtcmV2ZWFsKFxuJHBvc2l0aW9uOiBsZWZ0LFxuJHppbmRleDogJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LFxuJGNvbnRlbnQ6ICRtYWluY29udGVudC1jbGFzcyxcbiRicmVha3BvaW50OiBzbWFsbFxuKSB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgei1pbmRleDogJHppbmRleDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICBAaWYgbm90ICRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQ29uc2lkZXIgcmV2ZWFsZWQgZWxlbWVudCBpcyBuZXN0ZWQgaW4gY29udGVudFxuICAuI3skbWFpbmNvbnRlbnQtY2xhc3N9ICYge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIEBhdC1yb290IC4jeyRjb250ZW50fS5oYXMtcmV2ZWFsLSN7JHBvc2l0aW9ufSB7XG4gICAgbWFyZ2luLSN7JHBvc2l0aW9ufTogLXpmLWdldC1icC12YWwoJG9mZmNhbnZhcy1zaXplcywgJGJyZWFrcG9pbnQpO1xuICB9XG5cbiAgLy8gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgKHByaW9yIHRvIHY2LjQpXG4gICYgfiAuI3skY29udGVudH0ge1xuICAgIG1hcmdpbi0jeyRwb3NpdGlvbn06IC16Zi1nZXQtYnAtdmFsKCRvZmZjYW52YXMtc2l6ZXMsICRicmVha3BvaW50KTtcbiAgfVxufVxuXG4vLy8gT3ZlcnJpZGVzIHRoZSBvZmYtY2FudmFzIHN0eWxlc1xuQG1peGluIGluLWNhbnZhcygpIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICB3aWR0aDogaW5oZXJpdDtcbiAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gIHRyYW5zaXRpb246IGluaGVyaXQ7XG5cbiAgLy8gSW5jcmVhc2UgQ1NTIHNwZWNpZmljaXR5XG4gICYucG9zaXRpb24tbGVmdCxcbiAgJi5wb3NpdGlvbi1yaWdodCxcbiAgJi5wb3NpdGlvbi10b3AsXG4gICYucG9zaXRpb24tYm90dG9tIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tb2ZmLWNhbnZhcyB7XG4gIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzaWNzO1xuXG4gIC8vIE9mZi1jYW52YXMgd3JhcHBlclxuICAub2ZmLWNhbnZhcy13cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXdyYXBwZXI7XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIGNvbnRhaW5lclxuICAub2ZmLWNhbnZhcyB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNlO1xuXG4gICAgLy8gRm9yY2UgcG9zaXRpb24gYWJzb2x1dGUgZm9yIG5lc3RlZCBvZmYtY2FudmFzIGJlY2F1c2UgZml4ZWQgZG9lc24ndCB3b3JrIGZvciBwdXNoIHRyYW5zaXRpb24gd2l0aGluIHRoZSB0cmFuc2Zvcm0gc2NvcGUuXG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAmIHtcbiAgICAgIC8vIE5PVEU6IHNpbmNlIG92ZXJsYXAgdHJhbnNpdGlvbiBpcyBjdXJyZW50bHkgZm9yY2VkIGlmIG5lc3RlZCwgdGhlcmUncyBubyBuZWVkIHRvIGZvcmNlIHBvc2l0aW9uIGFic29sdXRlIHVudGlsIG5lc3RlZCBwdXNoIHRyYW5zaXRpb24gaXMgc3VwcG9ydGVkLlxuICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgY29udGFpbmVyIHdpdGggYWJzb2x1dGUgcG9zaXRpb25cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzZSgkZml4ZWQ6IGZhbHNlKTtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgcG9zaXRpb24gY2xhc3Nlc1xuICAucG9zaXRpb24tbGVmdCAgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24obGVmdCwgICBob3Jpem9udGFsKTsgfVxuICAucG9zaXRpb24tcmlnaHQgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24ocmlnaHQsICBob3Jpem9udGFsKTsgfVxuICAucG9zaXRpb24tdG9wICAgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24odG9wLCAgICB2ZXJ0aWNhbCk7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbSAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKGJvdHRvbSwgdmVydGljYWwpOyB9XG5cbiAgLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1jb250ZW50O1xuICB9XG5cbiAgLy8gUmV2ZWFsIG9mZi1jYW52YXMgcGFuZWwgb24gbGFyZ2VyIHNjcmVlbnNcbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG5hbWUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChsZWZ0LCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKHJpZ2h0LCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbCh0b3AsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKGJvdHRvbSwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIE1vdmUgaW4tY2FudmFzIGZvciBsYXJnZXIgc2NyZWVuc1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbmFtZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGluLWNhbnZhcztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgZm9yY2UtZWxlbWVudC1uZXN0aW5nLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFibGVcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIHRhYmxlIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSBzdHJpcGVkIHRhYmxlIHJvd3MgYW5kIHRoZSB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzdHlsZSBmb3IgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFibGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtaG92ZXItc2NhbGU6IDIlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdGFuZGFyZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RyaXBlZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIHRhYmxlcyBhcmUgc3RyaXBlZCBieSBkZWZhdWx0IGFuZCBhbiAudW5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuIElmIGBmYWxzZWAsIGEgLnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3Igc3RyaXBlZCByb3dzLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIHN0cmlwZSBvbiByb3dzIG9mIHRoZSB0YWJsZXMsIGV4Y2x1ZGluZyB0aGUgaGVhZGVyIGFuZCBmb290ZXIuIElmIGV2ZW4sIHRoZSBldmVuIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgb2RkLCB0aGUgb2RkIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgZW1wdHksIG9yIGFueSBvdGhlciB2YWx1ZSwgdGhlIHRhYmxlIHJvd3Mgd2lsbCBoYXZlIG5vIHN0cmlwaW5nLlxuLy8vIEB0eXBlIEtleXdvcmRcbiR0YWJsZS1zdHJpcGU6IGV2ZW4gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWFkZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBoZWFkZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgZm9vdGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBmb290ZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBoZWFkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvb3Rlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIGhlYWRlciB3aGVuIHVzaW5nIHN0YWNrZWQgdGFibGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHN0YWNrZWQgdGFibGUgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUpIHtcbiAgdHIge1xuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gZXZlbiwgZGFya2VuIHRoZSBldmVuIHJvd3MuXG4gICAgQGlmICRzdHJpcGUgPT0gZXZlbiB7XG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBvZGQsIGRhcmtlbiB0aGUgb2RkIHJvd3MuXG4gICAgQGVsc2UgaWYgJHN0cmlwZSA9PSBvZGQge1xuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtdW5zdHJpcGUoKSB7XG4gIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSwgJGlzLXN0cmlwZWQ6ICR0YWJsZS1pcy1zdHJpcGVkKSB7XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENhcHRpb25cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaGVhZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgZm9vdFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWZvb3QtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWQgYW5kIGZvb3RcbiAgdGhlYWQsXG4gIHRmb290IHtcbiAgICAvLyBSb3dzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2VsbHMgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogI3skZ2xvYmFsLWxlZnR9O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRhYmxlIHJvd3NcbiAgdGJvZHkge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgc3RyaXBlZFxuICBAaWYgJGlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICB9XG5cbiAgICAmLnVuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIG5vdCBzdHJpcGVkXG4gIEBlbHNlIGlmICRpcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICB9XG5cbiAgICAmLnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRhYmxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHJpcGUgWyR0YWJsZS1zdHJpcGVdIC0gVXNlcyBrZXl3b3JkcyBldmVuLCBvZGQsIG9yIG5vbmUgdG8gZGFya2VuIHJvd3Mgb2YgdGhlIHRhYmxlLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBldmVuLlxuQG1peGluIHRhYmxlKFxuICAkc3RyaXBlOiAkdGFibGUtc3RyaXBlLFxuICAkbmVzdDogZmFsc2Vcbikge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4gIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4gIEBpZiAkbmVzdCB7XG4gICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGF0LXJvb3Qge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGFiaWxpdHkgdG8gaG9yaXpvbnRhbGx5IHNjcm9sbCB0aGUgdGFibGUgd2hlbiB0aGUgY29udGVudCBvdmVyZmxvd3MgaG9yaXpvbnRhbGx5LlxuQG1peGluIHRhYmxlLXNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLy8vIFNsaWdodGx5IGRhcmtlbnMgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG5AbWl4aW4gdGFibGUtaG92ZXIge1xuICB0aGVhZCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBoZWFkZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1oZWFkLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSB0YWJsZSBmb290ZXIgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1mb290LXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICB0Ym9keSB0ciB7XG4gICAgLy9EYXJrZW5zIHRoZSBub24tc3RyaXBlZCB0YWJsZSByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1ob3ZlcjtcbiAgICB9XG4gIH1cblxuICBAaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZWlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0cixcbiAgdGgsXG4gIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYmxlKCRuZXN0OiBmYWxzZSkge1xuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgdGFibGUoJG5lc3Q6ICRuZXN0KTtcbiAgfVxuXG4gIHRhYmxlLnN0YWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZS1zdGFjay1icmVha3BvaW50IGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgIHRhYmxlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtICgxIC8gMTYpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gKDEgLyAxNik7XG4gIC8vIHRlc3QgYWN0dWFsIGxvd2VyLWJvdW5kLXNpemUsIGlmIDAgc2V0IGl0IHRvIDBlbVxuICBAaWYgc3RyaXAtdW5pdCgkbG93ZXItYm91bmQtc2l6ZSkgPT0gMCB7XG4gICAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpO1xuICB9XG5cbiAgQGlmICR1cHBlci1ib3VuZC1zaXplID09IG51bGwge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJHVwcGVyLWJvdW5kOiAtemYtYnAtdG8tZW0oJHVwcGVyLWJvdW5kLXNpemUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdXBwZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yKCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAvLyBCYXNpYyBoaWRpbmcgY2xhc3Nlc1xuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC5oaWRlLWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKCRzaXplKTtcbiAgICAgIH1cblxuICAgICAgLnNob3ctZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1mb3IoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRlLWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cblxuICAgIC5zaG93LWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNjcmVlbiByZWFkZXIgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIC8vIE5lZWQgYSBcImhpZGUtZm9yLXNyXCIgY2xhc3M/IEFkZCBhcmlhLWhpZGRlbj0ndHJ1ZScgdG8gdGhlIGVsZW1lbnRcbiAgLnNob3ctZm9yLXNyLFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cblxuICAvLyBPbmx5IGRpc3BsYXkgdGhlIGVsZW1lbnQgd2hlbiBpdCdzIGZvY3VzZWRcbiAgLnNob3ctb24tZm9jdXMge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhbmRzY2FwZSBhbmQgcG9ydHJhaXQgdmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmbG9hdFxuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzIHtcbiAgLmZsb2F0LWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LWNlbnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgLmNsZWFyZml4IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgRmxleGJveCBVdGlsaXRpZXNcbi8vLy9cbi8vXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3IgdGhlIGNvdW50IG9mIHNvdXJjZSBvcmRlcmluZ2Bcbi8vLyBAdHlwZSBOdW1iZXJcbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNiAhZGVmYXVsdDtcblxuLy8vIFF1aWNrbHkgZGlzYWJsZS9lbmFibGUgUmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgVmFuaWxsYSBGbGV4IEhlbHBlcnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZSAhZGVmYXVsdDtcblxuQG1peGluIGZsZXgtaGVscGVycyB7XG4gIC5mbGV4LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgLmZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50cykge1xuICAgIC8vIExvb3AgdGhyb3VnaCBSZXNwb25zaXZlIEJyZWFrcG9pbnRzXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY29udGFpbmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtYXV0byB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1ncm93IHtcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LWNsYXNzZXMge1xuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCB1c2luZyBqdXN0aWZ5LWNvbnRlbnRcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdsZWZ0Jykge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG4gIFxuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCBTcGVjaWZpY2FsbHkgZm9yIFZlcnRpY2FsIE1lbnVcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdsZWZ0JywgJ2p1c3RpZnknLCAnc3BhY2VkJykge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICAmLnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEgeyBcbiAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGFsaWdubWVudCB1c2luZyBhbGlnbi1pdGVtcyBhbmQgYWxpZ24tc2VsZlxuICBAZWFjaCAkdmRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWFsaWduIHtcbiAgICAuYWxpZ24tI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeTogJHZkaXIpO1xuICAgIH1cblxuICAgIC5hbGlnbi1zZWxmLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24tc2VsZigkeTogJHZkaXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENlbnRyYWwgYWxpZ25tZW50IG9mIGNvbnRlbnRcbiAgLmFsaWduLWNlbnRlci1taWRkbGUge1xuICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6IGNlbnRlciwgJHk6IG1pZGRsZSk7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLy8gU291cmNlIG9yZGVyaW5nXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tb3JkZXItI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LW9yZGVyKCRpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWYW5pbGxhIEZsZXhib3ggSGVscGVyc1xuICBAaW5jbHVkZSBmbGV4LWhlbHBlcnM7XG59XG4iLCIkLXpmLWZsZXgtanVzdGlmeTogKFxuICAnbGVmdCc6IGZsZXgtc3RhcnQsXG4gICdyaWdodCc6IGZsZXgtZW5kLFxuICAnY2VudGVyJzogY2VudGVyLFxuICAnanVzdGlmeSc6IHNwYWNlLWJldHdlZW4sXG4gICdzcGFjZWQnOiBzcGFjZS1hcm91bmQsXG4pO1xuXG4kLXpmLWZsZXgtYWxpZ246IChcbiAgJ3RvcCc6IGZsZXgtc3RhcnQsXG4gICdib3R0b20nOiBmbGV4LWVuZCxcbiAgJ21pZGRsZSc6IGNlbnRlcixcbiAgJ3N0cmV0Y2gnOiBzdHJldGNoLFxuKTtcblxuJC16Zi1mbGV4LWRpcmVjdGlvbjogKFxuICAncm93Jzogcm93LFxuICAncm93LXJldmVyc2UnOiByb3ctcmV2ZXJzZSxcbiAgJ2NvbHVtbic6IGNvbHVtbixcbiAgJ2NvbHVtbi1yZXZlcnNlJzogY29sdW1uLXJldmVyc2UsXG4pO1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGJ5IGFkZGluZyBgZGlzcGxheTogZmxleGAgdG8gdGhlIGVsZW1lbnQuXG5AbWl4aW4gZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgb3IgdmVydGljYWxseSBhbGlnbnMgdGhlIGl0ZW1zIHdpdGhpbiBhIGZsZXggY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeCBbbnVsbF0gLSBIb3Jpem9udGFsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgbGVmdGAsIGByaWdodGAsIGBjZW50ZXJgLCBganVzdGlmeWAsIG9yIGBzcGFjZWRgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgaG9yaXpvbnRhbCBhbGlnbm1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24oJHg6IG51bGwsICR5OiBudWxsKSB7XG4gIEBpZiAkeCB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1qdXN0aWZ5LCAkeCkge1xuICAgICAgJHg6IG1hcC1nZXQoJC16Zi1mbGV4LWp1c3RpZnksICR4KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeH0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGhvcml6b250YWwgYWxpZ25tZW50LiBVc2UgbGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSwgb3Igc3BhY2VkLic7XG4gICAgfVxuICB9XG5cbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciB2ZXJ0aWNhbCBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAganVzdGlmeS1jb250ZW50OiAkeDtcbiAgYWxpZ24taXRlbXM6ICR5O1xufVxuXG4vLy8gVmVydGljYWxseSBhbGlnbiBhIHNpbmdsZSBjb2x1bW4gd2l0aGluIGEgZmxleCByb3cuIEFwcGx5IHRoaXMgbWl4aW4gdG8gYSBmbGV4IGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduLXNlbGYoJHk6IG51bGwpIHtcbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtY29sdW1uLWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAgYWxpZ24tc2VsZjogJHk7XG59XG5cbi8vLyBDaGFuZ2VzIHRoZSBzb3VyY2Ugb3JkZXIgb2YgYSBmbGV4IGNoaWxkLiBDaGlsZHJlbiB3aXRoIGxvd2VyIG51bWJlcnMgYXBwZWFyIGZpcnN0IGluIHRoZSBsYXlvdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvcmRlciBbMF0gLSBPcmRlciBudW1iZXIgdG8gYXBwbHkuXG5AbWl4aW4gZmxleC1vcmRlcigkb3JkZXI6IDApIHtcbiAgb3JkZXI6ICRvcmRlcjtcbn1cblxuLy8vIENoYW5nZSBmbGV4LWRpcmVjdGlvblxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbcm93XSAtIEZsZXggZGlyZWN0aW9uIHRvIHVzZS4gQ2FuIGJlXG4vLy8gICAtIHJvdyAoZGVmYXVsdCk6IHNhbWUgYXMgdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gcm93LXJldmVyc2U6IG9wcG9zaXRlIHRvIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIGNvbHVtbjogc2FtZSBhcyByb3cgYnV0IHRvcCB0byBib3R0b21cbi8vLyAgIC0gY29sdW1uLXJldmVyc2U6IHNhbWUgYXMgcm93LXJldmVyc2UgdG9wIHRvIGJvdHRvbVxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCRkaXJlY3Rpb246IHJvdykge1xuICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIEltcG9ydGFudFJ1bGUsIFNwYWNlQWZ0ZXJDb21tYSwgU2luZ2xlTGluZVBlclByb3BlcnR5XG5cbkBtaXhpbiAtbW90aW9uLXVpLWRlZmF1bHRzIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktZWFzaW5ncywgZGVmYXVsdCk7XG59XG5cbi8vIFRyYW5zaXRpb25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuQG1peGluIG1vdGlvbi11aS10cmFuc2l0aW9ucyB7XG4gIC8vIFNsaWRlXG4gIC5zbGlkZS1pbi1kb3duICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgZG93bik7IH1cbiAgLnNsaWRlLWluLWxlZnQgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICByaWdodCk7IH1cbiAgLnNsaWRlLWluLXVwICAgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICB1cCk7IH1cbiAgLnNsaWRlLWluLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBsZWZ0KTsgfVxuICAuc2xpZGUtb3V0LWRvd24gICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGRvd24pOyB9XG4gIC5zbGlkZS1vdXQtcmlnaHQgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgcmlnaHQpOyB9XG4gIC5zbGlkZS1vdXQtdXAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgdXApOyB9XG4gIC5zbGlkZS1vdXQtbGVmdCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgbGVmdCk7IH1cblxuICAvLyBGYWRlXG4gIC5mYWRlLWluICB7IEBpbmNsdWRlIG11aS1mYWRlKGluLCAgMCwgMSk7IH1cbiAgLmZhZGUtb3V0IHsgQGluY2x1ZGUgbXVpLWZhZGUob3V0LCAxLCAwKTsgfVxuXG4gIC8vIEhpbmdlXG4gIC5oaW5nZS1pbi1mcm9tLXRvcCAgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1yaWdodCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHJpZ2h0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1ib3R0b20gICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIGJvdHRvbSk7IH1cbiAgLmhpbmdlLWluLWZyb20tbGVmdCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBsZWZ0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteCAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICB0b3AsICAgY2VudGVyKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteSAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCwgY2VudGVyKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tdG9wICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCByaWdodCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLWJvdHRvbSAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCBib3R0b20pOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgbGVmdCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQsIGNlbnRlcik7IH1cblxuICAvLyBTY2FsZVxuICAuc2NhbGUtaW4tdXAgICAgeyBAaW5jbHVkZSBtdWktem9vbShpbiwgIDAuNSwgMSk7IH1cbiAgLnNjYWxlLWluLWRvd24gIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAxLjUsIDEpOyB9XG4gIC5zY2FsZS1vdXQtdXAgICB7IEBpbmNsdWRlIG11aS16b29tKG91dCwgMSwgMS41KTsgfVxuICAuc2NhbGUtb3V0LWRvd24geyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDAuNSk7IH1cblxuICAvLyBTcGluXG4gIC5zcGluLWluICAgICB7IEBpbmNsdWRlIG11aS1zcGluKGluLCAgY3cpOyB9XG4gIC5zcGluLW91dCAgICB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY3cpOyB9XG4gIC5zcGluLWluLWNjdyAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGNjdyk7IH1cbiAgLnNwaW4tb3V0LWNjdyB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY2N3KTsgfVxuXG4gIC8vIFRyYW5zaXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZWFzaW5ncyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgdHJhbnNpdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQW5pbWF0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktYW5pbWF0aW9ucyB7XG4gIC5zaGFrZSAgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc2hha2UpOyB9XG4gIC5zcGluLWN3ICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3Bpbik7IH1cbiAgLnNwaW4tY2N3IHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzcGluKGNjdykpOyB9XG4gIC53aWdnbGUgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24od2lnZ2xlKTsgfVxuXG4gIC5zaGFrZSxcbiAgLnNwaW4tY3csXG4gIC5zcGluLWNjdyxcbiAgLndpZ2dsZSB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktc3BlZWRzLCBkZWZhdWx0KTtcbiAgfVxuXG4gIC8vIEFuaW1hdGlvbiBNb2RpZmllcnNcbiAgLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbiAgLmluZmluaXRlIHsgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7IH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktc3BlZWRzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgYW5pbWF0aW9uLWRlbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8vIEZvcm1hdCBmb3IgQ1NTIGNsYXNzZXMgY3JlYXRlZCB3aXRoIE1vdGlvbiBVSS5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAcHJvcCB7Qm9vbGVhbn0gYXBwZW5kIFt0cnVlXSAtIERlZmluZXMgaWYgc2VsZWN0b3JzIGFyZSBjaGFpbmVkIHRvIHRoZSBzZWxlY3RvciAoYC5jbGFzcy5lbnRlcmApLCBvciBhcHBlbmRlZCBhcyBhIG5ldyBjbGFzcyAoYC5jbGFzcy1lbnRlcmApLlxuLy8vIEBwcm9wIHtTdHJpbmd9IHByZWZpeCBbJ211aS0nXSAtIFByZWZpeCB0byBhZGQgYmVmb3JlIHRoZSBzdGF0ZSBvZiBhIGNsYXNzLiBFbnRlciBhbiBlbXB0eSBzdHJpbmcgdG8gdXNlIG5vIHByZWZpeC5cbi8vLyBAcHJvcCB7U3RyaW5nfSBwcmVmaXggWyctYWN0aXZlJ10gLSBTdWZmaXggdG8gYWRkIHRvIHRoZSBhY3RpdmUgc3RhdGUgY2xhc3MuXG4kbW90aW9uLXVpLWNsYXNzZXM6IChcbiAgY2hhaW46IHRydWUsXG4gIHByZWZpeDogJ211aS0nLFxuICBhY3RpdmU6ICctYWN0aXZlJyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBTdGF0ZSBuYW1lcyB0byByZWZlcmVuY2Ugd2hlbiB3cml0aW5nIG1vdGlvbiBjbGFzc2VzLiBUbyB1c2UgbXVsdGlwbGUgY2xhc3MgbmFtZXMgZm9yIG9uZSBzdGF0ZSwgZW50ZXIgYSBsaXN0IG9mIHN0cmluZ3MgaW5zdGVhZCBvZiBvbmUgc3RyaW5nLlxuLy8vIEB0eXBlIE1hcFxuJG1vdGlvbi11aS1zdGF0ZXM6IChcbiAgaW46ICdlbnRlcicsXG4gIG91dDogJ2xlYXZlJyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNwZWVkIHRoYXQgdHJhbnNpdGlvbnMgYW5kIGFuaW1hdGlvbnMgcGxheSBhdCwgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBzcGVlZC5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktc3BlZWRzOiAoXG4gIGRlZmF1bHQ6IDUwMG1zLFxuICBzbG93OiA3NTBtcyxcbiAgZmFzdDogMjUwbXMsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkZWxheSB0byBhZGQgYmVmb3JlIG1vdGlvbiwgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBkZWxheS5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktZGVsYXlzOiAoXG4gIGRlZmF1bHQ6IDAsXG4gIHNob3J0OiAzMDBtcyxcbiAgbG9uZzogNzAwbXMsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBlYXNpbmcgZm9yIHRyYW5zaXRpb25zIGFuZCBhbmltYXRpb25zLCBhbG9uZyB3aXRoIHZhbHVlcyBmb3IgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGhlIGVhc2luZy5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktZWFzaW5nczogKFxuICBkZWZhdWx0OiBsaW5lYXIsXG4gIGxpbmVhcjogbGluZWFyLFxuICBlYXNlOiBlYXNlLFxuICBlYXNlLWluOiBlYXNlLWluLFxuICBlYXNlLW91dDogZWFzZS1vdXQsXG4gIGVhc2UtaW4tb3V0OiBlYXNlLWluLW91dCxcbiAgYm91bmNlLWluOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSksXG4gIGJvdW5jZS1vdXQ6IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSksXG4gIGJvdW5jZS1pbi1vdXQ6IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBNaXNjZWxsYW5lb3VzIHNldHRpbmdzIHJlbGF0ZWQgdG8gTW90aW9uIFVJLlxuLy8vIEB0eXBlIE1hcFxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbZmFsc2VdIC0gRGVmaW5lcyBpZiBzbGlkZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIGhpbmdlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgc2NhbGUgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBzcGluIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4kbW90aW9uLXVpLXNldHRpbmdzOiAoXG4gIHNsaWRlLWFuZC1mYWRlOiBmYWxzZSxcbiAgaGluZ2UtYW5kLWZhZGU6IHRydWUsXG4gIHNjYWxlLWFuZC1mYWRlOiB0cnVlLFxuICBzcGluLWFuZC1mYWRlOiB0cnVlLFxuICBhY3RpdmF0ZS1xdWV1ZS1jbGFzczogJ2lzLWFuaW1hdGluZycsXG4pICFkZWZhdWx0O1xuIiwiLy8gSW50ZXJuYWwgY291bnRlciBmb3IgY3JlYXRpbmcgdW5pcXVlIGtleWZyYW1lIG5hbWVzXG4kLW11aS1jdXN0b206IDA7XG5cbi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zLiBVc2UgdGhpcyBmdW5jdGlvbiBpbnN0ZWFkIG9mIGBtdWktYW5pbWF0aW9uYCBpZiB5b3Ugd2FudCB0byBjcmVhdGUgYSBrZXlmcmFtZSBhbmltYXRpb24gKndpdGhvdXQqIGF1dG9tYXRpY2FsbHkgYXNzaWduaW5nIGl0IHRvIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGtleWZyYW1lLlxuLy8vIEBwYXJhbSB7RnVuY3Rpb259ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkZWZmZWN0cy4uLikge1xuICAkb2JqOiAtbXVpLXByb2Nlc3MtYXJncygkZWZmZWN0cy4uLik7XG4gICRvYmo6IG1hcC1yZW1vdmUoJG9iaiwgbmFtZSk7XG5cbiAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgLy8gTm93IGl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICBAZWFjaCAkcGN0LCAkcHJvcHMgaW4gJG9iaiB7XG4gICAgICAjey1tdWkta2V5ZnJhbWUtcGN0KCRwY3QpfSB7XG4gICAgICAgIC8vIExhc3RseSwgaXRlcmF0ZSB0aHJvdWdoIGVhY2ggQ1NTIHByb3BlcnR5IHdpdGhpbiBhIHBlcmNlbnRhZ2UgYW5kIHByaW50IGl0IG91dFxuICAgICAgICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRwcm9wcyB7XG4gICAgICAgICAgI3skcHJvcH06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHN0cmluZyBmb3IgYSBDU1Mga2V5ZnJhbWUsIGJ5IGNvbnZlcnRpbmcgYSBsaXN0IG9mIG51bWJlcnMgdG8gYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkaW5wdXQgLSBMaXN0IG9mIG51bWJlcnMgdG8gdXNlLlxuLy8vIEByZXR1cm4ge1N0cmluZ30gQSBzZXQgb2YgY29tbWEtc2VwYXJhdGVkIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtcGN0KCRpbnB1dCkge1xuICAkb3V0cHV0OiAoKTtcblxuICBAaWYgdHlwZS1vZigkaW5wdXQpID09ICdudW1iZXInIHtcbiAgICAkb3V0cHV0OiAoJGlucHV0ICogMSUpO1xuICB9IEBlbHNlIGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbGlzdCcge1xuICAgIEBlYWNoICRpIGluICRpbnB1dCB7XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgKCRpICogMSUpLCBjb21tYSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkb3V0cHV0O1xufVxuXG4vLy8gUHJpbnRzIHRoZSBDU1MgcHJvcGVydGllcyBmcm9tIGEgc3BlY2lmaWMga2V5IGluIGEga2V5ZnJhbWVzIG1hcC4gVXNlZCB0byBib3Jyb3cgQ1NTIGZyb20ga2V5ZnJhbWUgZnVuY3Rpb25zIGZvciB1c2UgaW4gdHJhbnNpdGlvbnMuXG4vLy8gQHBhcmFtIHtNYXB9ICRrZiAtIEtleWZyYW1lIG1hcCB0byBleHRyYWN0IGZyb20uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRrZXkgLSBLZXkgaW4gdGhlIG1hcCB0byBwcmludCB0aGUgQ1NTIG9mLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC1tdWkta2V5ZnJhbWUtZ2V0KCRrZiwgJGtleSkge1xuICAkbWFwOiBtYXAtZ2V0KCRrZiwgJGtleSk7XG5cbiAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkbWFwIG9yICgpIHtcbiAgICAvLyBTb21lIGtleWZyYW1lIG1hcHMgc3RvcmUgdHJhbnNmb3JtcyBhcyBxdW90ZWQgc3RyaW5nc1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ3N0cmluZycge1xuICAgICAgJHZhbHVlOiB1bnF1b3RlKCR2YWx1ZSk7XG4gICAgfVxuICAgICN7JHByb3B9OiAkdmFsdWU7XG4gIH1cbn1cblxuLy8vIFJlZm9ybWF0cyBhIG1hcCBjb250YWluaW5nIGtleXMgd2l0aCBhIGxpc3Qgb2YgdmFsdWVzLCBzbyB0aGF0IGVhY2gga2V5IGlzIGEgc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHNwbGl0IHVwLlxuLy8vIEByZXR1cm4ge01hcH0gQSByZWZvcm1hdHRlZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBTcGxpdCBrZXlzIHdpdGggbXVsdGlwbGUgdmFsdWVzIGludG8gaW5kaXZpZHVhbCBrZXlzXG4gIEBlYWNoICRrZXksICRpdGVtIGluICRtYXAge1xuICAgICRrZXktdHlwZTogdHlwZS1vZigka2V5KTtcblxuICAgIEBpZiAka2V5LXR5cGUgPT0gJ251bWJlcicge1xuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRpdGVtKSk7XG4gICAgfSBAZWxzZSBpZiAka2V5LXR5cGUgPT0gJ2xpc3QnIHtcbiAgICAgIEBlYWNoICRrIGluICRrZXkge1xuICAgICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGs6ICRpdGVtKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIGEgc2VyaWVzIG9mIGtleWZyYW1lIG9iamVjdHMgaW50byBvbmUuXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXBzLi4uIC0gQSBzZXJpZXMgb2YgbWFwcyB0byBtZXJnZSwgYXMgaW5kaXZpZHVhbCBwYXJhbWV0ZXJzLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBrZXlmcmFtZSBvYmplY3QuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1jb21iaW5lKCRtYXBzLi4uKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBtYXAgcGFzc2VkIGluXG4gIEBlYWNoICRtYXAgaW4gJG1hcHMge1xuICAgIEBpZiB0eXBlLW9mKCRtYXApID09ICdzdHJpbmcnIHtcbiAgICAgICRtYXA6IGNhbGwoJG1hcCk7XG4gICAgfVxuXG4gICAgJG1hcDogLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKTtcblxuICAgIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIGluIHRoZSBtYXBcbiAgICAvLyAka2V5IGlzIHRoZSBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgLy8gJHZhbHVlIGlzIGEgbWFwIG9mIENTUyBwcm9wZXJ0aWVzXG4gICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICAgJG5ldy12YWx1ZTogKCk7XG5cbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkbmV3LW1hcCwgJGtleSkge1xuICAgICAgICAvLyBJZiB0aGUgbWFwIGFscmVhZHkgaGFzIHRoZSBrZXlmcmFtZSAlLCBhcHBlbmQgdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAtbXVpLW1lcmdlLXByb3BlcnRpZXMobWFwLWdldCgkbmV3LW1hcCwgJGtleSksICR2YWx1ZSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gT3RoZXJ3aXNlLCBjcmVhdGUgYSBuZXcgbWFwIHdpdGggdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAkdmFsdWU7XG4gICAgICB9XG5cbiAgICAgIC8vIEZpbmFsbHksIG1lcmdlIHRoZSBtb2RpZmllZCBrZXlmcmFtZSB2YWx1ZSBpbnRvIHRoZSBvdXRwdXQgbWFwXG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJG5ldy12YWx1ZSkpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE1ha2UgYSBuYW1lIGZvciB0aGUga2V5ZnJhbWVzXG4gICQtbXVpLWN1c3RvbTogJC1tdWktY3VzdG9tICsgMSAhZ2xvYmFsO1xuICAkbWFwLW5hbWU6IChuYW1lOiAnY3VzdG9tLSN7JC1tdWktY3VzdG9tfScpO1xuICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAkbWFwLW5hbWUpO1xuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyB0d28gbWFwcyBvZiBDU1MgcHJvcGVydGllcyBpbnRvIG9uZSBtYXAuIElmIGJvdGggbWFwcyBoYXZlIGEgdHJhbnNmb3JtIHByb3BlcnR5LCB0aGUgdmFsdWVzIGZyb20gZWFjaCB3aWxsIGJlIGNvbWJpbmVkIGludG8gb25lIHByb3BlcnR5LlxuLy8vIEBwYXJhbSB7TWFwfSAkb25lIC0gRmlyc3QgbWFwIHRvIG1lcmdlLlxuLy8vIEBwYXJhbSB7TWFwfSAkdHdvIC0gU2Vjb25kIG1hcCB0byBtZXJnZS5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWktbWVyZ2UtcHJvcGVydGllcygkb25lLCAkdHdvKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkb25lLCB0cmFuc2Zvcm0pIGFuZCBtYXAtaGFzLWtleSgkdHdvLCB0cmFuc2Zvcm0pIHtcbiAgICAkdHJhbnNmb3JtOiBqb2luKG1hcC1nZXQoJG9uZSwgdHJhbnNmb3JtKSwgbWFwLWdldCgkdHdvLCB0cmFuc2Zvcm0pKTtcbiAgICAkb25lOiBtYXAtbWVyZ2UoJG9uZSwgKHRyYW5zZm9ybTogJHRyYW5zZm9ybSkpO1xuICAgICR0d286IG1hcC1yZW1vdmUoJHR3bywgdHJhbnNmb3JtKTtcbiAgfVxuXG4gIEByZXR1cm4gbWFwLW1lcmdlKCRvbmUsICR0d28pO1xufVxuIiwiLy8vIENyZWF0ZXMgYSBzbGlkaW5nIHRyYW5zaXRpb24gYnkgdHJhbnNsYXRpbmcgdGhlIGVsZW1lbnQgaG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtsZWZ0XSAtIERpcmVjdGlvbiB0byBzbGlkZSB0by4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkYW1vdW50IFsxMDAlXSAtIExlbmd0aCBvZiB0aGUgc2xpZGUgYXMgYSBwZXJjZW50YWdlIHZhbHVlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXNsaWRlIChcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogbGVmdCxcbiAgJGFtb3VudDogMTAwJSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2xpZGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzbGlkZTogc2xpZGUoJHN0YXRlLCAkZGlyZWN0aW9uLCAkYW1vdW50KTtcblxuICAvLyBDU1MgT3V0cHV0XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG5cbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBBcHBsaWVzIGJhc2ljIHRyYW5zaXRpb24gc2V0dGluZ3MgdG8gYW4gZWxlbWVudC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiB0cmFuc2l0aW9uLWJhc2ljcyhcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICBAaW5jbHVkZSAtbW90aW9uLXVpLWRlZmF1bHRzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgc2V0dXAgY2xhc3MgZm9yIGEgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgLSBTdGF0ZSB0byBzZXR1cCBmb3IgdHJhbnNpdGlvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLXN0YXJ0KCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gV3JhcHMgdGhlIGNvbnRlbnQgaW4gdGhlIGFjdGl2ZSBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIGFjdGl2YXRlIGEgdHJhbnNpdGlvbiBvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLWVuZCgkZGlyKSB7XG4gICRzZWxlY3RvcjogLW11aS1idWlsZC1zZWxlY3RvcihtYXAtZ2V0KCRtb3Rpb24tdWktc3RhdGVzLCAkZGlyKSwgdHJ1ZSk7XG5cbiAgQGF0LXJvb3Qge1xuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWdnZXIgYW5pbWF0aW9uLCB3aGljaCBjYW4gYmUgdXNlZCB3aXRoIEFuZ3VsYXIncyBgbmctcmVwZWF0YC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXktYW1vdW50IC0gQW1vdW50IG9mIHRpbWUgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgdG8gYWRkIGJldHdlZW4gZWFjaCBpdGVtJ3MgYW5pbWF0aW9uLlxuQG1peGluIHN0YWdnZXIoJGRlbGF5LWFtb3VudCkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXktYW1vdW50O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwOyAvLyBQcmV2ZW50IGFjY2lkZW50YWwgQ1NTIGluaGVyaXRhbmNlXG59XG4iLCIvLy8gQ3JlYXRlcyBhIGZhZGUgdHJhbnNpdGlvbiBieSBhZGp1c3RpbmcgdGhlIG9wYWNpdHkgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFswXSAtIE9wYWNpdHkgdG8gc3RhcnQgYXQuIE11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiAwIGFuZCAxLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG8gWzFdIC0gT3BhY2l0eSB0byBlbmQgb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktZmFkZShcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IDAsXG4gICR0bzogMSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZmFkZTogZmFkZSgkZnJvbSwgJHRvKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMCk7XG5cbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGZhZGUsIDEwMCk7XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgaGluZ2UgZWZmZWN0IGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZyb20gW2xlZnRdIC0gRWRnZSBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgZnJvbS4gQ2FuIGJlIGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGF4aXMgW2VkZ2VdIC0gQXhpcyBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgb24uIENhbiBiZSBgZWRnZWAgb3IgYGNlbnRlcmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwZXJzcGVjdGl2ZSBbMjAwMHB4XSAtIFBlcmNlaXZlZCBkaXN0YW5jZSBiZXR3ZWVuIHRoZSB2aWV3ZXIgYW5kIHRoZSBlbGVtZW50LiBBIGhpZ2hlciBudW1iZXIgd2lsbCBtYWtlIHRoZSByb3RhdGlvbiBlZmZlY3QgbW9yZSBwcm9ub3VuY2VkLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHR1cm4tb3JpZ2luIFtmcm9tLWJhY2tdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC5cbkBmdW5jdGlvbiBoaW5nZSAoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBsZWZ0LFxuICAkYXhpczogZWRnZSxcbiAgJHBlcnNwZWN0aXZlOiAyMDAwcHgsXG4gICR0dXJuLW9yaWdpbjogZnJvbS1iYWNrXG4pIHtcbiAgLy8gUm90YXRpb24gZGlyZWN0aW9ucyB3aGVuIGhpbmdpbmcgZnJvbSBiYWNrIHZzLiBmcm9udFxuICAkcm90YXRpb24tYW1vdW50OiA5MGRlZztcbiAgJHJvdGF0aW9ucy1iYWNrOiAoXG4gICAgdG9wOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgcmlnaHQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICBib3R0b206IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCksXG4gICAgbGVmdDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50KSxcbiAgKTtcbiAgJHJvdGF0aW9ucy1mcm9tOiAoXG4gICAgdG9wOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIHJpZ2h0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIGJvdHRvbTogcm90YXRlWCgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIGxlZnQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgKTtcblxuICAvLyBSb3RhdGlvbiBvcmlnaW5cbiAgJHJvdGF0aW9uOiAnJztcbiAgQGlmICR0dXJuLW9yaWdpbiA9PSBmcm9tLWZyb250IHtcbiAgICAkcm90YXRpb246IG1hcC1nZXQoJHJvdGF0aW9ucy1mcm9tLCAkZnJvbSk7XG4gIH0gQGVsc2UgaWYgJHR1cm4tb3JpZ2luID09IGZyb20tYmFjayB7XG4gICAgJHJvdGF0aW9uOiBtYXAtZ2V0KCRyb3RhdGlvbnMtYmFjaywgJGZyb20pO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiAnJHR1cm4tb3JpZ2luIG11c3QgYmUgZWl0aGVyIFwiZnJvbS1iYWNrXCIgb3IgXCJmcm9tLWZyb250XCInO1xuICB9XG5cbiAgLy8gU3RhcnQgYW5kIGVuZCBzdGF0ZVxuICAkc3RhcnQ6ICcnO1xuICAkZW5kOiAnJztcbiAgQGlmICRzdGF0ZSA9PSBpbiB7XG4gICAgJHN0YXJ0OiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICRyb3RhdGlvbjtcbiAgICAkZW5kOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHJvdGF0ZSgwZGVnKTtcbiAgfSBAZWxzZSB7XG4gICAgJHN0YXJ0OiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHJvdGF0ZSgwZGVnKTtcbiAgICAkZW5kOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICRyb3RhdGlvbjtcbiAgfVxuXG4gIC8vIFR1cm4gYXhpc1xuICAkb3JpZ2luOiAnJztcbiAgQGlmICRheGlzID09IGVkZ2Uge1xuICAgICRvcmlnaW46ICRmcm9tO1xuICB9IEBlbHNlIHtcbiAgICAkb3JpZ2luOiBjZW50ZXI7XG4gIH1cblxuICAka2V5ZnJhbWVzOiAoXG4gICAgbmFtZTogJ2hpbmdlLSN7JHN0YXRlfS0jeyRmcm9tfS0jeyRheGlzfS0jeyR0dXJuLW9yaWdpbn0nLFxuICAgIDA6ICh0cmFuc2Zvcm06ICRzdGFydCwgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbiksXG4gICAgMTAwOiAodHJhbnNmb3JtOiAkZW5kKSxcbiAgKTtcblxuICBAcmV0dXJuICRrZXlmcmFtZXM7XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGhpbmdlIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZnJvbSBbbGVmdF0gLSBFZGdlIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYXhpcyBbZWRnZV0gLSBBeGlzIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBvbi4gQ2FuIGJlIGBlZGdlYCBvciBgY2VudGVyYC5cbi8vLyBAcGFyYW0ge0xlbmd0aH0gJHBlcnNwZWN0aXZlIFsyMDAwcHhdIC0gUGVyY2VpdmVkIGRpc3RhbmNlIGJldHdlZW4gdGhlIHZpZXdlciBhbmQgdGhlIGVsZW1lbnQuIEEgaGlnaGVyIG51bWJlciB3aWxsIG1ha2UgdGhlIHJvdGF0aW9uIGVmZmVjdCBtb3JlIHByb25vdW5jZWQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHVybi1vcmlnaW4gW2Zyb20tYmFja10gLSBTaWRlIG9mIHRoZSBlbGVtZW50IHRvIHN0YXJ0IHRoZSByb3RhdGlvbiBmcm9tLiBDYW4gYmUgYGZyb20tYmFja2Agb3IgYGZyb20tZnJvbnRgLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktaGluZ2UgKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbGVmdCxcbiAgJGF4aXM6IGVkZ2UsXG4gICRwZXJzcGVjdGl2ZTogMjAwMHB4LFxuICAkdHVybi1vcmlnaW46IGZyb20tYmFjayxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgaGluZ2UtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRoaW5nZTogaGluZ2UoJHN0YXRlLCAkZnJvbSwgJGF4aXMsICRwZXJzcGVjdGl2ZSwgJHR1cm4tb3JpZ2luKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNjYWxpbmcgdHJhbnNpdGlvbi4gQSBzY2FsZSBvZiBgMWAgbWVhbnMgdGhlIGVsZW1lbnQgaXMgdGhlIHNhbWUgc2l6ZS4gTGFyZ2VyIG51bWJlcnMgbWFrZSB0aGUgZWxlbWVudCBiaWdnZXIsIHdoaWxlIG51bWJlcnMgbGVzcyB0aGFuIDEgbWFrZSB0aGUgZWxlbWVudCBzbWFsbGVyLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbMS41XSAtIFNpemUgdG8gc3RhcnQgYXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFsxXSAtIFNpemUgdG8gZW5kIGF0LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktem9vbShcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IDEuNSxcbiAgJHRvOiAxLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzY2FsZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJHNjYWxlOiB6b29tKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc3Bpbm5pbmcgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC4gVGhlIGB0dXJuYCB1bml0IGlzIHVzZWQgdG8gc3BlY2lmeSBob3cgZmFyIHRvIHJvdGF0ZS4gYDF0dXJuYCBpcyBlcXVhbCB0byBhIDM2MC1kZWdyZWUgc3Bpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRkaXJlY3Rpb24gW2N3XSAtIERpcmVjdGlvbiB0byBzcGluLiBTaG91bGQgYmUgYGN3YCAoY2xvY2t3aXNlKSBvciBgY2N3YCAoY291bnRlcmNsb2Nrd2lzZSkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhbW91bnQgWzAuNzV0dXJuXSAtIEFtb3VudCB0byBlbGVtZW50IHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXNwaW4oXG4gICRzdGF0ZTogaW4sXG4gICRkaXJlY3Rpb246IGN3LFxuICAkYW1vdW50OiAwLjc1dHVybixcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc3Bpbi1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJHNwaW46IHNwaW4oJHN0YXRlLCAkZGlyZWN0aW9uLCAkYW1vdW50KTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc3BpbiwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc3BpbiwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBrZXlmcmFtZSBmcm9tIG9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgYW5kIGFzc2lnbnMgaXQgdG8gdGhlIGVsZW1lbnQgYnkgYWRkaW5nIHRoZSBgYW5pbWF0aW9uLW5hbWVgIHByb3BlcnR5LlxuLy8vIEBwYXJhbSB7RnVuY3Rpb259ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWktYW5pbWF0aW9uKCRhcmdzLi4uKSB7XG4gICRuYW1lOiBtYXAtZ2V0KC1tdWktcHJvY2Vzcy1hcmdzKCRhcmdzLi4uKSwgbmFtZSk7XG4gIEBpbmNsdWRlIG11aS1rZXlmcmFtZXMoJG5hbWUsICRhcmdzLi4uKTtcbiAgYW5pbWF0aW9uLW5hbWU6IHVucXVvdGUoJG5hbWUpO1xufVxuIiwiQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiBcImljb24tZm9udFwiO1xuXHRzcmM6IHVybCgnLi4vZm9udHMvaWNvbi1mb250LmVvdCcpO1xuXHRzcmM6IHVybCgnLi4vZm9udHMvaWNvbi1mb250LmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VvdCcpLFxuXHRcdHVybCgnLi4vZm9udHMvaWNvbi1mb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuXHRcdHVybCgnLi4vZm9udHMvaWNvbi1mb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcblx0XHR1cmwoJy4uL2ZvbnRzL2ljb24tZm9udC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG5cdFx0dXJsKCcuLi9mb250cy9pY29uLWZvbnQuc3ZnI2ljb24tZm9udCcpIGZvcm1hdCgnc3ZnJyk7XG59XG5cbkBtaXhpbiBpY29uLXN0eWxlcyB7XG5cdGZvbnQtZmFtaWx5OiBcImljb24tZm9udFwiO1xuXHRcdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHRcdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcblx0Zm9udC12YXJpYW50OiBub3JtYWw7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdC8vIHNwZWFrOiBub25lOyAvLyBvbmx5IG5lY2Vzc2FyeSBpZiBub3QgdXNpbmcgdGhlIHByaXZhdGUgdW5pY29kZSByYW5nZSAoZmlyc3RHbHlwaCBvcHRpb24pXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbiVpY29uIHtcblx0QGluY2x1ZGUgaWNvbi1zdHlsZXM7XG59XG5cbkBmdW5jdGlvbiBpY29uLWNoYXIoJGZpbGVuYW1lKSB7XG5cdCRjaGFyOiBcIlwiO1xuXG5cdEBpZiAkZmlsZW5hbWUgPT0gY2FsZW5kYXIge1xuXHRcdCRjaGFyOiBcIlxcRTAwMVwiO1xuXHR9XG5cdEBpZiAkZmlsZW5hbWUgPT0gY2hldnJvbi1kb3duIHtcblx0XHQkY2hhcjogXCJcXEUwMDJcIjtcblx0fVxuXHRAaWYgJGZpbGVuYW1lID09IGNoZXZyb24tbGVmdC1zbWFsbCB7XG5cdFx0JGNoYXI6IFwiXFxFMDAzXCI7XG5cdH1cblx0QGlmICRmaWxlbmFtZSA9PSBjaGV2cm9uLWxlZnQge1xuXHRcdCRjaGFyOiBcIlxcRTAwNFwiO1xuXHR9XG5cdEBpZiAkZmlsZW5hbWUgPT0gY2hldnJvbi1yaWdodC1zbWFsbCB7XG5cdFx0JGNoYXI6IFwiXFxFMDA1XCI7XG5cdH1cblx0QGlmICRmaWxlbmFtZSA9PSBjaGV2cm9uLXJpZ2h0IHtcblx0XHQkY2hhcjogXCJcXEUwMDZcIjtcblx0fVxuXHRAaWYgJGZpbGVuYW1lID09IGNoZXZyb24tdXAge1xuXHRcdCRjaGFyOiBcIlxcRTAwN1wiO1xuXHR9XG5cdEBpZiAkZmlsZW5hbWUgPT0gY2xvc2Uge1xuXHRcdCRjaGFyOiBcIlxcRTAwOFwiO1xuXHR9XG5cdEBpZiAkZmlsZW5hbWUgPT0gZmFjZWJvb2sge1xuXHRcdCRjaGFyOiBcIlxcRTAwOVwiO1xuXHR9XG5cdEBpZiAkZmlsZW5hbWUgPT0gZ2FsbGVyeSB7XG5cdFx0JGNoYXI6IFwiXFxFMDBBXCI7XG5cdH1cblx0QGlmICRmaWxlbmFtZSA9PSBnb29nbGUtcGx1cyB7XG5cdFx0JGNoYXI6IFwiXFxFMDBCXCI7XG5cdH1cblx0QGlmICRmaWxlbmFtZSA9PSBpbnN0YWdyYW0ge1xuXHRcdCRjaGFyOiBcIlxcRTAwQ1wiO1xuXHR9XG5cdEBpZiAkZmlsZW5hbWUgPT0gbG9nby1tYXJrIHtcblx0XHQkY2hhcjogXCJcXEUwMERcIjtcblx0fVxuXHRAaWYgJGZpbGVuYW1lID09IGxvZ28tdGV4dCB7XG5cdFx0JGNoYXI6IFwiXFxFMDBFXCI7XG5cdH1cblx0QGlmICRmaWxlbmFtZSA9PSBtYWlsIHtcblx0XHQkY2hhcjogXCJcXEUwMEZcIjtcblx0fVxuXHRAaWYgJGZpbGVuYW1lID09IG1lbnUge1xuXHRcdCRjaGFyOiBcIlxcRTAxMFwiO1xuXHR9XG5cdEBpZiAkZmlsZW5hbWUgPT0gbWludXMge1xuXHRcdCRjaGFyOiBcIlxcRTAxMVwiO1xuXHR9XG5cdEBpZiAkZmlsZW5hbWUgPT0gcGx1cyB7XG5cdFx0JGNoYXI6IFwiXFxFMDEyXCI7XG5cdH1cblx0QGlmICRmaWxlbmFtZSA9PSBwcm92ZW5hbmNlLWhvdGVscyB7XG5cdFx0JGNoYXI6IFwiXFxFMDEzXCI7XG5cdH1cblx0QGlmICRmaWxlbmFtZSA9PSB0cmlwYWR2aXNvciB7XG5cdFx0JGNoYXI6IFwiXFxFMDE0XCI7XG5cdH1cblx0QGlmICRmaWxlbmFtZSA9PSB0d2l0dGVyIHtcblx0XHQkY2hhcjogXCJcXEUwMTVcIjtcblx0fVxuXG5cdEByZXR1cm4gJGNoYXI7XG59XG5cbkBtaXhpbiBpY29uKCRmaWxlbmFtZSwgJGluc2VydDogYmVmb3JlLCAkZXh0ZW5kOiB0cnVlKSB7XG5cdCY6I3skaW5zZXJ0fSB7XG5cdFx0QGlmICRleHRlbmQge1xuXHRcdFx0QGV4dGVuZCAlaWNvbjtcblx0XHR9IEBlbHNlIHtcblx0XHRcdEBpbmNsdWRlIGljb24tc3R5bGVzO1xuXHRcdH1cblx0XHRjb250ZW50OiBpY29uLWNoYXIoJGZpbGVuYW1lKTtcblx0fVxufVxuXG4uaWNvbi1jYWxlbmRhciB7XG5cdEBpbmNsdWRlIGljb24oY2FsZW5kYXIpO1xufVxuLmljb24tY2hldnJvbi1kb3duIHtcblx0QGluY2x1ZGUgaWNvbihjaGV2cm9uLWRvd24pO1xufVxuLmljb24tY2hldnJvbi1sZWZ0LXNtYWxsIHtcblx0QGluY2x1ZGUgaWNvbihjaGV2cm9uLWxlZnQtc21hbGwpO1xufVxuLmljb24tY2hldnJvbi1sZWZ0IHtcblx0QGluY2x1ZGUgaWNvbihjaGV2cm9uLWxlZnQpO1xufVxuLmljb24tY2hldnJvbi1yaWdodC1zbWFsbCB7XG5cdEBpbmNsdWRlIGljb24oY2hldnJvbi1yaWdodC1zbWFsbCk7XG59XG4uaWNvbi1jaGV2cm9uLXJpZ2h0IHtcblx0QGluY2x1ZGUgaWNvbihjaGV2cm9uLXJpZ2h0KTtcbn1cbi5pY29uLWNoZXZyb24tdXAge1xuXHRAaW5jbHVkZSBpY29uKGNoZXZyb24tdXApO1xufVxuLmljb24tY2xvc2Uge1xuXHRAaW5jbHVkZSBpY29uKGNsb3NlKTtcbn1cbi5pY29uLWZhY2Vib29rIHtcblx0QGluY2x1ZGUgaWNvbihmYWNlYm9vayk7XG59XG4uaWNvbi1nYWxsZXJ5IHtcblx0QGluY2x1ZGUgaWNvbihnYWxsZXJ5KTtcbn1cbi5pY29uLWdvb2dsZS1wbHVzIHtcblx0QGluY2x1ZGUgaWNvbihnb29nbGUtcGx1cyk7XG59XG4uaWNvbi1pbnN0YWdyYW0ge1xuXHRAaW5jbHVkZSBpY29uKGluc3RhZ3JhbSk7XG59XG4uaWNvbi1sb2dvLW1hcmsge1xuXHRAaW5jbHVkZSBpY29uKGxvZ28tbWFyayk7XG59XG4uaWNvbi1sb2dvLXRleHQge1xuXHRAaW5jbHVkZSBpY29uKGxvZ28tdGV4dCk7XG59XG4uaWNvbi1tYWlsIHtcblx0QGluY2x1ZGUgaWNvbihtYWlsKTtcbn1cbi5pY29uLW1lbnUge1xuXHRAaW5jbHVkZSBpY29uKG1lbnUpO1xufVxuLmljb24tbWludXMge1xuXHRAaW5jbHVkZSBpY29uKG1pbnVzKTtcbn1cbi5pY29uLXBsdXMge1xuXHRAaW5jbHVkZSBpY29uKHBsdXMpO1xufVxuLmljb24tcHJvdmVuYW5jZS1ob3RlbHMge1xuXHRAaW5jbHVkZSBpY29uKHByb3ZlbmFuY2UtaG90ZWxzKTtcbn1cbi5pY29uLXRyaXBhZHZpc29yIHtcblx0QGluY2x1ZGUgaWNvbih0cmlwYWR2aXNvcik7XG59XG4uaWNvbi10d2l0dGVyIHtcblx0QGluY2x1ZGUgaWNvbih0d2l0dGVyKTtcbn1cbiIsIi8vICoqKioqKioqKioqKioqKioqKioqKioqXG4vLyBTbGljayBDYXJvdXNlbCBTZXR0aW5nc1xuLy8gKioqKioqKioqKioqKioqKioqKioqKipcblxuJHNsaWNrLWZvbnQtcGF0aDogXCIuLi9mb250cy9cIjtcbiRzbGljay1mb250LWZhbWlseTogXCJpY29uLWZvbnRcIjtcbiRzbGljay1sb2FkZXItcGF0aDogXCIuLi9pbWFnZXMvXCI7XG4kc2xpY2stYXJyb3ctY29sb3I6ICR3aGl0ZTtcbiRzbGljay1kb3QtY29sb3I6ICR3aGl0ZTtcbiRzbGljay1kb3QtY29sb3ItYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiRzbGljay1wcmV2LWNoYXJhY3RlcjogaWNvbi1jaGFyKGNoZXZyb24tbGVmdCk7XG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IGljb24tY2hhcihjaGV2cm9uLXJpZ2h0KTtcbi8vICRzbGljay1kb3QtY2hhcmFjdGVyOiAnXFwyMDIyJztcbiRzbGljay1kb3Qtc2l6ZTogMTBweDtcbiRzbGljay1vcGFjaXR5LWRlZmF1bHQ6IDE7XG4kc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjogMTtcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDE7XG5cbi8vIE1vZGFhbCBTZXR0aW5nc1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiRtb2RhYWwtb3ZlcmxheS1jb2xvcjogcmdiYSgwLDAsMCwgMC41KTtcblxuJG1vZGFhbC1yYWRpdXM6IDBweDsgLy81cHhcbiRtb2RhYWwtbWFpbi1iZzogcmdiYSgjZmZmLCAuOSk7XG4kbW9kYWFsLW1haW4tdGV4dDogIzAwMDtcbiRtb2RhYWwtbWF4LXdpZHRoOiA0NDBweDtcbiRtb2RhYWwtc2hhZG93OiAwIDRweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiRtb2RhYWwtcGFkZGluZzogcmVtLWNhbGMoNjQgNDgpO1xuJG1vZGFhbC1ob3Zlci1jb2xvcjogcmdiYSgwLDAsMCwgMC43KTtcblxuJG1vZGFhbC1saWdodDogI2ZmZjtcbiRtb2RhYWwtcHJpbWFyeTogIzU1NTtcbiRtb2RhYWwtZ3JleTogI2FmYjdiYztcbiIsIi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5kcmFnZ2luZyB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuZHJhZ2dpbmcgaW1nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8gRGVmYXVsdCBWYXJpYWJsZXNcblxuLy8gU2xpY2sgaWNvbiBlbnRpdHkgY29kZXMgb3V0cHV0cyB0aGUgZm9sbG93aW5nXG4vLyBcIlxcMjE5MFwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaQXCJcbi8vIFwiXFwyMTkyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpJcIlxuLy8gXCJcXDIwMjJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKAolwiXG5cbiRzbGljay1mb250LXBhdGg6IFwiLi9mb250cy9cIiAhZGVmYXVsdDtcbiRzbGljay1mb250LWZhbWlseTogXCJzbGlja1wiICFkZWZhdWx0O1xuJHNsaWNrLWxvYWRlci1wYXRoOiBcIi4vXCIgIWRlZmF1bHQ7XG4kc2xpY2stYXJyb3ctY29sb3I6IHdoaXRlICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvcjogYmxhY2sgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNvbG9yLWFjdGl2ZTogJHNsaWNrLWRvdC1jb2xvciAhZGVmYXVsdDtcbiRzbGljay1wcmV2LWNoYXJhY3RlcjogXCJcXDIxOTBcIiAhZGVmYXVsdDtcbiRzbGljay1uZXh0LWNoYXJhY3RlcjogXCJcXDIxOTJcIiAhZGVmYXVsdDtcbiRzbGljay1kb3QtY2hhcmFjdGVyOiBcIlxcMjAyMlwiICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1zaXplOiA2cHggIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1kZWZhdWx0OiAwLjc1ICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktb24taG92ZXI6IDEgIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlOiAwLjI1ICFkZWZhdWx0O1xuXG5AZnVuY3Rpb24gc2xpY2staW1hZ2UtdXJsKCR1cmwpIHtcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGltYWdlLXVybCkge1xuICAgICAgICBAcmV0dXJuIGltYWdlLXVybCgkdXJsKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICBAcmV0dXJuIHVybCgkc2xpY2stbG9hZGVyLXBhdGggKyAkdXJsKTtcbiAgICB9XG59XG5cbkBmdW5jdGlvbiBzbGljay1mb250LXVybCgkdXJsKSB7XG4gICAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhmb250LXVybCkge1xuICAgICAgICBAcmV0dXJuIGZvbnQtdXJsKCR1cmwpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gdXJsKCRzbGljay1mb250LXBhdGggKyAkdXJsKTtcbiAgICB9XG59XG5cbi8qIFNsaWRlciAqL1xuXG4uc2xpY2stbGlzdCB7XG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmYgc2xpY2staW1hZ2UtdXJsKFwiYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICAgIH1cbn1cblxuLyogSWNvbnMgKi9cbkBpZiAkc2xpY2stZm9udC1mYW1pbHkgPT0gXCJzbGlja1wiIHtcbiAgICBAZm9udC1mYWNlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgICAgICAgc3JjOiBzbGljay1mb250LXVybChcInNsaWNrLmVvdFwiKTtcbiAgICAgICAgc3JjOiBzbGljay1mb250LXVybChcInNsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgfVxufVxuXG4vKiBBcnJvd3MgKi9cblxuLnNsaWNrLXByZXYsXG4uc2xpY2stbmV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdG9wOiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGNvbG9yOiAkc2xpY2stYXJyb3ctY29sb3I7XG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIH1cbn1cblxuLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IC0yNXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAtMjVweDtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBjb250ZW50OiAkc2xpY2stbmV4dC1jaGFyYWN0ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5zbGljay1uZXh0IHtcbiAgICByaWdodDogLTI1cHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgbGVmdDogLTI1cHg7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogRG90cyAqL1xuXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLnNsaWNrLWRvdHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IC0yNXB4O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxpIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAkc2xpY2stZG90LWNoYXJhY3RlcjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRzbGljay1kb3Qtc2l6ZTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRzbGljay1kb3QtY29sb3I7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICAgICAgY29sb3I6ICRzbGljay1kb3QtY29sb3ItYWN0aXZlO1xuICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIENTUyBGcmFtZXdvcmsgMS4xMi4xXG4gKiBodHRwOi8vanF1ZXJ5dWkuY29tXG4gKlxuICogQ29weXJpZ2h0IGpRdWVyeSBGb3VuZGF0aW9uIGFuZCBvdGhlciBjb250cmlidXRvcnNcbiAqIFJlbGVhc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZS5cbiAqIGh0dHA6Ly9qcXVlcnkub3JnL2xpY2Vuc2VcbiAqXG4gKiBodHRwOi8vYXBpLmpxdWVyeXVpLmNvbS9jYXRlZ29yeS90aGVtaW5nL1xuICovXG5cbi8qIExheW91dCBoZWxwZXJzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS1oZWxwZXItaGlkZGVuIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cbi51aS1oZWxwZXItaGlkZGVuLWFjY2Vzc2libGUge1xuXHRib3JkZXI6IDA7XG5cdGNsaXA6IHJlY3QoMCAwIDAgMCk7XG5cdGhlaWdodDogMXB4O1xuXHRtYXJnaW46IC0xcHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBhZGRpbmc6IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0d2lkdGg6IDFweDtcbn1cbi51aS1oZWxwZXItcmVzZXQge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGJvcmRlcjogMDtcblx0b3V0bGluZTogMDtcblx0bGluZS1oZWlnaHQ6IDEuMztcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRmb250LXNpemU6IDEwMCU7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4udWktaGVscGVyLWNsZWFyZml4OmJlZm9yZSxcbi51aS1oZWxwZXItY2xlYXJmaXg6YWZ0ZXIge1xuXHRjb250ZW50OiBcIlwiO1xuXHRkaXNwbGF5OiB0YWJsZTtcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cbi51aS1oZWxwZXItY2xlYXJmaXg6YWZ0ZXIge1xuXHRjbGVhcjogYm90aDtcbn1cbi51aS1oZWxwZXItemZpeCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRvcGFjaXR5OiAwO1xuXHRmaWx0ZXI6QWxwaGEoT3BhY2l0eT0wKTsgLyogc3VwcG9ydDogSUU4ICovXG59XG5cbi51aS1mcm9udCB7XG5cdHotaW5kZXg6IDEwMDtcbn1cblxuXG4vKiBJbnRlcmFjdGlvbiBDdWVzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi51aS1zdGF0ZS1kaXNhYmxlZCB7XG5cdGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuXG4vKiBJY29uc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udWktaWNvbiB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0bWFyZ2luLXRvcDogLS4yNWVtO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRleHQtaW5kZW50OiAtOTk5OTlweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLnVpLXdpZGdldC1pY29uLWJsb2NrIHtcblx0bGVmdDogNTAlO1xuXHRtYXJnaW4tbGVmdDogLThweDtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi8qIE1pc2MgdmlzdWFsc1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi8qIE92ZXJsYXlzICovXG4udWktd2lkZ2V0LW92ZXJsYXkge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcbn1cbiIsIi8qIVxuICogalF1ZXJ5IFVJIEFjY29yZGlvbiAxLjEyLjFcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2FjY29yZGlvbi8jdGhlbWluZ1xuICovXG4udWktYWNjb3JkaW9uIC51aS1hY2NvcmRpb24taGVhZGVyIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRtYXJnaW46IDJweCAwIDAgMDtcblx0cGFkZGluZzogLjVlbSAuNWVtIC41ZW0gLjdlbTtcblx0Zm9udC1zaXplOiAxMDAlO1xufVxuLnVpLWFjY29yZGlvbiAudWktYWNjb3JkaW9uLWNvbnRlbnQge1xuXHRwYWRkaW5nOiAxZW0gMi4yZW07XG5cdGJvcmRlci10b3A6IDA7XG5cdG92ZXJmbG93OiBhdXRvO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgVGFicyAxLjEyLjFcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL3RhYnMvI3RoZW1pbmdcbiAqL1xuLnVpLXRhYnMge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7LyogcG9zaXRpb246IHJlbGF0aXZlIHByZXZlbnRzIElFIHNjcm9sbCBidWcgKGVsZW1lbnQgd2l0aCBwb3NpdGlvbjogcmVsYXRpdmUgaW5zaWRlIGNvbnRhaW5lciB3aXRoIG92ZXJmbG93OiBhdXRvIGFwcGVhciBhcyBcImZpeGVkXCIpICovXG5cdHBhZGRpbmc6IC4yZW07XG59XG4udWktdGFicyAudWktdGFicy1uYXYge1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IC4yZW0gLjJlbSAwO1xufVxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpIHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0ZmxvYXQ6IGxlZnQ7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dG9wOiAwO1xuXHRtYXJnaW46IDFweCAuMmVtIDAgMDtcblx0Ym9yZGVyLWJvdHRvbS13aWR0aDogMDtcblx0cGFkZGluZzogMDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi51aS10YWJzIC51aS10YWJzLW5hdiAudWktdGFicy1hbmNob3Ige1xuXHRmbG9hdDogbGVmdDtcblx0cGFkZGluZzogLjVlbSAxZW07XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi51aS10YWJzIC51aS10YWJzLW5hdiBsaS51aS10YWJzLWFjdGl2ZSB7XG5cdG1hcmdpbi1ib3R0b206IC0xcHg7XG5cdHBhZGRpbmctYm90dG9tOiAxcHg7XG59XG4udWktdGFicyAudWktdGFicy1uYXYgbGkudWktdGFicy1hY3RpdmUgLnVpLXRhYnMtYW5jaG9yLFxuLnVpLXRhYnMgLnVpLXRhYnMtbmF2IGxpLnVpLXN0YXRlLWRpc2FibGVkIC51aS10YWJzLWFuY2hvcixcbi51aS10YWJzIC51aS10YWJzLW5hdiBsaS51aS10YWJzLWxvYWRpbmcgLnVpLXRhYnMtYW5jaG9yIHtcblx0Y3Vyc29yOiB0ZXh0O1xufVxuLnVpLXRhYnMtY29sbGFwc2libGUgLnVpLXRhYnMtbmF2IGxpLnVpLXRhYnMtYWN0aXZlIC51aS10YWJzLWFuY2hvciB7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cbi51aS10YWJzIC51aS10YWJzLXBhbmVsIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGJvcmRlci13aWR0aDogMDtcblx0cGFkZGluZzogMWVtIDEuNGVtO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xufVxuIiwiLyohXG4gKiBqUXVlcnkgVUkgRGF0ZXBpY2tlciAxLjEyLjFcbiAqIGh0dHA6Ly9qcXVlcnl1aS5jb21cbiAqXG4gKiBDb3B5cmlnaHQgalF1ZXJ5IEZvdW5kYXRpb24gYW5kIG90aGVyIGNvbnRyaWJ1dG9yc1xuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlLlxuICogaHR0cDovL2pxdWVyeS5vcmcvbGljZW5zZVxuICpcbiAqIGh0dHA6Ly9hcGkuanF1ZXJ5dWkuY29tL2RhdGVwaWNrZXIvI3RoZW1pbmdcbiAqL1xuLnVpLWRhdGVwaWNrZXIge1xuXHR3aWR0aDogMTdlbTtcblx0cGFkZGluZzogLjJlbSAuMmVtIDA7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1oZWFkZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmc6IC4yZW0gMDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYsXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDJweDtcblx0d2lkdGg6IDEuOGVtO1xuXHRoZWlnaHQ6IDEuOGVtO1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldi1ob3Zlcixcbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQtaG92ZXIge1xuXHR0b3A6IDFweDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYge1xuXHRsZWZ0OiAycHg7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0IHtcblx0cmlnaHQ6IDJweDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYtaG92ZXIge1xuXHRsZWZ0OiAxcHg7XG59XG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1uZXh0LWhvdmVyIHtcblx0cmlnaHQ6IDFweDtcbn1cbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXByZXYgc3Bhbixcbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQgc3BhbiB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDUwJTtcblx0bWFyZ2luLWxlZnQ6IC04cHg7XG5cdHRvcDogNTAlO1xuXHRtYXJnaW4tdG9wOiAtOHB4O1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItdGl0bGUge1xuXHRtYXJnaW46IDAgMi4zZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjhlbTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItdGl0bGUgc2VsZWN0IHtcblx0Zm9udC1zaXplOiAxZW07XG5cdG1hcmdpbjogMXB4IDA7XG59XG4udWktZGF0ZXBpY2tlciBzZWxlY3QudWktZGF0ZXBpY2tlci1tb250aCxcbi51aS1kYXRlcGlja2VyIHNlbGVjdC51aS1kYXRlcGlja2VyLXllYXIge1xuXHR3aWR0aDogNDUlO1xufVxuLnVpLWRhdGVwaWNrZXIgdGFibGUge1xuXHR3aWR0aDogMTAwJTtcblx0Zm9udC1zaXplOiAuOWVtO1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHRtYXJnaW46IDAgMCAuNGVtO1xufVxuLnVpLWRhdGVwaWNrZXIgdGgge1xuXHRwYWRkaW5nOiAuN2VtIC4zZW07XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGJvcmRlcjogMDtcbn1cbi51aS1kYXRlcGlja2VyIHRkIHtcblx0Ym9yZGVyOiAwO1xuXHRwYWRkaW5nOiAxcHg7XG59XG4udWktZGF0ZXBpY2tlciB0ZCBzcGFuLFxuLnVpLWRhdGVwaWNrZXIgdGQgYSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwYWRkaW5nOiAuMmVtO1xuXHR0ZXh0LWFsaWduOiByaWdodDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdG1hcmdpbjogLjdlbSAwIDAgMDtcblx0cGFkZGluZzogMCAuMmVtO1xuXHRib3JkZXItbGVmdDogMDtcblx0Ym9yZGVyLXJpZ2h0OiAwO1xuXHRib3JkZXItYm90dG9tOiAwO1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24ge1xuXHRmbG9hdDogcmlnaHQ7XG5cdG1hcmdpbjogLjVlbSAuMmVtIC40ZW07XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0cGFkZGluZzogLjJlbSAuNmVtIC4zZW0gLjZlbTtcblx0d2lkdGg6IGF1dG87XG5cdG92ZXJmbG93OiB2aXNpYmxlO1xufVxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSBidXR0b24udWktZGF0ZXBpY2tlci1jdXJyZW50IHtcblx0ZmxvYXQ6IGxlZnQ7XG59XG5cbi8qIHdpdGggbXVsdGlwbGUgY2FsZW5kYXJzICovXG4udWktZGF0ZXBpY2tlci51aS1kYXRlcGlja2VyLW11bHRpIHtcblx0d2lkdGg6IGF1dG87XG59XG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cCB7XG5cdGZsb2F0OiBsZWZ0O1xufVxuLnVpLWRhdGVwaWNrZXItbXVsdGkgLnVpLWRhdGVwaWNrZXItZ3JvdXAgdGFibGUge1xuXHR3aWR0aDogOTUlO1xuXHRtYXJnaW46IDAgYXV0byAuNGVtO1xufVxuLnVpLWRhdGVwaWNrZXItbXVsdGktMiAudWktZGF0ZXBpY2tlci1ncm91cCB7XG5cdHdpZHRoOiA1MCU7XG59XG4udWktZGF0ZXBpY2tlci1tdWx0aS0zIC51aS1kYXRlcGlja2VyLWdyb3VwIHtcblx0d2lkdGg6IDMzLjMlO1xufVxuLnVpLWRhdGVwaWNrZXItbXVsdGktNCAudWktZGF0ZXBpY2tlci1ncm91cCB7XG5cdHdpZHRoOiAyNSU7XG59XG4udWktZGF0ZXBpY2tlci1tdWx0aSAudWktZGF0ZXBpY2tlci1ncm91cC1sYXN0IC51aS1kYXRlcGlja2VyLWhlYWRlcixcbi51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWdyb3VwLW1pZGRsZSAudWktZGF0ZXBpY2tlci1oZWFkZXIge1xuXHRib3JkZXItbGVmdC13aWR0aDogMDtcbn1cbi51aS1kYXRlcGlja2VyLW11bHRpIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUge1xuXHRjbGVhcjogbGVmdDtcbn1cbi51aS1kYXRlcGlja2VyLXJvdy1icmVhayB7XG5cdGNsZWFyOiBib3RoO1xuXHR3aWR0aDogMTAwJTtcblx0Zm9udC1zaXplOiAwO1xufVxuXG4vKiBSVEwgc3VwcG9ydCAqL1xuLnVpLWRhdGVwaWNrZXItcnRsIHtcblx0ZGlyZWN0aW9uOiBydGw7XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItcHJldiB7XG5cdHJpZ2h0OiAycHg7XG5cdGxlZnQ6IGF1dG87XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItbmV4dCB7XG5cdGxlZnQ6IDJweDtcblx0cmlnaHQ6IGF1dG87XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItcHJldjpob3ZlciB7XG5cdHJpZ2h0OiAxcHg7XG5cdGxlZnQ6IGF1dG87XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItbmV4dDpob3ZlciB7XG5cdGxlZnQ6IDFweDtcblx0cmlnaHQ6IGF1dG87XG59XG4udWktZGF0ZXBpY2tlci1ydGwgLnVpLWRhdGVwaWNrZXItYnV0dG9ucGFuZSB7XG5cdGNsZWFyOiByaWdodDtcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1idXR0b25wYW5lIGJ1dHRvbiB7XG5cdGZsb2F0OiBsZWZ0O1xufVxuLnVpLWRhdGVwaWNrZXItcnRsIC51aS1kYXRlcGlja2VyLWJ1dHRvbnBhbmUgYnV0dG9uLnVpLWRhdGVwaWNrZXItY3VycmVudCxcbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1ncm91cCB7XG5cdGZsb2F0OiByaWdodDtcbn1cbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1ncm91cC1sYXN0IC51aS1kYXRlcGlja2VyLWhlYWRlcixcbi51aS1kYXRlcGlja2VyLXJ0bCAudWktZGF0ZXBpY2tlci1ncm91cC1taWRkbGUgLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcblx0Ym9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuXHRib3JkZXItbGVmdC13aWR0aDogMXB4O1xufVxuXG4vKiBJY29ucyAqL1xuLnVpLWRhdGVwaWNrZXIgLnVpLWljb24ge1xuXHRkaXNwbGF5OiBibG9jaztcblx0dGV4dC1pbmRlbnQ6IC05OTk5OXB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRsZWZ0OiAuNWVtO1xuXHR0b3A6IC4zZW07XG59XG4iLCIvKiBpbmplY3Q6aW1wb3J0ICovXG5AaW1wb3J0IFwiaW1wb3J0L19rd2lja3Muc2Nzc1wiO1xuQGltcG9ydCBcImltcG9ydC9fbW9kYWFsLnNjc3NcIjtcbkBpbXBvcnQgXCJpbXBvcnQvX3JlbW9kYWwuc2Nzc1wiO1xuQGltcG9ydCBcImltcG9ydC9fcmVtb2RhbC50aGVtZS5zY3NzXCI7XG5AaW1wb3J0IFwiaW1wb3J0L19yZXNwb25zaXZlLXRhYnMuc2Nzc1wiO1xuQGltcG9ydCBcImltcG9ydC9fc2Nyb2xsYmFycy5zY3NzXCI7XG5AaW1wb3J0IFwiaW1wb3J0L19zZWxlY3RyaWMuc2Nzc1wiO1xuQGltcG9ydCBcImltcG9ydC9fdGFibGVzYXcuc2Nzc1wiO1xuLyogZW5kaW5qZWN0ICovXG4iLCIvKiFcbiAqICBLd2lja3M6IFNleHkgU2xpZGluZyBQYW5lbHMgZm9yIGpRdWVyeSAtIHYyLjIuMVxuICogIGh0dHA6Ly9kZXZzbWFzaC5jb20vcHJvamVjdHMva3dpY2tzXG4gKlxuICogIENvcHlyaWdodCAyMDEzIEplcmVteSBNYXJ0aW4gKGptYXI3NzcpXG4gKiAgQ29udHJpYnV0b3JzOiBEdWtlIFNwZWVyIChEdWtlM0QpLCBHdWlsbGVybW8gR3VlcnJlcm8gKGdndWVycmVybylcbiAqICBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqICBodHRwOi8vd3d3Lm9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL21pdC1saWNlbnNlLnBocFxuICovXG4vKlxuICogIFRoaXMgZmlsZSBjb250YWlucyBzdHlsZXMgdGhhdCBhcmUgY29tbW9uIHRvIGFsbCBrd2lja3MgaW5zdGFuY2VzLiAgTm90ZSB0aGF0IGVhY2gga3dpY2tzIGluc3RhbmNlIHJlcXVpcmVzXG4gKiAgYWRkaXRpb25hbCBzdHlsaW5nIC0gcGxlYXNlIHNlZSB0aGUgZXhhbXBsZXMgZm9yIG1vcmUgaW5mby5cbiAqL1xuLmt3aWNrcyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xufVxuLmt3aWNrcyA+ICoge1xuXHRkaXNwbGF5OiBibG9jaztcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZzogMDtcblx0bWFyZ2luOiAwO1xufVxuLmt3aWNrcy5rd2lja3MtcHJvY2Vzc2VkID4gKiB7XG5cdG1hcmdpbjogMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xufVxuLmt3aWNrcy1ob3Jpem9udGFsID4gKiB7XG5cdGZsb2F0OiBsZWZ0O1xufVxuLmt3aWNrcy1ob3Jpem9udGFsID4gOmZpcnN0LWNoaWxkIHtcblx0bWFyZ2luLWxlZnQ6IDA7XG59XG4ua3dpY2tzLXZlcnRpY2FsID4gOmZpcnN0LWNoaWxkIHtcblx0bWFyZ2luLXRvcDogMDtcbn1cbiIsIi8qIVxuXHRNb2RhYWwgLSBhY2Nlc3NpYmxlIG1vZGFscyAtIHYwLjMuMVxuXHRieSBIdW1hYW4sIGZvciBhbGwgaHVtYW5zLlxuXHRodHRwOi8vaHVtYWFuLmNvbVxuICovXG5cbi8vIE1vZGFhbCBWYXJpYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRtb2RhYWwtb3ZlcmxheS1jb2xvcjogcmdiYSgwLDAsMCwgMC44KSAhZGVmYXVsdDtcblxuJG1vZGFhbC1yYWRpdXM6IDBweCAhZGVmYXVsdDsgLy81cHhcbiRtb2RhYWwtbWFpbi1iZzogI2ZmZiAhZGVmYXVsdDtcbiRtb2RhYWwtbWFpbi10ZXh0OiAjMDAwICFkZWZhdWx0O1xuJG1vZGFhbC1tYXgtd2lkdGg6IDEwMDBweCAhZGVmYXVsdDtcbiRtb2RhYWwtc2hhZG93OiAwIDRweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4yKSAhZGVmYXVsdDtcbiRtb2RhYWwtcGFkZGluZzogMzBweCAhZGVmYXVsdDtcbiRtb2RhYWwtaG92ZXItY29sb3I6IHJnYmEoMCwwLDAsIDAuNykgIWRlZmF1bHQ7XG5cbiRtb2RhYWwtbGlnaHQ6ICNmZmYgIWRlZmF1bHQ7XG4kbW9kYWFsLXByaW1hcnk6ICM1NTUgIWRlZmF1bHQ7XG4kbW9kYWFsLWdyZXk6ICNhZmI3YmMgIWRlZmF1bHQ7XG5cblxuLy8gTW9kYWFsIE1peGluc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBtb2RhYWwtdHJhbnNpdGlvbigkdHlwZSwgJHNwZWVkOiAuMnMsICRlYXNlOiBlYXNlLWluLW91dCkge1xuXHR0cmFuc2l0aW9uOiAkdHlwZSAjeyRzcGVlZH0gI3skZWFzZX07XG59XG5AbWl4aW4gbW9kYWFsLWhpZGV0ZXh0KCkge1xuXHRwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcblx0Y2xpcDogcmVjdCgxcHggMXB4IDFweCAxcHgpOyAvKiBJRTYsIElFNyAqL1xuXHRjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG5cdHBhZGRpbmc6MCAhaW1wb3J0YW50O1xuXHRib3JkZXI6MCAhaW1wb3J0YW50O1xuXHRoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuXHR3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5cblxuLy8gTW9kYWFsIFN0cnVjdHVyZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5tb2RhYWwtbm9zY3JvbGwge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuLm1vZGFhbC1hY2Nlc3NpYmxlLWhpZGUge1xuXHRAaW5jbHVkZSBtb2RhYWwtaGlkZXRleHQ7XG59XG5cbi5tb2RhYWwtb3ZlcmxheSB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHR6LWluZGV4OiA5OTk7XG5cdG9wYWNpdHk6IDA7XG59XG4ubW9kYWFsLXdyYXBwZXIge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHotaW5kZXg6IDk5OTk7XG5cdG92ZXJmbG93OiBhdXRvO1xuXHRvcGFjaXR5OiAxO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHQtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cdEBpbmNsdWRlIG1vZGFhbC10cmFuc2l0aW9uKGFsbCwgMC4zcyk7XG5cdCYgKiB7XG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0XHQtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXHRcdC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXHR9XG5cdC5tb2RhYWwtY2xvc2Uge1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcblx0fVxuXG5cdCYubW9kYWFsLXN0YXJ0X25vbmUge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXHQmLm1vZGFhbC1zdGFydF9mYWRlIHtcblx0XHRvcGFjaXR5OiAwO1xuXHR9XG5cblx0JiAqW3RhYmluZGV4PVwiMFwiXSB7XG5cdFx0b3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG5cblx0Ly8gaXMgZnVsbHNjcmVlblxuXHQmLm1vZGFhbC1mdWxsc2NyZWVuIHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG59XG4ubW9kYWFsLW91dGVyLXdyYXBwZXIge1xuXHRkaXNwbGF5OiB0YWJsZTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHQubW9kYWFsLWZ1bGxzY3JlZW4gJiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cbi5tb2RhYWwtaW5uZXItd3JhcHBlciB7XG5cdGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRwYWRkaW5nOiA4MHB4IDI1cHg7XG5cblx0Ly8gd2hlbiBpcyBmdWxsc2NyZWVuXG5cdC5tb2RhYWwtZnVsbHNjcmVlbiAmIHtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdH1cbn1cbi5tb2RhYWwtY29udGFpbmVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHdpZHRoOiAxMDAlO1xuXHRtYXJnaW46IGF1dG87XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdGNvbG9yOiAkbW9kYWFsLW1haW4tdGV4dDtcblx0bWF4LXdpZHRoOiAkbW9kYWFsLW1heC13aWR0aDtcblx0Ym9yZGVyLXJhZGl1czogJG1vZGFhbC1yYWRpdXM7XG5cdGJhY2tncm91bmQ6ICRtb2RhYWwtbWFpbi1iZztcblx0Ym94LXNoYWRvdzogJG1vZGFhbC1zaGFkb3c7XG5cdGN1cnNvcjogYXV0bztcblxuXHQvLyB3aGlsZSBsb2FkaW5nXG5cdCYuaXNfbG9hZGluZyB7XG5cdFx0aGVpZ2h0OiAxMDBweDtcblx0XHR3aWR0aDogMTAwcHg7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0fVxuXHQvLyB3aGVuIGlzIGZ1bGxzY3JlZW5cblx0Lm1vZGFhbC1mdWxsc2NyZWVuICYge1xuXHRcdG1heC13aWR0aDogbm9uZTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0b3ZlcmZsb3c6IGF1dG87XG5cdH1cbn1cblxuLm1vZGFhbC1jbG9zZSB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0cmlnaHQ6IDIwcHg7XG5cdHRvcDogMjBweDtcblx0Y29sb3I6ICRtb2RhYWwtbGlnaHQ7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0b3BhY2l0eTogMTtcblx0d2lkdGg6IDUwcHg7XG5cdGhlaWdodDogNTBweDtcblx0YmFja2dyb3VuZDogcmdiYSgwLDAsMCwgMCk7XG5cdGJvcmRlci1yYWRpdXM6IDEwMCU7XG5cdEBpbmNsdWRlIG1vZGFhbC10cmFuc2l0aW9uKGFsbCk7XG5cdCY6Zm9jdXMsXG5cdCY6aG92ZXIge1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0YmFja2dyb3VuZDogI2ZmZjtcblx0XHQmOmJlZm9yZSxcblx0XHQmOmFmdGVyIHsgYmFja2dyb3VuZDogI2I5M2QwYzsgfVxuXHR9XG5cdHNwYW4ge1xuXHRcdEBpbmNsdWRlIG1vZGFhbC1oaWRldGV4dDtcblx0fVxuXHQmOmJlZm9yZSxcblx0JjphZnRlciB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Y29udGVudDogXCIgXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMTRweDtcblx0XHRsZWZ0OiAyM3B4O1xuXHRcdHdpZHRoOiA0cHg7XG5cdFx0aGVpZ2h0OiAyMnB4O1xuXHRcdGJvcmRlci1yYWRpdXM6IDRweDtcblx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRcdEBpbmNsdWRlIG1vZGFhbC10cmFuc2l0aW9uKGJhY2tncm91bmQpO1xuXHR9XG5cdCY6YmVmb3JlIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuXHR9XG5cdCY6YWZ0ZXIge1xuXHRcdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcblx0fVxuXHQubW9kYWFsLWZ1bGxzY3JlZW4gJiB7XG5cdFx0YmFja2dyb3VuZDogJG1vZGFhbC1ncmV5O1xuXHRcdHJpZ2h0OiAxMHB4O1xuXHRcdHRvcDogMTBweDtcblx0fVxufVxuXG4ubW9kYWFsLWNvbnRlbnQtY29udGFpbmVyIHtcblx0cGFkZGluZzogJG1vZGFhbC1wYWRkaW5nO1xufVxuXG5cbi8vIENvbmZpcm0gTW9kYWFsXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubW9kYWFsLWNvbmZpcm0td3JhcCB7XG5cdHBhZGRpbmc6IDMwcHggMCAwO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGZvbnQtc2l6ZTogMDtcbn1cbi5tb2RhYWwtY29uZmlybS1idG4ge1xuXHRmb250LXNpemU6IDE0cHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0bWFyZ2luOiAwIDEwcHg7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Ym9yZGVyOiBub25lO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuXHQvLyBPayBCdXR0b25cblx0Ji5tb2RhYWwtb2sge1xuXHRcdHBhZGRpbmc6IDEwcHggMTVweDtcblx0XHRjb2xvcjogJG1vZGFhbC1saWdodDtcblx0XHRiYWNrZ3JvdW5kOiAkbW9kYWFsLXByaW1hcnk7XG5cdFx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRcdEBpbmNsdWRlIG1vZGFhbC10cmFuc2l0aW9uKGJhY2tncm91bmQpO1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZDogZGFya2VuKCRtb2RhYWwtcHJpbWFyeSwgMTUlKTtcblx0XHR9XG5cdH1cblx0Ji5tb2RhYWwtY2FuY2VsIHtcblx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHQmOmhvdmVyIHtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdGNvbG9yOiBkYXJrZW4oJG1vZGFhbC1wcmltYXJ5LCAxNSUpO1xuXHRcdH1cblx0fVxufVxuXG5cblxuQGtleWZyYW1lcyBpbnN0YVJldmVhbCB7XG5cdDAlXHR7IG9wYWNpdHk6IDA7IH1cblx0MTAwJSB7IG9wYWNpdHk6IDE7IH1cbn1cbkAtby1rZXlmcmFtZXMgaW5zdGFSZXZlYWwge1xuXHQwJVx0eyBvcGFjaXR5OiAwOyB9XG5cdDEwMCUgeyBvcGFjaXR5OiAxOyB9XG59XG5ALW1vei1rZXlmcmFtZXMgaW5zdGFSZXZlYWwge1xuXHQwJVx0eyBvcGFjaXR5OiAwOyB9XG5cdDEwMCUgeyBvcGFjaXR5OiAxOyB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgaW5zdGFSZXZlYWwge1xuXHQwJVx0eyBvcGFjaXR5OiAwOyB9XG5cdDEwMCUgeyBvcGFjaXR5OiAxOyB9XG59XG5ALW1zLWtleWZyYW1lcyBpbnN0YVJldmVhbCB7XG5cdDAlXHR7IG9wYWNpdHk6IDA7IH1cblx0MTAwJSB7IG9wYWNpdHk6IDE7IH1cbn1cblxuLy8gSW5zdGFncmFtIFBob3RvXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubW9kYWFsLWluc3RhZ3JhbSB7XG5cdC5tb2RhYWwtY29udGFpbmVyIHtcblx0XHR3aWR0aDogYXV0bztcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cdH1cblx0Lm1vZGFhbC1jb250ZW50LWNvbnRhaW5lciB7XG5cdFx0cGFkZGluZzogMDtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0fVxuXHQubW9kYWFsLWNvbnRlbnQtY29udGFpbmVyID4gYmxvY2txdW90ZSB7XG5cdFx0d2lkdGg6IDFweCAhaW1wb3J0YW50O1xuXHRcdGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG5cdFx0b3BhY2l0eTogMCAhaW1wb3J0YW50O1xuXHR9XG5cdGlmcmFtZSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHRtYXJnaW46IC02cHggIWltcG9ydGFudDtcblx0XHRib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG5cdFx0d2lkdGg6IDEwMDBweCAhaW1wb3J0YW50O1xuXHRcdG1heC13aWR0aDogODAwcHggIWltcG9ydGFudDtcblx0XHRib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cblx0XHRhbmltYXRpb246IGluc3RhUmV2ZWFsIDFzIGxpbmVhciBmb3J3YXJkcztcblx0fVxufVxuXG5cblxuLy8gR2FsbGVyeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5tb2RhYWwtaW1hZ2Uge1xuXHQubW9kYWFsLWlubmVyLXdyYXBwZXIge1xuXHRcdHBhZGRpbmctbGVmdDogMTQwcHg7XG5cdFx0cGFkZGluZy1yaWdodDogMTQwcHg7XG5cdH1cblx0Lm1vZGFhbC1jb250YWluZXIge1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0fVxufVxuXG4ubW9kYWFsLWdhbGxlcnktd3JhcCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Y29sb3I6ICRtb2RhYWwtbGlnaHQ7XG59XG4ubW9kYWFsLWdhbGxlcnktaXRlbSB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdGltZyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Ly93aWR0aDogMTAwJTtcblx0fVxuXHQmLmlzX2FjdGl2ZSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cbi5tb2RhYWwtZ2FsbGVyeS1sYWJlbCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdG1hcmdpbjogMjBweCAwIDA7XG5cdGZvbnQtc2l6ZTogMThweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRjb2xvcjogI2ZmZjtcblx0Jjpmb2N1cyB7XG5cdCAgb3V0bGluZTogbm9uZTtcblx0fVxufVxuLm1vZGFhbC1nYWxsZXJ5LWNvbnRyb2wge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogNTAlO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdG9wYWNpdHk6IDE7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Y29sb3I6ICRtb2RhYWwtbGlnaHQ7XG5cdHdpZHRoOiA1MHB4O1xuXHRoZWlnaHQ6IDUwcHg7XG5cdGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsIDApO1xuXHRib3JkZXI6IG5vbmU7XG5cdGJvcmRlci1yYWRpdXM6IDEwMCU7XG5cdEBpbmNsdWRlIG1vZGFhbC10cmFuc2l0aW9uKGFsbCk7XG5cdCYuaXNfaGlkZGVuIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdGN1cnNvcjogZGVmYXVsdDtcblx0fVxuXHQmOmZvY3VzLFxuXHQmOmhvdmVyIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHRcdGJhY2tncm91bmQ6ICNmZmY7XG5cdFx0JjpiZWZvcmUsXG5cdFx0JjphZnRlciB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkbW9kYWFsLWdyZXk7XG5cdFx0fVxuXHR9XG5cdHNwYW4ge1xuXHRcdEBpbmNsdWRlIG1vZGFhbC1oaWRldGV4dDtcblx0fVxuXG5cdCY6YmVmb3JlLFxuXHQmOmFmdGVyIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRjb250ZW50OiBcIiBcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAxNnB4O1xuXHRcdGxlZnQ6IDI1cHg7XG5cdFx0d2lkdGg6IDRweDtcblx0XHRoZWlnaHQ6IDE4cHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRcdGJhY2tncm91bmQ6ICNmZmY7XG5cdFx0QGluY2x1ZGUgbW9kYWFsLXRyYW5zaXRpb24oYmFja2dyb3VuZCk7XG5cdH1cblx0JjpiZWZvcmUge1xuXHRcdG1hcmdpbjogLTVweCAwIDA7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcblx0fVxuXHQmOmFmdGVyIHtcblx0XHRtYXJnaW46IDVweCAwIDA7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuXHR9XG59XG4ubW9kYWFsLWdhbGxlcnktbmV4dCB7XG5cdGxlZnQ6IDEwMCU7XG5cdG1hcmdpbi1sZWZ0OiA0MHB4O1xufVxuLm1vZGFhbC1nYWxsZXJ5LXByZXYge1xuXHRyaWdodDogMTAwJTtcblx0bWFyZ2luLXJpZ2h0OiA0MHB4O1xuXG5cdCY6YmVmb3JlLFxuXHQmOmFmdGVyIHsgbGVmdDogMjJweDsgfVxuXHQmOmJlZm9yZSB7XG5cdFx0bWFyZ2luOiA1cHggMCAwO1xuXHRcdHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG5cdH1cblx0JjphZnRlciB7XG5cdFx0bWFyZ2luOiAtNXB4IDAgMDtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG5cdH1cbn1cblxuXG4vLyBWaWRlb1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5tb2RhYWwtdmlkZW8td3JhcCB7XG5cdG1hcmdpbjogYXV0byA1MHB4O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5tb2RhYWwtdmlkZW8tY29udGFpbmVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuXHRoZWlnaHQ6IDA7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdG1heC13aWR0aDogMTAwJTtcblx0Ym94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgwLDAsMCwgMC4zKTtcblx0YmFja2dyb3VuZDogIzAwMDtcblx0bWF4LXdpZHRoOiAxMzAwcHg7XG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdGlmcmFtZSxcblx0b2JqZWN0LFxuXHRlbWJlZCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0fVxufVxuXG4vLyBNb2RhYWwgaUZyYW1lXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1vZGFhbC1pZnJhbWUgLm1vZGFhbC1jb250ZW50IHtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcbn1cbi5tb2RhYWwtaWZyYW1lLWVsZW0ge1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuXG4vLyBSZXNwb25zaXZlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTQwMHB4KSB7XG5cdC5tb2RhYWwtdmlkZW8tY29udGFpbmVyIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0XHRoZWlnaHQ6IDczMXB4O1xuXHR9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE0MHB4KSB7XG5cdC5tb2RhYWwtaW1hZ2Uge1xuXHRcdC5tb2RhYWwtaW5uZXItd3JhcHBlciB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDI1cHg7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuXHRcdH1cblx0fVxuXHQubW9kYWFsLWdhbGxlcnktY29udHJvbCB7XG5cdFx0dG9wOiBhdXRvO1xuXHRcdGJvdHRvbTogMjBweDtcblx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0YmFja2dyb3VuZDogcmdiYSgwLDAsMCwgMC43KTs7XG5cdFx0JjpiZWZvcmUsXG5cdFx0JjphZnRlciB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRcdH1cblx0fVxuXHQubW9kYWFsLWdhbGxlcnktbmV4dCB7XG5cdFx0bGVmdDogYXV0bztcblx0XHRyaWdodDogMjBweDtcblx0fVxuXHQubW9kYWFsLWdhbGxlcnktcHJldiB7XG5cdFx0bGVmdDogMjBweDtcblx0XHRyaWdodDogYXV0bztcblx0fVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuXHQubW9kYWFsLWluc3RhZ3JhbSBpZnJhbWUge1xuXHRcdHdpZHRoOiA1MDBweCAhaW1wb3J0YW50O1xuXHR9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogMTEwMHB4KSB7XG5cdC5tb2RhYWwtaW5zdGFncmFtIGlmcmFtZSB7XG5cdFx0d2lkdGg6IDcwMHB4ICFpbXBvcnRhbnQ7XG5cdH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtaGVpZ2h0OiAxMDAwcHgpIHtcblx0Lm1vZGFhbC1pbm5lci13cmFwcGVyIHtcblx0XHRwYWRkaW5nLXRvcDogNjBweDtcblx0XHRwYWRkaW5nLWJvdHRvbTogNjBweDtcblx0fVxuXHQubW9kYWFsLWluc3RhZ3JhbSBpZnJhbWUge1xuXHRcdHdpZHRoOiA2MDBweCAhaW1wb3J0YW50O1xuXHR9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogOTAwcHgpIHtcblx0Lm1vZGFhbC1pbnN0YWdyYW0gaWZyYW1lIHtcblx0XHR3aWR0aDogNTAwcHggIWltcG9ydGFudDtcblx0fVxuXHQubW9kYWFsLXZpZGVvLWNvbnRhaW5lciB7XG5cdFx0bWF4LXdpZHRoOiA5MDBweDtcblx0XHRtYXgtaGVpZ2h0OiA1MTBweDtcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG5cdC5tb2RhYWwtaW5zdGFncmFtIGlmcmFtZSB7XG5cdFx0d2lkdGg6IDI4MHB4ICFpbXBvcnRhbnQ7XG5cdH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDgyMHB4KSB7XG5cdC5tb2RhYWwtZ2FsbGVyeS1sYWJlbCB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuXG5cblxuLy8gQ1NTIGxvYWRpbmcgZ2lmXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIge1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHdpZHRoOiAyMDBweDtcblx0aGVpZ2h0OiAyMDBweDtcblx0dG9wOiA1MCU7XG5cdGxlZnQ6IDUwJTtcblx0bWFyZ2luOiAtMTAwcHggMCAwIC0xMDBweDtcblx0dHJhbnNmb3JtOiBzY2FsZSgwLjI1KTtcbn1cbkAtbXMta2V5ZnJhbWVzIG1vZGFhbC1sb2FkaW5nLXNwaW5uZXJ7MCV7b3BhY2l0eToxOy1tcy10cmFuc2Zvcm06c2NhbGUoMS41KTstbW96LXRyYW5zZm9ybTpzY2FsZSgxLjUpOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEuNSk7LW8tdHJhbnNmb3JtOnNjYWxlKDEuNSk7dHJhbnNmb3JtOnNjYWxlKDEuNSl9MTAwJXtvcGFjaXR5Oi4xOy1tcy10cmFuc2Zvcm06c2NhbGUoMSk7LW1vei10cmFuc2Zvcm06c2NhbGUoMSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7LW8tdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX19QC1tb3ota2V5ZnJhbWVzIG1vZGFhbC1sb2FkaW5nLXNwaW5uZXJ7MCV7b3BhY2l0eToxOy1tcy10cmFuc2Zvcm06c2NhbGUoMS41KTstbW96LXRyYW5zZm9ybTpzY2FsZSgxLjUpOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEuNSk7LW8tdHJhbnNmb3JtOnNjYWxlKDEuNSk7dHJhbnNmb3JtOnNjYWxlKDEuNSl9MTAwJXtvcGFjaXR5Oi4xOy1tcy10cmFuc2Zvcm06c2NhbGUoMSk7LW1vei10cmFuc2Zvcm06c2NhbGUoMSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7LW8tdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX19QC13ZWJraXQta2V5ZnJhbWVzIG1vZGFhbC1sb2FkaW5nLXNwaW5uZXJ7MCV7b3BhY2l0eToxOy1tcy10cmFuc2Zvcm06c2NhbGUoMS41KTstbW96LXRyYW5zZm9ybTpzY2FsZSgxLjUpOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEuNSk7LW8tdHJhbnNmb3JtOnNjYWxlKDEuNSk7dHJhbnNmb3JtOnNjYWxlKDEuNSl9MTAwJXtvcGFjaXR5Oi4xOy1tcy10cmFuc2Zvcm06c2NhbGUoMSk7LW1vei10cmFuc2Zvcm06c2NhbGUoMSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMSk7LW8tdHJhbnNmb3JtOnNjYWxlKDEpO3RyYW5zZm9ybTpzY2FsZSgxKX19QC1vLWtleWZyYW1lcyBtb2RhYWwtbG9hZGluZy1zcGlubmVyezAle29wYWNpdHk6MTstbXMtdHJhbnNmb3JtOnNjYWxlKDEuNSk7LW1vei10cmFuc2Zvcm06c2NhbGUoMS41KTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxLjUpOy1vLXRyYW5zZm9ybTpzY2FsZSgxLjUpO3RyYW5zZm9ybTpzY2FsZSgxLjUpfTEwMCV7b3BhY2l0eTouMTstbXMtdHJhbnNmb3JtOnNjYWxlKDEpOy1tb3otdHJhbnNmb3JtOnNjYWxlKDEpOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEpOy1vLXRyYW5zZm9ybTpzY2FsZSgxKTt0cmFuc2Zvcm06c2NhbGUoMSl9fUBrZXlmcmFtZXMgbW9kYWFsLWxvYWRpbmctc3Bpbm5lcnswJXtvcGFjaXR5OjE7LW1zLXRyYW5zZm9ybTpzY2FsZSgxLjUpOy1tb3otdHJhbnNmb3JtOnNjYWxlKDEuNSk7LXdlYmtpdC10cmFuc2Zvcm06c2NhbGUoMS41KTstby10cmFuc2Zvcm06c2NhbGUoMS41KTt0cmFuc2Zvcm06c2NhbGUoMS41KX0xMDAle29wYWNpdHk6LjE7LW1zLXRyYW5zZm9ybTpzY2FsZSgxKTstbW96LXRyYW5zZm9ybTpzY2FsZSgxKTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZSgxKTstby10cmFuc2Zvcm06c2NhbGUoMSk7dHJhbnNmb3JtOnNjYWxlKDEpfX0ubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXZ7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDttYXJnaW4tbGVmdDo0cHg7bWFyZ2luLXRvcDo0cHg7cG9zaXRpb246YWJzb2x1dGV9Lm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2PmRpdnt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO2JvcmRlci1yYWRpdXM6MTVweDtiYWNrZ3JvdW5kOiNmZmZ9Lm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2Om50aC1vZi10eXBlKDEpPmRpdnstbXMtYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy1tb3otYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy13ZWJraXQtYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy1vLWFuaW1hdGlvbjptb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW1zLWFuaW1hdGlvbi1kZWxheTowczstbW96LWFuaW1hdGlvbi1kZWxheTowczstd2Via2l0LWFuaW1hdGlvbi1kZWxheTowczstby1hbmltYXRpb24tZGVsYXk6MHM7YW5pbWF0aW9uLWRlbGF5OjBzfS5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdjpudGgtb2YtdHlwZSgyKT5kaXYsLm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2Om50aC1vZi10eXBlKDMpPmRpdnstbXMtYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy1tb3otYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy13ZWJraXQtYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy1vLWFuaW1hdGlvbjptb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZX0ubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXY6bnRoLW9mLXR5cGUoMSl7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy1tb3otdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlKDcwcHgsMCk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstby10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoNzBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDQ1ZGVnKSB0cmFuc2xhdGUoNzBweCwwKX0ubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXY6bnRoLW9mLXR5cGUoMik+ZGl2e2FuaW1hdGlvbjptb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTstbXMtYW5pbWF0aW9uLWRlbGF5Oi4xMnM7LW1vei1hbmltYXRpb24tZGVsYXk6LjEyczstd2Via2l0LWFuaW1hdGlvbi1kZWxheTouMTJzOy1vLWFuaW1hdGlvbi1kZWxheTouMTJzO2FuaW1hdGlvbi1kZWxheTouMTJzfS5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdjpudGgtb2YtdHlwZSgyKXstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSg5MGRlZykgdHJhbnNsYXRlKDcwcHgsMCk7LW1vei10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDkwZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy1vLXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZSg3MHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoOTBkZWcpIHRyYW5zbGF0ZSg3MHB4LDApfS5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdjpudGgtb2YtdHlwZSgzKT5kaXZ7YW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy1tcy1hbmltYXRpb24tZGVsYXk6LjI1czstbW96LWFuaW1hdGlvbi1kZWxheTouMjVzOy13ZWJraXQtYW5pbWF0aW9uLWRlbGF5Oi4yNXM7LW8tYW5pbWF0aW9uLWRlbGF5Oi4yNXM7YW5pbWF0aW9uLWRlbGF5Oi4yNXN9Lm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2Om50aC1vZi10eXBlKDQpPmRpdiwubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXY6bnRoLW9mLXR5cGUoNSk+ZGl2ey1tcy1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW1vei1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LXdlYmtpdC1hbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW8tYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlfS5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdjpudGgtb2YtdHlwZSgzKXstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgxMzVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy1tb3otdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgxMzVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgxMzVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy1vLXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMTM1ZGVnKSB0cmFuc2xhdGUoNzBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDEzNWRlZykgdHJhbnNsYXRlKDcwcHgsMCl9Lm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2Om50aC1vZi10eXBlKDQpPmRpdnthbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW1zLWFuaW1hdGlvbi1kZWxheTouMzdzOy1tb3otYW5pbWF0aW9uLWRlbGF5Oi4zN3M7LXdlYmtpdC1hbmltYXRpb24tZGVsYXk6LjM3czstby1hbmltYXRpb24tZGVsYXk6LjM3czthbmltYXRpb24tZGVsYXk6LjM3c30ubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXY6bnRoLW9mLXR5cGUoNCl7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstbW96LXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMTgwZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstby10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDE4MGRlZykgdHJhbnNsYXRlKDcwcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgxODBkZWcpIHRyYW5zbGF0ZSg3MHB4LDApfS5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdjpudGgtb2YtdHlwZSg1KT5kaXZ7YW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy1tcy1hbmltYXRpb24tZGVsYXk6LjVzOy1tb3otYW5pbWF0aW9uLWRlbGF5Oi41czstd2Via2l0LWFuaW1hdGlvbi1kZWxheTouNXM7LW8tYW5pbWF0aW9uLWRlbGF5Oi41czthbmltYXRpb24tZGVsYXk6LjVzfS5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdjpudGgtb2YtdHlwZSg2KT5kaXYsLm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2Om50aC1vZi10eXBlKDcpPmRpdnstbXMtYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy1tb3otYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy13ZWJraXQtYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy1vLWFuaW1hdGlvbjptb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZX0ubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXY6bnRoLW9mLXR5cGUoNSl7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMjI1ZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstbW96LXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMjI1ZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMjI1ZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstby10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDIyNWRlZykgdHJhbnNsYXRlKDcwcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgyMjVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApfS5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdjpudGgtb2YtdHlwZSg2KT5kaXZ7YW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy1tcy1hbmltYXRpb24tZGVsYXk6LjYyczstbW96LWFuaW1hdGlvbi1kZWxheTouNjJzOy13ZWJraXQtYW5pbWF0aW9uLWRlbGF5Oi42MnM7LW8tYW5pbWF0aW9uLWRlbGF5Oi42MnM7YW5pbWF0aW9uLWRlbGF5Oi42MnN9Lm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2Om50aC1vZi10eXBlKDYpey1tcy10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDI3MGRlZykgdHJhbnNsYXRlKDcwcHgsMCk7LW1vei10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDI3MGRlZykgdHJhbnNsYXRlKDcwcHgsMCk7LXdlYmtpdC10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDI3MGRlZykgdHJhbnNsYXRlKDcwcHgsMCk7LW8tdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgyNzBkZWcpIHRyYW5zbGF0ZSg3MHB4LDApO3RyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMjcwZGVnKSB0cmFuc2xhdGUoNzBweCwwKX0ubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXY6bnRoLW9mLXR5cGUoNyk+ZGl2e2FuaW1hdGlvbjptb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTstbXMtYW5pbWF0aW9uLWRlbGF5Oi43NXM7LW1vei1hbmltYXRpb24tZGVsYXk6Ljc1czstd2Via2l0LWFuaW1hdGlvbi1kZWxheTouNzVzOy1vLWFuaW1hdGlvbi1kZWxheTouNzVzO2FuaW1hdGlvbi1kZWxheTouNzVzfS5tb2RhYWwtbG9hZGluZy1zcGlubmVyPmRpdjpudGgtb2YtdHlwZSg3KXstbXMtdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgzMTVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy1tb3otdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgzMTVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgzMTVkZWcpIHRyYW5zbGF0ZSg3MHB4LDApOy1vLXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMzE1ZGVnKSB0cmFuc2xhdGUoNzBweCwwKTt0cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDMxNWRlZykgdHJhbnNsYXRlKDcwcHgsMCl9Lm1vZGFhbC1sb2FkaW5nLXNwaW5uZXI+ZGl2Om50aC1vZi10eXBlKDgpPmRpdnstbXMtYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy1tb3otYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy13ZWJraXQtYW5pbWF0aW9uOm1vZGFhbC1sb2FkaW5nLXNwaW5uZXIgMXMgbGluZWFyIGluZmluaXRlOy1vLWFuaW1hdGlvbjptb2RhYWwtbG9hZGluZy1zcGlubmVyIDFzIGxpbmVhciBpbmZpbml0ZTthbmltYXRpb246bW9kYWFsLWxvYWRpbmctc3Bpbm5lciAxcyBsaW5lYXIgaW5maW5pdGU7LW1zLWFuaW1hdGlvbi1kZWxheTouODdzOy1tb3otYW5pbWF0aW9uLWRlbGF5Oi44N3M7LXdlYmtpdC1hbmltYXRpb24tZGVsYXk6Ljg3czstby1hbmltYXRpb24tZGVsYXk6Ljg3czthbmltYXRpb24tZGVsYXk6Ljg3c30ubW9kYWFsLWxvYWRpbmctc3Bpbm5lcj5kaXY6bnRoLW9mLXR5cGUoOCl7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMzYwZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstbW96LXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMzYwZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGUoODRweCw4NHB4KSByb3RhdGUoMzYwZGVnKSB0cmFuc2xhdGUoNzBweCwwKTstby10cmFuc2Zvcm06dHJhbnNsYXRlKDg0cHgsODRweCkgcm90YXRlKDM2MGRlZykgdHJhbnNsYXRlKDcwcHgsMCk7dHJhbnNmb3JtOnRyYW5zbGF0ZSg4NHB4LDg0cHgpIHJvdGF0ZSgzNjBkZWcpIHRyYW5zbGF0ZSg3MHB4LDApfVxuIiwiLypcbiAqICBSZW1vZGFsIC0gdjEuMS4xXG4gKiAgUmVzcG9uc2l2ZSwgbGlnaHR3ZWlnaHQsIGZhc3QsIHN5bmNocm9uaXplZCB3aXRoIENTUyBhbmltYXRpb25zLCBmdWxseSBjdXN0b21pemFibGUgbW9kYWwgd2luZG93IHBsdWdpbiB3aXRoIGRlY2xhcmF0aXZlIGNvbmZpZ3VyYXRpb24gYW5kIGhhc2ggdHJhY2tpbmcuXG4gKiAgaHR0cDovL3ZvZGthYmVhcnMuZ2l0aHViLmlvL3JlbW9kYWwvXG4gKlxuICogIE1hZGUgYnkgSWx5YSBNYWthcm92XG4gKiAgVW5kZXIgTUlUIExpY2Vuc2VcbiAqL1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUmVtb2RhbCdzIG5lY2Vzc2FyeSBzdHlsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIEhpZGUgc2Nyb2xsIGJhciAqL1xuXG5odG1sLnJlbW9kYWwtaXMtbG9ja2VkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi8qIEFudGkgRk9VQyAqL1xuXG4ucmVtb2RhbCxcbltkYXRhLXJlbW9kYWwtaWRdIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTmVjZXNzYXJ5IHN0eWxlcyBvZiB0aGUgb3ZlcmxheSAqL1xuXG4ucmVtb2RhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk5O1xuICB0b3A6IC01MDAwcHg7XG4gIHJpZ2h0OiAtNTAwMHB4O1xuICBib3R0b206IC01MDAwcHg7XG4gIGxlZnQ6IC01MDAwcHg7XG5cbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTmVjZXNzYXJ5IHN0eWxlcyBvZiB0aGUgd3JhcHBlciAqL1xuXG4ucmVtb2RhbC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDAwMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBhdXRvO1xuXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi5yZW1vZGFsLXdyYXBwZXI6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW4tbGVmdDogLTAuMDVlbTtcblxuICBjb250ZW50OiBcIlwiO1xufVxuXG4vKiBGaXggaVBhZCwgaVBob25lIGdsaXRjaGVzICovXG5cbi5yZW1vZGFsLW92ZXJsYXksXG4ucmVtb2RhbC13cmFwcGVyIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLyogTmVjZXNzYXJ5IHN0eWxlcyBvZiB0aGUgbW9kYWwgZGlhbG9nICovXG5cbi5yZW1vZGFsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIG91dGxpbmU6IG5vbmU7XG5cbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbn1cblxuLnJlbW9kYWwtaXMtaW5pdGlhbGl6ZWQge1xuICAvKiBEaXNhYmxlIEFudGktRk9VQyAqL1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4iLCIvKlxuICogIFJlbW9kYWwgLSB2MS4xLjFcbiAqICBSZXNwb25zaXZlLCBsaWdodHdlaWdodCwgZmFzdCwgc3luY2hyb25pemVkIHdpdGggQ1NTIGFuaW1hdGlvbnMsIGZ1bGx5IGN1c3RvbWl6YWJsZSBtb2RhbCB3aW5kb3cgcGx1Z2luIHdpdGggZGVjbGFyYXRpdmUgY29uZmlndXJhdGlvbiBhbmQgaGFzaCB0cmFja2luZy5cbiAqICBodHRwOi8vdm9ka2FiZWFycy5naXRodWIuaW8vcmVtb2RhbC9cbiAqXG4gKiAgTWFkZSBieSBJbHlhIE1ha2Fyb3ZcbiAqICBVbmRlciBNSVQgTGljZW5zZVxuICovXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBSZW1vZGFsJ3MgZGVmYXVsdCBtb2JpbGUgZmlyc3QgdGhlbWVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIERlZmF1bHQgdGhlbWUgc3R5bGVzIGZvciB0aGUgYmFja2dyb3VuZCAqL1xuXG4ucmVtb2RhbC1iZy5yZW1vZGFsLWlzLW9wZW5pbmcsXG4ucmVtb2RhbC1iZy5yZW1vZGFsLWlzLW9wZW5lZCB7XG4gIC13ZWJraXQtZmlsdGVyOiBibHVyKDNweCk7XG4gIGZpbHRlcjogYmx1cigzcHgpO1xufVxuXG4vKiBEZWZhdWx0IHRoZW1lIHN0eWxlcyBvZiB0aGUgb3ZlcmxheSAqL1xuXG4ucmVtb2RhbC1vdmVybGF5IHtcbiAgYmFja2dyb3VuZDogcmdiYSg0MywgNDYsIDU2LCAwLjkpO1xufVxuXG4ucmVtb2RhbC1vdmVybGF5LnJlbW9kYWwtaXMtb3BlbmluZyxcbi5yZW1vZGFsLW92ZXJsYXkucmVtb2RhbC1pcy1jbG9zaW5nIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDAuM3M7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG59XG5cbi5yZW1vZGFsLW92ZXJsYXkucmVtb2RhbC1pcy1vcGVuaW5nIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcmVtb2RhbC1vdmVybGF5LW9wZW5pbmcta2V5ZnJhbWVzO1xuICBhbmltYXRpb24tbmFtZTogcmVtb2RhbC1vdmVybGF5LW9wZW5pbmcta2V5ZnJhbWVzO1xufVxuXG4ucmVtb2RhbC1vdmVybGF5LnJlbW9kYWwtaXMtY2xvc2luZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJlbW9kYWwtb3ZlcmxheS1jbG9zaW5nLWtleWZyYW1lcztcbiAgYW5pbWF0aW9uLW5hbWU6IHJlbW9kYWwtb3ZlcmxheS1jbG9zaW5nLWtleWZyYW1lcztcbn1cblxuLyogRGVmYXVsdCB0aGVtZSBzdHlsZXMgb2YgdGhlIHdyYXBwZXIgKi9cblxuLnJlbW9kYWwtd3JhcHBlciB7XG4gIHBhZGRpbmc6IDEwcHggMTBweCAwO1xufVxuXG4vKiBEZWZhdWx0IHRoZW1lIHN0eWxlcyBvZiB0aGUgbW9kYWwgZGlhbG9nICovXG5cbi5yZW1vZGFsIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIHBhZGRpbmc6IDM1cHg7XG5cbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuXG4gIGNvbG9yOiAjMmIyZTM4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4ucmVtb2RhbC5yZW1vZGFsLWlzLW9wZW5pbmcsXG4ucmVtb2RhbC5yZW1vZGFsLWlzLWNsb3Npbmcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbn1cblxuLnJlbW9kYWwucmVtb2RhbC1pcy1vcGVuaW5nIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcmVtb2RhbC1vcGVuaW5nLWtleWZyYW1lcztcbiAgYW5pbWF0aW9uLW5hbWU6IHJlbW9kYWwtb3BlbmluZy1rZXlmcmFtZXM7XG59XG5cbi5yZW1vZGFsLnJlbW9kYWwtaXMtY2xvc2luZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJlbW9kYWwtY2xvc2luZy1rZXlmcmFtZXM7XG4gIGFuaW1hdGlvbi1uYW1lOiByZW1vZGFsLWNsb3Npbmcta2V5ZnJhbWVzO1xufVxuXG4vKiBWZXJ0aWNhbCBhbGlnbiBvZiB0aGUgbW9kYWwgZGlhbG9nICovXG5cbi5yZW1vZGFsLFxuLnJlbW9kYWwtd3JhcHBlcjphZnRlciB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qIENsb3NlIGJ1dHRvbiAqL1xuXG4ucmVtb2RhbC1jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICB3aWR0aDogMzVweDtcbiAgaGVpZ2h0OiAzNXB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGNvbG9yIDAuMnM7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICBjb2xvcjogIzk1OTc5YztcbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnJlbW9kYWwtY2xvc2U6aG92ZXIsXG4ucmVtb2RhbC1jbG9zZTpmb2N1cyB7XG4gIGNvbG9yOiAjMmIyZTM4O1xufVxuXG4ucmVtb2RhbC1jbG9zZTpiZWZvcmUge1xuICBmb250LWZhbWlseTogQXJpYWwsIFwiSGVsdmV0aWNhIENZXCIsIFwiTmltYnVzIFNhbnMgTFwiLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgbGluZS1oZWlnaHQ6IDM1cHg7XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG5cbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgd2lkdGg6IDM1cHg7XG5cbiAgY29udGVudDogXCJcXDAwZDdcIjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiBEaWFsb2cgYnV0dG9ucyAqL1xuXG4ucmVtb2RhbC1jb25maXJtLFxuLnJlbW9kYWwtY2FuY2VsIHtcbiAgZm9udDogaW5oZXJpdDtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuXG4gIG1pbi13aWR0aDogMTEwcHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTJweCAwO1xuXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnM7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgYm9yZGVyOiAwO1xuICBvdXRsaW5lOiAwO1xufVxuXG4ucmVtb2RhbC1jb25maXJtIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICM4MWM3ODQ7XG59XG5cbi5yZW1vZGFsLWNvbmZpcm06aG92ZXIsXG4ucmVtb2RhbC1jb25maXJtOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzY2YmI2YTtcbn1cblxuLnJlbW9kYWwtY2FuY2VsIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICNlNTczNzM7XG59XG5cbi5yZW1vZGFsLWNhbmNlbDpob3Zlcixcbi5yZW1vZGFsLWNhbmNlbDpmb2N1cyB7XG4gIGJhY2tncm91bmQ6ICNlZjUzNTA7XG59XG5cbi8qIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0KyBmb3IgdGhlIGJ1dHRvbiB0YWcuICovXG5cbi5yZW1vZGFsLWNvbmZpcm06Oi1tb3otZm9jdXMtaW5uZXIsXG4ucmVtb2RhbC1jYW5jZWw6Oi1tb3otZm9jdXMtaW5uZXIsXG4ucmVtb2RhbC1jbG9zZTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIHBhZGRpbmc6IDA7XG5cbiAgYm9yZGVyOiAwO1xufVxuXG4vKiBLZXlmcmFtZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyByZW1vZGFsLW9wZW5pbmcta2V5ZnJhbWVzIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG5cbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG5cbiAgICBvcGFjaXR5OiAxO1xuXG4gICAgLXdlYmtpdC1maWx0ZXI6IGJsdXIoMCk7XG4gICAgZmlsdGVyOiBibHVyKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcmVtb2RhbC1vcGVuaW5nLWtleWZyYW1lcyB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuXG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuXG4gICAgb3BhY2l0eTogMTtcblxuICAgIC13ZWJraXQtZmlsdGVyOiBibHVyKDApO1xuICAgIGZpbHRlcjogYmx1cigwKTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcmVtb2RhbC1jbG9zaW5nLWtleWZyYW1lcyB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG5cbiAgICBvcGFjaXR5OiAwO1xuXG4gICAgLXdlYmtpdC1maWx0ZXI6IGJsdXIoMCk7XG4gICAgZmlsdGVyOiBibHVyKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcmVtb2RhbC1jbG9zaW5nLWtleWZyYW1lcyB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG5cbiAgICBvcGFjaXR5OiAwO1xuXG4gICAgLXdlYmtpdC1maWx0ZXI6IGJsdXIoMCk7XG4gICAgZmlsdGVyOiBibHVyKDApO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByZW1vZGFsLW92ZXJsYXktb3BlbmluZy1rZXlmcmFtZXMge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcmVtb2RhbC1vdmVybGF5LW9wZW5pbmcta2V5ZnJhbWVzIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcmVtb2RhbC1vdmVybGF5LWNsb3Npbmcta2V5ZnJhbWVzIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJlbW9kYWwtb3ZlcmxheS1jbG9zaW5nLWtleWZyYW1lcyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLyogTWVkaWEgcXVlcmllc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NDFweCkge1xuICAucmVtb2RhbCB7XG4gICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgfVxufVxuXG4vKiBJRThcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5sdC1pZTkgLnJlbW9kYWwtb3ZlcmxheSB7XG4gIGJhY2tncm91bmQ6ICMyYjJlMzg7XG59XG5cbi5sdC1pZTkgLnJlbW9kYWwge1xuICB3aWR0aDogNzAwcHg7XG59XG4iLCIuci10YWJzIC5yLXRhYnMtbmF2IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLnItdGFicyAuci10YWJzLXRhYiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uci10YWJzIC5yLXRhYnMtcGFuZWwge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnItdGFicyAuci10YWJzLWFjY29yZGlvbi10aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnItdGFicyAuci10YWJzLXBhbmVsLnItdGFicy1zdGF0ZS1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBBY2NvcmRpb24gcmVzcG9uc2l2ZSBicmVha3BvaW50ICovXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgLnItdGFicyAuci10YWJzLW5hdiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnItdGFicyAuci10YWJzLWFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbn1cbiIsIi8qXG49PSBtYWxpaHUganF1ZXJ5IGN1c3RvbSBzY3JvbGxiYXIgcGx1Z2luID09XG5QbHVnaW4gVVJJOiBodHRwOi8vbWFub3MubWFsaWh1LmdyL2pxdWVyeS1jdXN0b20tY29udGVudC1zY3JvbGxlclxuKi9cblxuXG5cbi8qXG5DT05URU5UUzpcblx0MS4gQkFTSUMgU1RZTEUgLSBQbHVnaW4ncyBiYXNpYy9lc3NlbnRpYWwgQ1NTIHByb3BlcnRpZXMgKG5vcm1hbGx5LCBzaG91bGQgbm90IGJlIGVkaXRlZCkuXG5cdDIuIFZFUlRJQ0FMIFNDUk9MTEJBUiAtIFBvc2l0aW9uaW5nIGFuZCBkaW1lbnNpb25zIG9mIHZlcnRpY2FsIHNjcm9sbGJhci5cblx0My4gSE9SSVpPTlRBTCBTQ1JPTExCQVIgLSBQb3NpdGlvbmluZyBhbmQgZGltZW5zaW9ucyBvZiBob3Jpem9udGFsIHNjcm9sbGJhci5cblx0NC4gVkVSVElDQUwgQU5EIEhPUklaT05UQUwgU0NST0xMQkFSUyAtIFBvc2l0aW9uaW5nIGFuZCBkaW1lbnNpb25zIG9mIDItYXhpcyBzY3JvbGxiYXJzLlxuXHQ1LiBUUkFOU0lUSU9OUyAtIENTUzMgdHJhbnNpdGlvbnMgZm9yIGhvdmVyIGV2ZW50cywgYXV0by1leHBhbmRlZCBhbmQgYXV0by1oaWRkZW4gc2Nyb2xsYmFycy5cblx0Ni4gU0NST0xMQkFSIENPTE9SUywgT1BBQ0lUWSBBTkQgQkFDS0dST1VORFNcblx0XHQ2LjEgVEhFTUVTIC0gU2Nyb2xsYmFyIGNvbG9ycywgb3BhY2l0eSwgZGltZW5zaW9ucywgYmFja2dyb3VuZHMgZXRjLiB2aWEgcmVhZHktdG8tdXNlIHRoZW1lcy5cbiovXG5cblxuXG4vKlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4xLiBCQVNJQyBTVFlMRVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4qL1xuXG5cdC5tQ3VzdG9tU2Nyb2xsYmFyeyAtbXMtdG91Y2gtYWN0aW9uOiBwaW5jaC16b29tOyB0b3VjaC1hY3Rpb246IHBpbmNoLXpvb207IC8qIGRpcmVjdCBwb2ludGVyIGV2ZW50cyB0byBqcyAqLyB9XG5cdC5tQ3VzdG9tU2Nyb2xsYmFyLm1DU19ub19zY3JvbGxiYXIsIC5tQ3VzdG9tU2Nyb2xsYmFyLm1DU190b3VjaF9hY3Rpb257IC1tcy10b3VjaC1hY3Rpb246IGF1dG87IHRvdWNoLWFjdGlvbjogYXV0bzsgfVxuXG5cdC5tQ3VzdG9tU2Nyb2xsQm94eyAvKiBjb250YWlucyBwbHVnaW4ncyBtYXJrdXAgKi9cblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0ZGlyZWN0aW9uOiBsdHI7XG5cdH1cblxuXHQubUNTQl9jb250YWluZXJ7IC8qIGNvbnRhaW5zIHRoZSBvcmlnaW5hbCBjb250ZW50ICovXG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHR3aWR0aDogYXV0bztcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cblxuXG5cbi8qXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjIuIFZFUlRJQ0FMIFNDUk9MTEJBUlxueS1heGlzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cblx0Lm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyeyBtYXJnaW4tcmlnaHQ6IDMwcHg7IH1cblxuXHQubUNTQl9jb250YWluZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbnsgbWFyZ2luLXJpZ2h0OiAwOyB9IC8qIG5vbi12aXNpYmxlIHNjcm9sbGJhciAqL1xuXG5cdC5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcnsgLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdG1hcmdpbi1sZWZ0OiAzMHB4O1xuXHR9XG5cblx0Lm1DUy1kaXItcnRsID4gLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW57IG1hcmdpbi1sZWZ0OiAwOyB9IC8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzeyAvKiBjb250YWlucyBzY3JvbGxiYXIgbWFya3VwIChkcmFnZ2FibGUgZWxlbWVudCwgZHJhZ2dlciByYWlsLCBidXR0b25zIGV0Yy4pICovXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHdpZHRoOiAxNnB4O1xuXHRcdGhlaWdodDogYXV0bztcblx0XHRsZWZ0OiBhdXRvO1xuXHRcdHRvcDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdH1cblxuXHQubUNTQl9vdXRzaWRlICsgLm1DU0Jfc2Nyb2xsVG9vbHN7IHJpZ2h0OiAtMjZweDsgfSAvKiBzY3JvbGxiYXIgcG9zaXRpb246IG91dHNpZGUgKi9cblxuXHQubUNTLWRpci1ydGwgPiAubUNTQl9pbnNpZGUgPiAubUNTQl9zY3JvbGxUb29scyxcblx0Lm1DUy1kaXItcnRsID4gLm1DU0Jfb3V0c2lkZSArIC5tQ1NCX3Njcm9sbFRvb2xzeyAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cblx0XHRyaWdodDogYXV0bztcblx0XHRsZWZ0OiAwO1xuXHR9XG5cblx0Lm1DUy1kaXItcnRsID4gLm1DU0Jfb3V0c2lkZSArIC5tQ1NCX3Njcm9sbFRvb2xzeyBsZWZ0OiAtMjZweDsgfSAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKHNjcm9sbGJhciBwb3NpdGlvbjogb3V0c2lkZSkgKi9cblxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyeyAvKiBjb250YWlucyB0aGUgZHJhZ2dhYmxlIGVsZW1lbnQgYW5kIGRyYWdnZXIgcmFpbCBtYXJrdXAgKi9cblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGhlaWdodDogYXV0bztcblx0fVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIGEgKyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyeyBtYXJnaW46IDIwcHggMDsgfVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuXHRcdHdpZHRoOiAycHg7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTZweDsgLW1vei1ib3JkZXItcmFkaXVzOiAxNnB4OyBib3JkZXItcmFkaXVzOiAxNnB4O1xuXHR9XG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcnsgLyogdGhlIGRyYWdnYWJsZSBlbGVtZW50ICovXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMzBweDsgLyogbWluaW11bSBkcmFnZ2VyIGhlaWdodCAqL1xuXHRcdHotaW5kZXg6IDE7XG5cdH1cblxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyAvKiB0aGUgZHJhZ2dlciBlbGVtZW50ICovXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHdpZHRoOiA0cHg7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTZweDsgLW1vei1ib3JkZXItcmFkaXVzOiAxNnB4OyBib3JkZXItcmFkaXVzOiAxNnB4O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IHdpZHRoOiAxMnB4OyAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqLyB9XG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbHsgd2lkdGg6IDhweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi8gfVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3due1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRoZWlnaHQ6IDIwcHg7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdH1cblxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBib3R0b206IDA7IH1cblxuXG5cbi8qXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjMuIEhPUklaT05UQUwgU0NST0xMQkFSXG54LWF4aXNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuXHQubUNTQl9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVye1xuXHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xuXHR9XG5cblx0Lm1DU0JfaG9yaXpvbnRhbC5tQ1NCX291dHNpZGUgPiAubUNTQl9jb250YWluZXJ7IG1pbi1oZWlnaHQ6IDEwMCU7IH1cblxuXHQubUNTQl9ob3Jpem9udGFsID4gLm1DU0JfY29udGFpbmVyLm1DU19ub19zY3JvbGxiYXJfeC5tQ1NfeF9oaWRkZW57IG1hcmdpbi1ib3R0b206IDA7IH0gLyogbm9uLXZpc2libGUgc2Nyb2xsYmFyICovXG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFse1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdGhlaWdodDogMTZweDtcblx0XHR0b3A6IGF1dG87XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdH1cblxuXHQubUN1c3RvbVNjcm9sbEJveCArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCxcblx0Lm1DdXN0b21TY3JvbGxCb3ggKyAubUNTQl9zY3JvbGxUb29scyArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHsgYm90dG9tOiAtMjZweDsgfSAvKiBzY3JvbGxiYXIgcG9zaXRpb246IG91dHNpZGUgKi9cblxuXHQubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgYSArIC5tQ1NCX2RyYWdnZXJDb250YWluZXJ7IG1hcmdpbjogMCAyMHB4OyB9XG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlse1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMnB4O1xuXHRcdG1hcmdpbjogN3B4IDA7XG5cdH1cblxuXHQubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlcntcblx0XHR3aWR0aDogMzBweDsgLyogbWluaW11bSBkcmFnZ2VyIHdpZHRoICovXG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGxlZnQ6IDA7XG5cdH1cblxuXHQubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcntcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDRweDtcblx0XHRtYXJnaW46IDZweCBhdXRvO1xuXHR9XG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0aGVpZ2h0OiAxMnB4OyAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xuXHRcdG1hcmdpbjogMnB4IGF1dG87XG5cdH1cblxuXHQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcblx0Lm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbHtcblx0XHRoZWlnaHQ6IDhweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi9cblx0XHRtYXJnaW46IDRweCAwO1xuXHR9XG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2J1dHRvbkxlZnQsXG5cdC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25SaWdodHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0d2lkdGg6IDIwcHg7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHR9XG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2J1dHRvbkxlZnR7IGxlZnQ6IDA7IH1cblxuXHQubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfYnV0dG9uUmlnaHR7IHJpZ2h0OiAwOyB9XG5cblxuXG4vKlxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG40LiBWRVJUSUNBTCBBTkQgSE9SSVpPTlRBTCBTQ1JPTExCQVJTXG55eC1heGlzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cblx0Lm1DU0JfY29udGFpbmVyX3dyYXBwZXJ7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGhlaWdodDogYXV0bztcblx0XHR3aWR0aDogYXV0bztcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRtYXJnaW4tcmlnaHQ6IDMwcHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcblx0fVxuXG5cdC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyID4gLm1DU0JfY29udGFpbmVye1xuXHRcdHBhZGRpbmctcmlnaHQ6IDMwcHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDMwcHg7XG5cdFx0LXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94OyAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdH1cblxuXHQubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbHsgYm90dG9tOiAyMHB4OyB9XG5cblx0Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbCA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHsgcmlnaHQ6IDIwcHg7IH1cblxuXHQvKiBub24tdmlzaWJsZSBob3Jpem9udGFsIHNjcm9sbGJhciAqL1xuXHQubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3gubUNTX3hfaGlkZGVuICsgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbHsgYm90dG9tOiAwOyB9XG5cblx0Lyogbm9uLXZpc2libGUgdmVydGljYWwgc2Nyb2xsYmFyL1JUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuXHQubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVuICsgLm1DU0Jfc2Nyb2xsVG9vbHMgfiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsXG5cdC5tQ1MtZGlyLXJ0bCA+IC5tQ3VzdG9tU2Nyb2xsQm94Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHsgcmlnaHQ6IDA7IH1cblxuXHQvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cblx0Lm1DUy1kaXItcnRsID4gLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFseyBsZWZ0OiAyMHB4OyB9XG5cblx0Lyogbm9uLXZpc2libGUgc2Nyb2xsYmFyL1JUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuXHQubUNTLWRpci1ydGwgPiAubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVuICsgLm1DU0Jfc2Nyb2xsVG9vbHMgfiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWx7IGxlZnQ6IDA7IH1cblxuXHQubUNTLWRpci1ydGwgPiAubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJfd3JhcHBlcnsgLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdG1hcmdpbi1sZWZ0OiAzMHB4O1xuXHR9XG5cblx0Lm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiA+IC5tQ1NCX2NvbnRhaW5lcnsgcGFkZGluZy1yaWdodDogMDsgfVxuXG5cdC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeC5tQ1NfeF9oaWRkZW4gPiAubUNTQl9jb250YWluZXJ7IHBhZGRpbmctYm90dG9tOiAwOyB9XG5cblx0Lm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbntcblx0XHRtYXJnaW4tcmlnaHQ6IDA7IC8qIG5vbi12aXNpYmxlIHNjcm9sbGJhciAqL1xuXHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHR9XG5cblx0Lyogbm9uLXZpc2libGUgaG9yaXpvbnRhbCBzY3JvbGxiYXIgKi9cblx0Lm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbnsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cblxuLypcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuNS4gVFJBTlNJVElPTlNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuKi9cblxuXHQubUNTQl9zY3JvbGxUb29scyxcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAsXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24sXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1xuXHRcdC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuXHRcdC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuXHRcdC1vLXRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcblx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG5cdH1cblxuXHQubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlcl9iYXIsIC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovXG5cdC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyUmFpbCxcblx0Lm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJSYWlse1xuXHRcdC13ZWJraXQtdHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2Utb3V0IC4ycywgaGVpZ2h0IC4ycyBlYXNlLW91dCAuMnMsXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLXJpZ2h0IC4ycyBlYXNlLW91dCAuMnMsXG5cdFx0XHRcdFx0bWFyZ2luLXRvcCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tYm90dG9tIC4ycyBlYXNlLW91dCAuMnMsXG5cdFx0XHRcdFx0b3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuXHRcdC1tb3otdHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2Utb3V0IC4ycywgaGVpZ2h0IC4ycyBlYXNlLW91dCAuMnMsXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLXJpZ2h0IC4ycyBlYXNlLW91dCAuMnMsXG5cdFx0XHRcdFx0bWFyZ2luLXRvcCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tYm90dG9tIC4ycyBlYXNlLW91dCAuMnMsXG5cdFx0XHRcdFx0b3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuXHRcdC1vLXRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLW91dCAuMnMsIGhlaWdodCAuMnMgZWFzZS1vdXQgLjJzLFxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1yaWdodCAuMnMgZWFzZS1vdXQgLjJzLFxuXHRcdFx0XHRcdG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLFxuXHRcdFx0XHRcdG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcblx0XHR0cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1vdXQgLjJzLCBoZWlnaHQgLjJzIGVhc2Utb3V0IC4ycyxcblx0XHRcdFx0XHRtYXJnaW4tbGVmdCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tcmlnaHQgLjJzIGVhc2Utb3V0IC4ycyxcblx0XHRcdFx0XHRtYXJnaW4tdG9wIC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1ib3R0b20gLjJzIGVhc2Utb3V0IC4ycyxcblx0XHRcdFx0XHRvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG5cdH1cblxuXG5cbi8qXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbjYuIFNDUk9MTEJBUiBDT0xPUlMsIE9QQUNJVFkgQU5EIEJBQ0tHUk9VTkRTXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiovXG5cblx0Lypcblx0LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXHQ2LjEgVEhFTUVTXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblx0Ki9cblxuXHQvKiBkZWZhdWx0IHRoZW1lIChcImxpZ2h0XCIpICovXG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHN7IG9wYWNpdHk6IDAuNzU7IGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7IH1cblxuXHQubUNTLWF1dG9IaWRlID4gLm1DdXN0b21TY3JvbGxCb3ggPiAubUNTQl9zY3JvbGxUb29scyxcblx0Lm1DUy1hdXRvSGlkZSA+IC5tQ3VzdG9tU2Nyb2xsQm94IH4gLm1DU0Jfc2Nyb2xsVG9vbHN7IG9wYWNpdHk6IDA7IGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0wKVwiOyB9XG5cblx0Lm1DdXN0b21TY3JvbGxiYXIgPiAubUN1c3RvbVNjcm9sbEJveCA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnLFxuXHQubUN1c3RvbVNjcm9sbGJhciA+IC5tQ3VzdG9tU2Nyb2xsQm94IH4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19vbkRyYWcsXG5cdC5tQ3VzdG9tU2Nyb2xsQm94OmhvdmVyID4gLm1DU0Jfc2Nyb2xsVG9vbHMsXG5cdC5tQ3VzdG9tU2Nyb2xsQm94OmhvdmVyIH4gLm1DU0Jfc2Nyb2xsVG9vbHMsXG5cdC5tQ1MtYXV0b0hpZGU6aG92ZXIgPiAubUN1c3RvbVNjcm9sbEJveCA+IC5tQ1NCX3Njcm9sbFRvb2xzLFxuXHQubUNTLWF1dG9IaWRlOmhvdmVyID4gLm1DdXN0b21TY3JvbGxCb3ggfiAubUNTQl9zY3JvbGxUb29sc3sgb3BhY2l0eTogMTsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiOyB9XG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjQpO1xuXHRcdGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NDApXCI7XG5cdH1cblxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC43NSk7XG5cdFx0ZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjtcblx0fVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjg1KTtcblx0XHRmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT04NSlcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTg1KVwiO1xuXHR9XG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjkpO1xuXHRcdGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTkwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9OTApXCI7XG5cdH1cblxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCxcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCxcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKG1DU0JfYnV0dG9ucy5wbmcpOyAvKiBjc3Mgc3ByaXRlcyAqL1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0b3BhY2l0eTogMC40OyBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiO1xuXHR9XG5cblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuXHRcdC8qXG5cdFx0c3ByaXRlcyBsb2NhdGlvbnNcblx0XHRsaWdodDogMCAwLCAtMTZweCAwLCAtMzJweCAwLCAtNDhweCAwLCAwIC03MnB4LCAtMTZweCAtNzJweCwgLTMycHggLTcycHhcblx0XHRkYXJrOiAtODBweCAwLCAtOTZweCAwLCAtMTEycHggMCwgLTEyOHB4IDAsIC04MHB4IC03MnB4LCAtOTZweCAtNzJweCwgLTExMnB4IC03MnB4XG5cdFx0Ki9cblx0fVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjBweDtcblx0XHQvKlxuXHRcdHNwcml0ZXMgbG9jYXRpb25zXG5cdFx0bGlnaHQ6IDAgLTIwcHgsIC0xNnB4IC0yMHB4LCAtMzJweCAtMjBweCwgLTQ4cHggLTIwcHgsIDAgLTkycHgsIC0xNnB4IC05MnB4LCAtMzJweCAtOTJweFxuXHRcdGRhcms6IC04MHB4IC0yMHB4LCAtOTZweCAtMjBweCwgLTExMnB4IC0yMHB4LCAtMTI4cHggLTIwcHgsIC04MHB4IC05MnB4LCAtOTZweCAtOTJweCwgLTExMiAtOTJweFxuXHRcdCovXG5cdH1cblxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0e1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQwcHg7XG5cdFx0Lypcblx0XHRzcHJpdGVzIGxvY2F0aW9uc1xuXHRcdGxpZ2h0OiAwIC00MHB4LCAtMjBweCAtNDBweCwgLTQwcHggLTQwcHgsIC02MHB4IC00MHB4LCAwIC0xMTJweCwgLTIwcHggLTExMnB4LCAtNDBweCAtMTEycHhcblx0XHRkYXJrOiAtODBweCAtNDBweCwgLTEwMHB4IC00MHB4LCAtMTIwcHggLTQwcHgsIC0xNDBweCAtNDBweCwgLTgwcHggLTExMnB4LCAtMTAwcHggLTExMnB4LCAtMTIwcHggLTExMnB4XG5cdFx0Ki9cblx0fVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAgLTU2cHg7XG5cdFx0Lypcblx0XHRzcHJpdGVzIGxvY2F0aW9uc1xuXHRcdGxpZ2h0OiAwIC01NnB4LCAtMjBweCAtNTZweCwgLTQwcHggLTU2cHgsIC02MHB4IC01NnB4LCAwIC0xMjhweCwgLTIwcHggLTEyOHB4LCAtNDBweCAtMTI4cHhcblx0XHRkYXJrOiAtODBweCAtNTZweCwgLTEwMHB4IC01NnB4LCAtMTIwcHggLTU2cHgsIC0xNDBweCAtNTZweCwgLTgwcHggLTEyOHB4LCAtMTAwcHggLTEyOHB4LCAtMTIwcHggLTEyOHB4XG5cdFx0Ki9cblx0fVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwOmhvdmVyLFxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duOmhvdmVyLFxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0OmhvdmVyLFxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodDpob3Zlcnsgb3BhY2l0eTogMC43NTsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjsgfVxuXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwOmFjdGl2ZSxcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bjphY3RpdmUsXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQ6YWN0aXZlLFxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodDphY3RpdmV7IG9wYWNpdHk6IDAuOTsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9OTApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT05MClcIjsgfVxuXG5cblx0LyogdGhlbWU6IFwiZGFya1wiICovXG5cblx0Lm1DUy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4xNSk7IH1cblxuXHQubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNzUpOyB9XG5cblx0Lm1DUy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjg1KTsgfVxuXG5cdC5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC45KTsgfVxuXG5cdC5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAwOyB9XG5cblx0Lm1DUy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTIwcHg7IH1cblxuXHQubUNTLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtNDBweDsgfVxuXG5cdC5tQ1MtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtNTZweDsgfVxuXG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG5cblx0LyogdGhlbWU6IFwibGlnaHQtMlwiLCBcImRhcmstMlwiICovXG5cblx0Lm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG5cdC5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG5cdFx0d2lkdGg6IDRweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuMSk7XG5cdFx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxcHg7IC1tb3otYm9yZGVyLXJhZGl1czogMXB4OyBib3JkZXItcmFkaXVzOiAxcHg7XG5cdH1cblxuXHQubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0d2lkdGg6IDRweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNzUpO1xuXHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMXB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDFweDsgYm9yZGVyLXJhZGl1czogMXB4O1xuXHR9XG5cblx0Lm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcblx0Lm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogNHB4O1xuXHRcdG1hcmdpbjogNnB4IGF1dG87XG5cdH1cblxuXHQubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuODUpOyB9XG5cblx0Lm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtbGlnaHQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjkpOyB9XG5cblx0Lm1DUy1saWdodC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IC0zMnB4IDA7IH1cblxuXHQubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3due1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTIwcHg7IH1cblxuXHQubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0e1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTQwcHg7IH1cblxuXHQubUNTLWxpZ2h0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTU2cHg7IH1cblxuXG5cdC8qIHRoZW1lOiBcImRhcmstMlwiICovXG5cblx0Lm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMSk7XG5cdFx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxcHg7IC1tb3otYm9yZGVyLXJhZGl1czogMXB4OyBib3JkZXItcmFkaXVzOiAxcHg7XG5cdH1cblxuXHQubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjc1KTtcblx0XHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDFweDsgLW1vei1ib3JkZXItcmFkaXVzOiAxcHg7IGJvcmRlci1yYWRpdXM6IDFweDtcblx0fVxuXG5cdC5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjg1KTsgfVxuXG5cdC5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuOSk7IH1cblxuXHQubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggMDsgfVxuXG5cdC5tQ1MtZGFyay0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC0yMHB4OyB9XG5cblx0Lm1DUy1kYXJrLTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTQwcHg7IH1cblxuXHQubUNTLWRhcmstMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC01NnB4OyB9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblxuXHQvKiB0aGVtZTogXCJsaWdodC10aGlja1wiLCBcImRhcmstdGhpY2tcIiAqL1xuXG5cdC5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcblx0Lm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG5cdFx0d2lkdGg6IDRweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuMSk7XG5cdFx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7IC1tb3otYm9yZGVyLXJhZGl1czogMnB4OyBib3JkZXItcmFkaXVzOiAycHg7XG5cdH1cblxuXHQubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcntcblx0XHR3aWR0aDogNnB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC43NSk7XG5cdFx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7IC1tb3otYm9yZGVyLXJhZGl1czogMnB4OyBib3JkZXItcmFkaXVzOiAycHg7XG5cdH1cblxuXHQubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcblx0Lm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDRweDtcblx0XHRtYXJnaW46IDZweCAwO1xuXHR9XG5cblx0Lm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogNnB4O1xuXHRcdG1hcmdpbjogNXB4IGF1dG87XG5cdH1cblxuXHQubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjg1KTsgfVxuXG5cdC5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjkpOyB9XG5cblx0Lm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAwOyB9XG5cblx0Lm1DUy1saWdodC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtMjBweDsgfVxuXG5cdC5tQ1MtbGlnaHQtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0e1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTIwcHggLTQwcHg7IH1cblxuXHQubUNTLWxpZ2h0LXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7IGJhY2tncm91bmQtcG9zaXRpb246IC0yMHB4IC01NnB4OyB9XG5cblxuXHQvKiB0aGVtZTogXCJkYXJrLXRoaWNrXCIgKi9cblxuXHQubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMSk7XG5cdFx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7IC1tb3otYm9yZGVyLXJhZGl1czogMnB4OyBib3JkZXItcmFkaXVzOiAycHg7XG5cdH1cblxuXHQubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC43NSk7XG5cdFx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiAycHg7IC1tb3otYm9yZGVyLXJhZGl1czogMnB4OyBib3JkZXItcmFkaXVzOiAycHg7XG5cdH1cblxuXHQubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuODUpOyB9XG5cblx0Lm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjkpOyB9XG5cblx0Lm1DUy1kYXJrLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IC05NnB4IDA7IH1cblxuXHQubUNTLWRhcmstdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtMjBweDsgfVxuXG5cdC5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMDBweCAtNDBweDsgfVxuXG5cdC5tQ1MtZGFyay10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTEwMHB4IC01NnB4OyB9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblxuXHQvKiB0aGVtZTogXCJsaWdodC10aGluXCIsIFwiZGFyay10aGluXCIgKi9cblxuXHQubUNTLWxpZ2h0LXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjEpOyB9XG5cblx0Lm1DUy1saWdodC10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyB3aWR0aDogMnB4OyB9XG5cblx0Lm1DUy1saWdodC10aGluLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcblx0Lm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlseyB3aWR0aDogMTAwJTsgfVxuXG5cdC5tQ1MtbGlnaHQtdGhpbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAycHg7XG5cdFx0bWFyZ2luOiA3cHggYXV0bztcblx0fVxuXG5cblx0LyogdGhlbWUgXCJkYXJrLXRoaW5cIiAqL1xuXG5cdC5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4xNSk7IH1cblxuXHQubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC43NSk7IH1cblxuXHQubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC44NSk7IH1cblxuXHQubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjkpOyB9XG5cblx0Lm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHtcdGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IDA7IH1cblxuXHQubUNTLWRhcmstdGhpbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC0yMHB4OyB9XG5cblx0Lm1DUy1kYXJrLXRoaW4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtNDBweDsgfVxuXG5cdC5tQ1MtZGFyay10aGluLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC01NnB4OyB9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblxuXHQvKiB0aGVtZSBcInJvdW5kZWRcIiwgXCJyb3VuZGVkLWRhcmtcIiwgXCJyb3VuZGVkLWRvdHNcIiwgXCJyb3VuZGVkLWRvdHMtZGFya1wiICovXG5cblx0Lm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC4xNSk7IH1cblxuXHQubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLFxuXHQubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIsXG5cdC5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcixcblx0Lm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJ7IGhlaWdodDogMTRweDsgfVxuXG5cdC5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcntcblx0XHR3aWR0aDogMTRweDtcblx0XHRtYXJnaW46IDAgMXB4O1xuXHR9XG5cblx0Lm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyLFxuXHQubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlcixcblx0Lm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIsXG5cdC5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJ7IHdpZHRoOiAxNHB4OyB9XG5cblx0Lm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0aGVpZ2h0OiAxNHB4O1xuXHRcdG1hcmdpbjogMXB4IDA7XG5cdH1cblxuXHQubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcntcblx0XHR3aWR0aDogMTZweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi9cblx0XHRoZWlnaHQ6IDE2cHg7XG5cdFx0bWFyZ2luOiAtMXB4IDA7XG5cdH1cblxuXHQubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsXG5cdC5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcblx0Lm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbHsgd2lkdGg6IDRweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi8gfVxuXG5cdC5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0aGVpZ2h0OiAxNnB4OyAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xuXHRcdHdpZHRoOiAxNnB4O1xuXHRcdG1hcmdpbjogMCAtMXB4O1xuXHR9XG5cblx0Lm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsXG5cdC5tQ1Mtcm91bmRlZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwsXG5cdC5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsXG5cdC5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbHtcblx0XHRoZWlnaHQ6IDRweDsgLyogYXV0by1leHBhbmRlZCBzY3JvbGxiYXIgKi9cblx0XHRtYXJnaW46IDZweCAwO1xuXHR9XG5cblx0Lm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgLTcycHg7IH1cblxuXHQubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC05MnB4OyB9XG5cblx0Lm1DUy1yb3VuZGVkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTEycHg7IH1cblxuXHQubUNTLXJvdW5kZWQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTI4cHg7IH1cblxuXG5cdC8qIHRoZW1lIFwicm91bmRlZC1kYXJrXCIsIFwicm91bmRlZC1kb3RzLWRhcmtcIiAqL1xuXG5cdC5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC43NSk7IH1cblxuXHQubUNTLXJvdW5kZWQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlseyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMTUpOyB9XG5cblx0Lm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjg1KTsgfVxuXG5cdC5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC45KTsgfVxuXG5cdC5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IC04MHB4IC03MnB4OyB9XG5cblx0Lm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtODBweCAtOTJweDsgfVxuXG5cdC5tQ1Mtcm91bmRlZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTExMnB4OyB9XG5cblx0Lm1DUy1yb3VuZGVkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTgwcHggLTEyOHB4OyB9XG5cblxuXHQvKiB0aGVtZSBcInJvdW5kZWQtZG90c1wiLCBcInJvdW5kZWQtZG90cy1kYXJrXCIgKi9cblxuXHQubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgLm1DU0JfZHJhZ2dlclJhaWx7IHdpZHRoOiA0cHg7IH1cblxuXHQubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLXJvdW5kZWQtZG90cy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG5cdC5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcblx0Lm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWx7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuXHR9XG5cblx0Lm1DUy1yb3VuZGVkLWRvdHMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcblx0Lm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQWdBQUFBSUNBWUFBQURFRDc2TEFBQUFORWxFUVZRWVYyTmtJQUFZaVZidy8vOS9ZNkRpTTFBTkpveU1qR2RCYkxnSlFBWC9rVTBES2dETGthUUF2eFc0SEV2UUZ3Q1JjeElKSzFYem5BQUFBQUJKUlU1RXJrSmdnZz09XCIpO1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteTtcblx0XHRvcGFjaXR5OiAwLjM7XG5cdFx0ZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MzApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0zMClcIjtcblx0fVxuXG5cdC5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcblx0Lm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWx7XG5cdFx0aGVpZ2h0OiA0cHg7XG5cdFx0bWFyZ2luOiA2cHggMDtcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG5cdH1cblxuXHQubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTZweCAtNzJweDsgfVxuXG5cdC5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE2cHggLTkycHg7IH1cblxuXHQubUNTLXJvdW5kZWQtZG90cy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7IGJhY2tncm91bmQtcG9zaXRpb246IC0yMHB4IC0xMTJweDsgfVxuXG5cdC5tQ1Mtcm91bmRlZC1kb3RzLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7IGJhY2tncm91bmQtcG9zaXRpb246IC0yMHB4IC0xMjhweDsgfVxuXG5cblx0LyogdGhlbWUgXCJyb3VuZGVkLWRvdHMtZGFya1wiICovXG5cblx0Lm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQWdBQUFBSUNBWUFBQURFRDc2TEFBQUFMRWxFUVZRWVYyTmtJQUFZU1ZGZ0RGUjhCcXJCQkVpZkJiR1JUZmlQWmhwWWppUUZCSzNBNmw2Q3ZnQUFFOWtHQ2QxbXZnRUFBQUFBU1VWT1JLNUNZSUk9XCIpO1xuXHR9XG5cblx0Lm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtNzJweDsgfVxuXG5cdC5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtOTZweCAtOTJweDsgfVxuXG5cdC5tQ1Mtcm91bmRlZC1kb3RzLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggLTExMnB4OyB9XG5cblx0Lm1DUy1yb3VuZGVkLWRvdHMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTAwcHggLTEyOHB4OyB9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblxuXHQvKiB0aGVtZSBcIjNkXCIsIFwiM2QtZGFya1wiLCBcIjNkLXRoaWNrXCIsIFwiM2QtdGhpY2stZGFya1wiICovXG5cblx0Lm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuXHRcdGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwyNTUsMjU1LDAuNSkgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGNvbG9yLXN0b3AoMCUscmdiYSgyNTUsMjU1LDI1NSwwLjUpKSwgY29sb3Itc3RvcCgxMDAlLHJnYmEoMjU1LDI1NSwyNTUsMCkpKTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwyNTUsMjU1LDAuNSkgMCUscmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgyNTUsMjU1LDI1NSwwLjUpIDAlLHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDI1NSwyNTUsMjU1LDAuNSkgMCUscmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LDI1NSwyNTUsMC41KSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO1xuXHR9XG5cblx0Lm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0YmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgyNTUsMjU1LDI1NSwwLjUpIDAlLCByZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IHRvcCwgbGVmdCBib3R0b20sIGNvbG9yLXN0b3AoMCUscmdiYSgyNTUsMjU1LDI1NSwwLjUpKSwgY29sb3Itc3RvcCgxMDAlLHJnYmEoMjU1LDI1NSwyNTUsMCkpKTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LDI1NSwyNTUsMC41KSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMjU1LDI1NSwyNTUsMC41KSAwJSxyZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDI1NSwyNTUsMjU1LDAuNSkgMCUscmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDI1NSwyNTUsMjU1LDAuNSkgMCUscmdiYSgyNTUsMjU1LDI1NSwwKSAxMDAlKTtcblx0fVxuXG5cblx0LyogdGhlbWUgXCIzZFwiLCBcIjNkLWRhcmtcIiAqL1xuXG5cdC5tQ1MtM2QubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCAubUNTQl9kcmFnZ2VyLFxuXHQubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCAubUNTQl9kcmFnZ2VyeyBoZWlnaHQ6IDcwcHg7IH1cblxuXHQubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyLFxuXHQubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJ7IHdpZHRoOiA3MHB4OyB9XG5cblx0Lm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzLFxuXHQubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc3tcblx0XHRvcGFjaXR5OiAxO1xuXHRcdGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTMwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MzApXCI7XG5cdH1cblxuXHQubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG5cdC5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcblx0Lm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxNnB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDE2cHg7IGJvcmRlci1yYWRpdXM6IDE2cHg7IH1cblxuXHQubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG5cdC5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuXHRcdHdpZHRoOiA4cHg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjIpO1xuXHRcdGJveC1zaGFkb3c6IGluc2V0IDFweCAwIDFweCByZ2JhKDAsMCwwLDAuNSksIGluc2V0IC0xcHggMCAxcHggcmdiYSgyNTUsMjU1LDI1NSwwLjIpO1xuXHR9XG5cblx0Lm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICM1NTU7IH1cblxuXHQubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcnsgd2lkdGg6IDhweDsgfVxuXG5cdC5tQ1MtM2QubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlse1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogOHB4O1xuXHRcdG1hcmdpbjogNHB4IDA7XG5cdFx0Ym94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsMC41KSwgaW5zZXQgMCAtMXB4IDFweCByZ2JhKDI1NSwyNTUsMjU1LDAuMik7XG5cdH1cblxuXHQubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiA4cHg7XG5cdFx0bWFyZ2luOiA0cHggYXV0bztcblx0fVxuXG5cdC5tQ1MtM2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTcycHg7IH1cblxuXHQubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTkycHg7IH1cblxuXHQubUNTLTNkLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTExMnB4OyB9XG5cblx0Lm1DUy0zZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTI4cHg7IH1cblxuXG5cdC8qIHRoZW1lIFwiM2QtZGFya1wiICovXG5cblx0Lm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjEpO1xuXHRcdGJveC1zaGFkb3c6IGluc2V0IDFweCAwIDFweCByZ2JhKDAsMCwwLDAuMSk7XG5cdH1cblxuXHQubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlseyBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwwLjEpOyB9XG5cblx0Lm1DUy0zZC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtNzJweDsgfVxuXG5cdC5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtOTJweDsgfVxuXG5cdC5tQ1MtM2QtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTEycHg7IH1cblxuXHQubUNTLTNkLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHtcdGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTI4cHg7IH1cblxuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cblxuXG5cdC8qIHRoZW1lOiBcIjNkLXRoaWNrXCIsIFwiM2QtdGhpY2stZGFya1wiICovXG5cblx0Lm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzLFxuXHQubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc3tcblx0XHRvcGFjaXR5OiAxO1xuXHRcdGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTMwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MzApXCI7XG5cdH1cblxuXHQubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMsXG5cdC5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzLFxuXHQubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcixcblx0Lm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcnsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA3cHg7IC1tb3otYm9yZGVyLXJhZGl1czogN3B4OyBib3JkZXItcmFkaXVzOiA3cHg7IH1cblxuXHQubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7IC1tb3otYm9yZGVyLXJhZGl1czogNXB4OyBib3JkZXItcmFkaXVzOiA1cHg7IH1cblxuXHQubUNTQl9pbnNpZGUgKyAubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwsXG5cdC5tQ1NCX2luc2lkZSArIC5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FseyByaWdodDogMXB4OyB9XG5cblx0Lm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLFxuXHQubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbHsgYm94LXNoYWRvdzogaW5zZXQgMXB4IDAgMXB4IHJnYmEoMCwwLDAsMC4xKSwgaW5zZXQgMCAwIDE0cHggcmdiYSgwLDAsMCwwLjUpOyB9XG5cblx0Lm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsXG5cdC5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWx7XG5cdFx0Ym90dG9tOiAxcHg7XG5cdFx0Ym94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsMC4xKSwgaW5zZXQgMCAwIDE0cHggcmdiYSgwLDAsMCwwLjUpO1xuXHR9XG5cblx0Lm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0Ym94LXNoYWRvdzogaW5zZXQgMXB4IDAgMCByZ2JhKDI1NSwyNTUsMjU1LDAuNCk7XG5cdFx0d2lkdGg6IDEycHg7XG5cdFx0bWFyZ2luOiAycHg7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGhlaWdodDogYXV0bztcblx0XHR0b3A6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdH1cblxuXHQubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwwLjQpOyB9XG5cblx0Lm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICM1NTU7IH1cblxuXHQubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0aGVpZ2h0OiAxMnB4O1xuXHRcdHdpZHRoOiBhdXRvO1xuXHR9XG5cblx0Lm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJDb250YWluZXJ7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjA1KTtcblx0XHRib3gtc2hhZG93OiBpbnNldCAxcHggMXB4IDE2cHggcmdiYSgwLDAsMCwwLjEpO1xuXHR9XG5cblx0Lm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlseyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5cdC5tQ1MtM2QtdGhpY2subUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTcycHg7IH1cblxuXHQubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTkycHg7IH1cblxuXHQubUNTLTNkLXRoaWNrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTExMnB4OyB9XG5cblx0Lm1DUy0zZC10aGljay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTEyOHB4OyB9XG5cblxuXHQvKiB0aGVtZTogXCIzZC10aGljay1kYXJrXCIgKi9cblxuXHQubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29sc3sgYm94LXNoYWRvdzogaW5zZXQgMCAwIDE0cHggcmdiYSgwLDAsMCwwLjIpOyB9XG5cblx0Lm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHsgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsMC4xKSwgaW5zZXQgMCAwIDE0cHggcmdiYSgwLDAsMCwwLjIpOyB9XG5cblx0Lm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgYm94LXNoYWRvdzogaW5zZXQgMXB4IDAgMCByZ2JhKDI1NSwyNTUsMjU1LDAuNCksIGluc2V0IC0xcHggMCAwIHJnYmEoMCwwLDAsMC4yKTsgfVxuXG5cdC5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LDAuNCksIGluc2V0IDAgLTFweCAwIHJnYmEoMCwwLDAsMC4yKTsgfVxuXG5cdC5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICM3Nzc7IH1cblxuXHQubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyQ29udGFpbmVye1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4wNSk7XG5cdFx0Ym94LXNoYWRvdzogaW5zZXQgMXB4IDFweCAxNnB4IHJnYmEoMCwwLDAsMC4xKTtcblx0fVxuXG5cdC5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlseyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5cdC5tQ1MtM2QtdGhpY2stZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTcycHg7IH1cblxuXHQubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTkycHg7IH1cblxuXHQubUNTLTNkLXRoaWNrLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTExMnB4OyB9XG5cblx0Lm1DUy0zZC10aGljay1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTEyOHB4OyB9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblxuXHQvKiB0aGVtZTogXCJtaW5pbWFsXCIsIFwibWluaW1hbC1kYXJrXCIgKi9cblxuXHQubUNTQl9vdXRzaWRlICsgLm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwsXG5cdC5tQ1NCX291dHNpZGUgKyAubUNTLW1pbmltYWwtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2Fse1xuXHRcdHJpZ2h0OiAwO1xuXHRcdG1hcmdpbjogMTJweCAwO1xuXHR9XG5cblx0Lm1DdXN0b21TY3JvbGxCb3gubUNTLW1pbmltYWwgKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsXG5cdC5tQ3VzdG9tU2Nyb2xsQm94Lm1DUy1taW5pbWFsICsgLm1DU0Jfc2Nyb2xsVG9vbHMgKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsXG5cdC5tQ3VzdG9tU2Nyb2xsQm94Lm1DUy1taW5pbWFsLWRhcmsgKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwsXG5cdC5tQ3VzdG9tU2Nyb2xsQm94Lm1DUy1taW5pbWFsLWRhcmsgKyAubUNTQl9zY3JvbGxUb29scyArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHtcblx0XHRib3R0b206IDA7XG5cdFx0bWFyZ2luOiAwIDEycHg7XG5cdH1cblxuXHQvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cblx0Lm1DUy1kaXItcnRsID4gLm1DU0Jfb3V0c2lkZSArIC5tQ1MtbWluaW1hbC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLFxuXHQubUNTLWRpci1ydGwgPiAubUNTQl9vdXRzaWRlICsgLm1DUy1taW5pbWFsLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbHtcblx0XHRsZWZ0OiAwO1xuXHRcdHJpZ2h0OiBhdXRvO1xuXHR9XG5cblx0Lm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG5cdC5tQ1MtbWluaW1hbC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cblx0Lm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwgLm1DU0JfZHJhZ2dlcixcblx0Lm1DUy1taW5pbWFsLWRhcmsubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbCAubUNTQl9kcmFnZ2VyeyBoZWlnaHQ6IDUwcHg7IH1cblxuXHQubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIsXG5cdC5tQ1MtbWluaW1hbC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyeyB3aWR0aDogNTBweDsgfVxuXG5cdC5tQ1MtbWluaW1hbC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjIpO1xuXHRcdGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTIwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MjApXCI7XG5cdH1cblxuXHQubUNTLW1pbmltYWwubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1taW5pbWFsLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFye1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC41KTtcblx0XHRmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT01MClcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTUwKVwiO1xuXHR9XG5cblxuXHQvKiB0aGVtZTogXCJtaW5pbWFsLWRhcmtcIiAqL1xuXG5cdC5tQ1MtbWluaW1hbC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcntcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMik7XG5cdFx0ZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MjApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0yMClcIjtcblx0fVxuXG5cdC5tQ1MtbWluaW1hbC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtbWluaW1hbC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFye1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC41KTtcblx0XHRmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT01MClcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTUwKVwiO1xuXHR9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cblxuXHQvKiB0aGVtZSBcImxpZ2h0LTNcIiwgXCJkYXJrLTNcIiAqL1xuXG5cdC5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuXHRcdHdpZHRoOiA2cHg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjIpO1xuXHR9XG5cblx0Lm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyB3aWR0aDogNnB4OyB9XG5cblx0Lm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1saWdodC0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcblx0Lm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlse1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogNnB4O1xuXHRcdG1hcmdpbjogNXB4IDA7XG5cdH1cblxuXHQubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsXG5cdC5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCxcblx0Lm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbHtcblx0XHR3aWR0aDogMTJweDtcblx0fVxuXG5cdC5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWx7XG5cdFx0aGVpZ2h0OiAxMnB4O1xuXHRcdG1hcmdpbjogMnB4IDA7XG5cdH1cblxuXHQubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTMycHggLTcycHg7IH1cblxuXHQubUNTLWxpZ2h0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtOTJweDsgfVxuXG5cdC5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7IGJhY2tncm91bmQtcG9zaXRpb246IC00MHB4IC0xMTJweDsgfVxuXG5cdC5tQ1MtbGlnaHQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTI4cHg7IH1cblxuXG5cdC8qIHRoZW1lIFwiZGFyay0zXCIgKi9cblxuXHQubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC43NSk7IH1cblxuXHQubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC44NSk7IH1cblxuXHQubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjkpOyB9XG5cblx0Lm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjEpOyB9XG5cblx0Lm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC03MnB4OyB9XG5cblx0Lm1DUy1kYXJrLTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTEycHggLTkycHg7IH1cblxuXHQubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnR7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMjBweCAtMTEycHg7IH1cblxuXHQubUNTLWRhcmstMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1x0YmFja2dyb3VuZC1wb3NpdGlvbjogLTEyMHB4IC0xMjhweDsgfVxuXG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXG5cblx0LyogdGhlbWUgXCJpbnNldFwiLCBcImluc2V0LWRhcmtcIiwgXCJpbnNldC0yXCIsIFwiaW5zZXQtMi1kYXJrXCIsIFwiaW5zZXQtM1wiLCBcImluc2V0LTMtZGFya1wiICovXG5cblx0Lm1DUy1pbnNldC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCxcblx0Lm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG5cdC5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwsXG5cdC5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuXHRcdHdpZHRoOiAxMnB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4yKTtcblx0fVxuXG5cdC5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcntcblx0XHR3aWR0aDogNnB4O1xuXHRcdG1hcmdpbjogM3B4IDVweDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdHRvcDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0fVxuXG5cdC5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcntcblx0XHRoZWlnaHQ6IDZweDtcblx0XHRtYXJnaW46IDVweCAzcHg7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdHRvcDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0fVxuXG5cdC5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsXG5cdC5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsXG5cdC5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEycHg7XG5cdFx0bWFyZ2luOiAycHggMDtcblx0fVxuXG5cdC5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCxcblx0Lm1DUy1pbnNldC0yLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAsXG5cdC5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtNzJweDsgfVxuXG5cdC5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duLFxuXHQubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duLFxuXHQubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3dueyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMzJweCAtOTJweDsgfVxuXG5cdC5tQ1MtaW5zZXQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0LFxuXHQubUNTLWluc2V0LTIubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0LFxuXHQubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNDBweCAtMTEycHg7IH1cblxuXHQubUNTLWluc2V0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQsXG5cdC5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0LFxuXHQubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQwcHggLTEyOHB4OyB9XG5cblxuXHQvKiB0aGVtZSBcImluc2V0LWRhcmtcIiwgXCJpbnNldC0yLWRhcmtcIiwgXCJpbnNldC0zLWRhcmtcIiAqL1xuXG5cdC5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG5cdC5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNzUpOyB9XG5cblx0Lm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC44NSk7IH1cblxuXHQubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC45KTsgfVxuXG5cdC5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlseyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuMSk7IH1cblxuXHQubUNTLWluc2V0LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCxcblx0Lm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCxcblx0Lm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTExMnB4IC03MnB4OyB9XG5cblx0Lm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcblx0Lm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duLFxuXHQubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtOTJweDsgfVxuXG5cdC5tQ1MtaW5zZXQtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG5cdC5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCxcblx0Lm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTExMnB4OyB9XG5cblx0Lm1DUy1pbnNldC1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQsXG5cdC5tQ1MtaW5zZXQtMi1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQsXG5cdC5tQ1MtaW5zZXQtMy1kYXJrLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTEyOHB4OyB9XG5cblxuXHQvKiB0aGVtZSBcImluc2V0LTJcIiwgXCJpbnNldC0yLWRhcmtcIiAqL1xuXG5cdC5tQ1MtaW5zZXQtMi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlsLFxuXHQubUNTLWluc2V0LTItZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdGJvcmRlci13aWR0aDogMXB4O1xuXHRcdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdFx0Ym9yZGVyLWNvbG9yOiAjZmZmO1xuXHRcdGJvcmRlci1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjIpO1xuXHRcdC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94OyBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR9XG5cblx0Lm1DUy1pbnNldC0yLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHsgYm9yZGVyLWNvbG9yOiAjMDAwOyBib3JkZXItY29sb3I6IHJnYmEoMCwwLDAsMC4yKTsgfVxuXG5cblx0LyogdGhlbWUgXCJpbnNldC0zXCIsIFwiaW5zZXQtMy1kYXJrXCIgKi9cblxuXHQubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjYpOyB9XG5cblx0Lm1DUy1pbnNldC0zLWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbHsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjYpOyB9XG5cblx0Lm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjc1KTsgfVxuXG5cdC5tQ1MtaW5zZXQtMy5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC44NSk7IH1cblxuXHQubUNTLWluc2V0LTMubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcblx0Lm1DUy1pbnNldC0zLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuOSk7IH1cblxuXHQubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC43NSk7IH1cblxuXHQubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsMC44NSk7IH1cblxuXHQubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWluc2V0LTMtZGFyay5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjkpOyB9XG5cblx0LyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG5cdC8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuXHQvKiB0aGVtZTogXCJkYXJrLW1vZFwiICovXG5cblx0Lm1DUy1kYXJrLW1vZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xuXHRcdHdpZHRoOiA4cHg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjEpO1xuXHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDsgLW1vei1ib3JkZXItcmFkaXVzOiAwOyBib3JkZXItcmFkaXVzOiAwO1xuXHR9XG5cblx0Lm1DUy1kYXJrLW1vZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0d2lkdGg6IDhweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNzUpO1xuXHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDsgLW1vei1ib3JkZXItcmFkaXVzOiAwOyBib3JkZXItcmFkaXVzOiAwO1xuXHR9XG5cblx0Lm1DUy1kYXJrLW1vZC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwsXG5cdC5tQ1MtZGFyay1tb2QubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiA4cHg7XG5cdFx0bWFyZ2luOiA2cHggYXV0bztcblx0fVxuXG5cdC8qIHRoZW1lOiBcImRhcmstbW9kXCIgKi9cblxuXHQubUNTLWRhcmstbW9kLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjEpO1xuXHRcdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDsgLW1vei1ib3JkZXItcmFkaXVzOiAwOyBib3JkZXItcmFkaXVzOiAwO1xuXHR9XG5cblx0Lm1DUy1kYXJrLW1vZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjc1KTtcblx0XHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7IC1tb3otYm9yZGVyLXJhZGl1czogMDsgYm9yZGVyLXJhZGl1czogMDtcblx0fVxuXG5cdC5tQ1MtZGFyay1tb2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmhvdmVyIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuODUpOyB9XG5cblx0Lm1DUy1kYXJrLW1vZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6YWN0aXZlIC5tQ1NCX2RyYWdnZXJfYmFyLFxuXHQubUNTLWRhcmstbW9kLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFyeyBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwOyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuOSk7IH1cblxuXHQubUNTLWRhcmstbW9kLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAwOyB9XG5cblx0Lm1DUy1kYXJrLW1vZC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtcG9zaXRpb246IC0xMTJweCAtMjBweDsgfVxuXG5cdC5tQ1MtZGFyay1tb2QubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0eyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTQwcHg7IH1cblxuXHQubUNTLWRhcmstbW9kLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTIwcHggLTU2cHg7IH1cblxuXHQvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIFNlbGVjdHJpYyB2MS4xMC4xXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbi5zZWxlY3RyaWMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uc2VsZWN0cmljLXJlc3BvbnNpdmUge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNlbGVjdHJpYyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNEREQ7XG4gIGJhY2tncm91bmQ6ICNGOEY4Rjg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zZWxlY3RyaWMgLmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBtYXJnaW46IDAgMzhweCAwIDEwcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gIGNvbG9yOiAjNDQ0O1xuICBoZWlnaHQ6IDM4cHg7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4uc2VsZWN0cmljIC5idXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMzhweDtcbiAgaGVpZ2h0OiAzOHB4O1xuICBjb2xvcjogI0JCQjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250OiAwLzAgYTtcbiAgKmZvbnQ6IDIwcHgvMzhweCBMdWNpZGEgU2FucyBVbmljb2RlLCBBcmlhbCBVbmljb2RlIE1TLCBBcmlhbDtcbn1cbi5zZWxlY3RyaWMgLmJ1dHRvbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI0JCQjtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLnNlbGVjdHJpYy1mb2N1cyAuc2VsZWN0cmljIHtcbiAgYm9yZGVyLWNvbG9yOiAjQUFBO1xufVxuXG4uc2VsZWN0cmljLWhvdmVyIC5zZWxlY3RyaWMge1xuICBib3JkZXItY29sb3I6ICNDNEM0QzQ7XG59XG4uc2VsZWN0cmljLWhvdmVyIC5zZWxlY3RyaWMgLmJ1dHRvbiB7XG4gIGNvbG9yOiAjQTJBMkEyO1xufVxuLnNlbGVjdHJpYy1ob3ZlciAuc2VsZWN0cmljIC5idXR0b246YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjQTJBMkEyO1xufVxuXG4uc2VsZWN0cmljLW9wZW4ge1xuICB6LWluZGV4OiA5OTk5O1xufVxuLnNlbGVjdHJpYy1vcGVuIC5zZWxlY3RyaWMge1xuICBib3JkZXItY29sb3I6ICNDNEM0QzQ7XG59XG4uc2VsZWN0cmljLW9wZW4gLnNlbGVjdHJpYy1pdGVtcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2VsZWN0cmljLWRpc2FibGVkIHtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTUwKTtcbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5zZWxlY3RyaWMtaGlkZS1zZWxlY3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG59XG4uc2VsZWN0cmljLWhpZGUtc2VsZWN0IHNlbGVjdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTEwMCU7XG59XG4uc2VsZWN0cmljLWhpZGUtc2VsZWN0LnNlbGVjdHJpYy1pcy1uYXRpdmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDEwO1xufVxuLnNlbGVjdHJpYy1oaWRlLXNlbGVjdC5zZWxlY3RyaWMtaXMtbmF0aXZlIHNlbGVjdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiBub25lO1xuICB6LWluZGV4OiAxO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2VsZWN0cmljLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHRvcDogMCAhaW1wb3J0YW50O1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICpmb250OiAwLzAgYSAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5zZWxlY3RyaWMtdGVtcC1zaG93IHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4vKiBJdGVtcyBib3ggKi9cbi5zZWxlY3RyaWMtaXRlbXMge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogI0Y4RjhGODtcbiAgYm9yZGVyOiAxcHggc29saWQgI0M0QzRDNDtcbiAgei1pbmRleDogLTE7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IC02cHg7XG59XG4uc2VsZWN0cmljLWl0ZW1zIC5zZWxlY3RyaWMtc2Nyb2xsIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogYXV0bztcbn1cbi5zZWxlY3RyaWMtYWJvdmUgLnNlbGVjdHJpYy1pdGVtcyB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAxMDAlO1xufVxuLnNlbGVjdHJpYy1pdGVtcyB1bCwgLnNlbGVjdHJpYy1pdGVtcyBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgbWluLWhlaWdodDogMjBweDtcbn1cbi5zZWxlY3RyaWMtaXRlbXMgbGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTBweDtcbiAgY29sb3I6ICM2NjY7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5zZWxlY3RyaWMtaXRlbXMgbGkuc2VsZWN0ZWQge1xuICBiYWNrZ3JvdW5kOiAjRTBFMEUwO1xuICBjb2xvcjogIzQ0NDtcbn1cbi5zZWxlY3RyaWMtaXRlbXMgbGkuaGlnaGxpZ2h0ZWQge1xuICBiYWNrZ3JvdW5kOiAjRDBEMEQwO1xuICBjb2xvcjogIzQ0NDtcbn1cbi5zZWxlY3RyaWMtaXRlbXMgbGk6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjRDVENUQ1O1xuICBjb2xvcjogIzQ0NDtcbn1cbi5zZWxlY3RyaWMtaXRlbXMgLmRpc2FibGVkIHtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTUwKTtcbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICBjb2xvcjogIzY2NiAhaW1wb3J0YW50O1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuLnNlbGVjdHJpYy1pdGVtcyAuc2VsZWN0cmljLWdyb3VwIC5zZWxlY3RyaWMtZ3JvdXAtbGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjNDQ0O1xufVxuLnNlbGVjdHJpYy1pdGVtcyAuc2VsZWN0cmljLWdyb3VwLmRpc2FibGVkIGxpIHtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XG4gIG9wYWNpdHk6IDE7XG59XG4uc2VsZWN0cmljLWl0ZW1zIC5zZWxlY3RyaWMtZ3JvdXAgbGkge1xuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG59XG4iLCIvKiEgVGFibGVzYXcgLSB2Mi4wLjMgLSAyMDE2LTA1LTAyXG4qIGh0dHBzOi8vZ2l0aHViLmNvbS9maWxhbWVudGdyb3VwL3RhYmxlc2F3XG4qIENvcHlyaWdodCAoYykgMjAxNiBGaWxhbWVudCBHcm91cDsgTGljZW5zZWQgTUlUICovXG5cbnRhYmxlLnRhYmxlc2F3IHtcbiAgZW1wdHktY2VsbHM6IHNob3c7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi50YWJsZXNhdyB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKiBTdHJ1Y3R1cmUgKi9cblxuLnRhYmxlc2F3IHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4udGFibGVzYXcgdGgsXG4udGFibGVzYXcgdGQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAuNWVtIC43ZW07XG59XG5cbi50YWJsZXNhdyB0aGVhZCB0cjpmaXJzdC1jaGlsZCB0aCB7XG4gIHBhZGRpbmctdG9wOiAuOWVtO1xuICBwYWRkaW5nLWJvdHRvbTogLjdlbTtcbn1cblxuLnRhYmxlc2F3LWVuaGFuY2VkIC50YWJsZXNhdy1iYXIgLmJ0biB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwxKTtcbiAgY29sb3I6ICM0YTRhNGE7XG4gIGNsZWFyOiBib3RoO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250OiBib2xkIDIwcHgvMSBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IC41ZW0gLjg1ZW0gLjRlbSAuODVlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIHRleHQtc2hhZG93OiAwIDFweCAwICNmZmY7XG4gIHdpZHRoOiAxMDAlO1xuICAvKiBUaGVtaW5nICovXG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSggMjU1LDI1NSwyNTUsLjEgKSAwJSwgcmdiYSggMjU1LDI1NSwyNTUsLjEgKSA1MCUsIHJnYmEoIDE3MCwxNzAsMTcwLC4xICkgNTUlLCByZ2JhKCAxMjAsMTIwLDEyMCwuMTUgKSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCB0b3AsIHJnYmEoIDI1NSwyNTUsMjU1LC4xICkgMCUsIHJnYmEoIDI1NSwyNTUsMjU1LC4xICkgNTAlLCByZ2JhKCAxNzAsMTcwLDE3MCwuMSApIDU1JSwgcmdiYSggMTIwLDEyMCwxMjAsLjE1ICkgMTAwJSApO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUgIWltcG9ydGFudDtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lICFpbXBvcnRhbnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBib3JkZXItcmFkaXVzOiAuMjVlbTtcbn1cblxuLnRhYmxlc2F3LWVuaGFuY2VkIC50YWJsZXNhdy1iYXIgYS5idG4ge1xuICBjb2xvcjogIzFjOTVkNDtcbn1cblxuLnRhYmxlc2F3LWVuaGFuY2VkIC50YWJsZXNhdy1iYXIgLmJ0bjpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyogRGVmYXVsdCByYWRpby9jaGVja2JveCBzdHlsaW5nIGhvcml6b25hbCBjb250cm9sZ3JvdXBzLiAqL1xuXG4udGFibGVzYXctZW5oYW5jZWQgLnRhYmxlc2F3LWJhciAuYnRuOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSggMTAwLDEwMCwxMDAsLjM1ICkgMCUsIHJnYmEoIDI1NSwyNTUsMjU1LDAgKSA3MCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoIHRvcCwgcmdiYSggMTAwLDEwMCwxMDAsLjM1ICkgMCUsIHJnYmEoIDI1NSwyNTUsMjU1LDAgKSA3MCUgKTtcbn1cblxuLnRhYmxlc2F3LWVuaGFuY2VkIC50YWJsZXNhdy1iYXIgLmJ0bjpob3Zlcixcbi50YWJsZXNhdy1lbmhhbmNlZCAudGFibGVzYXctYmFyIC5idG46Zm9jdXMge1xuICBjb2xvcjogIzIwOGRlMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLnRhYmxlc2F3LWJhciAuYnRuOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIC4zNWVtICM0ZmFlZWYgIWltcG9ydGFudDtcbn1cblxuLnRhYmxlc2F3LWJhciAuYnRuLXNlbGVjdCBzZWxlY3Qge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMjtcbiAgbWluLWhlaWdodDogMWVtO1xufVxuXG4udGFibGVzYXctYmFyIC5idG4tc2VsZWN0IHNlbGVjdCB7XG4gIG9wYWNpdHk6IDA7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi50YWJsZXNhdy1iYXIgLmJ0biBzZWxlY3Qgb3B0aW9uIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xufVxuXG4udGFibGVzYXctZW5oYW5jZWQgLnRhYmxlc2F3LWJhciAuYnRuLmJ0bi1zZWxlY3Qge1xuICBjb2xvcjogIzRkNGQ0ZDtcbiAgcGFkZGluZy1yaWdodDogMi41ZW07XG4gIG1pbi13aWR0aDogNy4yNWVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LWluZGVudDogMDtcbn1cblxuLnRhYmxlc2F3LWJhciAuYnRuLmJ0bi1zbWFsbCxcbi50YWJsZXNhdy1iYXIgLmJ0bi5idG4tbWljcm8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwO1xufVxuXG4udGFibGVzYXctYmFyIC5idG4uYnRuLXNtYWxsIHtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gIHBhZGRpbmc6IC4zZW0gMWVtIC4zZW0gMWVtO1xufVxuXG4udGFibGVzYXctYmFyIC5idG4uYnRuLW1pY3JvIHtcbiAgZm9udC1zaXplOiAuODEyNWVtO1xuICBwYWRkaW5nOiAuNGVtIC43ZW0gLjI1ZW0gLjdlbTtcbn1cblxuLnRhYmxlc2F3LWVuaGFuY2VkIC50YWJsZXNhdy1iYXIgLmJ0bi1zZWxlY3Qge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGFibGVzYXctYmFyIC5idG4tc2VsZWN0OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogI2U1ZTVlNTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuMSk7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDJweCByZ2JhKDI1NSwyNTUsMjU1LC4yNSk7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4udGFibGVzYXctYmFyIC5idG4tc2VsZWN0LmJ0bi1zbWFsbCxcbi50YWJsZXNhdy1iYXIgLmJ0bi1zZWxlY3QuYnRuLW1pY3JvIHtcbiAgcGFkZGluZy1yaWdodDogMS41ZW07XG59XG5cbi50YWJsZXNhdy1iYXIgLmJ0bi1zZWxlY3Q6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAuMjVlbSAuNDVlbTtcbiAgY29udGVudDogXCJcXDI1YmNcIjtcbiAgZm9udC1zaXplOiAuNTVlbTtcbiAgcGFkZGluZy10b3A6IDEuMmVtO1xuICBwYWRkaW5nLWxlZnQ6IDFlbTtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxLjhlbTtcbn1cblxuLnRhYmxlc2F3LWJhciAuYnRuLXNlbGVjdC5idG4tc21hbGw6YWZ0ZXIsXG4udGFibGVzYXctYmFyIC5idG4tc2VsZWN0LmJ0bi1taWNybzphZnRlciB7XG4gIHdpZHRoOiAxLjJlbTtcbiAgZm9udC1zaXplOiAuNWVtO1xuICBwYWRkaW5nLXRvcDogMWVtO1xuICBwYWRkaW5nLXJpZ2h0OiAuNWVtO1xuICBsaW5lLWhlaWdodDogMS42NTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG59XG5cbi8qIENvbHVtbiBuYXZpZ2F0aW9uIGJ1dHRvbnMgZm9yIHN3aXBlIGFuZCBjb2x1bW50b2dnbGUgdGFibGVzICovXG5cbi50YWJsZXNhdy1hZHZhbmNlIC5idG4ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgI2ZmZjtcbiAgYm9yZGVyLXJhZGl1czogLjI1ZW07XG59XG5cbi50YWJsZXNhdy1hZHZhbmNlIC5idG4uYnRuLW1pY3JvIHtcbiAgZm9udC1zaXplOiAuODEyNWVtO1xuICBwYWRkaW5nOiAuM2VtIC43ZW0gLjI1ZW0gLjdlbTtcbn1cblxuLnRhYmxlc2F3LWJhciAudGFibGVzYXctYWR2YW5jZSBhLnRhYmxlc2F3LW5hdi1idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxLjhlbTtcbiAgaGVpZ2h0OiAxLjhlbTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC41ZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnRhYmxlc2F3LWJhciAudGFibGVzYXctYWR2YW5jZSBhLnRhYmxlc2F3LW5hdi1idG4ubGVmdDpiZWZvcmUsXG4udGFibGVzYXctYmFyIC50YWJsZXNhdy1hZHZhbmNlIGEudGFibGVzYXctbmF2LWJ0bi5yaWdodDpiZWZvcmUsXG4udGFibGVzYXctYmFyIC50YWJsZXNhdy1hZHZhbmNlIGEudGFibGVzYXctbmF2LWJ0bi5kb3duOmJlZm9yZSxcbi50YWJsZXNhdy1iYXIgLnRhYmxlc2F3LWFkdmFuY2UgYS50YWJsZXNhdy1uYXYtYnRuLnVwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFwwMDIwXCI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLnRhYmxlc2F3LWJhciAudGFibGVzYXctYWR2YW5jZSBhLnRhYmxlc2F3LW5hdi1idG4uZG93bjpiZWZvcmUge1xuICBsZWZ0OiAuNWVtO1xuICB0b3A6IC42NWVtO1xuICBib3JkZXItbGVmdDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICM4MDgwODA7XG59XG5cbi50YWJsZXNhdy1iYXIgLnRhYmxlc2F3LWFkdmFuY2UgYS50YWJsZXNhdy1uYXYtYnRuLnVwOmJlZm9yZSB7XG4gIGxlZnQ6IC41ZW07XG4gIHRvcDogLjY1ZW07XG4gIGJvcmRlci1sZWZ0OiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiA1cHggc29saWQgIzgwODA4MDtcbn1cblxuLnRhYmxlc2F3LWJhciAudGFibGVzYXctYWR2YW5jZSBhLnRhYmxlc2F3LW5hdi1idG4ubGVmdDpiZWZvcmUsXG4udGFibGVzYXctYmFyIC50YWJsZXNhdy1hZHZhbmNlIGEudGFibGVzYXctbmF2LWJ0bi5yaWdodDpiZWZvcmUge1xuICB0b3A6IC40NWVtO1xuICBib3JkZXItdG9wOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLnRhYmxlc2F3LWJhciAudGFibGVzYXctYWR2YW5jZSBhLnRhYmxlc2F3LW5hdi1idG4ubGVmdDpiZWZvcmUge1xuICBsZWZ0OiAuNmVtO1xuICBib3JkZXItcmlnaHQ6IDVweCBzb2xpZCAjODA4MDgwO1xufVxuXG4udGFibGVzYXctYmFyIC50YWJsZXNhdy1hZHZhbmNlIGEudGFibGVzYXctbmF2LWJ0bi5yaWdodDpiZWZvcmUge1xuICBsZWZ0OiAuN2VtO1xuICBib3JkZXItbGVmdDogNXB4IHNvbGlkICM4MDgwODA7XG59XG5cbi50YWJsZXNhdy1hZHZhbmNlIGEudGFibGVzYXctbmF2LWJ0bi5kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IC4yNTtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTI1KTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLyogVGFibGUgVG9vbGJhciAqL1xuXG4udGFibGVzYXctYmFyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xufVxuXG4udGFibGVzYXctdG9vbGJhciB7XG4gIGZvbnQtc2l6ZTogLjg3NWVtO1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnRhYmxlc2F3LXRvb2xiYXIgbGFiZWwge1xuICBwYWRkaW5nOiAuNWVtIDA7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICM4ODg7XG4gIG1hcmdpbi1yaWdodDogLjVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnRhYmxlc2F3LWJhciAuYnRuLFxuLnRhYmxlc2F3LWVuaGFuY2VkIC50YWJsZXNhdy1iYXIgLmJ0biB7XG4gIG1hcmdpbi10b3A6IC41ZW07XG4gIG1hcmdpbi1ib3R0b206IC41ZW07XG59XG5cbi50YWJsZXNhdy1iYXIgLmJ0bi1zZWxlY3QsXG4udGFibGVzYXctZW5oYW5jZWQgLnRhYmxlc2F3LWJhciAuYnRuLXNlbGVjdCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi50YWJsZXNhdy1iYXIgLnRhYmxlc2F3LXRvb2xiYXIgLmJ0biB7XG4gIG1hcmdpbi1sZWZ0OiAuNGVtO1xuICBtYXJnaW4tdG9wOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxZW07XG4gIHBhZGRpbmctbGVmdDogLjNlbTtcbn1cblxuLnRhYmxlc2F3LWJhciAudGFibGVzYXctdG9vbGJhciAuYnRuLXNlbGVjdCB7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLnRhYmxlc2F3LWJhciAudGFibGVzYXctdG9vbGJhciAuYnRuLXNlbGVjdDphZnRlciB7XG4gIHBhZGRpbmctdG9wOiAuOWVtO1xufVxuXG4udGFibGVzYXctYmFyIC50YWJsZXNhdy10b29sYmFyIHNlbGVjdCB7XG4gIGNvbG9yOiAjODg4O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi50YWJsZXNhdy10b29sYmFyIH4gdGFibGUge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnRhYmxlc2F3LXRvb2xiYXIgLmExMXktc20ge1xuICBjbGlwOiByZWN0KDAgMCAwIDApO1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMjRlbSkge1xuICAudGFibGVzYXctdG9vbGJhciAuYTExeS1zbSB7XG4gICAgY2xpcDogbm9uZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxufVxuXG4vKiBUYWJsZSByb3dzIGhhdmUgYSBncmF5IGJvdHRvbSBzdHJva2UgYnkgZGVmYXVsdCAqL1xuXG4udGFibGVzYXctc3RhY2sgdGJvZHkgdHIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RmZGZkZjtcbn1cblxuLnRhYmxlc2F3LXN0YWNrIHRkIC50YWJsZXNhdy1jZWxsLWxhYmVsLFxuLnRhYmxlc2F3LXN0YWNrIHRoIC50YWJsZXNhdy1jZWxsLWxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTW9iaWxlIGZpcnN0IHN0eWxlczogQmVnaW4gd2l0aCB0aGUgc3RhY2tlZCBwcmVzZW50YXRpb24gYXQgbmFycm93IHdpZHRocyAqL1xuXG5AbWVkaWEgb25seSBhbGwge1xuICAvKiBTaG93IHRoZSB0YWJsZSBjZWxscyBhcyBhIGJsb2NrIGxldmVsIGVsZW1lbnQgKi9cblxuICAudGFibGVzYXctc3RhY2sgdGQsXG4gIC50YWJsZXNhdy1zdGFjayB0aCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC50YWJsZXNhdy1zdGFjayB0ciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZGlzcGxheTogdGFibGUtcm93O1xuICB9XG5cbiAgLyogTWFrZSB0aGUgbGFiZWwgZWxlbWVudHMgYSBwZXJjZW50YWdlIHdpZHRoICovXG5cbiAgLnRhYmxlc2F3LXN0YWNrIHRkIC50YWJsZXNhdy1jZWxsLWxhYmVsLFxuICAudGFibGVzYXctc3RhY2sgdGggLnRhYmxlc2F3LWNlbGwtbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAgLjZlbSAwIDA7XG4gICAgd2lkdGg6IDMwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cblxuICAvKiBGb3IgZ3JvdXBlZCBoZWFkZXJzLCBoYXZlIGEgZGlmZmVyZW50IHN0eWxlIHRvIHZpc3VhbGx5IHNlcGFyYXRlIHRoZSBsZXZlbHMgYnkgY2xhc3NpbmcgdGhlIGZpcnN0IGxhYmVsIGluIGVhY2ggY29sIGdyb3VwICovXG5cbiAgLnRhYmxlc2F3LXN0YWNrIHRoIC50YWJsZXNhdy1jZWxsLWxhYmVsLXRvcCxcbiAgLnRhYmxlc2F3LXN0YWNrIHRkIC50YWJsZXNhdy1jZWxsLWxhYmVsLXRvcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogLjRlbSAwO1xuICAgIG1hcmdpbjogLjRlbSAwO1xuICB9XG5cbiAgLnRhYmxlc2F3LWNlbGwtbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLyogQXZvaWQgZG91YmxlIHN0cm9rZXMgd2hlbiBzdGFja2VkICovXG5cbiAgLnRhYmxlc2F3LXN0YWNrIHRib2R5IHRoLmdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICB9XG5cbiAgLyogQXZvaWQgZG91YmxlIHN0cm9rZXMgd2hlbiBzdGFja2VkICovXG5cbiAgLnRhYmxlc2F3LXN0YWNrIHRoLmdyb3VwIGIudGFibGVzYXctY2VsbC1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLnRhYmxlc2F3LXN0YWNrIHRoZWFkIHRkLFxuICAudGFibGVzYXctc3RhY2sgdGhlYWQgdGgge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAudGFibGVzYXctc3RhY2sgdGJvZHkgdGQsXG4gIC50YWJsZXNhdy1zdGFjayB0Ym9keSB0aCB7XG4gICAgY2xlYXI6IGxlZnQ7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAudGFibGVzYXctY2VsbC1sYWJlbCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gIC50YWJsZXNhdy1jZWxsLWNvbnRlbnQge1xuICAgIG1heC13aWR0aDogNjclO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gIC50YWJsZXNhdy1zdGFjayB0ZDplbXB0eSxcbiAgLnRhYmxlc2F3LXN0YWNrIHRoOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8qIE1lZGlhIHF1ZXJ5IHRvIHNob3cgYXMgYSBzdGFuZGFyZCB0YWJsZSBhdCA1NjBweCAoMzVlbSB4IDE2cHgpIG9yIHdpZGVyICovXG5cbkBtZWRpYSAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC50YWJsZXNhdy1zdGFjayB0ciB7XG4gICAgZGlzcGxheTogdGFibGUtcm93O1xuICB9XG5cbiAgLyogU2hvdyB0aGUgdGFibGUgaGVhZGVyIHJvd3MgKi9cblxuICAudGFibGVzYXctc3RhY2sgdGQsXG4gIC50YWJsZXNhdy1zdGFjayB0aCxcbiAgLnRhYmxlc2F3LXN0YWNrIHRoZWFkIHRkLFxuICAudGFibGVzYXctc3RhY2sgdGhlYWQgdGgge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLyogSGlkZSB0aGUgbGFiZWxzIGluIGVhY2ggY2VsbCAqL1xuXG4gIC50YWJsZXNhdy1zdGFjayB0ZCAudGFibGVzYXctY2VsbC1sYWJlbCxcbiAgLnRhYmxlc2F3LXN0YWNrIHRoIC50YWJsZXNhdy1jZWxsLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnRhYmxlc2F3LWZpeC1wZXJzaXN0IHtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cblxuQG1lZGlhIG9ubHkgYWxsIHtcbiAgLyogVW5jaGVja2VkIG1hbnVhbGx5OiBBbHdheXMgaGlkZSAqL1xuXG4gIC50YWJsZXNhdy1zd2lwZSB0aC50YWJsZXNhdy1jZWxsLWhpZGRlbixcbiAgLnRhYmxlc2F3LXN3aXBlIHRkLnRhYmxlc2F3LWNlbGwtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5idG4udGFibGVzYXctY29sdW1udG9nZ2xlLWJ0biBzcGFuIHtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnRhYmxlc2F3LWNvbHVtbnRvZ2dsZS1idG53cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvKiBmb3IgZGlhbG9nIHBvc2l0aW9uaW5nICovXG59XG5cbi50YWJsZXNhdy1jb2x1bW50b2dnbGUtYnRud3JhcCAuZGlhbG9nLWNvbnRlbnQge1xuICBwYWRkaW5nOiAuNWVtO1xufVxuXG4udGFibGVzYXctY29sdW1udG9nZ2xlIHRib2R5IHRkIHtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLyogUmVtb3ZlIHRvcC9ib3R0b20gbWFyZ2lucyBhcm91bmQgdGhlIGZpZWxkY29udGFpbiBvbiBjaGVjayBsaXN0ICovXG5cbi50YWJsZXNhdy1jb2x1bW50b2dnbGUtcG9wdXAge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4udGFibGVzYXctY29sdW1udG9nZ2xlLWJ0bndyYXAudmlzaWJsZSAudGFibGVzYXctY29sdW1udG9nZ2xlLXBvcHVwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyZW07XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAuNWVtIC44ZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDJweCAjY2NjO1xuICBib3JkZXItcmFkaXVzOiAuMmVtO1xuICB6LWluZGV4OiAxO1xufVxuXG4udGFibGVzYXctY29sdW1udG9nZ2xlLXBvcHVwIGZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBIaWRlIGFsbCBwcmlvcml0aXplZCBjb2x1bW5zIGJ5IGRlZmF1bHQgKi9cblxuQG1lZGlhIG9ubHkgYWxsIHtcbiAgLnRhYmxlc2F3LWNvbHVtbnRvZ2dsZSB0aC50YWJsZXNhdy1wcmlvcml0eS02LFxuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRkLnRhYmxlc2F3LXByaW9yaXR5LTYsXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGgudGFibGVzYXctcHJpb3JpdHktNSxcbiAgLnRhYmxlc2F3LWNvbHVtbnRvZ2dsZSB0ZC50YWJsZXNhdy1wcmlvcml0eS01LFxuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRoLnRhYmxlc2F3LXByaW9yaXR5LTQsXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGQudGFibGVzYXctcHJpb3JpdHktNCxcbiAgLnRhYmxlc2F3LWNvbHVtbnRvZ2dsZSB0aC50YWJsZXNhdy1wcmlvcml0eS0zLFxuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRkLnRhYmxlc2F3LXByaW9yaXR5LTMsXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGgudGFibGVzYXctcHJpb3JpdHktMixcbiAgLnRhYmxlc2F3LWNvbHVtbnRvZ2dsZSB0ZC50YWJsZXNhdy1wcmlvcml0eS0yLFxuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRoLnRhYmxlc2F3LXByaW9yaXR5LTEsXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGQudGFibGVzYXctcHJpb3JpdHktMSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udGFibGVzYXctY29sdW1udG9nZ2xlLWJ0bndyYXAgLmRpYWxvZy1jb250ZW50IHtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAxZW07XG4gIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgd2lkdGg6IDEyZW07XG4gIG1heC13aWR0aDogMThlbTtcbiAgbWFyZ2luOiAtLjVlbSBhdXRvIDA7XG59XG5cbi50YWJsZXNhdy1jb2x1bW50b2dnbGUtYnRud3JhcCAuZGlhbG9nLWNvbnRlbnQ6Zm9jdXMge1xuICBvdXRsaW5lLXN0eWxlOiBub25lO1xufVxuXG4vKiBQcmVzZXQgYnJlYWtwb2ludHMgaWYgXCJcIiBjbGFzcyBhZGRlZCB0byB0YWJsZSAqL1xuXG4vKiBTaG93IHByaW9yaXR5IDEgYXQgMzIwcHggKDIwZW0geCAxNnB4KSAqL1xuXG5AbWVkaWEgKG1pbi13aWR0aDogMjBlbSkge1xuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRoLnRhYmxlc2F3LXByaW9yaXR5LTEsXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGQudGFibGVzYXctcHJpb3JpdHktMSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgfVxufVxuXG4vKiBTaG93IHByaW9yaXR5IDIgYXQgNDgwcHggKDMwZW0geCAxNnB4KSAqL1xuXG5AbWVkaWEgKG1pbi13aWR0aDogMzBlbSkge1xuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRoLnRhYmxlc2F3LXByaW9yaXR5LTIsXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGQudGFibGVzYXctcHJpb3JpdHktMiB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgfVxufVxuXG4vKiBTaG93IHByaW9yaXR5IDMgYXQgNjQwcHggKDQwZW0geCAxNnB4KSAqL1xuXG5AbWVkaWEgKG1pbi13aWR0aDogNDBlbSkge1xuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRoLnRhYmxlc2F3LXByaW9yaXR5LTMsXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGQudGFibGVzYXctcHJpb3JpdHktMyB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgfVxuXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGJvZHkgdGQge1xuICAgIGxpbmUtaGVpZ2h0OiAyO1xuICB9XG59XG5cbi8qIFNob3cgcHJpb3JpdHkgNCBhdCA4MDBweCAoNTBlbSB4IDE2cHgpICovXG5cbkBtZWRpYSAobWluLXdpZHRoOiA1MGVtKSB7XG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGgudGFibGVzYXctcHJpb3JpdHktNCxcbiAgLnRhYmxlc2F3LWNvbHVtbnRvZ2dsZSB0ZC50YWJsZXNhdy1wcmlvcml0eS00IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB9XG59XG5cbi8qIFNob3cgcHJpb3JpdHkgNSBhdCA5NjBweCAoNjBlbSB4IDE2cHgpICovXG5cbkBtZWRpYSAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGgudGFibGVzYXctcHJpb3JpdHktNSxcbiAgLnRhYmxlc2F3LWNvbHVtbnRvZ2dsZSB0ZC50YWJsZXNhdy1wcmlvcml0eS01IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB9XG59XG5cbi8qIFNob3cgcHJpb3JpdHkgNiBhdCAxLDEyMHB4ICg3MGVtIHggMTZweCkgKi9cblxuQG1lZGlhIChtaW4td2lkdGg6IDcwZW0pIHtcbiAgLnRhYmxlc2F3LWNvbHVtbnRvZ2dsZSB0aC50YWJsZXNhdy1wcmlvcml0eS02LFxuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRkLnRhYmxlc2F3LXByaW9yaXR5LTYge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgYWxsIHtcbiAgLyogVW5jaGVja2VkIG1hbnVhbGx5OiBBbHdheXMgaGlkZSAqL1xuXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGgudGFibGVzYXctY2VsbC1oaWRkZW4sXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGQudGFibGVzYXctY2VsbC1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvKiBDaGVja2VkIG1hbnVhbGx5OiBBbHdheXMgc2hvdyAqL1xuXG4gIC50YWJsZXNhdy1jb2x1bW50b2dnbGUgdGgudGFibGVzYXctY2VsbC12aXNpYmxlLFxuICAudGFibGVzYXctY29sdW1udG9nZ2xlIHRkLnRhYmxlc2F3LWNlbGwtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgfVxufVxuXG4udGFibGVzYXctY29sdW1udG9nZ2xlLXBvcHVwIC5idG4tZ3JvdXAgPiBsYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAuMmVtIDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi50YWJsZXNhdy1jb2x1bW50b2dnbGUtcG9wdXAgLmJ0bi1ncm91cCA+IGxhYmVsIGlucHV0IHtcbiAgbWFyZ2luLXJpZ2h0OiAuOGVtO1xufVxuXG4udGFibGVzYXctc29ydGFibGUsXG4udGFibGVzYXctc29ydGFibGUgdGhlYWQsXG4udGFibGVzYXctc29ydGFibGUgdGhlYWQgdHIsXG4udGFibGVzYXctc29ydGFibGUgdGhlYWQgdHIgdGgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi50YWJsZXNhdy1zb3J0YWJsZSB0aGVhZCB0ciB0aCB7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4udGFibGVzYXctc29ydGFibGUgdGgudGFibGVzYXctc29ydGFibGUtaGVhZCxcbi50YWJsZXNhdy1zb3J0YWJsZSB0cjpmaXJzdC1jaGlsZCB0aC50YWJsZXNhdy1zb3J0YWJsZS1oZWFkIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLnRhYmxlc2F3LXNvcnRhYmxlIHRoLnRhYmxlc2F3LXNvcnRhYmxlLWhlYWQgYnV0dG9uIHtcbiAgcGFkZGluZy10b3A6IC45ZW07XG4gIHBhZGRpbmctYm90dG9tOiAuN2VtO1xuICBwYWRkaW5nLWxlZnQ6IC42ZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuNmVtO1xufVxuXG4udGFibGVzYXctc29ydGFibGUgLnRhYmxlc2F3LXNvcnRhYmxlLWhlYWQgYnV0dG9uIHtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udDogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnRhYmxlc2F3LXNvcnRhYmxlIC50YWJsZXNhdy1zb3J0YWJsZS1oZWFkLnRhYmxlc2F3LXNvcnRhYmxlLWFzY2VuZGluZyBidXR0b246YWZ0ZXIsXG4udGFibGVzYXctc29ydGFibGUgLnRhYmxlc2F3LXNvcnRhYmxlLWhlYWQudGFibGVzYXctc29ydGFibGUtZGVzY2VuZGluZyBidXR0b246YWZ0ZXIge1xuICB3aWR0aDogN3B4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIGNvbnRlbnQ6IFwiXFwwMDIwXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IC41ZW07XG59XG5cbi50YWJsZXNhdy1zb3J0YWJsZSAudGFibGVzYXctc29ydGFibGUtaGVhZC50YWJsZXNhdy1zb3J0YWJsZS1hc2NlbmRpbmcgYnV0dG9uOmFmdGVyIHtcbiAgY29udGVudDogXCJcXDIxOTFcIjtcbn1cblxuLnRhYmxlc2F3LXNvcnRhYmxlIC50YWJsZXNhdy1zb3J0YWJsZS1oZWFkLnRhYmxlc2F3LXNvcnRhYmxlLWRlc2NlbmRpbmcgYnV0dG9uOmFmdGVyIHtcbiAgY29udGVudDogXCJcXDIxOTNcIjtcbn1cblxuLnRhYmxlc2F3LXNvcnRhYmxlIC5ub3QtYXBwbGljYWJsZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLS1cIjtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi50YWJsZXNhdy1zb3J0YWJsZSAubm90LWFwcGxpY2FibGUgc3BhbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi50YWJsZXNhdy1hZHZhbmNlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4udGFibGVzYXctYWR2YW5jZS5taW5pbWFwIHtcbiAgbWFyZ2luLXJpZ2h0OiAuNGVtO1xufVxuXG4udGFibGVzYXctYWR2YW5jZS1kb3RzIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLnRhYmxlc2F3LWFkdmFuY2UtZG90cyBsaSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogLjRlbSAuMmVtO1xufVxuXG4udGFibGVzYXctYWR2YW5jZS1kb3RzIGxpIGkge1xuICB3aWR0aDogLjI1ZW07XG4gIGhlaWdodDogLjI1ZW07XG4gIGJhY2tncm91bmQ6ICM1NTU7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnRhYmxlc2F3LWFkdmFuY2UtZG90cy1oaWRlIHtcbiAgb3BhY2l0eTogLjI1O1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MjUpO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXHRQcm9qZWN0XG5cdD09PT09PT09PT1cblx0RG9zc2llclxuXG5cdEF1dGhvclxuXHQ9PT09PT09PT09XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICw4ICAsOFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgODggIDg4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA4OCAgODhcbiAgICBgOGIgICAgICBkYiAgICAgIGQ4JyAgLGFkUFBZYmEsODggIDg4ICA4OCAgICxhZFBQWWJhLCAgIDg4LGRQUFliYSxcbiAgICAgYDhiICAgIGQ4OGIgICAgZDgnICBhOFwiICAgICBcIlk4OCAgODggIDg4ICBhOFwiICAgICBcIjhhICA4OFAnICAgIFwiOGFcbiAgICAgIGA4YiAgZDgnYDhiICBkOCcgICA4YiAgICAgICAgODggIDg4ICA4OCAgOGIgICAgICAgZDggIDg4ICAgICAgIGQ4XG4gICAgICAgYDhiZDgnICBgOGJkOCcgICAgXCI4YSwgICAsYWQ4OCAgODggIDg4ICBcIjhhLCAgICxhOFwiICA4OGIsICAgLGE4XCJcbiAgICAgICAgIFlQICAgICAgWVAgICAgICAgYFwiWWJiZFBcIiA4OCAgODggIDg4ICAgYFwiWWJiZFBcIicgICA4OGBZYmJkUFwiJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgODhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDhcIlxuXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qIEdsb2JhbCBTdHlsZXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuIEBpbXBvcnRcbiBcImJhc2UvZ2xvYmFsXCIsXG4gXCJiYXNlL25hdmlnYXRpb25cIixcbiBcImJhc2UvbGF5b3V0XCIsXG4gXCJiYXNlL2Zvb3RlclwiO1xuXG4vKiBDb21wb25lbnRzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiBAaW1wb3J0XG4gXCJjb21wb25lbnRzL3ByZWxvYWRlclwiLFxuIFwiY29tcG9uZW50cy9ib29raW5nLXdpZGdldFwiLFxuIFwiY29tcG9uZW50cy9vcGVudGFibGVcIixcbiBcImNvbXBvbmVudHMvY2Fyb3VzZWxcIixcbiBcImNvbXBvbmVudHMvZm9ybXNcIixcbiBcImNvbXBvbmVudHMvbWFwc1wiLFxuIFwiY29tcG9uZW50cy9tb2RhbFwiLFxuIFwiY29tcG9uZW50cy9tY3MtdGhlbWVcIixcbiBcImNvbXBvbmVudHMvc2VsZWN0cmljXCIsXG4gXCJjb21wb25lbnRzL3NvY2lhbFwiLFxuIFwiY29tcG9uZW50cy9zdWJzY3JpYmVcIixcbiBcImNvbXBvbmVudHMvdGFibGVzXCI7XG5cbi8qIExheW91dCBTdHlsZXNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuIEBpbXBvcnRcbiBcIm1vZHVsZXNcIixcbiBcInRlbXBsYXRlc1wiO1xuIiwiOnJvb3Qge1xuXHQtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbn1cblxuKiB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuaHRtbCwgYm9keSB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG87XG59XG5cbmltZyB7XG5cdHRyYW5zaXRpb246IGluaGVyaXQ7XG5cblx0Ji5pbWFnZS1jb3ZlciB7XG5cdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG5cdH1cblxuXHQmLm9iamVjdC1maXQge1xuXHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0Ly8gLmllMTEgJiB7XG5cdFx0Ly8gXHRoZWlnaHQ6IDEwMCU7XG5cdFx0Ly8gfVxuXHR9XG5cblx0Ji5pbWctZnVsbC13aWR0aCB7IHdpZHRoOiAxMDAlOyB9XG59XG5cbnN2ZyB7XG5cdG1heC13aWR0aDogMTAwJTtcbn1cblxuYnV0dG9uIHtcblx0b3V0bGluZTogbm9uZTtcbn1cblxucCB7IFxuXHRmb250LXNpemU6IHJlbS1jYWxjKDE2cHgpO1xuXHRsZXR0ZXItc3BhY2luZzogMC40cHg7IFxuXHRsaW5lLWhlaWdodDogcmVtLWNhbGMoMjhweCk7XG59XG5cbmEge1xuXHR0cmFuc2l0aW9uOiAkZ2xvYmFsLXRyYW5zaXRpb247XG5cblx0JltjbGFzc149XCJpY29uLVwiXSwgJltjbGFzcyo9XCIgaWNvbi1cIl0ge1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGZvbnQtc2l6ZTogMTI1JTtcblx0XHRcdG1hcmdpbi1yaWdodDogOHB4O1xuXG5cdFx0XHRmb250LWZhbWlseTogJ2ljb24tZm9udCcgIWltcG9ydGFudDtcblx0XHRcdHNwZWFrOiBub25lO1xuXHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHRcdGZvbnQtdmFyaWFudDogbm9ybWFsO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHRsaW5lLWhlaWdodDogaW5oZXJpdDtcblxuXHRcdFx0LyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG5cdFx0XHQtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcblx0XHRcdC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cblx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0fVxuXHR9XG5cblx0XHQmW2hyZWZePVwibWFpbHRvOlwiXSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuXHRcdH1cbn1cblxudGltZSB7XG5cdGZvbnQtc2l6ZTogaW5oZXJpdDtcblx0bGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbn1cblxuLnJvdyB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8gSGVhZGluZyBTaXplIENsYXNzZXNcbkBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXN0eWxlcyB7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcblx0XHRAZWFjaCAkaGVhZGVyLCAkaGVhZGVyLWRlZnMgaW4gJGhlYWRlcnMge1xuXHRcdFx0JGZvbnQtc2l6ZS10ZW1wOiAxcmVtO1xuXG5cdFx0XHQuI3skaGVhZGVyfSB7XG5cdFx0XHRcdEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkge1xuXHRcdFx0XHRcdCRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkpO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuXHRcdFx0XHR9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZnMpIHtcblx0XHRcdFx0JGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcblx0XHRcdFx0XHRmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcblx0XHRcdFx0fSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG5cdFx0XHRcdH1cblx0XHRcdFx0QGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpIHtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuXHRcdFx0XHR9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGgpIHtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGgpLCAkZm9udC1zaXplLXRlbXApO1xuXHRcdFx0XHR9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYygkaGVhZGVyLWxpbmVoZWlnaHQsICRmb250LXNpemUtdGVtcCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApKTtcblx0XHRcdFx0fSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG10KSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG5cdFx0XHRcdH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHRcdH1cblx0XHRcdFx0QGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSk7XG5cdFx0XHRcdH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYikpO1xuXHRcdFx0XHR9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5yb3cuY29sbGFwc2UuZXhwYW5kZWQge1xuXHQucm93IHtcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cblx0XHQucm93IHtcblx0XHRcdG1hcmdpbi1sZWZ0OiBtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKS8tMjtcblx0XHRcdG1hcmdpbi1yaWdodDogbWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCkvLTI7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiBtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkvLTI7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogbWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pLy0yO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcblx0bGV0dGVyLXNwYWNpbmc6IDFweDtcblxuXHRhIHsgY29sb3I6IGluaGVyaXQ7IH1cblxuXHQmLmRpc3BsYXkge1xuXHRcdGZvbnQtZmFtaWx5OiAkZGlzcGxheS1mb250LWZhbWlseTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGxldHRlci1zcGFjaW5nOiAoNGVtLzQ0KTtcblx0fVxuXG5cdCYubGFyZ2UtZGlzcGxheSB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRkaXNwbGF5LWZvbnQtZmFtaWx5O1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAoNGVtLzQ0KTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0Y29sb3I6IGluaGVyaXQ7XG5cdH1cblxuXHQmLndoaXRlIHtcblx0XHRjb2xvcjogJHdoaXRlO1xuXHR9XG5cblx0Ji53LWNvbG9yIHtcblx0XHRjb2xvcjogJHByaW1hcnktY29sb3I7XG5cdH1cblxuXHRzbWFsbCB7XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg4KTtcblx0fVxufVxuXG4uc3VidGl0bGUge1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcblx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGxpbmUtaGVpZ2h0OiAoMjQvMTQpO1xuXHRsZXR0ZXItc3BhY2luZzogMXB4O1xufVxuXG5oNCwgaDUsIGg2IHtcblx0Y29sb3I6IGluaGVyaXQ7XG5cdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdGgxLmRpc3BsYXkgeyBmb250LXNpemU6IHJlbS1jYWxjKDQ0KTsgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UgdXApfSBhbmQgKG1heC1oZWlnaHQ6IDgwMHB4KSB7XG5cdGgxLCAuaDEge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuXG5cdFx0Ji5kaXNwbGF5IHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzIpO1xuXHRcdH1cblx0fVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdHAge1xuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAycmVtO1xuXHRcdH1cblx0fVxufVxuXG4vKioqKlxuICogIEJhc2UgU3R5bGVzXG4gKi9cblxuLm5vLWJ1bGxldCB7XG5cdCY6bGFzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxufVxuXG5idXR0b24ge1xuXHRmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG59XG5cbi5yZy1idG4ge1xuXHRAaW5jbHVkZSBidXR0b24oKTtcblxuXHRAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG5cdFx0XHQmLiN7JHNpemV9LWJvcmRlci1idG4ge1xuXHRcdFx0XHRAaW5jbHVkZSBidXR0b24oJHN0eWxlOiBob2xsb3cpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uYm9yZGVyLWJ0biB7XG5cdEBpbmNsdWRlIGJ1dHRvbigkc3R5bGU6IGhvbGxvdyk7XG5cdHRyYW5zaXRpb246ICRnbG9iYWwtdHJhbnNpdGlvbjtcblx0Y29sb3I6ICR3aGl0ZTtcblxuXHQmLndoaXRlIHtcblx0XHRib3JkZXI6IHNvbGlkIDFweCAkd2hpdGU7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRcdC8vY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHR9XG5cdH1cblxuXHRAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG5cdFx0XHQmLiN7JHNpemV9LXJnLWJ0biB7XG5cdFx0XHRcdEBpbmNsdWRlIGJ1dHRvbigpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCY6YWN0aXZlLFxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzIHsgY29sb3I6ICR3aGl0ZTsgfVxufVxuXG4ucmctYnRuLCAuYm9yZGVyLWJ0biB7XG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRtYXJnaW4tYm90dG9tOiAwO1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcblx0bGV0dGVyLXNwYWNpbmc6IDJweDtcblx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cblx0Ji5leHBhbmRlZCB7XG5cdFx0QGluY2x1ZGUgYnV0dG9uLWV4cGFuZCgpO1xuXHR9XG5cblx0JltjbGFzcyo9XCJpY29uLVwiXSB7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG59XG5cbi5saW5rcyB7XG5cdEBleHRlbmQgLm5vLWJ1bGxldDtcbn1cblxuLmlubGluZS1saXN0IHtcblx0QGV4dGVuZCAubm8tYnVsbGV0O1xuXG5cdGxpIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRtYXJnaW46IHtcblx0XHRcdFx0bGVmdDogJGdsb2JhbC1tYXJnaW47XG5cdFx0XHRcdHJpZ2h0OiAkZ2xvYmFsLW1hcmdpbjtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLnR3by1jb2x1bW4tdGV4dCB7XG5cdCoge1xuXHRcdGJyZWFrLWluc2lkZTogYXZvaWQ7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdGNvbHVtbi1jb3VudDogMjtcblx0XHRjb2x1bW4tZ2FwOiBtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKTtcblxuXHRcdHA6bGFzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cdFx0fVxuXHR9XG59XG5cbnVsLnR3by1jb2x1bW4tdGV4dCB7XG5cdGxpIHtcblx0XHRtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbi8yO1xuXHR9XG59XG5cbmltZyB7XG5cdCYuYWxpZ25sZWZ0IHtcblx0XHRmbG9hdDogbGVmdDtcblx0XHRtYXJnaW4tcmlnaHQ6IDE1cHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogMTVweDtcblx0fVxuXHQmLmFsaWducmlnaHQge1xuXHRcdGZsb2F0OiByaWdodDtcblx0XHRtYXJnaW4tbGVmdDogMTVweDtcblx0XHRtYXJnaW4tYm90dG9tOiAxNXB4O1xuXHR9XG59XG5cbi50ZXh0LXVwcGVyY2FzZSB7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4iLCIvLyBBZGRpdGlvbmFsIG5vbi1Gb3VuZGF0aW9uIHZhcmlhYmxlcztcblxuJGdsb2JhbC10cmFuc2l0aW9uOiBhbGwgNDAwbXMgZWFzZTtcbiRkaXNwbGF5LWZvbnQtZmFtaWx5OiAnQWN0YSBIZWFkbGluZSBXMDAnLCAnQWN0YSBIZWFkbGluZScsIHNlcmlmO1xuIiwiJG5hdi1vdmVybGF5OiByZ2JhKCMyMjIwMjAsIDAuOCk7XG4kbmF2LXBhcmVudC1mb250OiAkZGlzcGxheS1mb250LWZhbWlseTtcbiRjb250cm9sLWNvbG9yOiAkd2hpdGU7XG5cbmJvZHkubmF2LW9wZW5lZCB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdC5uYXYtaGVhZGVyLCAubmF2LWZvb3RlciB7XG5cdFx0c3ZnIHtcblx0XHRcdGZpbGw6ICRjb250cm9sLWNvbG9yO1xuXHRcdH1cblx0fVxufVxuXG4ubmF2LWhlYWRlciwgLm5hdi1mb290ZXIge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdGZsZXg6IDAgMCBhdXRvO1xuXHR6LWluZGV4OiA1NzU7XG5cdGxlZnQ6IDA7XG5cdHJpZ2h0OiAwO1xuXHQvL3BvaW50ZXItZXZlbnRzOiBub25lO1xuXG5cdCYubG9ja2VkIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cblx0XHQubmF2LW9wZW5lZCAmIHtcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR9XG5cdH1cblxuXHRzdmcge1xuXHRcdGZpbGw6ICRjb250cm9sLWNvbG9yO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0LnRlbXBsYXRlLW1hcCAmLCAucGFnZS1jb250YWN0ICYge1xuXHRcdFx0XHRmaWxsOiAkYmxhY2s7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdFx0LnBhZ2UtY29udGFjdCAmIHtcblx0XHRcdFx0ZmlsbDogJHdoaXRlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdD4gLnJvdyB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMzYgMjQpO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMCA2NCk7XG5cdFx0fVxuXHR9XG5cblx0YnV0dG9uLCBhIHtcblx0XHRwb2ludGVyLWV2ZW50czogYXV0bztcblx0fVxuXG5cdGJ1dHRvbiB7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0c3ZnLCBzcGFuIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHR9XG5cdFx0c3BhbiB7XG5cdFx0XHRtYXJnaW4tbGVmdDogcmVtLWNhbGMoMzQpO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDIuMTlweDtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRjb2xvcjogJGNvbnRyb2wtY29sb3I7XG5cdFx0fVxuXG5cdFx0Ji5yZy1idG4ge1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdFx0fVxuXHR9XG59XG5cbi5uYXYtaGVhZGVyIHtcblx0dG9wOiAwO1xuXHQvL21hcmdpbi1sZWZ0OiAtODBweDtcblx0cGFkZGluZzogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcblxuXHQuY29sdW1ucyB7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHQ+IC5yb3cge1xuXHRcdFx0cGFkZGluZzogMXJlbTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMjJweCAwIDI0cHgpO1xuXHR9XG5cblx0Ji5sb2NrZWQge1xuXHRcdC5tZW51LXRvZ2dsZSB7XG5cdFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG5cblx0LmxvZ28td3JhcHBlciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHRvcDogNHB4O1xuXHRcdC8vIG1hcmdpbi1sZWZ0OiAtODBweDtcblx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdC5tZW51LXRvZ2dsZSwgLmhvbWUtbGluayB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0fVxuXG5cdFx0Lm1lbnUtdG9nZ2xlIHtcblx0XHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMzIpO1xuXHRcdH1cblxuXHRcdC5ob21lLWxpbmsge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHsgbWFyZ2luLXRvcDogM3B4OyB9XG5cblx0XHRcdHN2ZyB7XG5cdFx0XHRcdHdpZHRoOiByZW0tY2FsYygxMjApO1xuXHRcdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDI4KTtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRcdFx0d2lkdGg6IHJlbS1jYWxjKDE1Myk7XG5cdFx0XHRcdFx0aGVpZ2h0OiByZW0tY2FsYygzMik7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubW9iaWxlLW1lbnUtdG9nZ2xlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0dG9wOiA0cHg7XG5cdFx0cmlnaHQ6IDRweDtcblx0fVxufVxuXG4ubmF2LWZvb3RlciB7XG5cdGJvdHRvbTogMDtcblxuXHQvLyBTZXR0aW5ncyBhZGRlZCB0byBwcmV2ZW50IG5hdi1mb290ZXIgY29udGFpbmVyIGZyb20gb3ZlcmxhcHBpbmcgb3RoZXIgZWxlbWVudHMsIHByZXZlbnRpbmcgdGhlbSBmcm9tIGJlaW5nIHVzZWQuXG5cdGxlZnQ6IGluaGVyaXQ7XG5cdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNjVweCk7XG5cdG1heC13aWR0aDogMTgwcHg7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdC8vcGFkZGluZzogcmVtLWNhbGMoNDggMCAzNSk7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMCAwIDM1KTsgLy8gdG9wIHBhZGRpbmcgcmVtb3ZlZCB0byBhbGxvdyBvdGhlciBlbGVtZW50cyB0byBiZSB1c2VkIGZyb20gbmF2LWZvb3RlciBjb250YWluZXIgb3ZlcmxhcHBpbmdcblx0fVxufVxuXG4uZml4ZWQtbmF2LXdyYXBwZXIge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0Ym90dG9tOiAwO1xuXHRyaWdodDogMDtcblx0ei1pbmRleDogLTE7XG5cdHdpZHRoOiAxMDB2dztcblx0aGVpZ2h0OiAxMDB2aDtcblx0b3BhY2l0eTogMDtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlLWluLW91dCwgei1pbmRleCAwcyBsaW5lYXIgNDAwbXM7XG5cblx0Ji5vcGVuZWQge1xuXHRcdHotaW5kZXg6IDUwMTtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZS1pbi1vdXQ7XG5cdH1cblxuXHQubmF2LWNvbnRhaW5lciB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoOTYgMTYgMCk7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdG92ZXJmbG93OiBhdXRvO1xuXHRcdC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDE1MCA2NCk7XG5cdFx0fVxuXG5cdFx0PiAucm93LmxhcmdlLWFsaWduLW1pZGRsZSB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQubWVudS1jb250ZW50IHtcblx0XHRmbGV4OiBub25lO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHR3aWR0aDogcGVyY2VudGFnZSgxMC8xMik7XG5cdFx0fVxuXG5cdFx0PiAucm93IHtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHR9XG5cdH1cblxuXHQubmF2LWJhY2tncm91bmQge1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHRib3R0b206IDA7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0YmFja2dyb3VuZDoge1xuXHRcdFx0c2l6ZTogY292ZXI7XG5cdFx0XHRwb3NpdGlvbjogY2VudGVyO1xuXHRcdFx0cmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0fVxuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRuYXYtb3ZlcmxheTtcblx0XHR9XG5cdH1cbn1cblxuLm1lbnUtdG9nZ2xlIHtcblx0W2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiIGljb24tXCJdIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygyNCk7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygzNik7XG5cdFx0fVxuXHR9XG5cdHN2ZywgW2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiIGljb24tXCJdIHtcblx0XHR3aWR0aDogcmVtLWNhbGMoMzIpO1xuXHRcdGhlaWdodDogcmVtLWNhbGMoMjQpO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0d2lkdGg6IHJlbS1jYWxjKDQ0KTtcblx0XHRcdGhlaWdodDogcmVtLWNhbGMoMzYpO1xuXHRcdH1cblx0fVxufVxuXG4jbWVudS1saW5rcyB7XG5cdCNwcmltYXJ5IHtcblx0XHRAZXh0ZW5kIC5uby1idWxsZXQ7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0XHR0b3A6IDUwJTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHRcdHdpZHRoOiBjYWxjKDUwJSAtICN7cmVtLWNhbGMoNjQpfSk7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDEzOTIpLzI7XG5cdFx0fVxuXG5cdFx0PiBsaSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdD4gYSB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcblx0XHRcdFx0Zm9udC1mYW1pbHk6ICRkaXNwbGF5LWZvbnQtZmFtaWx5O1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogKDY0LzI0KTtcblx0XHRcdFx0bGV0dGVyLXNwYWNpbmc6IDJweDtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0XHRcdGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2JhKCR3aGl0ZSwgLjI0KTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYyg0MCk7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6ICg5Ni80MCk7XG5cdFx0XHRcdFx0bGV0dGVyLXNwYWNpbmc6IDUuNDVweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW4ge1xuXHRcdFx0XHQ+IGEge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0XHRcdCYuYWN0aXZlIHtcblx0XHRcdFx0XHRcdGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjUyKTtcblxuXHRcdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGljb24oY2hldnJvbi1kb3duLCBhZnRlciwgZmFsc2UpO1xuXG5cdFx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHR0b3A6IDUwJTtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoLTEzKTtcblx0XHRcdFx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTApO1xuXHRcdFx0XHRcdFx0XHRjb2xvcjogJHByaW1hcnktY29sb3I7XG5cdFx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Ji5hY3RpdmUge1xuXHRcdFx0XHRcdFx0XHQrIC5zdWItbWVudSB7XG5cdFx0XHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoJHdoaXRlLCAuMjQpO1xuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHNjYWxlKC0xKTtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCsgLnN1Yi1tZW51IHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5sYXJnZS02Omxhc3QtY2hpbGQge1xuXHRcdGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggJHdoaXRlO1xuXHR9XG5cblx0Lm5hdi10YWIge1xuXHRcdGhlaWdodDogMDtcblx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0fVxuXG5cdC5zdWItbWVudSB7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG5cdFx0aGVpZ2h0OiAwO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdH1cblxuXHRcdGxpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuXHRcdFx0bGluZS1oZWlnaHQ6ICg0MC8xNik7XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogMXB4O1xuXG5cdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDgpO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoOCk7XG5cdFx0XHR9XG5cblx0XHRcdGEge1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXG5cdFx0XHRcdCY6aG92ZXIsICY6Zm9jdXMge1xuXHRcdFx0XHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdHdpZHRoOiBwZXJjZW50YWdlKDEwLzEyKTtcblx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXG5cdFx0XHRsaSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogKDgwLzI0KTtcblx0XHRcdFx0bGV0dGVyLXNwYWNpbmc6IDJweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuI3Byb3ZlbmFuY2UtcHJvcGVydGllcyB7XG5cdC5jb2x1bW4ge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDI0IDY0KTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDI0IDQ4KTtcblx0XHR9XG5cdH1cblxuXHRhIHtcblx0XHRzdmcge1xuXHRcdFx0dHJhbnNpdGlvbjogaW5oZXJpdDtcblx0XHRcdGZpbGw6ICR3aGl0ZTtcblx0XHRcdC8vbWFyZ2luLWJvdHRvbTogM3JlbTtcblx0XHRcdG1hcmdpbi1ib3R0b206IC4yNXJlbTtcblx0XHRcdHBhZGRpbmc6IDFyZW07XG5cdFx0fVxuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXG5cdFx0XHRzdmcge1xuXHRcdFx0XHRmaWxsOiAkcHJpbWFyeS1jb2xvcjtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuaG90ZWwtbG9jYXRpb24ge1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDJweDtcblx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblx0fVxufVxuXG4ucHJvdmVuYW5jZS10b2dnbGUge1xuXHRzdmcge1xuXHRcdHdpZHRoOiByZW0tY2FsYygxMjApO1xuXHRcdGhlaWdodDogcmVtLWNhbGMoNjQpO1xuXHRcdGZpbGw6ICRjb250cm9sLWNvbG9yO1xuXHR9XG5cblx0LmhpZGUtZm9yLWxhcmdlICYge1xuXHRcdG1hcmdpbjogcmVtLWNhbGMoNjQpIGF1dG8gcmVtLWNhbGMoOTYpO1xuXHR9XG59XG5cbi5zZWNvbmRhcnktbmF2IHtcblx0bGkge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRAZXh0ZW5kIC5zdWJ0aXRsZTtcblx0XHRtYXJnaW46IHJlbS1jYWxjKDE2KTtcblxuXHRcdGEge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRjb2xvcjogaW5oZXJpdDtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDAgMCA2KTtcblx0XHR9XG5cblx0XHQmLmN1cnJlbnQtcGFnZSB7XG5cdFx0XHRjb2xvcjogJHByaW1hcnktY29sb3I7XG5cdFx0XHRib3JkZXItYm90dG9tOiBzb2xpZCAycHggJHByaW1hcnktY29sb3I7XG5cdFx0fVxuXHR9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSB1cCl9IGFuZCAobWF4LWhlaWdodDogODAwcHgpIHtcblx0LmZpeGVkLW5hdi13cmFwcGVyIHtcblx0XHQubmF2LWNvbnRhaW5lciB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6ICgxdncvNiAqIDEwMCk7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAoMXZ3LzYgKiAxMDApO1xuXHRcdH1cblx0fVxuXHQjbWVudS1saW5rcyB7XG5cdFx0I3ByaW1hcnkge1xuXHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoMi82KTtcblx0XHRcdD4gbGkgPiBhIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyNCk7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAoNjQvMjQpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5zdWItbWVudSBsaSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAoNDgvMTYpO1xuXHRcdH1cblx0fVxufVxuIiwiYm9keSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdG1pbi1oZWlnaHQ6IDEwMHZoO1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG5AZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuXHRcdEBlYWNoICRoZGlyLCAkcHJvcCBpbiBtYXAtcmVtb3ZlKCQtemYtZmxleC1qdXN0aWZ5KSB7XG5cdFx0XHQuI3skc2l6ZX0tYWxpZ24tI3skaGRpcn0ge1xuXHRcdFx0XHRAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ly8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG5cdFx0QGVhY2ggJHZkaXIsICRwcm9wIGluICQtemYtZmxleC1hbGlnbiB7XG5cdFx0XHQuI3skc2l6ZX0tYWxpZ24tI3skdmRpcn0ge1xuXHRcdFx0XHRAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG5cdFx0XHR9XG5cblx0XHRcdC4jeyRzaXplfS1hbGlnbi1zZWxmLSN7JHZkaXJ9IHtcblx0XHRcdFx0QGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbiNtYWluLWNvbnRhaW5lciB7XG5cdGZsZXg6IDEgMCBhdXRvO1xufVxuXG4uc2VjdGlvbi1jb250YWluZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0Ji53LWJhY2tncm91bmQge1xuXHRcdC5zZWN0aW9uLWJhY2tncm91bmQge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHQmLmZ1bGwtaGVpZ2h0IHtcblx0XHRcdG1pbi1oZWlnaHQ6IDEwMHZoO1xuXHRcdH1cblx0fVxuXG5cdCY6Zmlyc3QtY2hpbGQ6bm90KC5mdWxsLWhlaWdodCkge1xuXHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDE0MCk7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoMjQwKTtcblxuXHRcdFx0Ji5zZWNvbmRhcnktbmF2aWdhdGlvbi1zZWN0aW9uIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoMTYwKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuXHRcdG1pbi1oZWlnaHQ6IDEwMHZoO1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDk2KSAwO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0bWluLWhlaWdodDogMTAwdmg7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygxMjgpIDA7XG5cdFx0fVxuXHR9XG5cblx0KyAuc2VjdGlvbi1jb250YWluZXIge1xuXHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygzMik7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHQvLyBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTYwKTtcblx0XHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygzMik7XG5cdFx0fVxuXHR9XG5cblx0JjpsYXN0LWNoaWxkIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNDgpO1xuXG5cdFx0Ly8gQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdC8vIFx0Ly9wYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTYwKTtcblx0XHQvLyBcdCY6bm90KC5tb2R1bGUtb2ZmZXJzKSB7XG5cdFx0Ly8gXHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHRcdC8vIFx0fVxuXHRcdC8vIH1cblx0fVxuXG5cdCYubm8tcGFkZGluZyB7XG5cdFx0JiwgJjpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXHR9XG5cblx0LnNlY3Rpb24tYmFja2dyb3VuZCB7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRyaWdodDogMDtcblx0XHRiYWNrZ3JvdW5kOiB7XG5cdFx0XHRzaXplOiBjb3Zlcjtcblx0XHRcdHJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0cG9zaXRpb246IGNlbnRlcjtcblx0XHR9XG5cdFx0ei1pbmRleDogLTE7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGRhcmstZ3JheSwgMC44KTtcblx0XHR9XG5cdH1cblxuXHQ+IC5yb3cge1xuXHRcdHBhZGRpbmctbGVmdDogbWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCk7XG5cdFx0cGFkZGluZy1yaWdodDogbWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiBtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkvMjtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKS8yO1xuXHRcdH1cblx0fVxuXG5cdCYuZnVsbC13aWR0aCB7XG5cdFx0PiAucm93IHtcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdFx0fVxuXHR9XG5cblx0LnNlY29uZGFyeS1uYXZpZ2F0aW9uLXNlY3Rpb24gKyAmIHtcblx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoMzYpO1xuXHR9XG5cblx0LnNjcm9sbC1pbmRpY2F0b3Ige1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3R0b206IDI4cHg7XG5cdFx0bGVmdDogNTAlO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblxuXHRcdEBpbmNsdWRlIGljb24oY2hldnJvbi1kb3duKTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdGJvdHRvbTogNzZweDtcblx0XHR9XG5cdH1cbn1cblxuLnNpdGUtbWFwLWNvbnRhaW5lciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luLXRvcDogMTByZW07XG4gICAgcGFkZGluZzogMDtcblx0bWluLWhlaWdodDogMTAwdmg7XG59XG5cbi5wYWdlLWZ1bGwtYmFja2dyb3VuZCB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRyaWdodDogMDtcblx0Ym90dG9tOiAwO1xuXHR6LWluZGV4OiAtMTtcblx0YmFja2dyb3VuZDoge1xuXHRcdHNpemU6IGNvdmVyO1xuXHRcdHBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0cmVwZWF0OiBuby1yZXBlYXQ7XG5cdH1cblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRyaWdodDogMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2LW92ZXJsYXk7XG5cdH1cbn1cblxuLy8gRGVmYXVsdCBDb3JyZWN0aXZlIFBhZGRpbmc6XG4uc2VjdGlvbi1jb250YWluZXI6bGFzdC1jaGlsZCxcbi5zZWN0aW9uLWNvbnRhaW5lcisuc2VjdGlvbi1jb250YWluZXIsXG4uZnVsbC13aWR0aC1ncmlkIHtcblx0cGFkZGluZzogMXJlbSAwO1xuXG5cdD4gLnJvdyB7IG1heC13aWR0aDogMTAwJTsgfVxufVxuXG4vLyBGQVE6XG4uZmFxLXNlY3Rpb24ge1xuXHRAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygxMTAgMCAxMTApICFpbXBvcnRhbnQ7XG5cdH1cblx0XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlIHVwKSB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMjAwIDAgMTIwKSAhaW1wb3J0YW50O1xuXHR9XG59IiwiI3NpdGUtZm9vdGVyIHtcblx0bWFyZ2luLXRvcDogMDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZm9vdGVyLWJhY2tncm91bmQ7XG5cdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuXHQvL3otaW5kZXg6IDYwMDsgLy8gVG8gaGVscCBjb21wZW5zYXRlIGZvciBcIlByb3YgTG9nbyB3aGVuIHNjcm9sbGVkIHRvIGJvdHRvbVwiXG5cblx0cCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcblx0XHRsZXR0ZXItc3BhY2luZzogMC40NnB4O1xuXHRcdGxpbmUtaGVpZ2h0OiAoMjMvMTMpO1xuXG5cdFx0KyBwIHtcblx0XHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDE2KTtcblx0XHR9XG5cdH1cblxuXHQ+IC5yb3cge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkZm9vdGVyLXNlcGVyYXRvci1jb2xvcjtcblx0XHR9XG5cblx0XHQucm93IHtcblx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdH1cblxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRib3JkZXItYm90dG9tOiAwO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNjQpO1xuXHRcdFx0cGFkZGluZy1yaWdodDogcmVtLWNhbGMoNjQpO1xuXHRcdH1cblx0fVxuXG5cdC5zb2NpYWwge1xuXHRcdG1hcmdpbjogcmVtLWNhbGMoMjggMjQpO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdGxpIHtcblx0XHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjQpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdGxpOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHR9XG5cblx0XHRsaSBhIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTkpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG5cdFx0XHRtYXJnaW46IHJlbS1jYWxjKDMyKSBhdXRvO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXHR9XG5cblx0LmhvdGVsLWluZm8ge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDQwIDE2KSAje3JlbS1jYWxjKDQwKSAtICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbX07XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0LmhvdGVsLWluZm8sIC5taXNjLWxpbmtzLCAuc3Vic2NyaWJlLXNvY2lhbCB7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYyg2NCkgbWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBtZWRpdW0pLzI7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdC5ob3RlbC1pbmZvIHtcblx0XHRcdGJvcmRlci10b3A6IHNvbGlkIDFweCAkZm9vdGVyLXNlcGVyYXRvci1jb2xvcjtcblx0XHR9XG5cdFx0Lm1pc2MtbGlua3Mge1xuXHRcdFx0PiAucm93ID4gLmNvbHVtbiB7XG5cdFx0XHRcdGJvcmRlci10b3A6IHNvbGlkIDFweCAkZm9vdGVyLXNlcGVyYXRvci1jb2xvcjtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuY29weXJpZ2h0LCAuZm9vdGVyLWNvbHVtbi1oZWFkaW5nIHtcblx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGxldHRlci1zcGFjaW5nOiAycHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuXHR9XG5cblx0LmZvb3Rlci1sb2dvIHtcblx0XHRzdmcge1xuXHRcdFx0d2lkdGg6IHJlbS1jYWxjKDQ2KTtcblx0XHRcdGhlaWdodDogcmVtLWNhbGMoNTkuOCk7XG5cdFx0XHRmaWxsOiAkd2hpdGU7XG5cdFx0fVxuXHR9XG59XG5cbiN1dGlsaXR5IHtcblx0bWFyZ2luOiB7XG5cdFx0dG9wOiAwO1xuXHRcdGJvdHRvbTogNTRweDsgXG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0fTtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG5cdFx0bWFyZ2luOiByZW0tY2FsYyg0MCkgMCByZW0tY2FsYyg5NCk7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRjb2x1bW4tY291bnQ6IDI7XG5cdFx0Y29sdW1uLWdhcDogbWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCk7XG5cblx0XHRsaSB7XG5cdFx0XHRicmVhay1pbnNpZGU6IGF2b2lkO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4vMjtcblx0XHR9XG5cdH1cblxuXHRsaSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdG1hcmdpbjogcmVtLWNhbGMoMCAxNyk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG1hcmdpbjogMCAwIHJlbS1jYWxjKDEwKTtcblx0XHR9XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW46IDA7XG5cblx0XHRcdCsgbGkge1xuXHRcdFx0XHRib3JkZXItdG9wOiBzb2xpZCAxcHggJGZvb3Rlci1zZXBlcmF0b3ItY29sb3I7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0YSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDJweDtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cblx0XHRcdCY6aG92ZXIsICY6Zm9jdXMge1xuXHRcdFx0XHRjb2xvcjogJHByaW1hcnktY29sb3I7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDEyIDI0KTtcblx0XHR9XG5cdH1cbn1cblxuLy8gYm9keTpub3QoLmhvbWUsIC5yb29tcy10ZW1wbGF0ZS1kZWZhdWx0LCAucGFnZS10ZW1wbGF0ZS10ZW1wbGF0ZS1tZWV0aW5ncywgLnBhZ2UtdGVtcGxhdGUtdGVtcGxhdGUtZ2FsbGVyeSwgLnRlbXBsYXRlLWZvb2QtZHJpbmssIC50ZW1wbGF0ZS1hbWVuaXRpZXMsIC5wYWdlLXRlbXBsYXRlLXRlbXBsYXRlLW5laWdoYm9yaG9vZCwgLmhpc3RvcnkpIHtcbi8vIFx0I3NpdGUtZm9vdGVyIHsgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjUpOyB9XG4vLyB9IiwiJHByZWxvYWRlci1iZzogJGRhcmstZ3JheTtcbiRwcmVsb2FkZXItY29sb3I6ICR3aGl0ZTtcblxuI3ByZWxvYWRlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICRwcmVsb2FkZXItYmc7XG4gIHotaW5kZXg6IDk5OTk7XG5cbiAgLnByZWxvYWRlci13cmFwcGVyIHtcbiAgICBmbGV4OiBub25lO1xuICAgIG1heC13aWR0aDogMjUlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg5Nik7XG4gICAgICBtYXgtaGVpZ2h0OiByZW0tY2FsYyg5Nik7XG4gICAgICBmaWxsOiAkcHJlbG9hZGVyLWNvbG9yO1xuICAgIH1cblxuICAgICNwYWdlLXByb2dyZXNzIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDM2KTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICBsaW5lLWhlaWdodDogKDMyLzI0KTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgIGNvbG9yOiAkcHJlbG9hZGVyLWNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLmJvb2tpbmctd2lkZ2V0IHtcblx0LmZpZWxkcy13cmFwcGVyIHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG5cdC5ib29raW5nLWZpZWxkcyB7XG5cdFx0Zm9udC1zaXplOiAwO1xuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cblx0XHRpbnB1dCwgc2VsZWN0IHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdHdpZHRoOiByZW0tY2FsYygxNTIpO1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxMyk7XG5cdFx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuXHRcdFx0aGVpZ2h0OiByZW0tY2FsYyg0NCk7XG5cdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogc29saWQgMnB4ICR3aGl0ZTtcblx0XHRcdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAycHg7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0cGFkZGluZy1yaWdodDogcmVtLWNhbGMoMzApO1xuXHRcdFx0bWFyZ2luOiAwIG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKS8yO1xuXG5cdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHR9XG5cdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0aW5wdXQuZGF0ZXBpY2tlciB7XG5cdFx0XHRiYWNrZ3JvdW5kOiB7XG5cdFx0XHRcdGltYWdlOiBzdmcoJ3Nwcml0ZXNoZWV0LnN2ZyNjYWxlbmRhcicsICdbZmlsbF06ICN7JHByaW1hcnktY29sb3J9Jyk7XG5cdFx0XHRcdHNpemU6IDE2cHggMTZweDtcblx0XHRcdFx0cmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdHBvc2l0aW9uOiByaWdodDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRzZWxlY3Qge1xuXHRcdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRcdGJhY2tncm91bmQ6IHtcblx0XHRcdFx0aW1hZ2U6IHN2Zygnc3ByaXRlc2hlZXQuc3ZnI2NoZXZyb24tZG93bicsICdbZmlsbF06ICN7JHByaW1hcnktY29sb3J9Jyk7XG5cdFx0XHRcdHNpemU6IDEycHggOHB4O1xuXHRcdFx0XHRyZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0cG9zaXRpb246IHJpZ2h0O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBNb2JpbGUgQm9va2luZ1xuLm1vYmlsZS1ib29rLW5vdy1idG4ge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdGJvdHRvbTogLTY1cHg7XG5cdHBhZGRpbmc6IDEuMTVyZW07XG5cdHdpZHRoOiAxMDAlO1xuXHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcblx0Y29sb3I6ICR3aGl0ZTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGxldHRlci1zcGFjaW5nOiAycHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0ei1pbmRleDogMjAwMDA7XG5cdHRyYW5zaXRpb246IGJvdHRvbSAuMjVzIGVhc2UtaW4tb3V0O1xufSIsIi5vcGVudGFibGUge1xuXHRib3JkZXI6IHNvbGlkIDFweCAkcHJpbWFyeS1jb2xvcjtcblx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcblxuXHRpbnB1dCB7XG5cdFx0Ym9yZGVyOiAwO1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDE2IDIwKTtcblx0XHRwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg0NCk7XG5cdFx0aGVpZ2h0OiByZW0tY2FsYyg0OCk7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxMik7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDEuNzVweDtcblx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0Ym9yZGVyOiAwO1xuXHRcdH1cblxuXHRcdGJhY2tncm91bmQ6IHtcblx0XHRcdGltYWdlOiBpbmxpbmUoJy4uL3Nwcml0ZXNoZWV0L2NoZXZyb24tZG93bi5zdmcnKTtcblx0XHRcdHJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0c2l6ZTogMTZweCBhdXRvO1xuXHRcdFx0cG9zaXRpb246IGNhbGMoMTAwJSAtIDEzcHgpIGNlbnRlcjtcblx0XHR9XG5cdH1cblxuXHRpbnB1dCwgLnNlbGVjdHJpYyB7XG5cdFx0Ym9yZGVyOiAwO1xuXHRcdG1hcmdpbjogMDtcblx0fVxuXG5cdGlucHV0LCAuc2VsZWN0cmljLXdyYXBwZXIge1xuXHRcdCsgaW5wdXQsICsgLnNlbGVjdHJpYy13cmFwcGVyIHtcblx0XHRcdGJvcmRlci10b3A6IHNvbGlkIDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAuNSk7XG5cdFx0fVxuXHR9XG5cblx0YnV0dG9uIHtcblx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdGNvbG9yOiAkZGFyay1ncmF5O1xuXHR9XG59XG4iLCIuY2Fyb3VzZWwtY29udGFpbmVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogMTAwJTtcbn1cblxuLnNsaWNrLXNsaWRlciwgLnNsaWNrLWxpc3Qge1xuXHR3aWR0aDogMTAwJTtcbn1cblxuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuXHRtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2xpY2stbmV4dCxcbi5zbGljay1wcmV2IHtcblx0d2lkdGg6IGF1dG87XG5cdGhlaWdodDogYXV0bztcblxuXHQmOmJlZm9yZSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxMik7XG5cdH1cbn1cblxuLnNsaWNrLWRvdHMge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJvdHRvbTogcmVtLWNhbGMoMzIpO1xuXHRyaWdodDogNTAlO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKTtcblx0d2lkdGg6IDEwMCU7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdGJvdHRvbTogNTAlO1xuXHRcdHJpZ2h0OiByZW0tY2FsYyg3MCk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSk7XG5cdFx0d2lkdGg6IGF1dG87XG5cdH1cblxuXHRsaSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdGhlaWdodDogYXV0bztcblx0XHRtYXJnaW46IDAgcmVtLWNhbGMoMTIpO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW46IHJlbS1jYWxjKDE4KTtcblx0XHR9XG5cblx0XHRidXR0b24ge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHR3aWR0aDogMTBweDtcblx0XHRcdGhlaWdodDogMTBweDtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRib3JkZXI6IHNvbGlkIDJweCAkc2xpY2stZG90LWNvbG9yO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRcdHdpZHRoOiAxMnB4O1xuXHRcdFx0XHRoZWlnaHQ6IDEycHg7XG5cdFx0XHR9XG5cblx0XHRcdCYsICY6YmVmb3JlIHtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiAkZ2xvYmFsLXRyYW5zaXRpb247XG5cdFx0XHR9XG5cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgwKTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5zbGljay1hY3RpdmUge1xuXHRcdFx0YnV0dG9uIHtcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkc2xpY2stZG90LWNvbG9yLWFjdGl2ZTtcblxuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuXG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjI1KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLnNsaWNrLXNsaWRlIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAxO1xuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiBub25lO1xuXHR9XG5cblx0Ji5zbGljay1jdXJyZW50LCAmLnNsaWNrLWFjdGl2ZSB7XG5cdFx0ei1pbmRleDogNTtcblx0fVxufVxuIiwiW3R5cGU9J3RleHQnXSxcblt0eXBlPSdwYXNzd29yZCddLFxuW3R5cGU9J2RhdGUnXSxcblt0eXBlPSdkYXRldGltZSddLFxuW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sXG5bdHlwZT0nbW9udGgnXSxcblt0eXBlPSd3ZWVrJ10sXG5bdHlwZT0nZW1haWwnXSxcblt0eXBlPSdudW1iZXInXSxcblt0eXBlPSdzZWFyY2gnXSxcblt0eXBlPSd0ZWwnXSxcblt0eXBlPSd0aW1lJ10sXG5bdHlwZT0ndXJsJ10sXG5bdHlwZT0nY29sb3InXSxcbnRleHRhcmVhIHtcblx0aGVpZ2h0OiA0OHB4O1xuXHRwYWRkaW5nOiByZW0tY2FsYygxNiAyMCk7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGxldHRlci1zcGFjaW5nOiAxLjc1cHg7XG5cblx0Jjo6cGxhY2Vob2xkZXIge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cblxuc2VsZWN0IHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuXHR9XG59XG5cbnRleHRhcmVhIHtcblx0aGVpZ2h0OiBhdXRvO1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuXHQmOjpwbGFjZWhvbGRlciB7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0fVxufVxuXG5pbnB1dC5kYXRlcGlja2VyIHtcblx0Y3Vyc29yOiBkZWZhdWx0O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnVpLWRhdGVwaWNrZXIge1xuXHRtYXJnaW4tdG9wOiByZW0tY2FsYygyNCk7XG5cdHBhZGRpbmc6IHJlbS1jYWxjKDgpO1xuXHRib3JkZXI6IHNvbGlkIDFweCAkcHJpbWFyeS1jb2xvcjtcblx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdGJhY2tncm91bmQtY29sb3I6ICRib2R5LWJhY2tncm91bmQ7XG5cblx0LnRlbXBsYXRlLW1lZXRpbmdzLWV2ZW50cyAmIHtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHR9XG5cblx0LnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcblx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGxldHRlci1zcGFjaW5nOiAxLjc1cHg7XG5cdH1cblxuXHR0YWJsZS51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHtcblx0XHRtYXJnaW46IDA7XG5cblx0XHR0aGVhZCwgdGJvZHksIHRmb290IHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0Ym9yZGVyOiAwO1xuXHRcdH1cblxuXHRcdHRoLCB0ZCB7XG5cdFx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblx0XHR9XG5cblx0XHR0ZCB7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYyg0KTtcblx0XHR9XG5cblx0XHR0Ym9keSB7XG5cdFx0XHR0ciB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC51aS1kYXRlcGlja2VyIHtcblx0XHQmLXByZXYge1xuXHRcdFx0QGluY2x1ZGUgaWNvbihjaGV2cm9uLWxlZnQsIGJlZm9yZSwgZmFsc2UpO1xuXG5cdFx0XHQmLWhvdmVyIHtcblx0XHRcdFx0bGVmdDogMnB4O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYtbmV4dCB7XG5cdFx0XHRAaW5jbHVkZSBpY29uKGNoZXZyb24tcmlnaHQsIGJlZm9yZSwgZmFsc2UpO1xuXG5cdFx0XHQmLWhvdmVyIHtcblx0XHRcdFx0cmlnaHQ6IDJweDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLXByZXYsICYtbmV4dCB7XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcblx0XHRcdH1cblxuXHRcdFx0Ji1ob3ZlciB7XG5cdFx0XHRcdHRvcDogMnB4O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuXHRkaXNwbGF5OiBub25lO1xuXHQrIGxhYmVsIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0QGV4dGVuZCAuc3VidGl0bGU7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDMyKTtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdGxpbmUtaGVpZ2h0OiAoMjcvMTMpO1xuXHRcdG1hcmdpbjogMDtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0d2lkdGg6IHJlbS1jYWxjKDE4KTtcblx0XHRcdGhlaWdodDogcmVtLWNhbGMoMTgpO1xuXHRcdFx0bWFyZ2luLXRvcDogLTlweDtcblx0XHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTIpO1xuXHRcdFx0Ym9yZGVyOiBzb2xpZCAycHggJHdoaXRlO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHR9XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRsZWZ0OiA5cHg7XG5cdFx0XHRtYXJnaW4tdG9wOiAtNHB4O1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC00cHg7XG5cdFx0XHR3aWR0aDogcmVtLWNhbGMoOCk7XG5cdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDgpO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgwKTtcblx0XHRcdHRyYW5zaXRpb246ICRnbG9iYWwtdHJhbnNpdGlvbjtcblx0XHR9XG5cdH1cblxuXHQmLm5mLWNoZWNrZWQge1xuXHRcdCsgbGFiZWwge1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5mb3JtLWVsZW1lbnQge1xuXHQuaGVhZGluZy1yb3cge1xuXHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDMyKTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYyg0MCk7XG5cdFx0fVxuXG5cdFx0aDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXHRcdH1cblx0fVxuXG5cdC5zdWJtaXQtcm93IHtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDM0KTtcblx0XHR9XG5cdH1cblxuXHRwLCBsYWJlbCB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDAuN3B4O1xuXHRcdGxpbmUtaGVpZ2h0OiAoMjgvMTYpO1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cdH1cblxuXHQuc3VidGl0bGUge1xuXHRcdGxpbmUtaGVpZ2h0OiAoMjcvMTMpO1xuXHR9XG5cblx0LnNlbGVjdHJpYyB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXG5cdGlucHV0LCB0ZXh0YXJlYSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXG5cdC5yb3cge1xuXHRcdC5jb2x1bW4ge1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoMTIpO1xuXG5cdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdH1cblxuXHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTIpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uc2VjdGlvbi1jb250YWluZXIuZm9ybS1zZWN0aW9uIHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygxMjApO1xuXHRcdHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxMjApO1xuXG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxMjApO1xuXHRcdH1cblx0fVxuXHQmOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuXHRcdHBhZGRpbmctYm90dG9tOiAzcmVtO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0cGFkZGluZy10b3A6IDEycmVtO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IDlyZW07XG5cdFx0fVxuXHR9XG59XG5cbi5uZi1mb3JtLWNvbnQge1xuXG5cdC5uZi1yb3cge1xuXHRcdG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtOCk7XG5cdFx0bWFyZ2luLXJpZ2h0OiByZW0tY2FsYygtOCk7XG5cdH1cblxuXHQubmYtbXVsdGktY2VsbCB7XG5cdFx0Lm5mLWNlbGwge1xuXHRcdFx0cGFkZGluZzogMCByZW0tY2FsYyg4KTtcblx0XHR9XG5cdH1cblxuXHQubmYtZmllbGQtY29udGFpbmVyLCAjbmluamFfZm9ybXNfcmVxdWlyZWRfaXRlbXMsIC5uZi1mb3JtLWZpZWxkcy1yZXF1aXJlZCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuXHR9XG5cblx0Lm5mLWZpZWxkIHtcblx0XHRoMyB7XG5cdFx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYygyNCk7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg4KTtcblx0XHR9XG5cdH1cbn1cblxuLmxpc3QtcmFkaW8td3JhcCB7XG5cdC5uZi1maWVsZC1sYWJlbCB7XG5cdFx0d2lkdGg6IGF1dG8gIWltcG9ydGFudDtcblxuXHRcdGxhYmVsIHtcblx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHR9XG5cdH1cblx0Lm5mLWZpZWxkLWVsZW1lbnQge1xuXHRcdHVsIHtcblx0XHRcdEBpbmNsdWRlIGNsZWFyZml4O1xuXHRcdFx0bGkge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjQpICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5uZi1maWVsZC1lbGVtZW50IHtcblx0c2VsZWN0IHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygxNCAzMyAxNCAyMCk7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDEuNzVweDtcblx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHR9XG5cdH1cblx0aW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG5cdFx0aGVpZ2h0OiA0OHB4O1xuXHRcdHBhZGRpbmc6IDEycHggMjBweDtcblx0fVxufVxuXG5zZWxlY3Qge1xuXHRvcHRpb24ge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRjb2xvcjogJGJsYWNrO1xuXHR9XG59XG4iLCIubWFwLWNvbnRhaW5lciB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG5cbi5pbmZvQm94IHtcblx0b3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuLmliLWNvbnRlbnQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG1hcmdpbi1ib3R0b206IDE0cHg7XG5cdGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcblx0Ym94LXNoYWRvdzogMCA4cHggMTZweCByZ2JhKDAsMCwwLCAwLjIwKTtcblxuXHQuaWItaW1hZ2Uge1xuXHRcdGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDJweDtcblx0XHRib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMnB4O1xuXG5cdFx0aW1nIHsgd2lkdGg6IDEwMCU7IH1cblxuXHRcdGZpZ2NhcHRpb24ge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDI4KTtcblx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDEuNzVweDtcblx0XHRcdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDJweDtcblx0XHRcdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAycHg7XG5cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMTAwJTtcblx0XHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogLThweDtcblx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdHdpZHRoOiAwO1xuXHRcdFx0XHRoZWlnaHQ6IDA7XG5cdFx0XHRcdGJvcmRlci1sZWZ0OiA4cHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdGJvcmRlci1yaWdodDogOHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0XHRib3JkZXItdG9wOiAxNHB4IHNvbGlkICR3aGl0ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuaWItYm94IHtcblx0XHRib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHg7XG5cdFx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0Y29sb3I6ICRibGFjaztcblx0XHRwYWRkaW5nOiByZW0tY2FsYygyOCk7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuXG5cdFx0aDUge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0XHR9XG5cblx0XHQvLyBMb2dvIFNpemluZ1xuXHRcdHN2ZyB7XG5cdFx0XHR3aWR0aDogcmVtLWNhbGMoMTM0KTtcblx0XHRcdGhlaWdodDogcmVtLWNhbGMoMjgpO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuXHRcdH1cblxuXHRcdHAge1xuXHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuaWItY3RhIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblx0XHRjb2xvcjogd2hpdGU7XG5cdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcblx0XHRsZXR0ZXItc3BhY2luZzogMS43NXB4O1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDE2KTtcblx0XHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7XG5cdFx0Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDJweDtcblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAxMDAlO1xuXHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IC04cHg7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdHdpZHRoOiAwO1xuXHRcdFx0aGVpZ2h0OiAwO1xuXHRcdFx0Ym9yZGVyLWxlZnQ6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdGJvcmRlci1yaWdodDogOHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0Ym9yZGVyLXRvcDogMTRweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcblx0XHR9XG5cdH1cbn1cbiIsIi5tb2RhYWwtd3JhcHBlciB7XG5cdC5tb2RhYWwtY2xvc2Uge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0QGV4dGVuZCAubW9ycGgtdG9nZ2xlO1xuXG5cdFx0JjpiZWZvcmUsICY6YWZ0ZXIge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdH1cblxuXHRcdHNwYW4ge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0QGluY2x1ZGUgaWNvbihjbG9zZSwgYmVmb3JlLCBmYWxzZSk7XG5cdFx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdFx0d2lkdGg6IGF1dG8gIWltcG9ydGFudDtcblx0XHRcdGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuXHRcdFx0Y2xpcDogYXV0bztcblx0XHRcdGZvbnQtc2l6ZTogMDtcblx0XHRcdHRvcDogNTAlO1xuXHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcblxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE3LjUpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4ubW9kYWFsLWNvbnRhaW5lciB7XG5cdGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xufVxuIiwiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4vKiB0aGVtZTogXCJwcm92ZW5hbmNlXCIgKi9cblxuLm1DUy1wcm92ZW5hbmNlIHtcblx0Lm1DU0JfY29udGFpbmVyIHtcblx0XHRtYXJnaW4tcmlnaHQ6IDEycHg7XG5cdH1cbn1cblxuLm1DUy1wcm92ZW5hbmNlLm1DU0Jfc2Nyb2xsVG9vbHMge1xuXHR3aWR0aDogMTJweDtcbn1cblxuLm1DUy1wcm92ZW5hbmNlLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG5cdHdpZHRoOiAxMDAlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDsgLW1vei1ib3JkZXItcmFkaXVzOiAwOyBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4ubUNTLXByb3ZlbmFuY2UubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFye1xuXHR3aWR0aDogMTAwJTtcblx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7IC1tb3otYm9yZGVyLXJhZGl1czogMDsgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLm1DUy1wcm92ZW5hbmNlLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1MtcHJvdmVuYW5jZS5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcntcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogOHB4O1xuXHRtYXJnaW46IDZweCBhdXRvO1xufVxuXG4vKiB0aGVtZTogXCJwcm92ZW5hbmNlXCIgKi9cblxuLm1DUy1wcm92ZW5hbmNlLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWx7XG5cdGJhY2tncm91bmQtY29sb3I6ICMwMDA7IGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMC4xKTtcblx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwOyAtbW96LWJvcmRlci1yYWRpdXM6IDA7IGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5tQ1MtcHJvdmVuYW5jZS5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XG5cdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7IC1tb3otYm9yZGVyLXJhZGl1czogMDsgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLm1DUy1wcm92ZW5hbmNlLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjpob3ZlciAubUNTQl9kcmFnZ2VyX2JhcnsgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7IH1cblxuLm1DUy1wcm92ZW5hbmNlLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTLXByb3ZlbmFuY2UubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWcgLm1DU0JfZHJhZ2dlcl9iYXJ7IGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yOyB9XG5cbi5tQ1MtcHJvdmVuYW5jZS5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVweyBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG5cbi5tQ1MtcHJvdmVuYW5jZS5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257IGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLm1DUy1wcm92ZW5hbmNlLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdHsgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuXG4ubUNTLXByb3ZlbmFuY2UubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodHtcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuIiwiLnNlbGVjdHJpYy1lbGVtZW50IHtcblx0bWFyZ2luOiAwO1xufVxuXG4uc2VsZWN0cmljIHtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdGJvcmRlcjogc29saWQgMXB4ICRwcmltYXJ5LWNvbG9yO1xuXHRib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuXG5cdC5zZWxlY3RyaWMtaG92ZXIgJiB7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblx0fVxuXG5cdC5zZWxlY3RyaWMtd2hpdGUgJiB7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkd2hpdGU7XG5cdH1cblxuXHQubGFiZWwge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuXHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDEuNzVweDtcblx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdGhlaWdodDogcmVtLWNhbGMoNDgpO1xuXHRcdGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg0OCk7XG5cdFx0cGFkZGluZzogMDtcblx0XHRtYXJnaW46IHtcblx0XHRcdGxlZnQ6IHJlbS1jYWxjKDIwKTtcblx0XHRcdHJpZ2h0OiByZW0tY2FsYyg2NCk7XG5cdFx0fVxuXHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHR9XG5cblx0LmJ1dHRvbiB7XG5cdFx0aGVpZ2h0OiByZW0tY2FsYygyNCk7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0Ym9yZGVyOiAwO1xuXHRcdGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggJHByaW1hcnktY29sb3I7XG5cdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHR0b3A6IDUwJTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0d2lkdGg6IHJlbS1jYWxjKDQ0KTtcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDI0KTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHRAaW5jbHVkZSBpY29uKGNoZXZyb24tZG93biwgYWZ0ZXIsIGZhbHNlKTtcblx0XHQmOmFmdGVyIHtcblx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0bGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI0KTtcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxMCk7XG5cdFx0fVxuXHR9XG5cblx0LnNlbGVjdHJpYy1nYWxsZXJ5LXNlbGVjdCAmIHtcblx0XHRib3JkZXI6IDA7XG5cdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblxuXHRcdC5sYWJlbCB7XG5cdFx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdFx0aGVpZ2h0OiByZW0tY2FsYyg2NCk7XG5cdFx0XHRsaW5lLWhlaWdodDogcmVtLWNhbGMoNjQpO1xuXHRcdFx0bWFyZ2luOiB7XG5cdFx0XHRcdGxlZnQ6IHJlbS1jYWxjKDI0KTtcblx0XHRcdFx0cmlnaHQ6IHJlbS1jYWxjKDY0KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuYnV0dG9uIHtcblx0XHRcdHdpZHRoOiByZW0tY2FsYyg1OCk7XG5cdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDY0KTtcblx0XHRcdGJvcmRlci1sZWZ0LWNvbG9yOiAjRTZFNkU2O1xuXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Y29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogcmVtLWNhbGMoNjQpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4uc2VsZWN0cmljLWl0ZW1zIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheTtcblx0Ym9yZGVyOiBzb2xpZCAxcHggJHByaW1hcnktY29sb3I7XG5cdGxpIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcblx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblx0XHRsZXR0ZXItc3BhY2luZzogMS43NXB4O1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoOCAyMCk7XG5cdFx0Y29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXG5cdFx0Ji5kaXNhYmxlZCB7XG5cdFx0XHRjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG5cdFx0fVxuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG5cdFx0fVxuXHR9XG59XG4iLCIuc29jaWFsIHtcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRsaW5lLWhlaWdodDogMTtcblx0bWFyZ2luLWxlZnQ6IDA7XG5cdFxuXHRsaSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG5cdFx0bWFpbiAmIHtcblx0XHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTQpO1xuXHRcdH1cblx0XHRhIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuXG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogaW5oZXJpdDtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdFx0fVxuXG5cdFx0XHRzcGFuIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIiRzdWJzY3JpYmUtcGxhY2Vob2xkZXItY29sb3I6ICM0RTRENTA7XG4kc3Vic2NyaWJlLXZhbGlkLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuLnN1YnNjcmliZSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZzogcmVtLWNhbGMoMCAyNCk7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdHBhZGRpbmc6IDA7XG5cdH1cblxuXHQuaW5wdXQtZ3JvdXAge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cblxuXHRpbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0Ym9yZGVyOiAwO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDIuMjVweDtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygzOCAyOCAzOCAwKTtcblx0XHRtYXJnaW46IDA7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMCAyOCAwIDApO1xuXHRcdH1cblxuXHRcdCY6OnBsYWNlaG9sZGVyIHtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRjb2xvcjogJHN1YnNjcmliZS12YWxpZC1jb2xvcjtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRmb250LWZhbWlseTogJGRpc3BsYXktZm9udC1mYW1pbHk7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAyLjI1cHg7XG5cdFx0XHRsaW5lLWhlaWdodDogKDQwLzE4KTtcblxuXHRcdFx0Jjo6cGxhY2Vob2xkZXIge1xuXHRcdFx0XHRjb2xvcjogJHN1YnNjcmliZS1wbGFjZWhvbGRlci1jb2xvcjtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmOnZhbGlkIHtcblx0XHRcdGNvbG9yOiAkc3Vic2NyaWJlLXZhbGlkLWNvbG9yO1xuXG5cdFx0XHQrIC5pbnB1dC1ncm91cC1idXR0b24ge1xuXHRcdFx0XHRidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG5cdFx0XHRcdFx0Y29sb3I6ICRzdWJzY3JpYmUtdmFsaWQtY29sb3I7XG5cblx0XHRcdFx0XHRzdmcge1xuXHRcdFx0XHRcdFx0ZmlsbDogJHN1YnNjcmliZS12YWxpZC1jb2xvcjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XG5cdFx0Y29sb3I6ICRzdWJzY3JpYmUtcGxhY2Vob2xkZXItY29sb3I7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMzggMCk7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHR9XG5cblx0XHRzcGFuIHtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDIuMjVweDtcblx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE2KTtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdH1cblxuXHRcdHN2ZyB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR3aWR0aDogcmVtLWNhbGMoMzIpO1xuXHRcdFx0aGVpZ2h0OiByZW0tY2FsYygyNCk7XG5cdFx0XHRmaWxsOiAkc3Vic2NyaWJlLXBsYWNlaG9sZGVyLWNvbG9yO1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRzcGFuIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRzdmcge1xuXHRcdFx0XHR3aWR0aDogcmVtLWNhbGMoNDYpO1xuXHRcdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDMyKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLnd1Zm9vLXN1YnNjcmliZS1jb250YWluZXIge1xuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMjQgMTYgNCk7XG5cdH1cbn1cbiIsIi50YWJsZS1lbGVtZW50IHtcblx0Ym9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcblx0Ly8gbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuXG5cdHRoZWFkIHtcblx0XHR0cjpmaXJzdC1jaGlsZCB7XG5cdFx0XHR0aCB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuXHRcdFx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0bGV0dGVyLXNwYWNpbmc6IDEuMjVweDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6ICgxNi8xMik7XG5cdFx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDAgMTIgNik7XG5cblx0XHRcdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDAgMTIgMzIpO1xuXHRcdFx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiByZW0tY2FsYygyNCk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDApO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHR0Ym9keSB7XG5cdFx0dHIge1xuXHRcdFx0dGQge1xuXHRcdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHRcdH1cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDEyKTtcblxuXHRcdFx0XHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiByZW0tY2FsYygyNCk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDApO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0XHRcdGJvcmRlcjogc29saWQgMXB4ICRwcmltYXJ5LWNvbG9yO1xuXHRcdFx0XHRcdHRkIHtcblx0XHRcdFx0XHRcdGJvcmRlci10b3A6IHNvbGlkIDFweCAkcHJpbWFyeS1jb2xvcjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHR0aCwgdGQge1xuXHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdH1cblxuXHR0ZCB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNCk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYyg2IDEwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjVweDtcblx0XHR9XG5cdH1cbn1cblxuLnRhYmxlc2F3LWFkdmFuY2Uge1xuXHRkaXNwbGF5OiBub25lO1xufVxuIiwiLyogaW5qZWN0Om1vZHVsZXMgKi9cbkBpbXBvcnQgXCJtb2R1bGVzL19jYXJkLXRpbGUuc2Nzc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvX2NlbnRlci10ZXh0LXNlY3Rpb24uc2Nzc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvX2ltYWdlLWdyaWQuc2Nzc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvX2ludHJvLXNlY3Rpb24uc2Nzc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvX2xhbmRpbmctY2Fyb3VzZWwuc2Nzc1wiO1xuQGltcG9ydCBcIm1vZHVsZXMvX21vcnBoaW5nLWJveC5zY3NzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fb2ZmZXJzLXNsaWRlci5zY3NzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fcHJvbW9zLXNsaWRlci5zY3NzXCI7XG5AaW1wb3J0IFwibW9kdWxlcy9fcm9vbXMtc2xpZGVyLnNjc3NcIjtcbi8qIGVuZGluamVjdCAqL1xuIiwiLmNhcmQtc2xpZGVyIHtcblx0LnNsaWNrLXNsaWRlIHtcblx0XHRwYWRkaW5nOiAwIDZweDtcblx0fVxufVxuXG4uY2FyZC10aWxlIHtcblx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cblx0LmNhcmQtaW1hZ2Uge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQuaW1hZ2UtY29udGFpbmVyIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAwO1xuXHRcdFx0cGFkZGluZy10b3A6IHBlcmNlbnRhZ2UoMzA0LzMyNyk7XG5cdFx0fVxuXG5cdFx0aW1nIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdFx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuXHRcdH1cblx0fVxuXG5cdC5jYXJkLWNvbnRlbnQge1xuXHRcdGg1IHtcblx0XHRcdEBleHRlbmQgLmgxO1xuXHRcdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcblx0XHRcdHRleHQtdHJhbnNmb3JtOiBub25lO1xuXHRcdH1cblx0fVxuXG5cdC5tb2JpbGUtY2FyZC1saW5rIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRyaWdodDogMDtcblx0XHR6LWluZGV4OiA1O1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXg6IDEgMSBhdXRvO1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cblx0XHQuY2FyZC1jb250ZW50IHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDFweDtcblx0XHRcdGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygzMik7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY2FyZC1jb250ZW50LWJhY2tncm91bmQ7XG5cdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHRmbGV4OiAxIDEgYXV0bztcblxuXHRcdFx0aDUge1xuXHRcdFx0XHRmb250LXNpemU6IGluaGVyaXQ7XG5cdFx0XHRcdGNvbG9yOiBpbmhlcml0O1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHRwIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdFx0XHQuc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwgJiB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi5zZWN0aW9uLWNvbnRhaW5lci5jZW50ZXItdGV4dC1zZWN0aW9uIHtcblx0aDEge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdC5ob21lICYge1xuXHRcdFx0XHRmb250LWZhbWlseTogJGRpc3BsYXktZm9udC1mYW1pbHk7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoNTIpO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogKDY0LzUyKTtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0bGV0dGVyLXNwYWNpbmc6IDRweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi5pZTExLTE1IC5pbWFnZS1ncmlkIC5hbGlnbi1zdHJldGNoIC5ncmlkLXRpbGUgLmltYWdlLWNvbnRhaW5lciAuaW1hZ2UtY292ZXIub2JqZWN0LWZpdCxcbi5pZTExLTE1IC5pbWFnZS1ncmlkLmltYWdlLWdyaWQtaHlicmlkIC5hbGlnbi1zdHJldGNoIC5pbWFnZS1jb250YWluZXIgLmltYWdlLWNvdmVyLm9iamVjdC1maXQge1xuXHRwYWRkaW5nLXRvcDogMzAlO1xuXHRwYWRkaW5nLWJvdHRvbTogMzAlO1xuXHRiYWNrZ3JvdW5kLW9yaWdpbjogYm9yZGVyLWJveCAhaW1wb3J0YW50O1xufVxuXG4uaW1hZ2UtZ3JpZCB7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTEyKTtcblx0XHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKC0xMik7XG5cdH1cblxuXHQuZmxleC1jb250YWluZXIgeyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuXHQuaW1hZ2UtZ3JpZC1oeWJyaWQge1xuXHRcdC5pbWFnZS1jb250YWluZXIge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjsgLy8gRkYgZml4XG5cblx0XHRcdGZpZ2NhcHRpb24ge1xuXHRcdFx0XHRwYWRkaW5nOiB7XG5cdFx0XHRcdFx0bGVmdDogcmVtLWNhbGMoMjEpO1xuXHRcdFx0XHRcdGJvdHRvbTogcmVtLWNhbGMoMjApO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzIpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5ncmlkLXRpbGUsXG5cdCYuaW1hZ2UtZ3JpZC1oeWJyaWQge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygxMik7XG5cdFx0QGluY2x1ZGUgZmxleDtcblx0XHRAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbihjb2x1bW4pO1xuXHRcdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRcdGZsZXgtYmFzaXM6IGF1dG87XG5cblx0XHQmOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0XHQuaWUxMSAmIHsgaGVpZ2h0OiAxMDAlOyB9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmltYWdlLWNvbnRhaW5lciB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47IC8vIEZGIGZpeFxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0XHQuaWUxMSAmIHsgaGVpZ2h0OiAxMDAlOyB9XG5cdFx0XHR9XG5cblx0XHRcdC5pbWFnZS1jb3Zlci5vYmplY3QtZml0IHtcblx0XHRcdFx0LmllMTEtMTUgJiB7XG5cdFx0XHRcdFx0Ly8gcGFkZGluZy10b3A6IDMwJTtcblx0XHRcdFx0XHQvLyBwYWRkaW5nLWJvdHRvbTogMjAwcHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRmaWdjYXB0aW9uIHtcblx0XHRcdC8vcGFkZGluZzogcmVtLWNhbGMoMjQgMCAwKTtcblx0XHRcdHBhZGRpbmc6ICgkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b20gKyByZW0tY2FsYyhtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKSkpIDAgMDtcblxuXHRcdFx0aDMgeyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7IH1cblxuXHRcdFx0cCB7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDgpOyB9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHsgcGFkZGluZzogcmVtLWNhbGMoNTIgMCAzMik7IH1cblx0XHR9XG5cblx0XHQuaG92ZXItY2FwdGlvbiB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygzMik7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoLTE4MGRlZywgcmdiYSgzNCwzMiwzMiwwLjAwKSAyMyUsIHJnYmEoMzQsMzIsMzIsMC43MikgMTAwJSk7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0dmlzaWJpbGl0eTogaGlkZGVuO1xuXHRcdFx0dHJhbnNpdGlvbjogJGdsb2JhbC10cmFuc2l0aW9uO1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNCk7XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAycHg7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0LmhvdmVyLWNhcHRpb24ge1xuXHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYudy1jb250ZW50IHtcblx0XHRcdC5pbWFnZS1jb250YWluZXIge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMyKTtcblxuXHRcdFx0XHRcdGZpZ2NhcHRpb24ge1xuXHRcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDA7XG5cblx0XHRcdFx0XHRcdCYuaG92ZXItY2FwdGlvbiB7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiAxLjVyZW07XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji53LWltYWdlLWxpbmsge1xuXHRcdFx0LmhvdmVyLWNhcHRpb24ge1xuXHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRcdFx0XHRwYWRkaW5nOiByZW0tY2FsYygyMCAyMSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vIEhpc3RvcnkgVGVtcGxhdGUgSW1hZ2UgR3JpZFxuLmhpc3RvcnktY29udGVudC13cmFwcGVyIHtcblx0Lmhpc3RvcnktaW1hZ2Utcm93IHtcblx0XHRtYXJnaW4tdG9wOiAycmVtO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkgeyBtYXJnaW4tdG9wOiA1cmVtOyB9XG5cdH1cblxuXHQvLyBDYXB0aW9uXG5cdC5jYXB0aW9uIHtcblx0XHRtYXJnaW46IDFyZW0gYXV0byAycmVtO1xuXHRcdG1heC13aWR0aDogcmVtLWNhbGMoODg4cHgpO1xuXHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHsgbWFyZ2luLWJvdHRvbTogNXJlbTsgfVxuXHR9XG5cblx0Ly8gQ1RBXG5cdC5ib3JkZXItYnRuIHtcblx0XHRtYXJnaW46IHtcblx0XHRcdHRvcDogMXJlbTtcblx0XHRcdGJvdHRvbTogMnJlbTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRtYXJnaW46IHtcblx0XHRcdFx0dG9wOiAzcmVtO1xuXHRcdFx0XHRib3R0b206IDNyZW07XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIuc2VjdGlvbi1jb250YWluZXIuaW50cm8tc2VjdGlvbiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWluLWhlaWdodDogMTAwdmg7XG5cblx0Lm1vYmlsZS1sb2dvIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDUwJTtcblx0XHRsZWZ0OiA1MCU7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0ZmlsbDogJHdoaXRlO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXG5cdFx0c3ZnIHtcblx0XHRcdC8vIExvZ28gTWFya1xuXHRcdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdHdpZHRoOiA3M3B4O1xuXHRcdFx0XHRoZWlnaHQ6IDk2cHg7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDI4cHg7XG5cdFx0XHR9XG5cblx0XHRcdC8vIExvZ28gVGV4dFxuXHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0d2lkdGg6IDIwNHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDQzcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIubGFuZGluZy1jYXJvdXNlbCB7XG5cdC5zbGlkZS1ob2xkZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygwIDI1KTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdC8vaGVpZ2h0OiAoNDE2dncvMzc1ICogMTAwKTtcblx0XHRoZWlnaHQ6IDEwMHZoO1xuXHRcdC8vanVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0YmFja2dyb3VuZDoge1xuXHRcdFx0c2l6ZTogY292ZXI7XG5cdFx0XHRyZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0fVxuXG5cdFx0LmhvbWUgJiB7XG5cdFx0XHRoZWlnaHQ6IDEwMHZoO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0LnNsaWRlLWNhcHRpb24td3JhcHBlciB7XG5cdFx0XHRcdC8vdG9wOiA1MCU7IFxuXHRcdFx0XHQvL3RyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuXHRcdFx0XHQuc2xpZGUtY2FwdGlvbiB7IFxuXHRcdFx0XHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdFx0XHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdH1cblx0XHRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygwIDY0KTtcblx0XHRcdGhlaWdodDogMTAwdmg7XG5cdFx0fVxuXG5cdFx0LnNsaWRlLWNhcHRpb24td3JhcHBlciB7XG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHsgbWF4LXdpZHRoOiA3NSU7IH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIHVwKSB7IG1heC13aWR0aDogNTAlOyB9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UgdXApIHsgbWF4LXdpZHRoOiA1NSU7IH1cblxuXHRcdFx0LnNsaWRlLWNhcHRpb24ge1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdGZsZXg6IG5vbmU7XG5cdFx0XHRcdC8vbWF4LXdpZHRoOiA3NSU7XG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRcdHotaW5kZXg6IDU7XG5cblx0XHRcdFx0aDMge1xuXHRcdFx0XHRcdG1hcmdpbjoge1xuXHRcdFx0XHRcdFx0dG9wOiA3cmVtO1xuXHRcdFx0XHRcdFx0Ym90dG9tOiAuNzVyZW07XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdFx0Zm9udDoge1xuXHRcdFx0XHRcdFx0c2l6ZTogcmVtLWNhbGMoMTQpO1xuXHRcdFx0XHRcdFx0c3R5bGU6IGl0YWxpYztcblx0XHRcdFx0XHRcdHdlaWdodDogNjAwO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRsZXR0ZXItc3BhY2luZzogMS4yNXB4O1xuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0XHRcdFx0bWFyZ2luOiB7XG5cdFx0XHRcdFx0XHRcdHRvcDogYXV0bztcblx0XHRcdFx0XHRcdFx0Ym90dG9tOiAxLjI1cmVtO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdHNwYW4ge1xuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHRmb250OiB7XG5cdFx0XHRcdFx0XHRmYW1pbHk6ICRkaXNwbGF5LWZvbnQtZmFtaWx5O1xuXHRcdFx0XHRcdFx0c2l6ZTogcmVtLWNhbGMoMTgpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRsZXR0ZXItc3BhY2luZzogMXB4O1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkgeyBcblx0XHRcdFx0XHRcdGZvbnQ6IHtcblx0XHRcdFx0XHRcdFx0c2l6ZTogcmVtLWNhbGMoMjhweCk7XG5cdFx0XHRcdFx0XHRcdHdlaWdodDogNjAwOyBcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAyLjQ1cmVtO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0XHRcdFx0Ly9mb250LWZhbWlseTogJGRpc3BsYXktZm9udC1mYW1pbHk7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDU3LjYpO1xuXHRcdFx0XHRcdFx0bGV0dGVyLXNwYWNpbmc6IDVweDtcblx0XHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiAoNjcvNTcuNik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0cCB7XG5cdFx0XHRcdFx0Jjo6YmVmb3JlIHtcblx0XHRcdFx0XHRcdG1hcmdpbjogMS4yNXJlbSAwIDEuNXJlbTtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiA0cHg7XG5cdFx0XHRcdFx0XHR3aWR0aDogMi4yNXJlbTtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXHRcdFx0XHRcdFx0Y29udGVudDogXCJcIjtcblxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luOiAxLjVyZW0gMCAxLjc1cmVtO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdG1heC13aWR0aDogNzMwcHg7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuNzVyZW07XG5cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxOCk7XG5cdFx0XHRcdFx0XHRsaW5lLWhlaWdodDogMnJlbTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRhIHsgXG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMnJlbTsgXG5cblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMXJlbTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGRhcmstZ3JheSwgMC4zMik7XG5cdFx0XHR6LWluZGV4OiAwO1xuXHRcdH1cblx0fVxufVxuIiwiLm1vcnBoaW5nLWJveCB7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHR3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdGxlZnQ6IHJlbS1jYWxjKDQ4KTtcblx0XHRtYXgtd2lkdGg6IDU0MHB4O1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdH1cblxuXHRoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNCk7XG5cdH1cblxuXHRoMSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTgpO1xuXHRcdGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNCk7XG5cdFx0fVxuXHR9XG5cblx0cCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjQpO1xuXHRcdGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyNik7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogNTB2aDtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKTtcblx0XHR3aWR0aDogcGVyY2VudGFnZSg1LzEyKTtcblx0XHRib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgLjkpO1xuXHRcdGNvbG9yOiAkZGFyay1ncmF5O1xuXG5cdFx0aDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG5cdFx0XHRzbWFsbCB7XG5cdFx0XHRcdGNvbG9yOiAkZGFyay1ncmF5O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdEBtZWRpYSBzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSB1cCl9IGFuZCAobWF4LWhlaWdodDogODAwcHgpIHtcblx0XHR3aWR0aDogcGVyY2VudGFnZSg4LzEyKTtcblx0XHRtYXgtd2lkdGg6IDY0MHB4O1xuXHR9XG59XG5cbi5tb3JwaC1jb250ZW50LXdyYXBwZXIge1xuXHRwYWRkaW5nOiByZW0tY2FsYyg0MCAwIDApO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYyg2NCA0OCkgI3tyZW0tY2FsYyg2NCkgLSAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b219O1xuXHR9XG59XG5cbi5tb3JwaC10b2dnbGUge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0cmlnaHQ6IDA7XG5cdGJvcmRlcjogc29saWQgMXB4IHJnYmEoJGRhcmstZ3JheSwgLjE2KTtcblx0Ym9yZGVyLXJhZGl1czogMDtcblx0Ym9yZGVyLXRvcDogMDtcblx0Ym9yZGVyLXJpZ2h0OiAwO1xuXHRwYWRkaW5nOiByZW0tY2FsYygxNik7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0bGluZS1oZWlnaHQ6IDE7XG5cdHotaW5kZXg6IDU7XG5cdC8vIHdpZHRoOiByZW0tY2FsYyg0OSk7XG5cdC8vIGhlaWdodDogcmVtLWNhbGMoNDkpO1xuXG5cdHN2ZyB7XG5cdFx0dHJhbnNpdGlvbjogJGdsb2JhbC10cmFuc2l0aW9uO1xuXHR9XG5cblx0LmNvbGxhcHNlZCAmIHtcblx0XHRzdmcge1xuXHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuXHRcdH1cblx0fVxuXG5cdHN2ZyB7XG5cdFx0d2lkdGg6IHJlbS1jYWxjKDE2KTtcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDE2KTtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuLm1vcnBoLWNvbnRlbnQge1xuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0aGVpZ2h0OiAwO1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cblx0XHRhOm5vdCgucmctYnRuKTpub3QoLmJvcmRlci1idG4pIHtcblx0XHRcdGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuXG5cdFx0XHQmOmhvdmVyLFxuXHRcdFx0JjphY3RpdmUgeyBjb2xvcjogJG1lZGl1bS1ncmF5OyB9XG5cdFx0fVxuXG5cdFx0Ji5pcy1hY3RpdmUge1xuXHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0fVxuXHR9XG59XG5cbi5tb3JwaC1jb250ZW50LXJldmVhbCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRwYWRkaW5nOiA0LjU3MTQzcmVtIDMuNDI4NTdyZW0gMy40Mjg1N3JlbTtcblx0YmFja2dyb3VuZC1jb2xvcjogbGlnaHQtYmx1ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pe1xuICAgIC5tb3JwaC1jb250ZW50LXNjcm9sbGVyIHtcbiAgICAgICAgbWF4LWhlaWdodDogMThyZW07XG4gICAgfVxufVxuXG4ubW9ycGgtY29udGVudC1zY3JvbGxlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuLm1vcnBoLWNvbnRlbnQtc2Nyb2xsZXIgLm1DUy1wcm92ZW5hbmNlLXI4LWRhcmsubUNTQl9zY3JvbGxUb29scyB7XG4gICAgd2lkdGg6IDRweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pe1xuICAgIC5tb3JwaC1jb250ZW50IHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxufVxuLm1DUy1wcm92ZW5hbmNlLXI4LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuLm1DUy1wcm92ZW5hbmNlLXI4LWRhcmsubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyUmFpbCB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG4iLCIkb2ZmZXItY2FyZC1jb250ZW50LWJhY2tncm91bmQ6ICMzODM3M0E7XG5cbi5tb2R1bGUtb2ZmZXJzLWNhcm91c2VsIHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcblx0XHQuc2xpY2stc2xpZGUge1xuXHRcdFx0cGFkZGluZzogMCBtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIG1lZGl1bSkvMjtcblx0XHRcdHBlcnNwZWN0aXZlOiA5MDBweDtcblx0XHRcdHRyYW5zaXRpb246ICRnbG9iYWwtdHJhbnNpdGlvbjtcblxuXHRcdFx0LmNhcmQtdGlsZSB7XG5cdFx0XHRcdG9wYWNpdHk6IDAuMDU7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHZ3KSByb3RhdGVZKDI1ZGVnKTtcblx0XHRcdFx0dHJhbnNpdGlvbjogaW5oZXJpdDtcblx0XHRcdH1cblxuXHRcdFx0Ji5zbGljay1jdXJyZW50IHtcblx0XHRcdFx0LmNhcmQtdGlsZSB7XG5cdFx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZVkoMCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHR+IC5zbGljay1zbGlkZSB7XG5cdFx0XHRcdFx0LmNhcmQtdGlsZSB7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwdncpIHJvdGF0ZVkoLTI1ZGVnKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuc2xpY2stcHJldixcblx0LnNsaWNrLW5leHQge1xuXHRcdHotaW5kZXg6IDU7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcblx0XHR9XG5cdH1cblxuXHQuc2xpY2stcHJldiB7XG5cdFx0bGVmdDogMTAlO1xuXHR9XG5cdC5zbGljay1uZXh0IHtcblx0XHRyaWdodDogMTAlO1xuXHR9XG5cblx0LmNhcmQtdGlsZSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG5cdFx0XHQuY2FyZC1pbWFnZSB7XG5cdFx0XHRcdC5pbWFnZS1jb250YWluZXIge1xuXHRcdFx0XHRcdHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKDQwMC80NTIpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQuY2FyZC1jb250ZW50IHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG9mZmVyLWNhcmQtY29udGVudC1iYWNrZ3JvdW5kO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcblx0XHRcdFx0cGFkZGluZzogcmVtLWNhbGMoNzIgNTIpICN7cmVtLWNhbGMoNzIpIC0gMnJlbX07XG5cblx0XHRcdFx0aDUge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI0KTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI0KTtcblxuXHRcdFx0XHRcdC5yZy1idG4gKyBhIHtcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiByZW0tY2FsYygyNCk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDEzKTtcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXHRcdFx0XHRcdFx0bGV0dGVyLXNwYWNpbmc6IDJweDtcblxuXHRcdFx0XHRcdFx0Jjpob3ZlciwgJjpmb2N1cyB7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRhLnJnLWJ0biB7XG5cdFx0XHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC13cmFwOiByb3cgd3JhcDtcblxuXHRcdFx0LmNhcmQtaW1hZ2UsIC5jYXJkLWNvbnRlbnQge1xuXHRcdFx0XHRtYXgtd2lkdGg6IDUwJTtcblx0XHRcdFx0ZmxleDogMCAwIDUwJTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi5tb2R1bGUtcHJvbW9zLWNhcm91c2VsIHtcblx0cGFkZGluZzogcmVtLWNhbGMoNTAgMCk7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYyg3NSAwKTtcblxuXHRcdC5zbGljay1zbGlkZSB7XG5cdFx0XHRwYWRkaW5nOiAwIG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKS8yO1xuXHRcdFx0cGVyc3BlY3RpdmU6IDkwMHB4O1xuXHRcdFx0dHJhbnNpdGlvbjogJGdsb2JhbC10cmFuc2l0aW9uO1xuXG5cdFx0XHQuY2FyZC10aWxlIHtcblx0XHRcdFx0b3BhY2l0eTogMC4wNTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEzLjEyNXZ3KSByb3RhdGVZKDI1ZGVnKTtcblx0XHRcdFx0dHJhbnNpdGlvbjogaW5oZXJpdDtcblx0XHRcdH1cblxuXHRcdFx0Ji5zbGljay1jdXJyZW50IHtcblx0XHRcdFx0LmNhcmQtdGlsZSB7XG5cdFx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZVkoMCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHR+IC5zbGljay1zbGlkZSB7XG5cdFx0XHRcdFx0LmNhcmQtdGlsZSB7XG5cdFx0XHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMy4xMjV2dykgcm90YXRlWSgtMjVkZWcpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5zbGljay1wcmV2LFxuXHQuc2xpY2stbmV4dCB7XG5cdFx0ei1pbmRleDogNTtcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcblx0XHR9XG5cdH1cblxuXHQuc2xpY2stcHJldiB7XG5cdFx0bGVmdDogNSU7XG5cdH1cblx0LnNsaWNrLW5leHQge1xuXHRcdHJpZ2h0OiA1JTtcblx0fVxuXG5cdC5jYXJkLXRpbGUge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRib3JkZXItcmFkaXVzOiAwO1xuXHRcdG92ZXJmbG93OiB2aXNpYmxlO1xuXG5cdFx0LmNhcmQtaW1hZ2Uge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRcdC5pbWFnZS1jb250YWluZXIge1xuXHRcdFx0XHRcdHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKDgwMC8xMTM2KTtcblx0XHRcdFx0fVxuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHRvcDogMzZweDtcblx0XHRcdFx0XHRyaWdodDogMzZweDtcblx0XHRcdFx0XHRsZWZ0OiAzNnB4O1xuXHRcdFx0XHRcdGJvdHRvbTogMzZweDtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRib3JkZXI6IHNvbGlkIDJweCAkcHJpbWFyeS1jb2xvcjtcblx0XHRcdFx0XHR6LWluZGV4OiAzO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UgdXApIHtcblx0XHRcdFx0LmltYWdlLWNvbnRhaW5lciB7XG5cdFx0XHRcdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0XHRcdFx0aGVpZ2h0OiA4MHZoO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmNhcmQtY29udGVudCB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLDAuOTApO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcblx0XHRcdFx0cGFkZGluZzogcmVtLWNhbGMoNTIgNDggMzIpO1xuXHRcdFx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdFx0XHR6LWluZGV4OiA1O1xuXHRcdFx0XHRib3gtc2hhZG93OiAwIDhweCAyNHB4IDAgcmdiYSgwLDAsMCwwLjE2KTtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdFx0XHRcdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwwLjkwKTtcblx0XHRcdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNCk7XG5cdFx0XHRcdGJvdHRvbTogMjUlO1xuXHRcdFx0XHRsZWZ0OiAtMzJweDtcblx0XHRcdFx0cmlnaHQ6IDUwJTtcblx0XHRcdFx0Ym9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNSUpO1xuXHRcdFx0XHRwYWRkaW5nOiByZW0tY2FsYyg1MiA0OCAzMik7XG5cdFx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHRcdHotaW5kZXg6IDU7XG5cdFx0XHRcdGJveC1zaGFkb3c6IDAgOHB4IDI0cHggMCByZ2JhKDAsMCwwLDAuMTYpO1xuXG5cdFx0XHRcdGg1IHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRwIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjQpOyB9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG4iLCIubW9kdWxlLXJvb21zLWNhcm91c2VsIHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcblx0XHQuc2xpY2stc2xpZGUge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHR9XG5cdH1cblxuXHQuc2xpY2stcHJldixcblx0LnNsaWNrLW5leHQge1xuXHRcdHdpZHRoOiByZW0tY2FsYyg0OCk7XG5cdFx0aGVpZ2h0OiByZW0tY2FsYyg0OCk7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHByaW1hcnktY29sb3IsIC41Mik7XG5cdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHR6LWluZGV4OiA1O1xuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNCk7XG5cdFx0XHRsaW5lLWhlaWdodDogcmVtLWNhbGMoNDgpO1xuXHRcdH1cblx0fVxuXHQuc2xpY2stcHJldiB7XG5cdFx0bGVmdDogMDtcblx0XHRib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdFx0Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6IGljb24tY2hhcihjaGV2cm9uLWxlZnQtc21hbGwpO1xuXHRcdH1cblx0fVxuXHQuc2xpY2stbmV4dCB7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdFx0Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogaWNvbi1jaGFyKGNoZXZyb24tcmlnaHQtc21hbGwpO1xuXHRcdH1cblx0fVxuXG5cdC5jYXJkLXRpbGUge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHRcdC5jYXJkLWltYWdlIHtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHRcdC5pbWFnZS1jb250YWluZXIge1xuXHRcdFx0XHRcdHBhZGRpbmctdG9wOiBwZXJjZW50YWdlKDM4Ni81MzQpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0XHRib3R0b206IDA7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgkZGFyay1ncmF5LCAwLjYpO1xuXHRcdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogJGdsb2JhbC10cmFuc2l0aW9uO1xuXHRcdFx0XHRcdHotaW5kZXg6IDE7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LmNhcmQtY29udGVudCB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdGxlZnQ6IDUwJTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUyJSwtNDklKTtcblx0XHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMTcuNSAyNC41KTtcblx0XHRcdFx0Ym9yZGVyOiBzb2xpZCAxcHggJHByaW1hcnktY29sb3I7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0dHJhbnNpdGlvbjogJGdsb2JhbC10cmFuc2l0aW9uO1xuXHRcdFx0XHR6LWluZGV4OiA1O1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0bGV0dGVyLXNwYWNpbmc6IDFweDtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNCk7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuc2xpY2stc2xpZGUge1xuXHRcdGEgeyBcblx0XHRcdC5jYXJkLWNvbnRlbnQge1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQ7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0YTpob3ZlciAuY2FyZC10aWxlIHtcblx0XHRcdC5jYXJkLWltYWdlIHtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LmNhcmQtY29udGVudCB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBDb3JyZWN0aXZlIHBhZGRpbmcgXG4uc2VjdGlvbi1jb250YWluZXIge1xuXHQmLm1vZHVsZS1yb29tcyB7XG5cdFx0cGFkZGluZy1ib3R0b206IDA7XG5cdH1cbn0iLCIvKiBpbmplY3Q6dGVtcGxhdGVzICovXG5AaW1wb3J0IFwidGVtcGxhdGVzL19jb250YWN0LnNjc3NcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvX2RlZmF1bHQtcGFnZS5zY3NzXCI7XG5AaW1wb3J0IFwidGVtcGxhdGVzL19lcnJvci00MDQuc2Nzc1wiO1xuQGltcG9ydCBcInRlbXBsYXRlcy9fZmFxLnNjc3NcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvX2Zvb2QtZHJpbmsuc2Nzc1wiO1xuQGltcG9ydCBcInRlbXBsYXRlcy9fZnJvbnQtcGFnZS5zY3NzXCI7XG5AaW1wb3J0IFwidGVtcGxhdGVzL19nYWxsZXJ5LnNjc3NcIjtcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvX2hpc3Rvcnkuc2Nzc1wiO1xuQGltcG9ydCBcInRlbXBsYXRlcy9fbWFwLXBhZ2Uuc2Nzc1wiO1xuQGltcG9ydCBcInRlbXBsYXRlcy9fbWVldGluZ3Muc2Nzc1wiO1xuQGltcG9ydCBcInRlbXBsYXRlcy9fcm9vbXMuc2Nzc1wiO1xuQGltcG9ydCBcInRlbXBsYXRlcy9fc3BlY2lhbC1vZmZlcnMuc2Nzc1wiO1xuQGltcG9ydCBcInRlbXBsYXRlcy9fdmVudWUuc2Nzc1wiO1xuLyogZW5kaW5qZWN0ICovXG4iLCIucGFnZS1jb250YWN0IHtcblx0Lm1hcC1jb250YWluZXIge1xuXHRcdCNob3RlbC1tYXAge1xuXHRcdFx0aGVpZ2h0OiAoNDE2dncvMzc1ICogMTAwKTtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdFx0aGVpZ2h0OiAxMDB2aDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuY29udGFjdC1jb250ZW50IHtcblx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoMzYpO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDEwOCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdFx0Lm1lZGl1bS0xMiB7XG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IGp1c3RpZnk7XG5cdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCYudGV4dC1sZWZ0IHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuXHRcdFx0XHR9XG5cdFx0XHRcdC5jb250YWN0LWJ0biB7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdHdpZHRoOiBjYWxjKDUwJSAtIDEwcHgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5jb250YWN0LW5hbWUge1xuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygyNCk7XG5cdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcblx0fVxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cdH1cbn1cblxuLmNvbnRhY3QtYnRuIHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdEBpbmNsdWRlIGJ1dHRvbigkc3R5bGU6IGhvbGxvdyk7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGxldHRlci1zcGFjaW5nOiAycHg7XG5cdFx0d2lkdGg6IGNhbGMoNTAlIC0gI3ttYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKX0pO1xuXG5cdFx0Ji5leHBhbmRlZCB7XG5cdFx0XHRAaW5jbHVkZSBidXR0b24tZXhwYW5kKCk7XG5cdFx0fVxuXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogYXR0cih0aXRsZSk7XG5cdFx0fVxuXHRcdHNwYW4ge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cblx0XHQrIC5jb250YWN0LWJ0biB7XG5cdFx0XHRtYXJnaW4tbGVmdDogbWFwLWdldCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCBzbWFsbCk7XG5cdFx0fVxuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRsZXR0ZXItc3BhY2luZzogMC41cHg7XG5cblx0XHQmLmV4cGFuZGVkIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXG5cdFx0KyAuY29udGFjdC1idG4ge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDEwKTtcblx0XHRcdGJvcmRlci1sZWZ0OiBzb2xpZCAxcHggJHdoaXRlO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiByZW0tY2FsYygxMCk7XG5cdFx0fVxuXHR9XG59XG4iLCIucGFnZS5kZWZhdWx0LXRlbXBsYXRlIHtcblx0LnNlY3Rpb24tY29udGFpbmVyLmZ1bGwtaGVpZ2h0IHtcblx0XHQmOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoMjIwKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuIiwiLmVycm9yNDA0IHtcblx0LmVycm9yLXRleHQge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDUwJTtcblx0XHRsZWZ0OiA1MCU7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR9XG59XG4iLCIuZmFxLXNlY3Rpb24ge1xuXHRAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UgdXApfSBhbmQgKG1heC1oZWlnaHQ6IDgwMHB4KSB7XG5cdFx0d2lkdGg6IHBlcmNlbnRhZ2UoMi8zKTtcblx0XHRtYXJnaW46IDAgYXV0bztcblx0fVxuXG5cdGgxIHsgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTIpOyB9XG5cdHA6Zmlyc3Qtb2YtdHlwZSB7IG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMyKTsgfVxuXHRiIHsgbGV0dGVyLXNwYWNpbmc6IDFweDsgfVxufVxuXG4uYWNjb3JkaW9uLXRpbGUge1xuXHRib3JkZXI6IHNvbGlkIDFweCAkd2hpdGU7XG5cdGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMyKTtcblx0fVxuXG5cdC5hY2NvcmRpb24tdGlsZS10aXRsZSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygyOCAzMik7XG5cdFx0cGFkZGluZy1yaWdodDogcmVtLWNhbGMoNDApO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0Zm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxMyk7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDEuODZweDtcblxuXHRcdEBpbmNsdWRlIGljb24ocGx1cywgYWZ0ZXIsIGZhbHNlKTtcblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiByZW0tY2FsYygzNik7XG5cdFx0XHQvL3JpZ2h0OiByZW0tY2FsYygyNCk7XG5cdFx0XHRyaWdodDogcmVtLWNhbGMoMTgpO1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cdFx0XHRjb2xvcjogJHByaW1hcnktY29sb3I7XG5cdFx0fVxuXHR9XG5cblx0LmFjY29yZGlvbi10aWxlLWNvbnRlbnQge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMCAzMiAyOCk7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuXG5cdFx0cCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG5cdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGEge1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdCY6aG92ZXIsICY6Zm9jdXMge1xuXHRcdFx0XHRjb2xvcjogcmdiYSgkd2hpdGUsIDAuOCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ji5leHBhbmRlZCB7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblx0XHRjb2xvcjogJGRhcmstZ3JheTtcblxuXHRcdC5hY2NvcmRpb24tdGlsZS10aXRsZSB7XG5cdFx0XHRAaW5jbHVkZSBpY29uKG1pbnVzLCBhZnRlciwgZmFsc2UpO1xuXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Y29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmFjY29yZGlvbi10aWxlLWNvbnRlbnQge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXHR9XG59XG5cbi5mYXEtbWFzb25yeSB7XG5cdC5hY2NvcmRpb24tdGlsZSwgLmZhcS1ncmlkLXNpemVyIHtcblx0XHR3aWR0aDogMTAwJTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHRcdHdpZHRoOiBjYWxjKDUwJSAtIDI0cHgpO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHR3aWR0aDogY2FsYygje3BlcmNlbnRhZ2UoMS8zKX0gLSAxNnB4KTtcblx0XHR9XG5cblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UgdXApfSBhbmQgKG1heC1oZWlnaHQ6IDgwMHB4KSB7XG5cdFx0XHR3aWR0aDogY2FsYyg1MCUgLSAyNHB4KTtcblx0XHR9XG5cdH1cbn1cbiIsIi50ZW1wbGF0ZS1mb29kLWRyaW5rIHtcblx0I21haW4tY29udGFpbmVyIHtcblx0XHRtaW4taGVpZ2h0OiAwO1xuXHR9XG59XG5cbi5zZWN0aW9uLWNvbnRhaW5lciB7XG5cblx0KyAua3dpY2tzLXNlY3Rpb24ge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYyg5MCk7XG5cdFx0fVxuXHR9XG59XG5cbi5zZWN0aW9uLWNvbnRhaW5lci5mb29kLWRyaW5rLXRhYnMge1xuXHRwYWRkaW5nLWJvdHRvbTogMDtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoNTYpO1xuXG5cdFx0LmNvbHVtbiB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMik7XG5cblx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5yZXN0YXVyYW50LWxvZ28ge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogNTAlO1xuXHRsZWZ0OiA1MCU7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR0cmFuc2l0aW9uOiBhbGwgNDAwbXMgZWFzZS1pbi1vdXQ7XG5cdHotaW5kZXg6IDU7XG59XG5cblxuXG4ucGFuZWwtcHJldmlldyB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRyaWdodDogMDtcblx0Ym90dG9tOiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHR0cmFuc2l0aW9uOiBhbGwgNDAwbXMgZWFzZS1pbi1vdXQ7XG5cdHotaW5kZXg6IDM7XG59XG5cbiNyZXN0YXVyYW50LXNlbGVjdG9yIHtcblx0QGluY2x1ZGUgY2xlYXJmaXg7XG5cdGhlaWdodDogKDQxMHZ3LzE0MDAgKiAxMDApO1xuXG5cdD4gbGkge1xuXHRcdHRvcDogMDtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdH1cblxuXHQucmVzdGF1cmFudC1sb2dvIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1MCU7XG5cdFx0bGVmdDogNTAlO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlLWluLW91dDtcblx0fVxuXG5cdC5yZXN0YXVyYW50LWxvZ28ge1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdC8vaGVpZ2h0OiAxMjBweDtcblx0XHRtYXgtd2lkdGg6IG5vbmU7XG5cdFx0bWF4LWhlaWdodDogMTAwJTtcblx0fVxuXG5cdC5yZXN0YXVyYW50LWxvZ28tdGV4dCB7XG5cdFx0QGV4dGVuZCAucmVzdGF1cmFudC1sb2dvO1xuXHRcdGZvbnQtZmFtaWx5OiAkZGlzcGxheS1mb250LWZhbWlseTtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDMyKTtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRsaW5lLWhlaWdodDogMS4zNTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cblxuXHQua3dpY2tzLWV4cGFuZGVkIHtcblx0XHQucmVzdGF1cmFudC1zbGlkZXIge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHR9XG5cdFx0LnJlc3RhdXJhbnQtbG9nbyB7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0ei1pbmRleDogLTE7XG5cdFx0fVxuXG5cdFx0LnBhbmVsLXByZXZpZXcge1xuXHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdHotaW5kZXg6IC0xO1xuXHRcdH1cblx0fVxuXG5cdC5yZXN0YXVyYW50LXNsaWRlciB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdHotaW5kZXg6IDE7XG5cblx0XHQmLCA+IGRpdiwgLnNsaWNrLWxpc3QsIC5zbGljay10cmFjayB7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0fVxuXG5cdFx0LmltYWdlLWNvbnRhaW5lciB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHR9XG5cdH1cbn1cblxuLnRhYi1wYW5lbCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogKDI1NnZ3LzM3NiAqIDEwMCk7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cbi50YWItY29udGVudCB7XG5cdGhlaWdodDogMDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHQ+IC5yb3cge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDQwIDAgNDgpO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMTMwKSAwO1xuXHRcdH1cblx0fVxuXG5cdGE6bm90KFtjbGFzcyo9J2J0biddKSB7XG5cdFx0Y29sb3I6IGluaGVyaXQ7XG5cdFx0Jjpob3ZlciwgJjpmb2N1cyB7XG5cdFx0XHRjb2xvcjogJGFuY2hvci1jb2xvcjtcblx0XHR9XG5cdH1cblxuXHQuc29jaWFsIHtcblx0XHRhIHtcblx0XHRcdGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuXHRcdFx0Jjpob3ZlciwgJjpmb2N1cyB7XG5cdFx0XHRcdGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHAsIC5vcGVudGFibGUsIHVsIHtcblx0XHRtYXJnaW4tYm90dG9tOiAzcmVtO1xuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblx0fVxuXG59XG5cbi5yZXN0YXVyYW50LXNsaWRlciB7XG5cdG1heC13aWR0aDogMTAwdnc7XG5cdC5zbGljay1kb3RzIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRyaWdodDogcmVtLWNhbGMoMjIpO1xuXHRcdH1cblx0fVxuXG5cdC5zbGljay1zbGlkZSB7XG5cdFx0YmFja2dyb3VuZDoge1xuXHRcdFx0c2l6ZTogY292ZXI7XG5cdFx0XHRyZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdHBvc2l0aW9uOiBjZW50ZXI7XG5cdFx0fVxuXHR9XG59XG5cbiNyZXN0YXVyYW50LXRhYnMge1xuXHR3aWR0aDogMTAwJTtcblx0LnJldmVhbGVkIHtcblx0XHQucmVzdGF1cmFudC1sb2dvLCAucGFuZWwtcHJldmlldyB7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0ei1pbmRleDogLTE7XG5cdFx0fVxuXHR9XG5cblx0LnJlc3RhdXJhbnQtc2xpZGVyIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdHotaW5kZXg6IDE7XG5cblx0XHQmLCA+IGRpdiwgLnNsaWNrLWxpc3QsIC5zbGljay10cmFjayB7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0fVxuXG5cdFx0LmltYWdlLWNvbnRhaW5lciB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHR9XG5cdH1cbn1cblxuLnJlc3RhdXJhbnQtcGFuZWwtb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuNyk7XG4gICAgei1pbmRleDogNDtcbiAgICB0cmFuc2l0aW9uOiAuMzVzIGVhc2UtaW4tb3V0O1xuXG4gICAgJjpob3ZlciB7XG4gICAgXHRiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDApO1xuICAgIH1cbn1cbiIsIi5ob21lIHtcblx0LmludHJvLXNlY3Rpb24ge1xuXHRcdC5jYXJvdXNlbC1jb250YWluZXIge1xuXHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdH1cblx0XHQrIC5zZWN0aW9uLWNvbnRhaW5lciB7XG5cdFx0XHR6LWluZGV4OiAxO1xuXHRcdFx0Ly9tYXJnaW4tdG9wOiAyMHZoO1xuXHRcdH1cblx0fVxufVxuIiwiLmdhbGxlcnktc2VjdGlvbiB7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHR6LWluZGV4OiAwO1xuXHR9XG59XG5cbi5zZWxlY3RyaWMtZ2FsbGVyeS1zZWxlY3Qge1xuXHRtYXJnaW4tdG9wOiByZW0tY2FsYyg2MSk7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cbi5jYXB0aW9uLXdyYXBwZXIge1xuXHRwYWRkaW5nOiByZW0tY2FsYygxNiAyNCAwKTtcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgkZGFyay1ncmF5LCAwLjgpO1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcblx0bGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0bGVmdDogcmVtLWNhbGMoMjMzKTtcblx0XHRib3R0b206IHJlbS1jYWxjKDY0KTtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygwIDI4KTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRib3JkZXItbGVmdDogc29saWQgMnB4ICR3aGl0ZTtcblx0XHRtYXgtd2lkdGg6IHBlcmNlbnRhZ2UoMi81KTtcblx0XHR6LWluZGV4OiA1O1xuXHR9XG59XG5cbi50ZW1wbGF0ZS1nYWxsZXJ5IHtcblx0bWFpbiB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR9XG59XG5cbi5nYWxsZXJ5LWNhcm91c2VsIHtcblx0LmltYWdlLWNvbnRhaW5lciB7XG5cdFx0aGVpZ2h0OiAoMjU2dncvMzc2ICogMTAwKTtcblx0fVxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0LmltYWdlLWNvbnRhaW5lciB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwdmg7XG5cdFx0fVxuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiAnJztcblx0XHRcdGhlaWdodDogcmVtLWNhbGMoMTc2KTtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdG9wYWNpdHk6IDAuNTI7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoLTE4MGRlZywgcmdiYSgzNCwzMiwzMiwwLjAwKSAwJSwgIzIyMjAyMCAxMDAlKTtcblx0XHRcdHotaW5kZXg6IDE7XG5cdFx0fVxuXHR9XG59XG5cbi5nYWxsZXJ5LXRodW1ibmFpbHMge1xuXHRAaW5jbHVkZSBjbGVhcmZpeDtcblx0cGFkZGluZzogcmVtLWNhbGMoOCAxNiAzOCk7XG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGRhcmstZ3JheSwgMC44KTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogNTAlO1xuXHRcdGxlZnQ6IDA7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdHdpZHRoOiByZW0tY2FsYygxMjQpO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdHBhZGRpbmc6IDA7XG5cdH1cblxuXHQuZ2FsbGVyeS1zZWxlY3Qtd3JhcHBlciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0LmdhbGxlcnktc2VsZWN0LWJ1dHRvbiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMjQpO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGxldHRlci1zcGFjaW5nOiAxLjcxcHg7XG5cdFx0bGluZS1oZWlnaHQ6ICgxOC8xMik7XG5cdFx0Ym9yZGVyLXJhZGl1czogMDtcblx0XHRib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI0U2RTZFNjtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0Lmljb24tZ2FsbGVyeSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuXHRcdH1cblx0fVxuXG5cdC5nYWxsZXJ5LXN1Yi1tZW51IHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdEBleHRlbmQgLm5vLWJ1bGxldDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDEwMCU7XG5cdFx0d2lkdGg6IHJlbS1jYWxjKDMxMik7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgjZTdlN2U3LCAwLjkpO1xuXHRcdGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAycHg7XG5cdFx0Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDJweDtcblxuXHRcdGxpIHtcblx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxMyk7XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogMS44NnB4O1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuXHRcdFx0KyBsaSB7XG5cdFx0XHRcdGJvcmRlci10b3A6IHNvbGlkIDFweCAjY2NjO1xuXHRcdFx0fVxuXG5cdFx0XHQmLmFjdGl2ZSB7XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGNvbG9yOiAjQUNBQ0FDO1xuXHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRhIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMjQgMjgpO1xuXHRcdFx0Y29sb3I6ICRibGFjaztcblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdFtkYXRhLXRodW1iXSB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoOCk7XG5cdFx0d2lkdGg6IDI1JTtcblx0XHRmbG9hdDogbGVmdDtcblxuXHRcdGltZyB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG5cdFx0XHR3aWR0aDogcGVyY2VudGFnZSgxLzYpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYyg3IDIwKTtcblx0XHR9XG5cblx0XHQmLnNsaWNrLWN1cnJlbnQge1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0Ym9yZGVyOiBzb2xpZCA0cHggJHByaW1hcnktY29sb3I7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmdhbGxlcnktbmF2IHtcblx0XHQuc2xpY2stbGlzdCB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDcgMCk7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoI2U3ZTdlNywgMC45KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuc2xpY2stcHJldixcblx0XHQuc2xpY2stbmV4dCB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiBzdGF0aWM7XG5cdFx0XHR0cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDE2KTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDA7XG5cblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxMCk7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdFx0XHRjb2xvcjogJHByaW1hcnktY29sb3I7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnNsaWNrLXByZXYge1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdEBpbmNsdWRlIGljb24oY2hldnJvbi11cCwgYmVmb3JlLCBmYWxzZSk7XG5cdFx0fVxuXG5cdFx0LnNsaWNrLW5leHQge1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRAaW5jbHVkZSBpY29uKGNoZXZyb24tZG93biwgYmVmb3JlLCBmYWxzZSk7XG5cdFx0XHRib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMnB4O1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHR9XG5cdH1cbn1cbiIsIiAuaGlzdG9yeS1pbWFnZS1ibG9jayB7XG4gXHRtYXJnaW46IHtcbiBcdFx0dG9wOiByZW0tY2FsYygxNCk7XG4gXHRcdGJvdHRvbTogcmVtLWNhbGMoMzYpO1xuIFx0fVxuXG4gXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdCBcdG1hcmdpbjoge1xuXHQgXHRcdHRvcDogcmVtLWNhbGMoNTApO1xuXHQgXHRcdGJvdHRvbTogcmVtLWNhbGMoNjUpO1xuXHQgXHR9XG5cdCB9XG5cbiBcdGltZyB7XG4gXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG5cbiBcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHQgXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI1KTtcblx0IFx0fVxuIFx0fVxuXG4gXHRmaWdjYXB0aW9uIHsgXG4gXHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiBcdH1cbiB9XG5cbiAuaGlzdG9yeS1jdGEge1xuXHRtYXJnaW46IHtcblx0XHR0b3A6IHJlbS1jYWxjKDI1KTtcblx0XHRib3R0b206IHJlbS1jYWxjKDM1KTtcblx0fVxuXG4gXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0bWFyZ2luOiB7XG5cdFx0XHR0b3A6IHJlbS1jYWxjKDUwKTtcblx0XHRcdGJvdHRvbTogcmVtLWNhbGMoMTAwKTtcblx0XHR9XG5cdH1cbiB9IiwiLnRlbXBsYXRlLW1hcCB7XG5cdC5tYXAtY29udGFpbmVyIHtcblx0XHQjbmVpZ2hib3Job29kLW1hcCB7XG5cdFx0XHRoZWlnaHQ6ICg0MTZ2dy8zNzUgKiAxMDApO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0XHRoZWlnaHQ6IDEwMHZoO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4ubWFwLWFjY29yZGlvbi13cmFwcGVyIHtcblx0d2lkdGg6IDEwMCU7XG5cdHBhZGRpbmc6IHJlbS1jYWxjKDI4IDI0IDQ0KTtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdGhlaWdodDogMTAwdmg7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMTkyKSAwO1xuXHRcdG1heC1oZWlnaHQ6IDEwMHZoO1xuXHR9XG59XG5cbiNtYXAtYWNjb3JkaW9uIHtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogMTAwJTtcblxuXHQudWktYWNjb3JkaW9uLWhlYWRlciB7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGZvbnQtZmFtaWx5OiAkZGlzcGxheS1mb250LWZhbWlseTtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcblx0XHRsaW5lLWhlaWdodDogKDQwLzI0KTtcblx0XHRsZXR0ZXItc3BhY2luZzogMS41cHg7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygxNiAwKTtcblx0XHRib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJG1lZGl1bS1ncmF5O1xuXHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0b3V0bGluZTogbm9uZTtcblxuXHRcdEBpbmNsdWRlIGljb24ocGx1cywgYWZ0ZXIsIGZhbHNlKTtcblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuXHRcdFx0XHRyaWdodDogcmVtLWNhbGMoMzMpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYudWktYWNjb3JkaW9uLWhlYWRlci1hY3RpdmUge1xuXHRcdFx0QGluY2x1ZGUgaWNvbihtaW51cywgYWZ0ZXIsIGZhbHNlKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygzNCA1OCk7XG5cblx0XHRcdCY6Zmlyc3Qtb2YtdHlwZSB7XG5cdFx0XHRcdGJvcmRlci10b3A6IHNvbGlkIDFweCAkbWVkaXVtLWdyYXk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnVpLWFjY29yZGlvbi1jb250ZW50IHtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkbWVkaXVtLWdyYXk7XG5cdH1cbn1cblxuLmxvY2F0aW9ucy13cmFwcGVyIHtcblx0aGVpZ2h0OiAxMDAlO1xuXG5cdC5sb2NhdGlvbnMtbGlzdCB7XG5cdFx0QGV4dGVuZCAubm8tYnVsbGV0O1xuXHRcdGxpIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cblx0XHRcdC5ib3JkZXItYnRuIHtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxcmVtO1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuXHRcdFx0fVxuXG5cdFx0XHQubG9jYXRpb24tbGluayB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdGNvbG9yOiBpbmhlcml0O1xuXHRcdFx0XHRwYWRkaW5nOiByZW0tY2FsYygxMiAwKTtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNCk7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRsZXR0ZXItc3BhY2luZzogMS43NXB4O1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBpY29uKGNoZXZyb24tZG93biwgYWZ0ZXIsIGZhbHNlKTtcblxuXHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0XHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0XHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoOCk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji5hY3RpdmUge1xuXHRcdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgtMSk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDI0IDU4KTtcblxuXHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCsgbGkge1xuXHRcdFx0XHRib3JkZXItdG9wOiBzb2xpZCAxcHggJG1lZGl1bS1ncmF5O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5sb2NhdGlvbi1pbmZvIHtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XHRoZWlnaHQ6IDA7XG5cblx0XHRcdD4gLnJvdyB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiBtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKS8tMjtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiBtYXAtZ2V0KCRncmlkLWNvbHVtbi1ndXR0ZXIsIHNtYWxsKS8tMjtcblxuXHRcdFx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYyg4KTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cbiIsIi5zZWN0aW9uLWNvbnRhaW5lci5mbG9vci1wbGFuLXNlY3Rpb24ge1xuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDk2KTtcblxuXHRcdCsgLnNlY3Rpb24tY29udGFpbmVyIHtcblx0XHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYyg5Nik7XG5cdFx0fVxuXHR9XG59XG5cbi52ZW51ZS1saW5rIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRhIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdHotaW5kZXg6IDU7XG5cdH1cblx0LmltYWdlLWNvbnRhaW5lciB7XG5cdFx0aGVpZ2h0OiAoMjU2dncvMzc2ICogMTAwKTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0XHRoZWlnaHQ6ICgzMjB2dy8xNjAwICogMTAwKTtcblx0XHR9XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRkYXJrLWdyYXksIDAuNjQpO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdHRyYW5zaXRpb246ICRnbG9iYWwtdHJhbnNpdGlvbjtcblx0XHR9XG5cdH1cblx0ZmlnY2FwdGlvbiB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDUwJTtcblx0XHRsZWZ0OiA1MCU7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cblx0XHRoMyB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG5cdFx0fVxuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0LmltYWdlLWNvbnRhaW5lciB7XG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoIzM4MzczQSwgMC4xNik7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5zZWN0aW9uLWNvbnRhaW5lci52ZW51ZS1kZXNjcmlwdGlvbi1zZWN0aW9uIHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygxMzApO1xuXHR9XG59XG4iLCIuc2luZ2xlLXJvb21zIHtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdC5sYW5kaW5nLWNhcm91c2VsIC5zbGlkZS1ob2xkZXIge1xuXHRcdFx0aGVpZ2h0OiAoMzc1dncvNDE2KSAqIDEwMDtcblx0XHR9XG5cdH1cbn1cblxuLmdyaWQtdGlsZS53LWltYWdlLWxpbmsge1xuXHQuaW1hZ2UtY29udGFpbmVyIHtcblx0XHQvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0aW1nIHsgb3BhY2l0eTogMTsgfVxuXG5cdFx0XHQucm9vbXMtb3ZlcnZpZXctbGluayB7IG9wYWNpdHk6IDA7IH1cblx0XHR9XG5cblx0XHRpbWcge1xuXHRcdFx0Ly8gb3BhY2l0eTogMC42NTtcblx0XHRcdHRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBlYXNlLWluLW91dDtcblx0XHR9XG5cdH1cblxuXHQucm9vbXMtb3ZlcnZpZXctbGluayB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRyaWdodDogMDtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ei1pbmRleDogMTA7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGVhc2UtaW4tb3V0O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG5cdH1cblxuXHQuaG92ZXItY2FwdGlvbiB7XG5cdFx0ei1pbmRleDogMTE7XG5cdH1cbn1cbiIsIi5zZWN0aW9uLWNvbnRhaW5lci5zcGVjaWFsLW9mZmVycy1zZWN0aW9uIHtcblx0cGFkZGluZzogcmVtLWNhbGMoOTYpIDA7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdG1pbi1oZWlnaHQ6IDEwMHZoO1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDI1NikgMDtcblx0fVxufVxuXG4uc3BlY2lhbC1vZmZlcnMtY2Fyb3VzZWwge1xuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdC5zbGljay1zbGlkZSB7XG5cdFx0XHRwYWRkaW5nOiAwIG1hcC1nZXQoJGdyaWQtY29sdW1uLWd1dHRlciwgbWVkaXVtKS8yO1xuXHRcdFx0cGVyc3BlY3RpdmU6IDkwMHB4O1xuXHRcdFx0dHJhbnNpdGlvbjogJGdsb2JhbC10cmFuc2l0aW9uO1xuXG5cdFx0XHQuY2FyZC10aWxlIHtcblx0XHRcdFx0b3BhY2l0eTogMC4xNTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDV2dykgcm90YXRlWSgyNWRlZyk7XG5cdFx0XHRcdHRyYW5zaXRpb246IGluaGVyaXQ7XG5cdFx0XHR9XG5cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdHotaW5kZXg6IC0xO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xuXHRcdFx0XHRib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDV2dykgcm90YXRlWSgyNWRlZyk7XG5cdFx0XHR9XG5cblx0XHRcdCYuc2xpY2stY3VycmVudCxcblx0XHRcdCYuc2xpY2stYWN0aXZlLFxuXHRcdFx0Ji5zbGljay1jZW50ZXIsXG5cdFx0XHQmOm50aC1jaGlsZCgyKTpudGgtbGFzdC1jaGlsZCgyKSB7XG5cdFx0XHRcdC5jYXJkLXRpbGUge1xuXHRcdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGVZKDApICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogcm90YXRlWSgwKSAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0fiAuc2xpY2stc2xpZGU6bm90KC5zbGljay1jdXJyZW50KTpub3QoLnNsaWNrLWFjdGl2ZSk6bm90KC5zbGljay1jZW50ZXIpIHtcblx0XHRcdFx0XHQuY2FyZC10aWxlIHtcblx0XHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXZ3KSByb3RhdGVZKC0yNWRlZyk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTV2dykgcm90YXRlWSgtMjVkZWcpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5zbGljay1wcmV2LFxuXHQuc2xpY2stbmV4dCB7XG5cdFx0ei1pbmRleDogNTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuXHRcdH1cblx0fVxuXG5cdC5zbGljay1wcmV2IHtcblx0XHRsZWZ0OiA1JTtcblx0fVxuXHQuc2xpY2stbmV4dCB7XG5cdFx0cmlnaHQ6IDUlO1xuXHR9XG5cblx0LmNhcmQtdGlsZSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0LmNhcmQtaW1hZ2Uge1xuXHRcdFx0XHQuaW1hZ2UtY29udGFpbmVyIHtcblx0XHRcdFx0XHRwYWRkaW5nLXRvcDogcGVyY2VudGFnZSgyNTYvMzI3KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LmNhcmQtY29udGVudCB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0Y29sb3I6ICRkYXJrLWdyYXk7XG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg0NCkgKyAxcmVtO1xuXG5cdFx0XHRcdGgzIHtcblx0XHRcdFx0XHRjb2xvcjogJGRhcmstZ3JheTtcblx0XHRcdFx0XHRzbWFsbCB7XG5cdFx0XHRcdFx0XHRjb2xvcjogaW5oZXJpdDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQucmctYnRuLCAuYm9yZGVyLWJ0biB7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRcdHJpZ2h0OiAwO1xuXG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG5cdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRcdFx0Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcblx0XHRcdFx0XHRib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdFx0LmNhcmQtaW1hZ2Uge1xuXHRcdFx0XHQuaW1hZ2UtY29udGFpbmVyIHtcblx0XHRcdFx0XHRwYWRkaW5nLXRvcDogcGVyY2VudGFnZSgyODQvNDAwKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuY2FyZC1jb250ZW50IHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJG9mZmVyLWNhcmQtY29udGVudC1iYWNrZ3JvdW5kO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcblx0XHRcdFx0cGFkZGluZzogcmVtLWNhbGMoNTAgMzYpIDJyZW07XG5cblx0XHRcdFx0aDUge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDJyZW07XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRwIHtcblx0XHRcdFx0XHQucmctYnRuIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5yZy1idG4gKyBhIHtcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiByZW0tY2FsYygyNCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCYuZmVhdHVyZWQge1xuXHRcdFx0XHQuY2FyZC1jb250ZW50IHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZmVhdHVyZWQtb2ZmZXItYmFja2dyb3VuZDtcblx0XHRcdFx0XHRjb2xvcjogJGRhcmstZ3JheTtcblxuXHRcdFx0XHRcdGgzIHtcblx0XHRcdFx0XHRcdGNvbG9yOiBpbmhlcml0O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLm1vZHVsZS12ZW51ZS1jYXJvdXNlbCB7XG5cdEBleHRlbmQgLm1vZHVsZS1wcm9tb3MtY2Fyb3VzZWw7XG5cdC5jYXJkLXRpbGUgLmNhcmQtaW1hZ2Uge1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XG59XG5cbi5mbG9hdGluZy1jYXB0aW9uIHtcblx0ZGlzcGxheTogbm9uZTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwwLjkwKTtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0Zm9udC1zaXplOiByZW0tY2FsYygxNCk7XG5cdGJvdHRvbTogMjAlO1xuXHRsZWZ0OiAxMSU7XG5cdHJpZ2h0OiBwZXJjZW50YWdlKDMvNSk7XG5cdGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUlKTtcblx0cGFkZGluZzogcmVtLWNhbGMoMzIgNDggMzIpO1xuXHRjb2xvcjogJGJsYWNrO1xuXHR6LWluZGV4OiA1O1xuXHRib3gtc2hhZG93OiAwIDhweCAyNHB4IDAgcmdiYSgwLDAsMCwwLjE2KTtcblxuXHRoNSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuXHR9XG5cblx0cDpsYXN0LWNoaWxkIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdHJpZ2h0OiA1MCU7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59XG5cbi5mbG9vcnBsYW4tdGh1bWJuYWlsIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZmxvb3JwbGFuLWJ0biB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogcGVyY2VudGFnZSgxLzEyKTtcblx0cmlnaHQ6IHBlcmNlbnRhZ2UoMS82KTtcblx0YmFja2dyb3VuZC1jb2xvcjogI0ZERkRGRDtcblx0d2lkdGg6IHJlbS1jYWxjKDQ4KTtcblx0aGVpZ2h0OiByZW0tY2FsYyg0OCk7XG5cdGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg0OCk7XG5cdGNvbG9yOiAkYmxhY2s7XG5cdGJvcmRlci1yYWRpdXM6IDJweDtcbn1cblxuLnZlbnVlLWRlc2NyaXB0aW9uLXNlY3Rpb24ge1xuXHQuY29udGVudCB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzIpO1xuXHRcdH1cblx0fVxufVxuXG4uc2VjdGlvbi1jb250YWluZXIudmVudWUtZGVzY3JpcHRpb24tc2VjdGlvbiArIC5zZWN0aW9uLWNvbnRhaW5lci5mb3JtLXNlY3Rpb24ge1xuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG5cdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoMTgwKTtcblx0fVxufVxuIl19 */

.nav-footer.bottom-z-index{z-index:0}figure.venue-link{overflow:hidden}figure.venue-link .image-container img.object-fit{height:100%}.em_video{max-width:720px;margin:auto;text-align:center}.em_video iframe{max-width:100%}.video_container{position:relative;padding-bottom:56.25%;padding-top:30px;height:0;overflow:hidden}.video_container iframe,.video_container object,.video_container embed{position:absolute;top:0;left:0;width:100%;height:100%}.page-contact .contact-map-container-wrapper{-webkit-align-self:stretch;-moz-align-self:stretch;align-self:stretch;-ms-flex-item-align:stretch}.page-contact .contact-content-wrapper .contact-content{width:100%}#restaurant-selector .kwicks-expanded .restaurant-slider .restaurant-slide{background-position:center;background-size:cover;background-repeat:no-repeat}#restaurant-selector .kwicks-expanded .restaurant-slider .restaurant-slide img{opacity:0}.nav-header .logo-wrapper{display:-webkit-box;display:-moz-box;display:box;display:-webkit-flex;display:-moz-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-moz-box-align:center;box-align:center;-webkit-align-items:center;-moz-align-items:center;-ms-align-items:center;-o-align-items:center;align-items:center;-ms-flex-align:center}.nav-header .logo-wrapper .home-link{vertical-align:unset;margin-top:0}.nav-header .logo-wrapper .home-link .header_logo{vertical-align:unset}.nav-mobile-menu-area{display:-webkit-box;display:-moz-box;display:box;display:-webkit-flex;display:-moz-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-moz-box-align:center;box-align:center;-webkit-align-items:center;-moz-align-items:center;-ms-align-items:center;-o-align-items:center;align-items:center;-ms-flex-align:center;-webkit-box-pack:end;-moz-box-pack:end;box-pack:end;-webkit-justify-content:flex-end;-moz-justify-content:flex-end;-ms-justify-content:flex-end;-o-justify-content:flex-end;justify-content:flex-end;-ms-flex-pack:end}.nav-header .logo-wrapper{top:0}.nav-header .mobile-menu-toggle{top:0}.landing-carousel-bg-video,.image-grid-video{position:absolute;left:50%;top:50%;min-width:101%;min-height:101%;width:auto;height:auto;-webkit-transform:translate(-50%,-50%) translateZ(0);transform:translate(-50%,-50%) translateZ(0)}.image-grid-section .image-container{overflow:hidden}html.touchevents .landing-carousel-bg-video,html.touchevents .image-grid-video{display:none}.gallery-carousel .image-container{height:auto !important}.page-template-template-gallery-php .carousel-container{background-color:rgba(34,32,32,.8)}@media screen and (min-width:64em){.page-template-template-gallery-php .section-container.full-height{min-height:90vh}}@media screen and (max-width:39.9375em){.card-tile .card-content p.button-area{display:block}.module-offers-carousel .card-tile .card-content h5.h1{margin-bottom:1rem}.module-offers-carousel .card-tile .card-content ul{text-align:left}.module-offers-carousel .card-tile .card-content p,.module-offers-carousel .card-tile .card-content ul{display:block;text-transform:none}.home .section-container.module-offers{padding-top:2rem}.module-offers-carousel .slick-slide>.flex-container>.flex-child-auto,.module-offers-carousel .slick-slide>.flex-container>.flex-child-auto .card-tile{height:100%}}.before-after-section{padding:5em 0}.before-after-section .before-after-column{margin-bottom:4em}.before-after-section .before-after-column .twentytwenty-container img{width:100%}.before-after-section .before-after-row h3,.before-after-section .before-after-row p{margin-bottom:.5em}.before-after-section .before-after-row:last-child{margin-bottom:0}#restaurant-tabs .restaurant-logo-text{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);display:block;-webkit-transition:all .4s ease-in-out;transition:all .4s ease-in-out;z-index:5;color:#fff;font-size:32px;font-weight:700;line-height:1.35;text-transform:uppercase;text-align:center;height:auto}#restaurant-tabs .revealed .restaurant-logo-text{opacity:0;z-index:-1}#restaurant-tabs .revealed .restaurant-panel-overlay{opacity:0}
@import url('https://fonts.googleapis.com/css?family=Libre+Baskerville');
.page-id-452 .section-container.form-section select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: #fff'></polygon></svg>")};}
img.wp-smiley,img.emoji{display:inline !important;border:none !important;box-shadow:none !important;height:1em !important;width:1em !important;margin:0 .07em !important;vertical-align:-.1em !important;background:0 0 !important;padding:0 !important}
.wp-block-audio figcaption{margin-top:.5em;margin-bottom:1em;color:#555d66;text-align:center;font-size:13px}.wp-block-audio audio{width:100%;min-width:300px}.editor-block-list__layout .reusable-block-edit-panel{align-items:center;background:#f8f9f9;color:#555d66;display:flex;flex-wrap:wrap;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:13px;top:-14px;margin:0 -14px;padding:8px 14px;position:relative;z-index:7}.editor-block-list__layout .editor-block-list__layout .reusable-block-edit-panel{margin:0 -14px;padding:8px 14px}.editor-block-list__layout .reusable-block-edit-panel .reusable-block-edit-panel__spinner{margin:0 5px}.editor-block-list__layout .reusable-block-edit-panel .reusable-block-edit-panel__info{margin-right:auto}.editor-block-list__layout .reusable-block-edit-panel .reusable-block-edit-panel__label{margin-right:8px;white-space:nowrap;font-weight:600}.editor-block-list__layout .reusable-block-edit-panel .reusable-block-edit-panel__title{flex:1 1 100%;font-size:14px;height:30px;margin:4px 0 8px}.editor-block-list__layout .reusable-block-edit-panel .components-button.reusable-block-edit-panel__button{flex-shrink:0}@media (min-width:960px){.editor-block-list__layout .reusable-block-edit-panel{flex-wrap:nowrap}.editor-block-list__layout .reusable-block-edit-panel .reusable-block-edit-panel__title{margin:0}.editor-block-list__layout .reusable-block-edit-panel .components-button.reusable-block-edit-panel__button{margin:0 0 0 5px}}.editor-block-list__layout .reusable-block-indicator{background:#fff;border-left:1px dashed #e2e4e7;color:#555d66;border-bottom:1px dashed #e2e4e7;top:-14px;height:30px;padding:4px;position:absolute;z-index:1;width:30px;right:-14px}.wp-block-button{color:#fff;margin-bottom:1.5em}.wp-block-button.aligncenter{text-align:center}.wp-block-button.alignright{text-align:right}.wp-block-button__link{background-color:#32373c;border:none;border-radius:28px;box-shadow:none;color:inherit;cursor:pointer;display:inline-block;font-size:18px;margin:0;padding:12px 24px;text-align:center;text-decoration:none;white-space:normal;overflow-wrap:break-word}.wp-block-button__link:active,.wp-block-button__link:focus,.wp-block-button__link:hover{color:inherit}.is-style-squared .wp-block-button__link{border-radius:0}.is-style-outline{color:#32373c}.is-style-outline .wp-block-button__link{background:transparent;border:2px solid}.wp-block-categories.alignleft{margin-right:2em}.wp-block-categories.alignright{margin-left:2em}.wp-block-columns{display:flex;flex-wrap:wrap}@media (min-width:782px){.wp-block-columns{flex-wrap:nowrap}}.wp-block-column{flex:1;margin-bottom:1em;flex-basis:100%;min-width:0;word-break:break-word;overflow-wrap:break-word}@media (min-width:600px){.wp-block-column{flex-basis:50%;flex-grow:0}}@media (min-width:600px){.wp-block-column:nth-child(odd){margin-right:32px}.wp-block-column:not(:first-child),.wp-block-column:nth-child(2n){margin-left:32px}.wp-block-column:not(:last-child){margin-right:32px}}.wp-block-cover,.wp-block-cover-image{position:relative;background-color:#000;background-size:cover;background-position:50%;min-height:430px;width:100%;margin:0 0 1.5em;display:flex;justify-content:center;align-items:center;overflow:hidden}.wp-block-cover-image.has-left-content,.wp-block-cover.has-left-content{justify-content:flex-start}.wp-block-cover-image.has-left-content .wp-block-cover-image-text,.wp-block-cover-image.has-left-content .wp-block-cover-text,.wp-block-cover-image.has-left-content h2,.wp-block-cover.has-left-content .wp-block-cover-image-text,.wp-block-cover.has-left-content .wp-block-cover-text,.wp-block-cover.has-left-content h2{margin-left:0;text-align:left}.wp-block-cover-image.has-right-content,.wp-block-cover.has-right-content{justify-content:flex-end}.wp-block-cover-image.has-right-content .wp-block-cover-image-text,.wp-block-cover-image.has-right-content .wp-block-cover-text,.wp-block-cover-image.has-right-content h2,.wp-block-cover.has-right-content .wp-block-cover-image-text,.wp-block-cover.has-right-content .wp-block-cover-text,.wp-block-cover.has-right-content h2{margin-right:0;text-align:right}.wp-block-cover-image .wp-block-cover-image-text,.wp-block-cover-image .wp-block-cover-text,.wp-block-cover-image h2,.wp-block-cover .wp-block-cover-image-text,.wp-block-cover .wp-block-cover-text,.wp-block-cover h2{color:#fff;font-size:2em;line-height:1.25;z-index:1;margin-bottom:0;max-width:610px;padding:14px;text-align:center}.wp-block-cover-image .wp-block-cover-image-text a,.wp-block-cover-image .wp-block-cover-image-text a:active,.wp-block-cover-image .wp-block-cover-image-text a:focus,.wp-block-cover-image .wp-block-cover-image-text a:hover,.wp-block-cover-image .wp-block-cover-text a,.wp-block-cover-image .wp-block-cover-text a:active,.wp-block-cover-image .wp-block-cover-text a:focus,.wp-block-cover-image .wp-block-cover-text a:hover,.wp-block-cover-image h2 a,.wp-block-cover-image h2 a:active,.wp-block-cover-image h2 a:focus,.wp-block-cover-image h2 a:hover,.wp-block-cover .wp-block-cover-image-text a,.wp-block-cover .wp-block-cover-image-text a:active,.wp-block-cover .wp-block-cover-image-text a:focus,.wp-block-cover .wp-block-cover-image-text a:hover,.wp-block-cover .wp-block-cover-text a,.wp-block-cover .wp-block-cover-text a:active,.wp-block-cover .wp-block-cover-text a:focus,.wp-block-cover .wp-block-cover-text a:hover,.wp-block-cover h2 a,.wp-block-cover h2 a:active,.wp-block-cover h2 a:focus,.wp-block-cover h2 a:hover{color:#fff}.wp-block-cover-image.has-parallax,.wp-block-cover.has-parallax{background-attachment:fixed}@supports (-webkit-overflow-scrolling:touch){.wp-block-cover-image.has-parallax,.wp-block-cover.has-parallax{background-attachment:scroll}}.wp-block-cover-image.has-background-dim:before,.wp-block-cover.has-background-dim:before{content:"";position:absolute;top:0;left:0;bottom:0;right:0;background-color:inherit;opacity:.5;z-index:1}.wp-block-cover-image.has-background-dim.has-background-dim-10:before,.wp-block-cover.has-background-dim.has-background-dim-10:before{opacity:.1}.wp-block-cover-image.has-background-dim.has-background-dim-20:before,.wp-block-cover.has-background-dim.has-background-dim-20:before{opacity:.2}.wp-block-cover-image.has-background-dim.has-background-dim-30:before,.wp-block-cover.has-background-dim.has-background-dim-30:before{opacity:.3}.wp-block-cover-image.has-background-dim.has-background-dim-40:before,.wp-block-cover.has-background-dim.has-background-dim-40:before{opacity:.4}.wp-block-cover-image.has-background-dim.has-background-dim-50:before,.wp-block-cover.has-background-dim.has-background-dim-50:before{opacity:.5}.wp-block-cover-image.has-background-dim.has-background-dim-60:before,.wp-block-cover.has-background-dim.has-background-dim-60:before{opacity:.6}.wp-block-cover-image.has-background-dim.has-background-dim-70:before,.wp-block-cover.has-background-dim.has-background-dim-70:before{opacity:.7}.wp-block-cover-image.has-background-dim.has-background-dim-80:before,.wp-block-cover.has-background-dim.has-background-dim-80:before{opacity:.8}.wp-block-cover-image.has-background-dim.has-background-dim-90:before,.wp-block-cover.has-background-dim.has-background-dim-90:before{opacity:.9}.wp-block-cover-image.has-background-dim.has-background-dim-100:before,.wp-block-cover.has-background-dim.has-background-dim-100:before{opacity:1}.wp-block-cover-image.alignleft,.wp-block-cover-image.alignright,.wp-block-cover.alignleft,.wp-block-cover.alignright{max-width:305px;width:100%}.wp-block-cover-image:after,.wp-block-cover:after{display:block;content:"";font-size:0;min-height:inherit}@supports ((position:-webkit-sticky) or (position:sticky)){.wp-block-cover-image:after,.wp-block-cover:after{content:none}}.wp-block-cover-image.aligncenter,.wp-block-cover-image.alignleft,.wp-block-cover-image.alignright,.wp-block-cover.aligncenter,.wp-block-cover.alignleft,.wp-block-cover.alignright{display:flex}.wp-block-cover__video-background{position:absolute;top:50%;left:50%;transform:translateX(-50%) translateY(-50%);width:100%;height:100%;z-index:0;-o-object-fit:cover;object-fit:cover}.editor-block-list__block[data-type="core/embed"][data-align=left] .editor-block-list__block-edit,.editor-block-list__block[data-type="core/embed"][data-align=right] .editor-block-list__block-edit,.wp-block-embed.alignleft,.wp-block-embed.alignright{max-width:360px;width:100%}.wp-block-embed{margin-bottom:1em}.wp-block-embed figcaption{margin-top:.5em;margin-bottom:1em;color:#555d66;text-align:center;font-size:13px}.wp-embed-responsive .wp-block-embed.wp-embed-aspect-1-1 .wp-block-embed__wrapper,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-1-2 .wp-block-embed__wrapper,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-4-3 .wp-block-embed__wrapper,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-9-16 .wp-block-embed__wrapper,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-18-9 .wp-block-embed__wrapper,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-21-9 .wp-block-embed__wrapper{position:relative}.wp-embed-responsive .wp-block-embed.wp-embed-aspect-1-1 .wp-block-embed__wrapper:before,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-1-2 .wp-block-embed__wrapper:before,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-4-3 .wp-block-embed__wrapper:before,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-9-16 .wp-block-embed__wrapper:before,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper:before,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-18-9 .wp-block-embed__wrapper:before,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-21-9 .wp-block-embed__wrapper:before{content:"";display:block;padding-top:50%}.wp-embed-responsive .wp-block-embed.wp-embed-aspect-1-1 .wp-block-embed__wrapper iframe,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-1-2 .wp-block-embed__wrapper iframe,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-4-3 .wp-block-embed__wrapper iframe,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-9-16 .wp-block-embed__wrapper iframe,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper iframe,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-18-9 .wp-block-embed__wrapper iframe,.wp-embed-responsive .wp-block-embed.wp-embed-aspect-21-9 .wp-block-embed__wrapper iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.wp-embed-responsive .wp-block-embed.wp-embed-aspect-21-9 .wp-block-embed__wrapper:before{padding-top:42.85%}.wp-embed-responsive .wp-block-embed.wp-embed-aspect-18-9 .wp-block-embed__wrapper:before{padding-top:50%}.wp-embed-responsive .wp-block-embed.wp-embed-aspect-16-9 .wp-block-embed__wrapper:before{padding-top:56.25%}.wp-embed-responsive .wp-block-embed.wp-embed-aspect-4-3 .wp-block-embed__wrapper:before{padding-top:75%}.wp-embed-responsive .wp-block-embed.wp-embed-aspect-1-1 .wp-block-embed__wrapper:before{padding-top:100%}.wp-embed-responsive .wp-block-embed.wp-embed-aspect-9-6 .wp-block-embed__wrapper:before{padding-top:66.66%}.wp-embed-responsive .wp-block-embed.wp-embed-aspect-1-2 .wp-block-embed__wrapper:before{padding-top:200%}.wp-block-file{margin-bottom:1.5em}.wp-block-file.aligncenter{text-align:center}.wp-block-file.alignright{text-align:right}.wp-block-file .wp-block-file__button{background:#32373c;border-radius:2em;color:#fff;font-size:13px;padding:.5em 1em}.wp-block-file a.wp-block-file__button{text-decoration:none}.wp-block-file a.wp-block-file__button:active,.wp-block-file a.wp-block-file__button:focus,.wp-block-file a.wp-block-file__button:hover,.wp-block-file a.wp-block-file__button:visited{box-shadow:none;color:#fff;opacity:.85;text-decoration:none}.wp-block-file *+.wp-block-file__button{margin-left:.75em}.wp-block-gallery{display:flex;flex-wrap:wrap;list-style-type:none;padding:0}.wp-block-gallery .blocks-gallery-image,.wp-block-gallery .blocks-gallery-item{margin:0 16px 16px 0;display:flex;flex-grow:1;flex-direction:column;justify-content:center;position:relative}.wp-block-gallery .blocks-gallery-image figure,.wp-block-gallery .blocks-gallery-item figure{margin:0;height:100%}@supports ((position:-webkit-sticky) or (position:sticky)){.wp-block-gallery .blocks-gallery-image figure,.wp-block-gallery .blocks-gallery-item figure{display:flex;align-items:flex-end;justify-content:flex-start}}.wp-block-gallery .blocks-gallery-image img,.wp-block-gallery .blocks-gallery-item img{display:block;max-width:100%;height:auto;width:100%}@supports ((position:-webkit-sticky) or (position:sticky)){.wp-block-gallery .blocks-gallery-image img,.wp-block-gallery .blocks-gallery-item img{width:auto}}.wp-block-gallery .blocks-gallery-image figcaption,.wp-block-gallery .blocks-gallery-item figcaption{position:absolute;bottom:0;width:100%;max-height:100%;overflow:auto;padding:40px 10px 5px;color:#fff;text-align:center;font-size:13px;background:linear-gradient(0deg,rgba(0,0,0,.7),rgba(0,0,0,.3) 60%,transparent)}.wp-block-gallery .blocks-gallery-image figcaption img,.wp-block-gallery .blocks-gallery-item figcaption img{display:inline}.wp-block-gallery.is-cropped .blocks-gallery-image a,.wp-block-gallery.is-cropped .blocks-gallery-image img,.wp-block-gallery.is-cropped .blocks-gallery-item a,.wp-block-gallery.is-cropped .blocks-gallery-item img{width:100%}@supports ((position:-webkit-sticky) or (position:sticky)){.wp-block-gallery.is-cropped .blocks-gallery-image a,.wp-block-gallery.is-cropped .blocks-gallery-image img,.wp-block-gallery.is-cropped .blocks-gallery-item a,.wp-block-gallery.is-cropped .blocks-gallery-item img{height:100%;flex:1;-o-object-fit:cover;object-fit:cover}}.wp-block-gallery .blocks-gallery-image,.wp-block-gallery .blocks-gallery-item{width:calc((100% - 16px)/2)}.wp-block-gallery .blocks-gallery-image:nth-of-type(2n),.wp-block-gallery .blocks-gallery-item:nth-of-type(2n){margin-right:0}.wp-block-gallery.columns-1 .blocks-gallery-image,.wp-block-gallery.columns-1 .blocks-gallery-item{width:100%;margin-right:0}@media (min-width:600px){.wp-block-gallery.columns-3 .blocks-gallery-image,.wp-block-gallery.columns-3 .blocks-gallery-item{width:calc((100% - 32px)/3);margin-right:16px}.wp-block-gallery.columns-4 .blocks-gallery-image,.wp-block-gallery.columns-4 .blocks-gallery-item{width:calc((100% - 48px)/4);margin-right:16px}.wp-block-gallery.columns-5 .blocks-gallery-image,.wp-block-gallery.columns-5 .blocks-gallery-item{width:calc((100% - 64px)/5);margin-right:16px}.wp-block-gallery.columns-6 .blocks-gallery-image,.wp-block-gallery.columns-6 .blocks-gallery-item{width:calc((100% - 80px)/6);margin-right:16px}.wp-block-gallery.columns-7 .blocks-gallery-image,.wp-block-gallery.columns-7 .blocks-gallery-item{width:calc((100% - 96px)/7);margin-right:16px}.wp-block-gallery.columns-8 .blocks-gallery-image,.wp-block-gallery.columns-8 .blocks-gallery-item{width:calc((100% - 112px)/8);margin-right:16px}.wp-block-gallery.columns-1 .blocks-gallery-image:nth-of-type(1n),.wp-block-gallery.columns-1 .blocks-gallery-item:nth-of-type(1n),.wp-block-gallery.columns-2 .blocks-gallery-image:nth-of-type(2n),.wp-block-gallery.columns-2 .blocks-gallery-item:nth-of-type(2n),.wp-block-gallery.columns-3 .blocks-gallery-image:nth-of-type(3n),.wp-block-gallery.columns-3 .blocks-gallery-item:nth-of-type(3n),.wp-block-gallery.columns-4 .blocks-gallery-image:nth-of-type(4n),.wp-block-gallery.columns-4 .blocks-gallery-item:nth-of-type(4n),.wp-block-gallery.columns-5 .blocks-gallery-image:nth-of-type(5n),.wp-block-gallery.columns-5 .blocks-gallery-item:nth-of-type(5n),.wp-block-gallery.columns-6 .blocks-gallery-image:nth-of-type(6n),.wp-block-gallery.columns-6 .blocks-gallery-item:nth-of-type(6n),.wp-block-gallery.columns-7 .blocks-gallery-image:nth-of-type(7n),.wp-block-gallery.columns-7 .blocks-gallery-item:nth-of-type(7n),.wp-block-gallery.columns-8 .blocks-gallery-image:nth-of-type(8n),.wp-block-gallery.columns-8 .blocks-gallery-item:nth-of-type(8n){margin-right:0}}.wp-block-gallery .blocks-gallery-image:last-child,.wp-block-gallery .blocks-gallery-item:last-child{margin-right:0}.wp-block-gallery .blocks-gallery-item.has-add-item-button{width:100%}.wp-block-gallery.alignleft,.wp-block-gallery.alignright{max-width:305px;width:100%}.wp-block-gallery.aligncenter,.wp-block-gallery.alignleft,.wp-block-gallery.alignright{display:flex}.wp-block-gallery.aligncenter .blocks-gallery-item figure{justify-content:center}.wp-block-image{max-width:100%;margin-bottom:1em;margin-left:0;margin-right:0}.wp-block-image img{max-width:100%}.wp-block-image.aligncenter{text-align:center}.wp-block-image.alignfull img,.wp-block-image.alignwide img{width:100%}.wp-block-image .aligncenter,.wp-block-image .alignleft,.wp-block-image .alignright,.wp-block-image.is-resized{display:table;margin-left:0;margin-right:0}.wp-block-image .aligncenter>figcaption,.wp-block-image .alignleft>figcaption,.wp-block-image .alignright>figcaption,.wp-block-image.is-resized>figcaption{display:table-caption;caption-side:bottom}.wp-block-image .alignleft{float:left;margin-right:1em}.wp-block-image .alignright{float:right;margin-left:1em}.wp-block-image .aligncenter{margin-left:auto;margin-right:auto}.wp-block-image figcaption{margin-top:.5em;margin-bottom:1em;color:#555d66;text-align:center;font-size:13px}.wp-block-latest-comments__comment{font-size:15px;line-height:1.1;list-style:none;margin-bottom:1em}.has-avatars .wp-block-latest-comments__comment{min-height:36px;list-style:none}.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-excerpt,.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-meta{margin-left:52px}.has-dates .wp-block-latest-comments__comment,.has-excerpts .wp-block-latest-comments__comment{line-height:1.5}.wp-block-latest-comments__comment-excerpt p{font-size:14px;line-height:1.8;margin:5px 0 20px}.wp-block-latest-comments__comment-date{color:#8f98a1;display:block;font-size:12px}.wp-block-latest-comments .avatar,.wp-block-latest-comments__comment-avatar{border-radius:24px;display:block;float:left;height:40px;margin-right:12px;width:40px}.wp-block-latest-posts.alignleft{margin-right:2em}.wp-block-latest-posts.alignright{margin-left:2em}.wp-block-latest-posts.is-grid{display:flex;flex-wrap:wrap;padding:0;list-style:none}.wp-block-latest-posts.is-grid li{margin:0 16px 16px 0;width:100%}@media (min-width:600px){.wp-block-latest-posts.columns-2 li{width:calc(50% - 16px)}.wp-block-latest-posts.columns-3 li{width:calc(33.33333% - 16px)}.wp-block-latest-posts.columns-4 li{width:calc(25% - 16px)}.wp-block-latest-posts.columns-5 li{width:calc(20% - 16px)}.wp-block-latest-posts.columns-6 li{width:calc(16.66667% - 16px)}}.wp-block-latest-posts__post-date{display:block;color:#6c7781;font-size:13px}.wp-block-media-text{display:grid;grid-template-rows:auto;align-items:center;grid-template-areas:"media-text-media media-text-content";grid-template-columns:50% auto}.wp-block-media-text.has-media-on-the-right{grid-template-areas:"media-text-content media-text-media";grid-template-columns:auto 50%}.wp-block-media-text .wp-block-media-text__media{grid-area:media-text-media;margin:0}.wp-block-media-text .wp-block-media-text__content{word-break:break-word;grid-area:media-text-content;padding:0 8%}.wp-block-media-text>figure>img,.wp-block-media-text>figure>video{max-width:unset;width:100%;vertical-align:middle}@media (max-width:600px){.wp-block-media-text.is-stacked-on-mobile{grid-template-columns:100%!important;grid-template-areas:"media-text-media" "media-text-content"}.wp-block-media-text.is-stacked-on-mobile.has-media-on-the-right{grid-template-areas:"media-text-content" "media-text-media"}}p.is-small-text{font-size:14px}p.is-regular-text{font-size:16px}p.is-large-text{font-size:36px}p.is-larger-text{font-size:48px}p.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;line-height:.68;font-weight:100;margin:.05em .1em 0 0;text-transform:uppercase;font-style:normal}p.has-drop-cap:not(:focus):after{content:"";display:table;clear:both;padding-top:14px}p.has-background{padding:20px 30px}p.has-text-color a{color:inherit}.wp-block-pullquote{padding:3em 0;margin-left:0;margin-right:0;text-align:center}.wp-block-pullquote.alignleft,.wp-block-pullquote.alignright{max-width:305px}.wp-block-pullquote.alignleft p,.wp-block-pullquote.alignright p{font-size:20px}.wp-block-pullquote p{font-size:28px;line-height:1.6}.wp-block-pullquote cite,.wp-block-pullquote footer{position:relative}.wp-block-pullquote .has-text-color a{color:inherit}.wp-block-pullquote:not(.is-style-solid-color){background:none}.wp-block-pullquote.is-style-solid-color{border:none}.wp-block-pullquote.is-style-solid-color blockquote{margin-left:auto;margin-right:auto;text-align:left;max-width:60%}.wp-block-pullquote.is-style-solid-color blockquote p{margin-top:0;margin-bottom:0;font-size:32px}.wp-block-pullquote.is-style-solid-color blockquote cite{text-transform:none;font-style:normal}.wp-block-pullquote cite{color:inherit}.wp-block-quote.is-large,.wp-block-quote.is-style-large{margin:0 0 16px;padding:0 1em}.wp-block-quote.is-large p,.wp-block-quote.is-style-large p{font-size:24px;font-style:italic;line-height:1.6}.wp-block-quote.is-large cite,.wp-block-quote.is-large footer,.wp-block-quote.is-style-large cite,.wp-block-quote.is-style-large footer{font-size:18px;text-align:right}.wp-block-separator.is-style-wide{border-bottom-width:1px}.wp-block-separator.is-style-dots{background:none;border:none;text-align:center;max-width:none;line-height:1;height:auto}.wp-block-separator.is-style-dots:before{content:"\00b7 \00b7 \00b7";color:#191e23;font-size:20px;letter-spacing:2em;padding-left:2em;font-family:serif}p.wp-block-subhead{font-size:1.1em;font-style:italic;opacity:.75}.wp-block-table.has-fixed-layout{table-layout:fixed;width:100%}.wp-block-table.aligncenter,.wp-block-table.alignleft,.wp-block-table.alignright{display:table;width:auto}.wp-block-table.is-style-stripes{border-spacing:0;border-collapse:inherit;border-bottom:1px solid #f3f4f5}.wp-block-table.is-style-stripes tr:nth-child(odd){background-color:#f3f4f5}.wp-block-table.is-style-stripes td{border-color:transparent}.wp-block-text-columns,.wp-block-text-columns.aligncenter{display:flex}.wp-block-text-columns .wp-block-column{margin:0 16px;padding:0}.wp-block-text-columns .wp-block-column:first-child{margin-left:0}.wp-block-text-columns .wp-block-column:last-child{margin-right:0}.wp-block-text-columns.columns-2 .wp-block-column{width:50%}.wp-block-text-columns.columns-3 .wp-block-column{width:33.33333%}.wp-block-text-columns.columns-4 .wp-block-column{width:25%}pre.wp-block-verse{white-space:nowrap;overflow:auto}.wp-block-video{margin-left:0;margin-right:0}.wp-block-video video{max-width:100%}@supports ((position:-webkit-sticky) or (position:sticky)){.wp-block-video [poster]{-o-object-fit:cover;object-fit:cover}}.wp-block-video.aligncenter{text-align:center}.wp-block-video figcaption{margin-top:.5em;margin-bottom:1em;color:#555d66;text-align:center;font-size:13px}.has-pale-pink-background-color.has-pale-pink-background-color{background-color:#f78da7}.has-vivid-red-background-color.has-vivid-red-background-color{background-color:#cf2e2e}.has-luminous-vivid-orange-background-color.has-luminous-vivid-orange-background-color{background-color:#ff6900}.has-luminous-vivid-amber-background-color.has-luminous-vivid-amber-background-color{background-color:#fcb900}.has-light-green-cyan-background-color.has-light-green-cyan-background-color{background-color:#7bdcb5}.has-vivid-green-cyan-background-color.has-vivid-green-cyan-background-color{background-color:#00d084}.has-pale-cyan-blue-background-color.has-pale-cyan-blue-background-color{background-color:#8ed1fc}.has-vivid-cyan-blue-background-color.has-vivid-cyan-blue-background-color{background-color:#0693e3}.has-very-light-gray-background-color.has-very-light-gray-background-color{background-color:#eee}.has-cyan-bluish-gray-background-color.has-cyan-bluish-gray-background-color{background-color:#abb8c3}.has-very-dark-gray-background-color.has-very-dark-gray-background-color{background-color:#313131}.has-pale-pink-color.has-pale-pink-color{color:#f78da7}.has-vivid-red-color.has-vivid-red-color{color:#cf2e2e}.has-luminous-vivid-orange-color.has-luminous-vivid-orange-color{color:#ff6900}.has-luminous-vivid-amber-color.has-luminous-vivid-amber-color{color:#fcb900}.has-light-green-cyan-color.has-light-green-cyan-color{color:#7bdcb5}.has-vivid-green-cyan-color.has-vivid-green-cyan-color{color:#00d084}.has-pale-cyan-blue-color.has-pale-cyan-blue-color{color:#8ed1fc}.has-vivid-cyan-blue-color.has-vivid-cyan-blue-color{color:#0693e3}.has-very-light-gray-color.has-very-light-gray-color{color:#eee}.has-cyan-bluish-gray-color.has-cyan-bluish-gray-color{color:#abb8c3}.has-very-dark-gray-color.has-very-dark-gray-color{color:#313131}.has-small-font-size{font-size:13px}.has-normal-font-size,.has-regular-font-size{font-size:16px}.has-medium-font-size{font-size:20px}.has-large-font-size{font-size:36px}.has-huge-font-size,.has-larger-font-size{font-size:42px}
.attachment img[src$=".svg"],.widget_media_image img[src$=".svg"]{width:100%}.attachment img[src$=".svg"],.widget_media_image img[src$=".svg"]{width:100%}.attachment svg,.widget_media_image svg{max-width:100%;height:auto}
body{background-color:#f4f1e5;color:rgba(40,33,31,.8)}.default-page-section,.default-page-section h1.display,.default-page-section h2.display,.default-page-section h3.display,.default-page-section h4.display,.default-page-section h5.display,.default-page-section h6.display,.default-page-section h1,.default-page-section h2,.default-page-section h3,.default-page-section h4,.default-page-section h5,.default-page-section h6{color:#fff}.default-page-section .page-full-background:before{background-color:rgba(34,32,32,.8)}.nav-footer button span,.nav-header button span,h1.white,h2.white,h3.white,h4.white,h5.white,h6.white{color:rgba(40,33,31,.8)}a,.morph-content a:not(.rg-btn):not(.border-btn){color:#20494e}a:hover,a:focus,.morph-content a:not(.rg-btn):not(.border-btn):active,.morph-content a:not(.rg-btn):not(.border-btn):hover,.morph-content a:not(.rg-btn):not(.border-btn):focus{color:#c79b1c}#provenance-properties a:hover svg{fill:#20494e}@media screen and (min-width:64em){.contact-btn.expanded{color:rgba(40,33,31,.8)}}@media screen and (min-width:40em){.module-offers-carousel .card-tile .card-content p a:not(.rg-btn){color:#20494e}.module-offers-carousel .card-tile .card-content p a:not(.rg-btn):focus,.module-offers-carousel .card-tile .card-content p a:not(.rg-btn):hover{color:#c79b1c}}.tab-content .social a,.tab-content a:not([class*=btn]):focus,.tab-content a:not([class*=btn]):hover{color:#20494e}#preloader{background-color:rgba(32,73,78,.75)}#site-footer{background-color:#f4f1e5;color:rgba(50,50,50,.8)}#site-footer a{color:#20494e}.subscribe button[type=submit] svg{fill:rgba(50,50,50,.8)}.subscribe input[type=email]::-webkit-input-placeholder{color:rgba(50,50,50,.8)}.subscribe input[type=email]::-moz-placeholder{color:rgba(50,50,50,.8)}.subscribe input[type=email]:-ms-input-placeholder{color:rgba(50,50,50,.8)}.subscribe input[type=email]:-moz-placeholder{color:rgba(50,50,50,.8)}.landing-carousel .slide-holder .slide-caption-wrapper .slide-caption span,.landing-carousel .slide-holder .slide-caption-wrapper,.landing-carousel .slide-holder .slide-caption-wrapper .slide-caption h3{color:rgba(255,255,255,.9)}@media screen and (min-width:40em){.module-promos-carousel .card-tile .card-content{color:rgba(50,50,50,.8)}.module-promos-carousel .card-tile .card-content{background-color:rgba(255,255,255,.85)}.module-promos-carousel .card-tile .card-content h5{color:#20494e}}@media screen and (max-width:39.9375em){.module-promos-carousel .card-tile .card-content{color:#20494e}.module-promos-carousel .card-tile .card-content{background-color:#ebe9e8}}.module-promos-carousel .slick-prev:before,.module-promos-carousel .slick-next:before{color:#20494e}.module-promos-carousel .card-tile .card-image:before{border-color:rgba(199,155,28,.6)}.module-rooms-carousel .slick-next,.module-rooms-carousel .slick-prev{background-color:#20494e}@media screen and (max-width:39.9375em){.card-tile .card-content{border:none;color:#20494e}}@media screen and (min-width:40em){.module-rooms-carousel .card-tile .card-image:before{background-color:rgba(89,85,77,.5)}.module-rooms-carousel .slick-slide a:hover .card-tile .card-image:before{opacity:1;background-color:rgba(34,32,32,.6)}}.floating-caption{background-color:rgba(255,255,255,.9);color:rgba(50,50,50,.8)}@media screen and (min-width:40em){.module-offers-carousel .card-tile .card-content h5{color:#20494e}.module-offers-carousel .card-tile .card-content,.special-offers-carousel .card-tile .card-content{color:rgba(50,50,50,.8);background-color:#fff}.module-offers-carousel .card-tile .card-content h1 small,.module-offers-carousel .card-tile .card-content h2 small,.module-offers-carousel .card-tile .card-content h3 small,.module-offers-carousel .card-tile .card-content h4 small,.module-offers-carousel .card-tile .card-content h5 small,.module-offers-carousel .card-tile .card-content h6 small{color:rgba(50,50,50,.8)}.special-offers-carousel .card-tile .card-content h1 small,.special-offers-carousel .card-tile .card-content h2 small,.special-offers-carousel .card-tile .card-content h3 small,.special-offers-carousel .card-tile .card-content h4 small,.special-offers-carousel .card-tile .card-content h5 small,.special-offers-carousel .card-tile .card-content h6 small{color:}.special-offers-carousel .card-tile.featured .card-content{background-color:#20494e;color:#fff}}@media screen and (max-width:39.9375em){.module-offers-carousel .card-tile .card-content,.special-offers-carousel .card-tile .card-content{color:#20494e;background-color:#fff}.module-offers-carousel .card-tile .card-content h1 small,.module-offers-carousel .card-tile .card-content h2 small,.module-offers-carousel .card-tile .card-content h3 small,.module-offers-carousel .card-tile .card-content h4 small,.module-offers-carousel .card-tile .card-content h5 small,.module-offers-carousel .card-tile .card-content h6 small{color:#20494e}.special-offers-carousel .card-tile .card-content h1 small,.special-offers-carousel .card-tile .card-content h2 small,.special-offers-carousel .card-tile .card-content h3 small,.special-offers-carousel .card-tile .card-content h4 small,.special-offers-carousel .card-tile .card-content h5 small,.special-offers-carousel .card-tile .card-content h6 small{color:}}.module-offers-carousel .slick-prev:before,.module-offers-carousel .slick-next:before,.special-offers-carousel .slick-prev:before,.special-offers-carousel .slick-next:before{color:#20494e}.floorplan-btn{background-color:#fff}.modaal-container{background-color:#ffffff00}.rg-btn,.mobile-book-now-btn{background-color:#20494e;color:#c79b1c;border:1px solid;border-color:#c79b1c}.rg-btn:hover,.rg-btn:focus,.mobile-book-now-btn:hover,.mobile-book-now-btn:focus{background-color:#c79b1c;color:#fff;border-color:}@media screen and (max-width:39.9375em){.special-offers-carousel .card-tile .card-content .border-btn.prov_default_btn1,.special-offers-carousel .card-tile .card-content .rg-btn.prov_default_btn1{background-color:#20494e;color:#c79b1c;border:none}}.border-btn{background-color:transparent;color:#20494e;border:1px solid;border-color:#c79b1c}.border-btn:hover,.border-btn:focus{background-color:transparent;color:#c79b1c;border-color:#20494e}.border-btn.white{background-color:transparent}.border-btn.white:hover,.border-btn.white:focus{color:#20494e;border-color:transparent;background-color:#fff}@media screen and (max-width:63.9375em){.contact-btn.expanded,.contact-btn{background-color:transparent;color:#20494e;border:1px solid;border-color:#c79b1c}.contact-btn.expanded:hover,.contact-btn.expanded:focus,.contact-btn:hover,.contact-btn:focus{background-color:transparent;color:#c79b1c;border-color:#20494e}}.prov_btn1{background-color:#20494e;color:#f4f1e5;border:1px solid;border-color:#20494e}.prov_btn1:hover,.prov_btn1:focus,.special-offers-carousel .card-tile .card-content p .rg-btn.prov_btn1:hover,.special-offers-carousel .card-tile .card-content p .rg-btn.prov_btn1:focus,.module-offers-carousel .card-tile .card-content p a.rg-btn.prov_btn1:hover,.module-offers-carousel .card-tile .card-content p a.rg-btn.prov_btn1:focus{background-color:#c79b1c;color:#f4f1e5;border-color:#c79b1c}@media screen and (min-width:40em){.module-rooms-carousel .card-tile .card-content.prov_btn1{background-color:#20494e;color:#f4f1e5;border:1px solid;border-color:#20494e}}@media screen and (max-width:39.9375em){.special-offers-carousel .card-tile .card-content .border-btn.prov_btn1,.special-offers-carousel .card-tile .card-content .rg-btn.prov_btn1{background-color:#20494e;color:#f4f1e5;border:none}}.module-rooms-carousel .slick-slide a:hover .card-tile .card-content.prov_btn1{background-color:#c79b1c;color:#f4f1e5;border-color:#c79b1c}.prov_btn2{background-color:rgba(199,155,28,.7);color:#f4f1e5;border:1px solid;border-color:rgba(199,155,28,.7)}.prov_btn2:hover,.prov_btn2:focus,.special-offers-carousel .card-tile .card-content p .rg-btn.prov_btn2:hover,.special-offers-carousel .card-tile .card-content p .rg-btn.prov_btn2:focus,.module-offers-carousel .card-tile .card-content p a.rg-btn.prov_btn2:hover,.module-offers-carousel .card-tile .card-content p a.rg-btn.prov_btn2:focus{background-color:#c79b1c;color:#20494e;border-color:#c79b1c}@media screen and (min-width:40em){.module-rooms-carousel .card-tile .card-content.prov_btn2{background-color:rgba(199,155,28,.7);color:#f4f1e5;border:1px solid;border-color:rgba(199,155,28,.7)}}@media screen and (max-width:39.9375em){.special-offers-carousel .card-tile .card-content .border-btn.prov_btn2,.special-offers-carousel .card-tile .card-content .rg-btn.prov_btn2{background-color:rgba(199,155,28,.7);color:#f4f1e5;border:none}}.module-rooms-carousel .slick-slide a:hover .card-tile .card-content.prov_btn2{background-color:#c79b1c;color:#20494e;border-color:#c79b1c}.gallery-thumbnails .gallery-sub-menu a:hover,.selectric-items li:hover{background-color:#20494e}.gallery-thumbnails [data-thumb].slick-current img{border:4px solid #c79b1c}.gallery-thumbnails .gallery-select-button .icon-gallery,.gallery-thumbnails .gallery-nav .slick-next:before,.gallery-thumbnails .gallery-nav .slick-prev:before,.selectric-gallery-select .selectric .button:after{color:#c79b1c}.gallery-thumbnails .gallery-select-button{background-color:#fff;color:rgba(40,33,31,.8)}.gallery-thumbnails .gallery-nav .slick-next,.gallery-thumbnails .gallery-nav .slick-prev{background-color:#fff}.gallery-thumbnails .gallery-select-button{border-bottom:1px solid rgba(230,230,230,.5)}.selectric-gallery-select .selectric .button{border-color:rgba(230,230,230,.5)}.gallery-thumbnails .gallery-sub-menu{background-color:rgba(255,255,255,.9)}.selectric-gallery-select .selectric{background-color:#fff}.selectric-items{border:1px solid #20494e}.selectric-items li{color:#20494e}@media screen and (min-width:64em){.gallery-thumbnails .gallery-nav .slick-list{background-color:rgba(255,255,255,.9)}}.header_logo{width:189px}@media screen and (max-width:39.9375em){.header_logo{width:150px}}.fixed-nav-wrapper .nav-background:before{background-color:rgba(244,241,229,.85)}#menu-links #primary>li>a,#menu-links .sub-menu li a{color:#20494e}#menu-links .large-6:last-child{border-color:#20494e}#menu-links #primary>li>a:hover,#menu-links #primary>li.menu-item-has-children>a.active:hover,#menu-links .sub-menu li a:focus,#menu-links .sub-menu li a:hover{color:#c79b1c}#menu-links #primary>li.menu-item-has-children>a.active{color:#c79b1c}@media screen and (max-width:63.9375em){#menu-links #primary>li.menu-item-has-children>a.active:after{color:#20494e}#menu-links #primary>li.menu-item-has-children>a:after{color:#20494e}#menu-links #primary>li.menu-item-has-children.no-sub-menu-item>a:after{content:none}}.secondary-nav li{color:#c79b1c}.secondary-nav li a:hover{color:rgba(199,155,28,.5)}.secondary-nav li.current-page,.secondary-nav li.current-page a:hover{color:#20494e;border-color:#20494e}.secondary-navigation-section .selectric,.secondary-navigation-section .selectric .button,.selectric-items{border-color:#c79b1c}.secondary-navigation-section .selectric-items li{color:#c79b1c}.secondary-navigation-section .selectric-items li:hover{color:#e0e0e0;background-color:rgba(50,50,50,.8)}.secondary-navigation-section .selectric-items li.highlighted{color:#fff;background-color:#fff}.ui-datepicker{color:#fff}.booking-widget .booking-fields input,.booking-widget .booking-fields select{border-color:#c79b1c;color:#fff;transition:border-color .25s ease-in-out}.booking-widget .booking-fields input::-webkit-input-placeholder,.booking-widget .booking-fields select ::-webkit-input-placeholder{color:#c79b1c}.booking-widget .booking-fields input::-moz-placeholder,.booking-widget .booking-fields select::-moz-placeholder{color:#c79b1c}.booking-widget .booking-fields input:-ms-input-placeholder,.booking-widget .booking-fields select:-ms-input-placeholder{color:#c79b1c}.booking-widget .booking-fields input:-moz-placeholder,.booking-widget .booking-fields select:-moz-placeholder{color:#c79b1c}.nav-header.scrolled .booking-widget .booking-fields input,.booking-widget .booking-fields select{border-color:#c79b1c;transition:border-color .25s ease-in-out}.nav-header.scrolled .booking-widget .booking-fields input::-webkit-input-placeholder,.nav-header.scrolled .booking-widget .booking-fields select ::-webkit-input-placeholder{color:#c79b1c}.nav-header.scrolled .booking-widget .booking-fields input::-moz-placeholder,.nav-header.scrolled .booking-widget .booking-fields select::-moz-placeholder{color:#c79b1c}.nav-header.scrolled .booking-widget .booking-fields input:-ms-input-placeholder,.nav-header.scrolled .booking-widget .booking-fields select:-ms-input-placeholder{color:#c79b1c}.nav-header.scrolled .booking-widget .booking-fields input:-moz-placeholder,.nav-header.scrolled .booking-widget .booking-fields select:-moz-placeholder{color:#c79b1c}.booking-widget .booking-fields input.datepicker{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 16 16' xmlns='http://www.w3.org/2000/svg' fill='%23c79b1c'%3E%3Ctitle%3Ecalendar%3C/title%3E%3Cpath d='M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zm0 2v4H2V2zm0 5v3h-3V7zm-9 3H2V7h3zm5 1v3H6v-3zm-4-1V7h4v3zm-4 1h3v3H2zm9 3v-3h3v3z'/%3E%3C/svg%3E")}.ui-datepicker{background-color:#20494e}.ui-datepicker{border-color:#c79b1c}.ui-datepicker th,.ui-datepicker a{color:#c79b1c}.ui-datepicker a:hover{color:#c79b1c}.modaal-wrapper .modaal-close,.morph-toggle{border-color:transparent}.morphing-box{background-color:#fff;color:rgba(50,50,50,.8)}.morphing-box h1 small,.morphing-box h2 small,.morphing-box h3 small,.morphing-box h4 small,.morphing-box h5 small,.morphing-box h6 small{color:rgba(50,50,50,.8)}.modaal-wrapper .modaal-close svg,.morph-toggle svg{fill:rgba(50,50,50,.8)}@media screen and (max-width:63.9375em){.morphing-box{background-color:transparent;color:#323232}.morphing-box h1 small,.morphing-box h2 small,.morphing-box h3 small,.morphing-box h4 small,.morphing-box h5 small,.morphing-box h6 small,{color:#323232}.modaal-wrapper .modaal-close,.morph-toggle{padding:0}}.page-faq .section-container .section-background:before{background-color:rgba(34,32,32,.7)}.page-faq .faq-section,.page-faq .faq-section h1.white,.page-faq .faq-section h2.white,.page-faq .faq-section h3.white,.page-faq .faq-section h4.white,.page-faq .faq-section h5.white,.page-faq .faq-section h6.white{color:#f4f1e5}.accordion-tile{background-color:rgba(244,241,229,0);color:#f4f1e5;border:1px solid #f4f1e5}.accordion-tile.expanded{background-color:#f4f1e5;color:#20494e;border:1px solid #f4f1e5}.accordion-tile .accordion-tile-title:after{color:#f4f1e5}.accordion-tile.expanded .accordion-tile-title:after{color:#c79b1c}.slick-dots li button:before{background-color:#20494e}table tfoot,table thead,.history-image-block figcaption{color:#20494e}.landing-carousel .slide-holder .slide-caption-wrapper .slide-caption p:before{background-color:#20494e}h1,h2,h3,h4,h5,h6{color:#20494e}h1.w-color,h2.w-color,h3.w-color,h4.w-color,h5.w-color,h6.w-color{color:#20494e}@media screen and (min-width:64em){.table-element tbody tr:hover,.table-element tbody tr:hover td{border-color:#20494e}h1,h2,h3,h4,h5,h6{color:inherit}}.ui-accordion-content.ui-corner-bottom.ui-helper-reset.ui-widget-content.ui-accordion-content-active{height:300px !important}@media screen and (min-width:64em){.map-accordion-wrapper{overflow-y:auto}}[type=color],[type=date],[type=datetime-local],[type=datetime],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],textarea,[type=color]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=datetime]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,textarea:focus,.form-element label,.form-element p,select,select:focus{border-color:rgba(40,33,31,.8);color:rgba(40,33,31,.8)}input[type=radio]+label{color:rgba(40,33,31,.8)}input[type=radio]+label:before{border-color:rgba(40,33,31,.8)}input[type=radio]+label:after{background-color:rgba(40,33,31,.8)}select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: http://rgba(40,33,31,0.8)'></polygon></svg>")}.nf-form-cont input::placeholder,.nf-form-cont textarea::placeholder{color:rgba(40,33,31,.8)}.map-accordion-wrapper{background-color:#f4f1e5}#map-accordion .ui-accordion-header,.locations-wrapper .locations-list li{color:#20494e}#map-accordion .ui-accordion-header:after{color:#c79b1c}@media screen and (max-width:63.9375em){.locations-wrapper .locations-list li .location-link:after{color:#c79b1c}}@media screen and (min-width:64em){.locations-wrapper .locations-list li .location-link:hover{background-color:rgba(199,155,28,.75);color:#f4f1e5}.mCS-provenance.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar{background-color:rgba(199,155,28,.65);opacity:.6}#map-accordion .ui-accordion-header:first-of-type{border-top:solid 1px #4e4d50}}#map-accordion .ui-accordion-header{border-bottom:1px solid #4e4d50}#map-accordion .ui-accordion-content{border-bottom:1px solid #4e4d50}.locations-wrapper .locations-list li+li{border-top:solid 1px #4e4d50}.ib-content .ib-cta{background-color:#20494e}.ib-content .ib-cta:after{border-top-color:#20494e}.mCS-provenance.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar,.mCS-provenance.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,.mCS-provenance.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar{background-color:rgba(199,155,28,.65);opacity:1}.grid-tile.w-image-link .rooms-overview-link{background-color:rgba(0,0,0,.35)}.image-grid .grid-tile .hover-caption{color:#fff}.venue-link .image-container:before,.section-container .section-background:before{background-color:rgba(34,32,32,.64)}.venue-link figcaption,.venue-link figcaption h3{color:#fff}.page-template-template-meetings .section-container.form-section{color:#fff}.page-template-template-meetings .section-container.form-section [type=color],.page-template-template-meetings .section-container.form-section [type=date],.page-template-template-meetings .section-container.form-section [type=datetime-local],.page-template-template-meetings .section-container.form-section [type=datetime],.page-template-template-meetings .section-container.form-section [type=email],.page-template-template-meetings .section-container.form-section [type=month],.page-template-template-meetings .section-container.form-section [type=number],.page-template-template-meetings .section-container.form-section [type=password],.page-template-template-meetings .section-container.form-section [type=search],.page-template-template-meetings .section-container.form-section [type=tel],.page-template-template-meetings .section-container.form-section [type=text],.page-template-template-meetings .section-container.form-section [type=time],.page-template-template-meetings .section-container.form-section [type=url],.page-template-template-meetings .section-container.form-section [type=week],.page-template-template-meetings .section-container.form-section textarea,.page-template-template-meetings .section-container.form-section [type=color]:focus,.page-template-template-meetings .section-container.form-section [type=date]:focus,.page-template-template-meetings .section-container.form-section [type=datetime-local]:focus,.page-template-template-meetings .section-container.form-section [type=datetime]:focus,.page-template-template-meetings .section-container.form-section [type=email]:focus,.page-template-template-meetings .section-container.form-section [type=month]:focus,.page-template-template-meetings .section-container.form-section [type=number]:focus,.page-template-template-meetings .section-container.form-section [type=password]:focus,.page-template-template-meetings .section-container.form-section [type=search]:focus,.page-template-template-meetings .section-container.form-section [type=tel]:focus,.page-template-template-meetings .section-container.form-section [type=text]:focus,.page-template-template-meetings .section-container.form-section [type=time]:focus,.page-template-template-meetings .section-container.form-section [type=url]:focus,.page-template-template-meetings .section-container.form-section [type=week]:focus,.page-template-template-meetings .section-container.form-section textarea:focus,.page-template-template-meetings .section-container.form-section .form-element label,.page-template-template-meetings .section-container.form-section .form-element p,.page-template-template-meetings .section-container.form-section select,.page-template-template-meetings .section-container.form-section select:focus{border-color:#fff;color:#fff}.page-template-template-meetings .section-container.form-section input[type=radio]+label{color:#fff}.page-template-template-meetings .section-container.form-section input[type=radio]+label:before{border-color:#fff}.page-template-template-meetings .section-container.form-section input[type=radio]+label:after{background-color:#fff}.page-template-template-meetings .section-container.form-section select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: #ffffff'></polygon></svg>")}.page-template-template-meetings .section-container.form-section .nf-form-cont input::placeholder,.page-template-template-meetings .section-container.form-section .nf-form-cont textarea::placeholder{color:#fff}.page-template-template-meetings .section-container.form-section .nf-form-cont .nf-field h1,.page-template-template-meetings .section-container.form-section .nf-form-cont .nf-field h2,.page-template-template-meetings .section-container.form-section .nf-form-cont .nf-field h3,.page-template-template-meetings .section-container.form-section .nf-form-cont .nf-field h4,.page-template-template-meetings .section-container.form-section .nf-form-cont .nf-field h5,.page-template-template-meetings .section-container.form-section .nf-form-cont .nf-field h6{color:#fff}.restaurant-panel-overlay{background-color:rgba(0,0,0,.7)}#restaurant-selector .restaurant-logo-text{color:#fff}.slick-dots li button:before{background-color:#20494e}.slick-dots li.slick-active button{border-color:#20494e}.opentable{border:1px solid #20494e}.opentable input+input,.opentable input+.selectric-wrapper,.opentable .selectric-wrapper+input,.opentable .selectric-wrapper+.selectric-wrapper{border-top:solid .5px #20494e}.opentable input.datepicker{border-top:none;background-image:url('data:image/svg+xml;charset=utf-8,%3Csvg%20id%3D%22chevron-down%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2019.48%2012.16%22%3E%3Ctitle%3Echevron-down%3C%2Ftitle%3E%3Cpolygon%20points%3D%229.74%2012.16%200%201.34%201.48%200%209.74%209.17%2018%200%2019.48%201.34%209.74%2012.16%22%20fill%3D%22http%3A%2F%2Frgba%2840%2C33%2C31%2C0.8%29%22%2F%3E%3C%2Fsvg%3E')}.selectric .button{border-left:1px solid #20494e}.restaurant-menu-dropdown .selectric-hover .selectric{border:1px solid #20494e}.restaurant-menu-dropdown .selectric-items .selectric-scroll ul{max-height:140px}.selectric{border:1px solid #20494e}.opentable button{color:#f4f1e5;border-color:#20494e}.selectric .label{color:rgba(40,33,31,.8)}.selectric .button:after{color:rgba(40,33,31,.8)}.opentable input::-webkit-input-placeholder,.opentable select ::-webkit-input-placeholder{color:rgba(40,33,31,.8)}.opentable input::-moz-placeholder,.opentable select::-moz-placeholder{color:rgba(40,33,31,.8)}.opentable input:-ms-input-placeholder,.opentable select:-ms-input-placeholder{color:rgba(40,33,31,.8)}.opentable input:-moz-placeholder,.opentable select:-moz-placeholder{color:rgba(40,33,31,.8)}@media screen and (min-width:64em){.section-container.venue-description-section+.section-container.form-section{margin-top:0}}.nf-field-element input[type=number]{height:48px;padding:12px 20px}.landing-carousel .slide-holder .slide-caption-wrapper .slide-caption span{font-family:'Libre Baskerville',serif;font-weight:400}h1.display,h2.display,h3.display,h4.display,h5.display,h6.display,#menu-links #primary>li>a,#restaurant-selector .restaurant-logo-text,#restaurant-tabs .restaurant-logo-text,#map-accordion .ui-accordion-header{font-family:'Libre Baskerville',serif;font-weight:400}@media screen and (min-width:64em){.home .section-container.center-text-section h1,h1.large-display,h2.large-display,h3.large-display,h4.large-display,h5.large-display,h6.large-display{font-family:'Libre Baskerville',serif}}h1{font-family:'Libre Baskerville',serif}h2{font-family:'Libre Baskerville',serif}h3{font-family:'Libre Baskerville',serif}@media screen and (max-width:39.9375em){.show-for-medium{display:block !important;height:1px !important}#restaurant-selector{height:auto !important;visibility:hidden}}@media screen and (min-width:40em){.module-offers-carousel .slick-slide .card-tile{opacity:.4}}.full-width-grid>.row,.section-container+.section-container>.row,.section-container:last-child>.row{max-width:100%}
.special-offers-carousel .slick-prev:before,.special-offers-carousel .slick-next:before{color:#fff}.subscribe input[type=email]:valid{color:#20494e}.subscribe input[type=email]:valid+.input-group-button button[type=submit] svg{fill:#20494e}.subscribe input[type=email]{color:#595856}.page-id-452 .section-container.form-section [type=color],.page-id-452 .section-container.form-section [type=date],.page-id-452 .section-container.form-section [type=datetime-local],.page-id-452 .section-container.form-section [type=datetime],.page-id-452 .section-container.form-section [type=email],.page-id-452 .section-container.form-section [type=month],.page-id-452 .section-container.form-section [type=number],.page-id-452 .section-container.form-section [type=password],.page-id-452 .section-container.form-section [type=search],.page-id-452 .section-container.form-section [type=tel],.page-id-452 .section-container.form-section [type=text],.page-id-452 .section-container.form-section [type=time],.page-id-452 .section-container.form-section [type=url],.page-id-452 .section-container.form-section [type=week],.page-id-452 .section-container.form-section textarea,.page-id-452 .section-container.form-section [type=color]:focus,.page-id-452 .section-container.form-section [type=date]:focus,.page-id-452 .section-container.form-section [type=datetime-local]:focus,.page-id-452 .section-container.form-section [type=datetime]:focus,.page-id-452 .section-container.form-section [type=email]:focus,.page-id-452 .section-container.form-section [type=month]:focus,.page-id-452 .section-container.form-section [type=number]:focus,.page-id-452 .section-container.form-section [type=password]:focus,.page-id-452 .section-container.form-section [type=search]:focus,.page-id-452 .section-container.form-section [type=tel]:focus,.page-id-452 .section-container.form-section [type=text]:focus,.page-id-452 .section-container.form-section [type=time]:focus,.page-id-452 .section-container.form-section [type=url]:focus,.page-id-452 .section-container.form-section [type=week]:focus,.page-id-452 .section-container.form-section textarea:focus,.page-id-452 .section-container.form-section .form-element label,.page-id-452 .section-container.form-section .form-element p,.page-id-452 .section-container.form-section select,.page-id-452 .section-container.form-section select:focus{border-color:#fff;color:#fff}.page-id-452 .section-container.form-section input[type=radio]+label{color:#fff}.page-id-452 .section-container.form-section input[type=radio]+label:before{border-color:#fff}.page-id-452 .section-container.form-section input[type=radio]+label:after{background-color:#fff}.page-id-452 .section-container.form-section .nf-form-cont input::placeholder,.page-id-452 .section-container.form-section .nf-form-cont textarea::placeholder{color:#fff}.page-id-452 .section-container.form-section .nf-form-cont .nf-field h1,.page-id-452 .section-container.form-section .nf-form-cont .nf-field h2,.page-id-452 .section-container.form-section .nf-form-cont .nf-field h3,.page-id-452 .section-container.form-section .nf-form-cont .nf-field h4,.page-id-452 .section-container.form-section .nf-form-cont .nf-field h5,.page-id-452 .section-container.form-section .nf-form-cont .nf-field h6,.page-id-452 h1.white{color:#fff}
.st0{fill:#fff}
.st0{fill:#fff}
.st0{fill:#fff}
.st0{fill:#fff}
.st0{fill:#fff}
.st0{fill:#fff}
.st0{fill:#fff}