@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.2.4
 * 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, .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 {
  -webkit-box-sizing: content-box;
          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 */
  -webkit-text-decoration: underline dotted;
          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"] {
  -webkit-box-sizing: border-box;
          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 {
  -webkit-box-sizing: border-box;
          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&xsmall=30em&medium=40em&xmedium=48em&large=64em&xlarge=75em&xxlarge=90em&xxxlarge=101.25em"; }

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 100%; }

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

body {
  margin: 0;
  padding: 0;
  background: #ffffff;
  font-family: "BrandonGrotesque", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #000000;
  -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: 0; }

select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  border-radius: 0; }

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

button {
  outline: 0;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1; }

pre {
  overflow: auto; }

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

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

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

.column, .columns {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  min-width: initial; }
  @media screen and (min-width: 64em) {
    .column, .columns {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem; } }

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

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

.small-1 {
  -webkit-box-flex: 0;
      -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;
      -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;
      -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;
      -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;
      -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;
      -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;
      -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;
      -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;
      -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;
      -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;
      -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;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  max-width: 100%; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@media screen and (min-width: 40em) {
  .medium-1 {
    -webkit-box-flex: 0;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .medium-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .medium-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .medium-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .medium-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .medium-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .medium-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .medium-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-1 > .column, .medium-up-1 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .medium-up-2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-2 > .column, .medium-up-2 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .medium-up-3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-3 > .column, .medium-up-3 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .medium-up-4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-4 > .column, .medium-up-4 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .medium-up-5 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-5 > .column, .medium-up-5 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .medium-up-6 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-6 > .column, .medium-up-6 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .medium-up-7 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-7 > .column, .medium-up-7 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .medium-up-8 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-8 > .column, .medium-up-8 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

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

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

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

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

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

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

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

@media screen and (min-width: 64em) {
  .large-1 {
    -webkit-box-flex: 0;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .large-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .large-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .large-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .large-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .large-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .large-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .large-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-1 > .column, .large-up-1 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .large-up-2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-2 > .column, .large-up-2 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .large-up-3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-3 > .column, .large-up-3 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .large-up-4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-4 > .column, .large-up-4 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .large-up-5 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-5 > .column, .large-up-5 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .large-up-6 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-6 > .column, .large-up-6 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .large-up-7 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-7 > .column, .large-up-7 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .large-up-8 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-8 > .column, .large-up-8 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

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

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

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

@media screen and (min-width: 75em) {
  .xlarge-1 {
    -webkit-box-flex: 0;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .xlarge-offset-11 {
    margin-left: 91.66667%; }
  .xlarge-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .xlarge-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .xlarge-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .xlarge-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .xlarge-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .xlarge-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .xlarge-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-1 > .column, .xlarge-up-1 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .xlarge-up-2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-2 > .column, .xlarge-up-2 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .xlarge-up-3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-3 > .column, .xlarge-up-3 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .xlarge-up-4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-4 > .column, .xlarge-up-4 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .xlarge-up-5 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-5 > .column, .xlarge-up-5 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .xlarge-up-6 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-6 > .column, .xlarge-up-6 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .xlarge-up-7 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-7 > .column, .xlarge-up-7 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .xlarge-up-8 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xlarge-up-8 > .column, .xlarge-up-8 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

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

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

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

@media screen and (min-width: 90em) {
  .xxlarge-1 {
    -webkit-box-flex: 0;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -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;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%; }
  .xxlarge-offset-11 {
    margin-left: 91.66667%; }
  .xxlarge-order-1 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1; }
  .xxlarge-order-2 {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2; }
  .xxlarge-order-3 {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3; }
  .xxlarge-order-4 {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4; }
  .xxlarge-order-5 {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5; }
  .xxlarge-order-6 {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6; }
  .xxlarge-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-1 > .column, .xxlarge-up-1 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
      max-width: 100%; }
  .xxlarge-up-2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-2 > .column, .xxlarge-up-2 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 50%;
              flex: 0 0 50%;
      max-width: 50%; }
  .xxlarge-up-3 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-3 > .column, .xxlarge-up-3 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 33.33333%;
              flex: 0 0 33.33333%;
      max-width: 33.33333%; }
  .xxlarge-up-4 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-4 > .column, .xxlarge-up-4 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 25%;
              flex: 0 0 25%;
      max-width: 25%; }
  .xxlarge-up-5 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-5 > .column, .xxlarge-up-5 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 20%;
              flex: 0 0 20%;
      max-width: 20%; }
  .xxlarge-up-6 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-6 > .column, .xxlarge-up-6 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 16.66667%;
              flex: 0 0 16.66667%;
      max-width: 16.66667%; }
  .xxlarge-up-7 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-7 > .column, .xxlarge-up-7 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 14.28571%;
              flex: 0 0 14.28571%;
      max-width: 14.28571%; }
  .xxlarge-up-8 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .xxlarge-up-8 > .column, .xxlarge-up-8 > .columns {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 12.5%;
              flex: 0 0 12.5%;
      max-width: 12.5%; } }

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

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

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

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

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

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

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

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

.column.align-top, .align-top.columns {
  -ms-flex-item-align: start;
      align-self: flex-start; }

.column.align-bottom, .align-bottom.columns {
  -ms-flex-item-align: end;
      align-self: flex-end; }

.column.align-middle, .align-middle.columns {
  -ms-flex-item-align: center;
      align-self: center; }

.column.align-stretch, .align-stretch.columns {
  -ms-flex-item-align: stretch;
      align-self: stretch; }

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: 1rem;
  letter-spacing: 0.5px;
  line-height: 1.6;
  text-rendering: optimizeLegibility;
  font-size: 0.9375rem; }
  @media screen and (min-width: 64em) {
    p {
      font-size: 1.0625rem; } }

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

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

small {
  font-size: 80%;
  line-height: inherit; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-style: normal;
  font-weight: 300;
  color: inherit;
  text-rendering: optimizeLegibility;
  font-family: 'MillerDisplay-Light', sans-serif;
  letter-spacing: 0.5px; }
  h1 small,
  h2 small,
  h3 small,
  h4 small,
  h5 small,
  h6 small {
    line-height: 0;
    color: #d5d6d7; }

h1, .h1 {
  letter-spacing: 2px;
  margin-bottom: 1.5rem; }
  body h1, body .h1 {
    margin-bottom: 1.5rem; }

h2 {
  letter-spacing: 1px; }

h1 {
  font-size: 1.875rem;
  line-height: unitless-calc(1.4, 1.875rem);
  margin-top: 0;
  margin-bottom: 0.5rem; }

h2 {
  font-size: 1.5625rem;
  line-height: unitless-calc(1.4, 1.5625rem);
  margin-top: 0;
  margin-bottom: 0.5rem; }

h3 {
  font-size: 1.25rem;
  line-height: unitless-calc(1.4, 1.25rem);
  margin-top: 0;
  margin-bottom: 0.5rem; }

h4 {
  font-size: 1.125rem;
  line-height: unitless-calc(1.4, 1.125rem);
  margin-top: 0;
  margin-bottom: 0.5rem; }

h5 {
  font-size: 1.0625rem;
  line-height: unitless-calc(1.4, 1.0625rem);
  margin-top: 0;
  margin-bottom: 0.5rem; }

h6 {
  font-size: 1rem;
  line-height: unitless-calc(1.4, 1rem);
  margin-top: 0;
  margin-bottom: 0.5rem; }

@media screen and (min-width: 48em) {
  h1 {
    font-size: 2.8125rem; }
  h2 {
    font-size: 1.75rem; }
  h3 {
    font-size: 1.375rem; }
  h4 {
    font-size: 1.125rem; }
  h5 {
    font-size: 1.0625rem; }
  h6 {
    font-size: 1rem; } }

@media screen and (min-width: 90em) {
  h1 {
    font-size: 4.375rem; }
  h2 {
    font-size: 2rem; }
  h3 {
    font-size: 1.5rem; }
  h4 {
    font-size: 1.25rem; }
  h5 {
    font-size: 1.0625rem; }
  h6 {
    font-size: 1rem; } }

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

hr {
  clear: both;
  max-width: 100rem;
  height: 0;
  margin: 1.25rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #d5d6d7;
  border-left: 0; }

ul,
ol,
dl {
  margin-bottom: 1rem;
  list-style-position: inside;
  line-height: 1.6; }

li {
  font-size: inherit; }

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

ol {
  margin-left: 0; }

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: bold; }

blockquote {
  margin: 0 0 1rem;
  padding: 0 0 1.25rem 0;
  border-left: 1px solid #d5d6d7; }
  blockquote, blockquote p {
    line-height: 1.6;
    color: #000000; }

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

abbr {
  border-bottom: 1px dotted #000000;
  color: #000000;
  cursor: help; }

figure {
  margin: 0; }

code {
  padding: 0.125rem 0.3125rem 0.0625rem;
  border: 1px solid #d5d6d7;
  background-color: #b4bfc2;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #000000; }

kbd {
  margin: 0;
  padding: 0.125rem 0.25rem 0;
  background-color: #b4bfc2;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #000000; }

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

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

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

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

@media 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 screen and (min-width: 48em) {
  .xmedium-text-left {
    text-align: left; }
  .xmedium-text-right {
    text-align: right; }
  .xmedium-text-center {
    text-align: center; }
  .xmedium-text-justify {
    text-align: justify; } }

@media 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: 75em) {
  .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: 90em) {
  .xxlarge-text-left {
    text-align: left; }
  .xxlarge-text-right {
    text-align: right; }
  .xxlarge-text-center {
    text-align: center; }
  .xxlarge-text-justify {
    text-align: justify; } }

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

[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;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  height: 2.5rem;
  margin: 0 0 3px;
  padding: 0.5rem 18px;
  border: 1px solid #ccc;
  border-radius: 0;
  background-color: #ffffff;
  -webkit-box-shadow: none;
          box-shadow: none;
  font-family: inherit;
  font-size: 15px;
  font-weight: 400;
  color: #000000;
  -webkit-transition: border-color 0.25s ease-in-out;
  transition: border-color 0.25s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  @media screen and (min-width: 64em) {
    [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 {
      font-size: 17px; } }
  [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 #000000;
    background-color: #ffffff;
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transition: border-color 0.25s ease-in-out;
    transition: border-color 0.25s ease-in-out; }

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

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

input::-moz-placeholder,
textarea::-moz-placeholder {
  color: #a3a3a3; }

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

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

input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #b4bfc2;
  cursor: not-allowed; }

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

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

label {
  display: block;
  margin: 0;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.8;
  color: #000000;
  letter-spacing: .9px; }
  label em {
    font-style: normal; }
  @media screen and (min-width: 64em) {
    label {
      font-size: 1.25rem; } }
  label.middle {
    margin: 0 0 1rem;
    padding: 0.5625rem 0; }

select {
  height: 2.5rem;
  padding: 0.375rem 1.375rem;
  border: 1px solid #ccc;
  margin: 0 0 0.9375rem;
  font-size: 1.0625rem;
  font-family: inherit;
  line-height: normal;
  color: #000000;
  background-color: #ffffff;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  outline: none;
  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%28163, 163, 163%29'></polygon></svg>");
  background-size: 9px 6px;
  background-position: right -1rem center;
  background-origin: content-box;
  background-repeat: no-repeat;
  padding-right: 1.5rem; }
  @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:disabled {
    background-color: #b4bfc2;
    cursor: not-allowed; }
  select::-ms-expand {
    display: none; }
  select[multiple] {
    height: auto;
    background-image: none; }
  div[class*='small-ctrls'] select {
    height: 2.25rem;
    padding: 0.5rem 1.5625rem 0.5rem 0.9375rem; }

body.is-reveal-open {
  overflow: hidden; }

html.is-reveal-open,
html.is-reveal-open body {
  min-height: 100%;
  overflow: hidden;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none; }

.reveal-overlay {
  position: fixed;
  top: 0 !important;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1005;
  display: none;
  background-color: rgba(0, 0, 0, 0.85);
  overflow-y: scroll; }

.reveal {
  outline: 0;
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 1.25rem 1.875rem;
  border: 1px solid transparent;
  border-radius: 0;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto;
  margin-bottom: 1.875rem; }
  .reveal body {
    background: greenyellow !important;
    background: #41e3ee !important; }
  @media screen and (min-width: 40em) {
    .reveal {
      min-height: 0; } }
  .reveal .column, .reveal .columns,
  .reveal .columns {
    min-width: 0; }
  .reveal > :last-child {
    margin-bottom: 0; }
  @media screen and (min-width: 40em) {
    .reveal {
      width: 100%;
      max-width: 58.125rem; } }
  @media screen and (min-width: 40em) {
    .reveal .reveal {
      right: auto;
      left: auto;
      margin: 0 auto; } }
  .reveal.collapse {
    padding: 0; }
  @media screen and (min-width: 40em) {
    .reveal.tiny {
      width: 100%;
      max-width: 58.125rem; } }
  @media screen and (min-width: 40em) {
    .reveal.small {
      width: 100%;
      max-width: 58.125rem; } }
  @media screen and (min-width: 40em) {
    .reveal.large {
      width: 100%;
      max-width: 58.125rem; } }
  .reveal.full {
    top: 0 !important;
    left: 0;
    margin-bottom: 0;
    width: 100%;
    max-width: none;
    height: 100vh;
    min-height: 100vh;
    margin-left: 0;
    border: 0;
    border-radius: 0; }
  @media screen and (max-width: 29.9375em) {
    .reveal {
      top: 0 !important;
      left: 0;
      margin-bottom: 0;
      width: 100%;
      max-width: none;
      height: 100vh;
      min-height: 100vh;
      margin-left: 0;
      border: 0;
      border-radius: 0; } }
  .reveal.without-overlay {
    position: fixed; }

.button {
  outline: 0;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto 1rem;
  padding: 0.75rem 1.875rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  border-radius: 0;
  -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;
  letter-spacing: 0.5px;
  font-size: 0.9375rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  font-family: 'BrandonGrotesque', sans-serif;
  background-color: #000000;
  color: #ffffff; }
  @media screen and (min-width: 64em) {
    .button {
      font-size: 1.0625rem;
      padding: 1rem 2.875rem; } }
  .button:hover, .button:focus {
    background-color: #f16567;
    color: #ffffff; }
  .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: #000000;
    color: auto; }
    .button.primary:hover, .button.primary:focus {
      background-color: auto;
      color: auto; }
  .button.secondary {
    background-color: #f16567;
    color: auto; }
    .button.secondary:hover, .button.secondary:focus {
      background-color: auto;
      color: auto; }
  .button.success {
    background-color: #3adb76;
    color: auto; }
    .button.success:hover, .button.success:focus {
      background-color: auto;
      color: auto; }
  .button.warning {
    background-color: #ffae00;
    color: auto; }
    .button.warning:hover, .button.warning:focus {
      background-color: auto;
      color: auto; }
  .button.alert {
    background-color: #cc4b37;
    color: auto; }
    .button.alert:hover, .button.alert:focus {
      background-color: auto;
      color: auto; }
  .button.hollow {
    border: 1px solid #000000;
    color: #000000; }
    .button.hollow, .button.hollow:hover, .button.hollow:focus {
      background-color: transparent; }
    .button.hollow:hover, .button.hollow:focus {
      border-color: black;
      color: black; }
    .button.hollow.primary {
      border: 1px solid #000000;
      color: #000000; }
      .button.hollow.primary:hover, .button.hollow.primary:focus {
        border-color: black;
        color: black; }
    .button.hollow.secondary {
      border: 1px solid #f16567;
      color: #f16567; }
      .button.hollow.secondary:hover, .button.hollow.secondary:focus {
        border-color: #9d0e10;
        color: #9d0e10; }
    .button.hollow.success {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.hollow.success:hover, .button.hollow.success:focus {
        border-color: #157539;
        color: #157539; }
    .button.hollow.warning {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.hollow.warning:hover, .button.hollow.warning:focus {
        border-color: #805700;
        color: #805700; }
    .button.hollow.alert {
      border: 1px solid #cc4b37;
      color: #cc4b37; }
      .button.hollow.alert:hover, .button.hollow.alert:focus {
        border-color: #67251a;
        color: #67251a; }
  .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: #000000;
      color: #ffffff; }
    .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: #000000;
        color: #ffffff; }
    .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: #f16567;
        color: #000000; }
    .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: #000000; }
    .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: #000000; }
    .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: #000000; }
  .button.dropdown::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 0.4em;
    border-color: #ffffff transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    position: relative;
    top: 0.4em;
    display: inline-block;
    float: right;
    margin-left: 1em; }
  .button.arrow-only::after {
    top: -0.1em;
    float: none;
    margin-left: 0; }
  .button.button-secondary {
    background-color: #f16567;
    color: #ffffff; }
    .button.button-secondary:hover, .button.button-secondary:focus {
      background-color: #000000;
      color: #ffffff; }
  .button.button-transparent {
    background-color: transparent;
    color: #000000;
    border: 1px solid #000000;
    padding: 0.6875rem 1.875rem; }
    @media screen and (min-width: 64em) {
      .button.button-transparent {
        padding: 0.9375rem 2.875rem; } }
    .button.button-transparent:hover, .button.button-transparent:focus {
      background-color: #000000;
      color: #ffffff; }
  @media screen and (min-width: 64em) {
    .button.btn-big {
      min-width: 14.0625rem;
      padding: 1.125rem 2.875rem;
      margin: 0 0.5rem 1.0625rem; } }
  @media screen and (min-width: 90em) {
    .button.btn-large {
      min-width: 14.0625rem;
      padding: 1.125rem 2.875rem; } }
  .button.load {
    height: 3.0625rem;
    width: 12.5rem;
    background-position: center center;
    background-size: 1.875rem;
    background-repeat: no-repeat; }
    .button.load span {
      display: none; }

table {
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0; }
  thead,
  tbody,
  tfoot {
    border: 1px solid #f2f2f2;
    background-color: #ffffff; }
  caption {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold; }
  thead {
    background: #f9f9f9;
    color: #000000; }
  tfoot {
    background: #f2f2f2;
    color: #000000; }
  thead tr,
  tfoot tr {
    background: transparent; }
  thead th,
  thead td,
  tfoot th,
  tfoot td {
    padding: 0.5rem 0.625rem 0.625rem;
    font-weight: bold;
    text-align: left; }
  tbody th,
  tbody td {
    padding: 0.5rem 0.625rem 0.625rem; }
  tbody tr:nth-child(even) {
    border-bottom: 0;
    background-color: #f2f2f2; }
  table.unstriped tbody {
    background-color: #ffffff; }
    table.unstriped tbody tr {
      border-bottom: 0;
      border-bottom: 1px solid #f2f2f2;
      background-color: #ffffff; }

@media screen and (max-width: 47.9375em) {
  table.stack thead {
    display: none; }
  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: #f4f4f4; }

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

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

table.hover:not(.unstriped) tr:nth-of-type(even):hover {
  background-color: #ededed; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

@font-face {
  font-family: 'miller';
  src: url("../fonts/Miller-Display/Miller-Display.eot");
  src: url("../fonts/Miller-Display/Miller-Display.eot#iefix") format("embedded-opentype"), url("../fonts/Miller-Display/Miller-Display.woff") format("woff"), url("../fonts/Miller-Display/Miller-Display.ttf") format("truetype"), url("../fonts/Miller-Display/Miller-Display.svg#Miller-Display") format("svg");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'MillerDisplay-Light';
  src: url("../fonts/MillerDisplay-Light/MillerDisplay-Light.eot");
  src: url("../fonts/MillerDisplay-Light/MillerDisplay-Light.eot#iefix") format("embedded-opentype"), url("../fonts/MillerDisplay-Light/MillerDisplay-Light.woff") format("woff"), url("../fonts/MillerDisplay-Light/MillerDisplay-Light.ttf") format("truetype"), url("../fonts/MillerDisplay-Light/MillerDisplay-Light.svg#MillerDisplay-Light") format("svg");
  font-weight: 300;
  font-style: normal; }

@font-face {
  font-family: 'BrandonGrotesque';
  src: url("../fonts/BrandonGrotesque-Regular/BrandonGrotesque-Regular.eot");
  src: url("../fonts/BrandonGrotesque-Regular/BrandonGrotesque-Regular.eot#iefix") format("embedded-opentype"), url("../fonts/BrandonGrotesque-Regular/BrandonGrotesque-Regular.woff") format("woff"), url("../fonts/BrandonGrotesque-Regular/BrandonGrotesque-Regular.ttf") format("truetype"), url("../fonts/BrandonGrotesque-Regular/BrandonGrotesque-Regular.svg#BrandonGrotesque-Regular") format("svg");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: 'BrandonGrotesque';
  src: url("../fonts/BrandonGrotesque-Medium/BrandonGrotesque-Medium.eot");
  src: url("../fonts/BrandonGrotesque-Medium/BrandonGrotesque-Medium.eot#iefix") format("embedded-opentype"), url("../fonts/BrandonGrotesque-Medium/BrandonGrotesque-Medium.woff") format("woff"), url("../fonts/BrandonGrotesque-Medium/BrandonGrotesque-Medium.ttf") format("truetype"), url("../fonts/BrandonGrotesque-Medium/BrandonGrotesque-Medium.svg#BrandonGrotesque-Medium") format("svg");
  font-weight: 500;
  font-style: normal; }

@font-face {
  font-family: 'BrandonGrotesque';
  src: url("../fonts/BrandonGrotesque-Light/BrandonGrotesque-Light.eot");
  src: url("../fonts/BrandonGrotesque-Light/BrandonGrotesque-Light.eot#iefix") format("embedded-opentype"), url("../fonts/BrandonGrotesque-Light/BrandonGrotesque-Light.woff") format("woff"), url("../fonts/BrandonGrotesque-Light/BrandonGrotesque-Light.ttf") format("truetype"), url("../fonts/BrandonGrotesque-Light/BrandonGrotesque-Light.svg#BrandonGrotesque-Light") format("svg");
  font-weight: 300;
  font-style: normal; }

@font-face {
  font-family: 'BrandonGrotesque';
  src: url("../fonts/BrandonGrotesque-Thin/BrandonGrotesque-Thin.eot");
  src: url("../fonts/BrandonGrotesque-Thin/BrandonGrotesque-Thin.eot#iefix") format("embedded-opentype"), url("../fonts/BrandonGrotesque-Thin/BrandonGrotesque-Thin.woff") format("woff"), url("../fonts/BrandonGrotesque-Thin/BrandonGrotesque-Thin.ttf") format("truetype"), url("../fonts/BrandonGrotesque-Thin/BrandonGrotesque-Thin.svg#BrandonGrotesque-Thin") format("svg");
  font-weight: 100;
  font-style: normal; }

@font-face {
  font-family: 'fontello';
  src: url("../fonts/Fontello/fontello.eot?9552895");
  src: url("../fonts/Fontello/fontello.eot?9552895#iefix") format("embedded-opentype"), url("../fonts/Fontello/fontello.woff2?9552895") format("woff2"), url("../fonts/Fontello/fontello.woff?9552895") format("woff"), url("../fonts/Fontello/fontello.ttf?9552895") format("truetype"), url("../fonts/Fontello/fontello.svg?9552895#fontello") format("svg");
  font-weight: normal;
  font-style: normal; }

[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  line-height: 1; }

.icon-down-open-mini:before {
  content: '\e800'; }

/* '' */
.icon-right-open-big:before {
  content: '\e801'; }

/* '' */
.icon-left-open-big:before {
  content: '\e802'; }

/* '' */
.icon-right-open-mini:before {
  content: '\e803'; }

/* '' */
.icon-up-open-big:before {
  content: '\e804'; }

/* '' */
.icon-down-open-big:before {
  content: '\e805'; }

/* '' */
.icon-up-open-mini:before {
  content: '\e806'; }

/* '' */
.icon-left-open-mini:before {
  content: '\e807'; }

/* '' */
.icon-cancel:before {
  content: '\e808'; }

/* '' */
.icon-heart:before {
  content: '\e809'; }

/* '' */
.icon-down-open:before {
  content: '\f004'; }

/* '' */
.icon-up-open:before {
  content: '\f005'; }

/* '' */
.icon-twitter:before {
  content: '\f099'; }

/* '' */
.icon-facebook:before {
  content: '\f09a'; }

/* '' */
.icon-linkedin:before {
  content: '\f0e1'; }

/* '' */
.icon-down:before {
  content: '\f175'; }

/* '' */
.icon-up:before {
  content: '\f176'; }

/* '' */
.icon-pinterest:before {
  content: '\f312'; }

/* '' */
.icon-youtube:before {
  content: '\f313'; }

/* '' */
.icon-instagram:before {
  content: '\f31e'; }

/* '' */
.icon-arrows-cw:before {
  content: '\e80a'; }

/* '' */
.icon-pencil:before {
  content: '\e80b'; }

/* '' */
.icon-heart-empty:before {
  content: '\e80c'; }

/* '' */
/* Slider */
.slick-slider {
  position: relative;
  width: 100%;
  margin: 20px auto;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0; }

.slick-list:focus {
  outline: none; }

.slick-list.dragging {
  cursor: move;
  /* fallback if grab cursor is unsupported */
  cursor: grab;
  cursor: -webkit-grab; }

.slick-list.dragging:active {
  cursor: grabbing;
  cursor: -webkit-grabbing; }

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

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block; }

.slick-track:before,
.slick-track:after {
  display: table;
  content: ''; }

.slick-track:after {
  clear: both; }

.slick-loading .slick-track {
  visibility: hidden; }

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px; }

[dir='rtl'] .slick-slide {
  float: right; }

.slick-slide img {
  display: inline-block;
  margin: 0 auto; }

.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; }

.slick-list {
  overflow: hidden; }

/* Slider */
/* Arrows */
.slick-prev,
.slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  z-index: 1;
  display: block;
  width: 30px;
  height: 30px;
  padding: 0;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  background: transparent;
  -webkit-transition: opacity .3s ease;
  transition: opacity .3s ease; }
  .slick-prev.slick-disabled,
  .slick-next.slick-disabled {
    opacity: .5;
    cursor: not-allowed;
    pointer-events: none; }

.slick-prev {
  left: 0;
  color: #000000; }
  @media screen and (min-width: 64em) {
    .slick-prev:hover:before {
      -webkit-transform: translateX(-10px);
              transform: translateX(-10px); } }
  .slick-prev:before {
    content: '\e802';
    font-family: 'fontello';
    font-size: 1.5rem;
    display: inline-block;
    vertical-align: middle;
    -webkit-transition: -webkit-transform .3s ease;
    transition: -webkit-transform .3s ease;
    transition: transform .3s ease;
    transition: transform .3s ease, -webkit-transform .3s ease; }
    @media screen and (min-width: 64em) {
      .slick-prev:before {
        font-size: 1.875rem; } }
  .slick-prev:after {
    content: '•';
    font-size: 1.125rem;
    display: inline-block;
    vertical-align: middle;
    margin-left: 2px; }
    @media screen and (min-width: 64em) {
      .slick-prev:after {
        margin-left: 4px; } }

.slick-next {
  right: 0;
  color: #000000; }
  @media screen and (min-width: 64em) {
    .slick-next:hover:after {
      -webkit-transform: translateX(10px);
              transform: translateX(10px); } }
  .slick-next:after {
    content: '\e801';
    font-family: 'fontello';
    font-size: 1.5rem;
    display: inline-block;
    vertical-align: middle;
    -webkit-transition: -webkit-transform .3s ease;
    transition: -webkit-transform .3s ease;
    transition: transform .3s ease;
    transition: transform .3s ease, -webkit-transform .3s ease; }
    @media screen and (min-width: 64em) {
      .slick-next:after {
        font-size: 1.875rem; } }
  .slick-next:before {
    content: '•';
    font-size: 1.125rem;
    display: inline-block;
    vertical-align: middle;
    margin-right: 2px; }
    @media screen and (min-width: 64em) {
      .slick-next:before {
        margin-left: 4px; } }

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

.slick-dots {
  position: absolute;
  bottom: 0;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center; }

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer; }

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 20px;
  height: 20px;
  padding: 5px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent; }

.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 {
  font-size: 6px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  content: '•';
  text-align: center;
  opacity: .25;
  color: #3D3D3D;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.slick-dots li.slick-active button:before {
  opacity: .75;
  color: #3D3D3D; }

/**
 * Swiper 4.0.7
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://www.idangero.us/swiper/
 *
 * Copyright 2014-2017 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: November 28, 2017
 */
.swiper-container {
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1; }

.swiper-container-no-flexbox .swiper-slide {
  float: left; }

.swiper-container-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }

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

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

.swiper-container-multirow > .swiper-wrapper {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.swiper-container-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  margin: 0 auto; }

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

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

.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto; }

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

.swiper-container-3d {
  -webkit-perspective: 1200px;
  perspective: 1200px; }

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

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

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

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

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

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

.swiper-container-wp8-horizontal,
.swiper-container-wp8-horizontal > .swiper-wrapper {
  -ms-touch-action: pan-y;
  touch-action: pan-y; }

.swiper-container-wp8-vertical,
.swiper-container-wp8-vertical > .swiper-wrapper {
  -ms-touch-action: pan-x;
  touch-action: pan-x; }

.swiper-button-next,
.swiper-button-prev {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 10;
  cursor: pointer;
  background-size: 27px 44px;
  background-position: center;
  background-repeat: no-repeat; }

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

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto; }

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto; }

.swiper-button-prev.swiper-button-white,
.swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-white,
.swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-prev.swiper-button-black,
.swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

.swiper-button-next.swiper-button-black,
.swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E"); }

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

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

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

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

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

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

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

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

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

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

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: .2; }

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

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

.swiper-pagination-bullet-active {
  opacity: 1;
  background: #007aff; }

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

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block; }

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

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  -webkit-transition: .2s top, .2s -webkit-transform;
  transition: .2s top, .2s -webkit-transform;
  -webkit-transition: .2s transform, .2s top;
  transition: .2s transform, .2s top;
  -webkit-transition: .2s transform, .2s top, .2s -webkit-transform;
  transition: .2s transform, .2s top, .2s -webkit-transform; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px; }

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

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: .2s left, .2s -webkit-transform;
  transition: .2s left, .2s -webkit-transform;
  -webkit-transition: .2s transform, .2s left;
  transition: .2s transform, .2s left;
  -webkit-transition: .2s transform, .2s left, .2s -webkit-transform;
  transition: .2s transform, .2s left, .2s -webkit-transform; }

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: .2s right, .2s -webkit-transform;
  transition: .2s right, .2s -webkit-transform;
  -webkit-transition: .2s transform, .2s right;
  transition: .2s transform, .2s right;
  -webkit-transition: .2s transform, .2s right, .2s -webkit-transform;
  transition: .2s transform, .2s right, .2s -webkit-transform; }

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

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

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

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

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

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff; }

.swiper-pagination-progressbar.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.25); }

.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
  background: #fff; }

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000; }

.swiper-pagination-progressbar.swiper-pagination-black {
  background: rgba(0, 0, 0, 0.25); }

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000; }

.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center; }

.swiper-zoom-container > canvas,
.swiper-zoom-container > img,
.swiper-zoom-container > svg {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
  object-fit: contain; }

.swiper-slide-zoomed {
  cursor: move; }

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
  animation: swiper-preloader-spin 1s steps(12, end) infinite; }

.swiper-lazy-preloader:after {
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-position: 50%;
  background-size: 100%;
  background-repeat: no-repeat; }

.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E"); }

@-webkit-keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

@keyframes swiper-preloader-spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

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

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

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

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

.swiper-container-cube {
  overflow: visible; }

.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0; }

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

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-next + .swiper-slide,
.swiper-container-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right,
.swiper-container-cube .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0; }

.swiper-container-flip {
  overflow: visible; }

.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1; }

.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

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

.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right,
.swiper-container-flip .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.swiper-container-coverflow .swiper-wrapper {
  -ms-perspective: 1200px; }

/* Ion.RangeSlider
// css version 2.0.3
// © 2013-2014 Denis Ineshin | IonDen.com
// ===================================================================================================================*/
/* =====================================================================================================================
// RangeSlider */
.irs {
  position: relative;
  display: block;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.irs-line {
  position: relative;
  display: block;
  overflow: hidden;
  outline: none !important; }

.irs-line-left, .irs-line-mid, .irs-line-right {
  position: absolute;
  display: block;
  top: 0; }

.irs-line-left {
  left: 0;
  width: 11%; }

.irs-line-mid {
  left: 9%;
  width: 82%; }

.irs-line-right {
  right: 0;
  width: 11%; }

.irs-bar {
  position: absolute;
  display: block;
  left: 0;
  width: 0; }

.irs-bar-edge {
  position: absolute;
  display: block;
  top: 0;
  left: 0; }

.irs-shadow {
  position: absolute;
  display: none;
  left: 0;
  width: 0; }

.irs-handle {
  position: absolute;
  display: block;
  cursor: default;
  z-index: 1; }

.irs-handle.type_last {
  z-index: 2; }

.irs-min {
  position: absolute;
  display: block;
  left: 0;
  cursor: default; }

.irs-max {
  position: absolute;
  display: block;
  right: 0;
  cursor: default; }

.irs-from, .irs-to, .irs-single {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  cursor: default;
  white-space: nowrap; }

.irs-grid {
  position: absolute;
  display: none;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 20px; }

.irs-with-grid .irs-grid {
  display: block; }

.irs-grid-pol {
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 8px;
  background: #000; }

.irs-grid-pol.small {
  height: 4px; }

.irs-grid-text {
  position: absolute;
  bottom: 0;
  left: 0;
  white-space: nowrap;
  text-align: center;
  font-size: 9px;
  line-height: 9px;
  padding: 0 3px;
  color: #000; }

.irs-disable-mask {
  position: absolute;
  display: block;
  top: 0;
  left: -1%;
  width: 102%;
  height: 100%;
  cursor: default;
  background: rgba(0, 0, 0, 0);
  z-index: 2; }

.irs-disabled {
  opacity: 0.4; }

.lt-ie9 .irs-disabled {
  filter: alpha(opacity=40); }

.irs-hidden-input {
  position: absolute !important;
  display: block !important;
  top: 0 !important;
  left: 0 !important;
  width: 0 !important;
  height: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  outline: none !important;
  z-index: -9999 !important;
  background: none !important;
  border-style: solid !important;
  border-color: transparent !important; }

.irs-grid-pol {
  width: 0.5rem;
  height: 0.5rem;
  background-color: #030303;
  border-radius: 50%;
  top: -3px; }
  .irs-grid-pol.small {
    display: none; }

.irs-grid-text {
  font-size: 0;
  bottom: auto;
  -webkit-user-select: text;
     -moz-user-select: text;
      -ms-user-select: text;
          user-select: text;
  white-space: nowrap;
  line-height: inherit;
  margin-top: 0.9375rem; }
  .irs-grid-text.js-grid-text-0 {
    margin-left: 0 !important; }
  .irs-grid-text:last-of-type {
    text-align: right;
    left: auto !important;
    right: -8px;
    margin-left: 0 !important; }
  @media screen and (min-width: 75em) {
    .irs-grid-text {
      margin-top: 1.75rem; } }
  .irs-grid-text .value {
    display: block;
    font-size: 0.9375rem;
    color: #000000;
    line-height: inherit;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden; }
    @media screen and (min-width: 48em) {
      .irs-grid-text .value {
        font-size: 1.0625rem; } }
    @media screen and (min-width: 75em) {
      .irs-grid-text .value {
        font-size: 1.25rem;
        letter-spacing: 1px; } }
  .irs-grid-text .labelValue {
    display: block;
    color: #a3a3a3;
    font-size: 0.75rem;
    text-overflow: ellipsis;
    overflow: hidden; }
    @media screen and (min-width: 48em) {
      .irs-grid-text .labelValue {
        font-size: 0.875rem; } }

.irs-grid {
  top: 0.75rem;
  width: calc(100% - 25px) !important;
  left: 0.5rem !important;
  right: 0 !important; }

.irs {
  height: 4.375rem; }
  @media screen and (min-width: 75em) {
    .irs {
      height: 5.625rem; } }
  .irs .irs {
    margin: 0 0.5rem; }

.irs-bar-edge {
  display: none; }

.irs-bar {
  top: 0.75rem;
  height: 2px;
  background-position: 0;
  background-color: #000000;
  left: 0.5rem !important; }

.irs-line {
  top: 0.75rem;
  height: 2px;
  border-radius: 1px;
  background-color: #ebedf2; }
  .irs-line > span {
    height: 2px;
    background: none; }

.irs-handle {
  top: 1px;
  width: 1.5rem;
  height: 1.5rem;
  background-color: #cdcdcd;
  border-radius: 50%;
  background-position: 0;
  cursor: pointer; }
  .irs-handle:after {
    content: '';
    display: block;
    width: 1rem;
    height: 1rem;
    top: 4px;
    left: 4px;
    position: relative;
    border-radius: 50%;
    background-color: #030303; }

/*
== 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: 70px;
  /* minimum dragger height */
  z-index: 1; }

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  /* the dragger element */
  position: relative;
  width: 2px;
  height: 100%;
  margin: 0 auto;
  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;
  -webkit-box-sizing: border-box;
  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: rgba(0, 0, 0, 0.1);
  filter: "alpha(opacity=40)";
  -ms-filter: "alpha(opacity=40)"; }

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background-color: black; }

.mCSB_scrollTools .mCSB_dragger:hover .mCSB_dragger_bar {
  background-color: black; }

.mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar,
.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar {
  background-color: black; }

.mCSB_scrollTools .mCSB_buttonUp,
.mCSB_scrollTools .mCSB_buttonDown,
.mCSB_scrollTools .mCSB_buttonLeft,
.mCSB_scrollTools .mCSB_buttonRight {
  background-image: url(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)"; }

.header-container {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 5; }
  .header-container a {
    color: #000000; }
  .is-reveal-open .header-container {
    z-index: 4; }

.page-header {
  left: 0;
  top: 0;
  width: 100%;
  z-index: 100;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  background-color: #ffffff;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding: 0.625rem 0; }
  @media screen and (min-width: 48em) {
    .page-header {
      position: relative; } }
  @media screen and (min-width: 75em) {
    .page-header {
      padding: 1.0625rem 0; } }
  .page-header.active {
    background-color: #ffffff !important; }
    @media screen and (max-width: 47.9375em) {
      .page-header.active .level0.category-item {
        opacity: 1; } }
    @media screen and (max-width: 47.9375em) {
      .page-header.active .level0.category-item.opened ~ * {
        opacity: 0; } }
  .customer-account-index .page-header,
  .catalog-product-view .page-header,
  .catalog-category-view .page-header {
    border-bottom: none; }
  @media screen and (max-width: 47.9375em) {
    .page-header .page-header-container {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; } }
  @media screen and (min-width: 75em) {
    .page-header .page-header-container {
      height: 3.4375rem;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      max-width: 1600px;
      margin-right: auto;
      margin-left: auto; } }
  @media screen and (min-width: 48em) {
    .page-header .skip-links {
      position: absolute;
      right: 0;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      margin-right: 15px;
      margin-top: 10px;
      top: calc(40px / 2); } }
  @media screen and (min-width: 64em) {
    .page-header .skip-links {
      top: calc(54px / 2); } }
  @media screen and (min-width: 75em) {
    .page-header .skip-links {
      margin-top: 0;
      position: relative;
      top: auto;
      -webkit-transform: none;
              transform: none; } }
  .page-header .skip-links > div, .page-header .skip-links > a {
    display: inline-block;
    vertical-align: top;
    margin-left: 8px; }
    .page-header .skip-links > div img, .page-header .skip-links > a img {
      width: 15px; }
    @media screen and (min-width: 48em) {
      .page-header .skip-links > div, .page-header .skip-links > a {
        margin-left: 20px; }
        .page-header .skip-links > div img, .page-header .skip-links > a img {
          width: 19px; } }
    .page-header .skip-links > div:first-of-type, .page-header .skip-links > a:first-of-type {
      margin-left: 0; }
  .page-header .logo {
    margin: 0;
    width: 7rem;
    height: 2.5625rem;
    display: block; }
    @media screen and (min-width: 64em) {
      .page-header .logo {
        width: 9.25rem;
        height: 3.375rem; } }
  .page-header .logo-wrapper {
    -ms-flex-item-align: start;
        align-self: flex-start;
    float: left;
    display: inline-block; }
    @media screen and (min-width: 48em) {
      .page-header .logo-wrapper {
        float: none;
        margin-left: 15px; } }
    @media screen and (min-width: 75em) {
      .page-header .logo-wrapper {
        -ms-flex-item-align: auto;
            align-self: auto; } }
  .page-header.home-header {
    background-color: #ffffff;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    padding: 0.625rem 0; }
    @media screen and (min-width: 64em) {
      .page-header.home-header {
        background-color: transparent;
        border-bottom: none;
        padding: 0.9375rem 0 0; } }
    @media screen and (min-width: 90em) {
      .page-header.home-header {
        padding: 1.4375rem 0 0; } }
    @media screen and (min-width: 64em) {
      .page-header.home-header.fixed {
        position: fixed;
        background-color: #ffffff;
        border-bottom: 1px solid rgba(0, 0, 0, 0.1);
        left: 0.9375rem;
        right: 0.9375rem;
        width: auto;
        padding: 1.0625rem 0; }
        .page-header.home-header.fixed .page-header-container {
          height: 6.3125rem;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          -webkit-box-pack: justify;
              -ms-flex-pack: justify;
                  justify-content: space-between; }
        .page-header.home-header.fixed .skip-links {
          position: relative;
          top: auto; }
        .page-header.home-header.fixed .logo-wrapper {
          width: auto; }
        .page-header.home-header.fixed .logo {
          margin: 0;
          width: 9.25rem;
          height: 3.375rem;
          display: block; } }
    @supports (-webkit-marquee-repetition: infinite) and ((-o-object-fit: fill) or (object-fit: fill)) {
      .page-header.home-header.fixed.active .page-header-container {
        position: relative; } }
    @media not all and (min-resolution: 0.001dpcm) {
      @supports (-webkit-appearance: none) and (not (stroke-color: transparent)) {
        .page-header.home-header.fixed.active .page-header-container {
          position: relative; } } }
    @media not all and (min-resolution: 0.001dpcm) {
      @supports (-webkit-appearance: none) {
        .page-header.home-header.fixed.active .page-header-container {
          position: relative; } } }
    @media not all and (min-resolution: 0.001dpcm) {
      @supports (-webkit-appearance: none) and (stroke-color: transparent) {
        .page-header.home-header.fixed.active .page-header-container {
          position: relative; } } }
    @media not all and (min-resolution: 0.001dpcm) {
      @supports (-webkit-appearance: none) and (display: flow-root) {
        .page-header.home-header.fixed.active .page-header-container {
          position: relative; } } }
    @supports (-webkit-marquee-repetition: infinite) and ((-o-object-fit: fill) or (object-fit: fill)) {
      .page-header.home-header.fixed.active {
        padding-bottom: 480px; } }
    @media not all and (min-resolution: 0.001dpcm) {
      @supports (-webkit-appearance: none) and (not (stroke-color: transparent)) {
        .page-header.home-header.fixed.active {
          padding-bottom: 480px; } } }
    @media not all and (min-resolution: 0.001dpcm) {
      @supports (-webkit-appearance: none) {
        .page-header.home-header.fixed.active {
          padding-bottom: 480px; } } }
    @media not all and (min-resolution: 0.001dpcm) {
      @supports (-webkit-appearance: none) and (stroke-color: transparent) {
        .page-header.home-header.fixed.active {
          padding-bottom: 480px; } } }
    @media not all and (min-resolution: 0.001dpcm) {
      @supports (-webkit-appearance: none) and (display: flow-root) {
        .page-header.home-header.fixed.active {
          padding-bottom: 480px; } } }
    @media screen and (min-width: 64em) {
      .page-header.home-header .navigation {
        margin-top: 25px; } }
    @media screen and (min-width: 90em) {
      .page-header.home-header .navigation {
        margin-top: 35px; } }
    @media screen and (min-width: 48em) {
      .page-header.home-header .page-header-container {
        display: block;
        height: auto; } }
    .page-header.home-header .logo {
      display: block;
      margin: 0;
      width: 7rem;
      height: 2.5625rem; }
      @media screen and (min-width: 64em) {
        .page-header.home-header .logo {
          margin: 0 auto;
          width: 9.25rem;
          height: 3.375rem; } }
      @media screen and (min-width: 75em) {
        .page-header.home-header .logo {
          width: 11.5rem;
          height: 4.1875rem; } }
      @media screen and (min-width: 90em) {
        .page-header.home-header .logo {
          width: 14.375rem;
          height: 5.3125rem; } }
      @media screen and (min-width: 90em) {
        .page-header.home-header .logo img {
          width: 100%; } }
    @media screen and (min-width: 64em) {
      .page-header.home-header .logo-wrapper {
        width: 100%;
        margin: 0; } }
    @media screen and (min-width: 64em) {
      .page-header.home-header .skip-links {
        margin-top: 15px; } }
    @media screen and (min-width: 75em) {
      .page-header.home-header .skip-links {
        margin-top: 0;
        position: absolute;
        top: calc(67px / 2); } }
    @media screen and (min-width: 90em) {
      .page-header.home-header .skip-links {
        margin-top: 16px;
        top: calc(84px / 2); } }
    .page-header.home-header .cart-link .count {
      border: 3px solid #ffffff; }
      @media screen and (min-width: 64em) {
        .page-header.home-header .cart-link .count {
          border: 3px solid #b4b7c5; } }
    .page-header.home-header.fixed .cart-link .count {
      border: 3px solid #ffffff; }
    .page-header.home-header.fixed .navigation {
      margin-top: 0; }
    @media screen and (min-width: 90em) {
      .page-header.home-header.fixed .skip-links {
        margin-top: 0; } }
  .page-header .cart-link {
    position: relative; }
    .page-header .cart-link .count {
      width: 0.75rem;
      height: 0.75rem;
      border: 3px solid #ffffff;
      background-color: rgba(247, 97, 99, 0.9);
      border-radius: 0.4375rem;
      position: absolute;
      top: 0;
      right: -0.25rem;
      font-size: 0; }
    .page-header .cart-link.no-count .count {
      display: none; }
  .page-header .open-sub-nav {
    font-size: 0.8125rem;
    text-transform: uppercase;
    font-weight: 400; }
    @media screen and (min-width: 40em) {
      .page-header .open-sub-nav {
        letter-spacing: 2px;
        font-size: 0.875rem; } }
    .page-header .open-sub-nav.more {
      display: none; }
      @media screen and (min-width: 40em) {
        .page-header .open-sub-nav.more {
          display: inline; } }
    .page-header .open-sub-nav span {
      display: block;
      margin-top: 0.3125rem; }
      @media screen and (min-width: 40em) {
        .page-header .open-sub-nav span {
          margin-top: 0.25rem; } }
  @media screen and (min-width: 64em) {
    .page-header.fixed {
      position: fixed;
      left: 0.9375rem;
      right: 0.9375rem;
      width: auto;
      padding: 1.0625rem 0; }
      .customer-account-index .page-header.fixed,
      .catalog-product-view .page-header.fixed,
      .catalog-category-view .page-header.fixed {
        border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
      .page-header.fixed .page-header-container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; }
      .page-header.fixed .skip-links {
        position: relative;
        top: auto; }
      .page-header.fixed .cart-link {
        position: relative; }
        .page-header.fixed .cart-link .count {
          border: 3px solid #ffffff; } }
  .page-header.hide {
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    opacity: 0;
    visibility: hidden;
    display: block !important; }
  @media screen and (min-width: 64em) {
    .page-header:not(.home-header) .columns {
      position: relative; } }
  @media screen and (min-width: 90em) {
    .page-header:not(.home-header) .columns {
      position: static; } }
  @media screen and (min-width: 48em) {
    .page-header:not(.home-header) .level0.show {
      -webkit-box-shadow: 0 4px 7px rgba(163, 163, 163, 0.5);
              box-shadow: 0 4px 7px rgba(163, 163, 163, 0.5); } }

.header-account {
  position: relative; }
  .header-account.active .login:after {
    -webkit-transform: rotate(-180deg);
            transform: rotate(-180deg); }
  .header-account .login {
    position: relative; }
    .header-account .login:after {
      content: '\e800';
      display: inline-block;
      vertical-align: sub;
      font-family: 'fontello';
      -webkit-transition: -webkit-transform .3s;
      transition: -webkit-transform .3s;
      transition: transform .3s;
      transition: transform .3s, -webkit-transform .3s;
      -webkit-transform-origin: center center;
              transform-origin: center center; }
    .header-account .login:before {
      content: '';
      display: block;
      position: absolute;
      left: 0;
      top: 1.25rem;
      height: 0.9375rem;
      width: 1.875rem; }
  .header-account .skip-content {
    position: absolute;
    top: calc(100% + 15px);
    background-color: #ffffff;
    padding: 0.625rem;
    z-index: 1;
    right: 0;
    width: 135px;
    display: none;
    -webkit-box-shadow: 0 4px 7px rgba(163, 163, 163, 0.5);
            box-shadow: 0 4px 7px rgba(163, 163, 163, 0.5); }
    @media screen and (min-width: 48em) {
      .header-account .skip-content {
        top: calc(100% + 7px); } }
    @media screen and (min-width: 64em) {
      .home-header .header-account .skip-content {
        right: 50%;
        -webkit-transform: translateX(50%);
                transform: translateX(50%); } }
    .fixed.home-header .header-account .skip-content {
      right: 0;
      -webkit-transform: none;
              transform: none; }
    .header-account .skip-content ul {
      list-style: none; }
      .header-account .skip-content ul a {
        text-transform: uppercase;
        font-size: 0.75rem;
        letter-spacing: 2px;
        font-weight: 500;
        -webkit-transition: color 0.3s ease;
        transition: color 0.3s ease; }
        .header-account .skip-content ul a:hover {
          color: #f16567; }

.header-banner {
  text-align: center;
  position: relative;
  z-index: 10;
  background-color: #f8f9fa;
  padding: 0; }
  .header-banner p {
    color: #a3a3a3;
    font-size: 0.5rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin: 0;
    line-height: 1.1; }
    @media screen and (min-width: 40em) {
      .header-banner p {
        font-size: 0.75rem;
        letter-spacing: 2.5px; } }
  .header-banner .hide-mobile {
    display: none; }
    @media screen and (min-width: 48em) {
      .header-banner .hide-mobile {
        display: block; } }
  .header-banner .mobile-header-banner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 15px 8px !important; }
    @media screen and (min-width: 48em) {
      .header-banner .mobile-header-banner {
        display: none; } }
    .header-banner .mobile-header-banner .subscription-features {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-top: 10px; }
      .header-banner .mobile-header-banner .subscription-features > ul {
        text-align: left;
        font-size: 13px; }
    .header-banner .mobile-header-banner .subscription-name {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      width: 100%;
      font-size: 14px;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      @media screen and (min-width: 40em) {
        .header-banner .mobile-header-banner .subscription-name {
          letter-spacing: 3px; } }
    .header-banner .mobile-header-banner .h2 {
      text-transform: uppercase;
      font-size: 14px; }
      @media screen and (min-width: 40em) {
        .header-banner .mobile-header-banner .h2 {
          font-size: 16px; } }
    .header-banner .mobile-header-banner .h4 {
      text-transform: uppercase;
      font-weight: bold;
      font-size: 13px;
      margin-left: 10px; }
      @media screen and (min-width: 40em) {
        .header-banner .mobile-header-banner .h4 {
          font-size: 16px; } }
    .header-banner .mobile-header-banner .button {
      margin: 0;
      margin-left: 10px; }
      @media screen and (min-width: 40em) {
        .header-banner .mobile-header-banner .button {
          margin-left: 20px; } }
  .header-banner .small-12 {
    padding: 0; }
  .header-banner.small {
    position: relative;
    padding: 0 15px 15px;
    background: white;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
    @media screen and (min-width: 48em) {
      .header-banner.small {
        padding: 0 30px 15px; } }
    .header-banner.small p {
      color: #000000;
      font-size: 10px;
      line-height: 1.4; }
      @media screen and (min-width: 48em) {
        .header-banner.small p {
          font-size: 12px;
          line-height: 1.2; } }
      .header-banner.small p a {
        text-decoration: underline;
        text-transform: capitalize;
        font-weight: 600;
        color: #f16567;
        font-size: 12px;
        margin-left: 14px;
        white-space: nowrap; }
        @media screen and (min-width: 48em) {
          .header-banner.small p a {
            font-size: 14px; } }
        .header-banner.small p a:hover {
          text-decoration: none; }
  .header-banner .cross {
    position: absolute;
    right: 0;
    top: 0;
    width: 15px;
    height: 15px;
    cursor: pointer; }
    @media screen and (min-width: 48em) {
      .header-banner .cross {
        right: 15px; } }
    .header-banner .cross:before, .header-banner .cross:after {
      content: '';
      position: absolute;
      left: 50%;
      top: 50%;
      width: 100%;
      height: 1px;
      background-color: #f16567; }
    .header-banner .cross:before {
      -webkit-transform: translate(-50%, -50%) rotate(45deg);
              transform: translate(-50%, -50%) rotate(45deg); }
    .header-banner .cross:after {
      -webkit-transform: translate(-50%, -50%) rotate(-45deg);
              transform: translate(-50%, -50%) rotate(-45deg); }
  .header-banner img {
    width: 100%; }

#sub-main-nav {
  background-color: #ffffff;
  position: absolute;
  left: -1px;
  right: -1px;
  padding: 1.25rem 0.625rem;
  display: none;
  top: 3.4375rem; }
  @media screen and (min-width: 64em) {
    #sub-main-nav {
      top: 100%; } }
  @media screen and (min-width: 48em) {
    #sub-main-nav {
      padding: 1.4375rem 0.9375rem; } }
  @media screen and (min-width: 90em) {
    #sub-main-nav {
      top: 6.3125rem;
      padding: 1.4375rem 0.9375rem; } }
  @media screen and (min-width: 101.25em) {
    #sub-main-nav {
      padding: 0.875rem 0.9375rem; } }
  .home-header #sub-main-nav {
    top: 3.4375rem; }
    @media screen and (min-width: 64em) {
      .home-header #sub-main-nav {
        top: 5.0625rem; } }
    @media screen and (min-width: 90em) {
      .home-header #sub-main-nav {
        top: 6.3125rem; } }
  .fixed.home-header #sub-main-nav {
    top: 6.3125rem; }
  #sub-main-nav ul {
    list-style: none;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    @media screen and (min-width: 64em) {
      #sub-main-nav ul {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row; } }
    #sub-main-nav ul li {
      padding: 0.3125rem 2.3125rem;
      position: relative; }
      #sub-main-nav ul li:before {
        left: -0.125rem;
        right: auto; }
      #sub-main-nav ul li:after {
        right: -0.125rem;
        left: auto; }
      #sub-main-nav ul li:before, #sub-main-nav ul li:after {
        content: '';
        position: absolute;
        top: 50%;
        margin-top: -2px;
        width: 0.25rem;
        height: 0.25rem;
        border-radius: 0.125rem;
        background-color: #000000;
        display: none; }
        @media screen and (min-width: 64em) {
          #sub-main-nav ul li:before, #sub-main-nav ul li:after {
            display: block; } }
      #sub-main-nav ul li a {
        text-transform: uppercase;
        color: #030303;
        font-size: 0.75rem;
        font-weight: 500;
        letter-spacing: 2px; }

.btn-menu {
  width: 2.5rem;
  height: 2.5rem;
  padding: 0.625rem 0.625rem 0.625rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  position: relative;
  float: left;
  margin-top: 0.3125rem; }
  @media screen and (min-width: 48em) {
    .btn-menu {
      display: none; } }
  .btn-menu > div, .btn-menu > p {
    display: inline-block;
    width: 1rem;
    height: 0.4375rem;
    position: relative; }
    .btn-menu > div span, .btn-menu > p span {
      height: 0.125rem;
      display: block;
      position: absolute;
      background-color: #000000;
      left: 0;
      width: 1rem;
      -webkit-transform: rotate(0deg);
              transform: rotate(0deg);
      -webkit-transition: all .25s, background-color .25s;
      transition: all .25s, background-color .25s;
      -webkit-transform-origin: left center;
              transform-origin: left center; }
      .btn-menu > div span:nth-child(1), .btn-menu > p span:nth-child(1) {
        top: 0; }
      .btn-menu > div span:nth-child(2), .btn-menu > p span:nth-child(2) {
        top: 0.3125rem; }
  .btn-menu.open span {
    left: 0.125rem; }
    .btn-menu.open span:nth-child(1) {
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg);
      top: -0.1875rem; }
    .btn-menu.open span:nth-child(2) {
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg);
      top: 0.5rem; }

.navigation {
  overflow: auto;
  position: fixed;
  display: none;
  padding: 2.5rem 0 0.3125rem;
  background-color: #ffffff;
  right: -1px;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
  top: 0;
  left: 0;
  height: 100vh;
  z-index: 101; }
  .navigation:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0; }
  @media screen and (min-width: 48em) {
    .navigation {
      display: block !important;
      padding: 0;
      width: auto !important;
      position: static;
      top: auto;
      left: auto !important;
      right: auto !important;
      background-color: transparent;
      margin-top: 7px;
      z-index: 1;
      height: auto;
      overflow: auto; } }
  @media screen and (min-width: 64em) {
    .navigation {
      margin-top: 0.625rem; } }
  @media screen and (min-width: 75em) {
    .navigation {
      margin-top: 0; } }
  @media screen and (min-width: 48em) {
    .home-header .navigation {
      left: -0.625rem;
      width: calc(100% + 20px);
      right: auto; } }
  .navigation ul {
    list-style: none;
    margin: 0;
    padding: 0; }
  .navigation > ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    height: 100%;
    overflow: auto; }
    @media screen and (min-width: 48em) {
      .navigation > ul {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        height: auto; } }
    .navigation > ul li.more {
      display: none; }
      @media screen and (min-width: 48em) {
        .navigation > ul li.more {
          display: inline; } }
    .navigation > ul > li {
      padding: 0.5rem 1.75rem;
      position: static; }
      @media screen and (min-width: 48em) {
        .navigation > ul > li {
          padding: 0 0.875rem;
          margin: 8px 6px; } }
      @media screen and (min-width: 90em) {
        .navigation > ul > li {
          padding: 0 1.125rem;
          margin: 12px; } }
    .navigation > ul > li.parent {
      position: relative;
      text-align: center;
      width: 100%; }
      @media screen and (min-width: 48em) {
        .navigation > ul > li.parent {
          position: static;
          text-align: left;
          width: auto; } }
      .navigation > ul > li.parent > a {
        position: relative;
        color: inherit; }
        .navigation > ul > li.parent > a:after {
          content: '\e800';
          font-family: 'fontello';
          -webkit-transition: -webkit-transform 0.45s ease;
          transition: -webkit-transform 0.45s ease;
          transition: transform 0.45s ease;
          transition: transform 0.45s ease, -webkit-transform 0.45s ease;
          -webkit-transform-origin: center center;
                  transform-origin: center center;
          display: inline-block;
          position: absolute;
          top: 0;
          margin-left: 0.6875rem; }
          @media screen and (min-width: 48em) {
            .navigation > ul > li.parent > a:after {
              margin-left: 0.3125rem; } }
          @media screen and (min-width: 90em) {
            .navigation > ul > li.parent > a:after {
              margin-left: 0.5625rem; } }
  .navigation a:hover {
    color: #f16567; }
  .navigation .btn-menu {
    position: absolute;
    left: 10px;
    top: 10px; }
    @media screen and (min-width: 48em) {
      .navigation .btn-menu {
        display: none; } }
  .navigation .view-all {
    text-decoration: underline; }

.level0 > a {
  display: inline-block;
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px;
  font-weight: 500; }
  @media screen and (min-width: 75em) {
    .level0 > a {
      font-size: 16px;
      letter-spacing: 3px; } }

.level0.submenu {
  position: absolute;
  top: 100%;
  left: 50%;
  padding: 25px 10px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease, -webkit-transform 0.3s ease;
  opacity: 0;
  visibility: hidden;
  cursor: auto;
  background-color: #ffffff;
  z-index: 1;
  text-align: center; }
  @media screen and (min-width: 48em) {
    .level0.submenu {
      text-align: left;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      min-width: 7.8125rem; } }
  @media screen and (min-width: 75em) {
    .level0.submenu {
      padding: 30px 11%; } }
  .fixed .level0.submenu {
    -webkit-box-shadow: 0 4px 7px rgba(163, 163, 163, 0.5);
            box-shadow: 0 4px 7px rgba(163, 163, 163, 0.5); }

.level0.show {
  background-color: #ebedf2;
  opacity: 1;
  visibility: visible; }
  @media screen and (max-width: 47.9375em) {
    .level0.show {
      text-align: left; } }

.level0.parent {
  cursor: pointer; }
  .level0.parent.opened > a {
    color: #f16567; }
    .level0.parent.opened > a:after {
      -webkit-transform: scale(1, -1);
              transform: scale(1, -1); }
  .level0.parent:hover > a {
    color: #f16567; }

.level0.category-item {
  overflow: hidden; }
  .level0.category-item.opened {
    overflow: unset; }
  @media screen and (min-width: 48em) {
    .level0.category-item.first .level1.category-item {
      padding-top: 51px;
      position: relative; } }
  @media screen and (min-width: 48em) {
    .level0.category-item.first .level1.category-item > a {
      position: absolute;
      bottom: calc(100% - 50px);
      left: 0; } }

.level0.mega-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .level0.mega-menu .level1.category-item {
    width: auto;
    margin-left: 0;
    margin-right: 0; }

@media screen and (min-width: 48em) {
  .level1.submenu > li:last-of-type {
    margin-bottom: 15px; } }

.level1.category-item {
  width: 100%;
  margin: 0 0 15px; }
  @media screen and (min-width: 48em) {
    .level1.category-item {
      margin: 0 10px;
      width: calc(20% - 20px); } }
  @media screen and (min-width: 75em) {
    .level1.category-item {
      margin: 0 15px;
      width: calc(20% - 30px); } }
  .level1.category-item > a {
    display: inline-block;
    font-weight: 600;
    letter-spacing: 2.5px;
    padding-bottom: 6px;
    border-bottom: 1px solid #000000;
    -webkit-transition: border-color 0.3s ease, color 0.3s ease;
    transition: border-color 0.3s ease, color 0.3s ease; }
    .level1.category-item > a:hover {
      border-color: #f16567; }

@media screen and (min-width: 64em) {
  .level1.two-cols {
    -webkit-columns: 2;
       -moz-columns: 2;
            columns: 2;
    -webkit-column-gap: 46px;
       -moz-column-gap: 46px;
            column-gap: 46px;
    white-space: nowrap; } }

.level1 > a {
  display: inline-block;
  text-transform: uppercase;
  font-size: 0.75rem;
  letter-spacing: 1px;
  font-weight: 500; }
  @media screen and (min-width: 75em) {
    .level1 > a {
      font-size: 0.875rem;
      letter-spacing: 2px; } }

.level2 > a {
  font-size: 0.875rem; }

.left-side-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media screen and (max-width: 47.9375em) {
    .left-side-menu {
      max-width: 268px; } }
  @media screen and (min-width: 48em) {
    .left-side-menu {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start; } }
  .left-side-menu .image-holder {
    display: none;
    width: 200px;
    height: 200px;
    margin-right: 15px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center; }
    @media screen and (min-width: 48em) {
      .left-side-menu .image-holder {
        display: block; } }
    @media screen and (min-width: 64em) {
      .left-side-menu .image-holder {
        width: 300px;
        height: 300px;
        margin-right: 30px; } }
  .left-side-menu .level1.category-item {
    max-width: 268px;
    padding-bottom: 0;
    margin: 0 0 15px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
    .left-side-menu .level1.category-item > a {
      margin-bottom: 5px;
      padding-bottom: 0;
      text-decoration: none;
      border-bottom: 0; }

@media screen and (max-width: 47.9375em) {
  .right-side-menu {
    max-width: 268px; } }

@media screen and (min-width: 48em) {
  .right-side-menu {
    border-left: 1px solid rgba(0, 0, 0, 0.1);
    padding-left: 15px;
    margin-left: 15px;
    max-width: 200px; } }

@media screen and (min-width: 64em) {
  .right-side-menu {
    padding-left: 30px;
    margin-left: 30px;
    max-width: none; } }

@media screen and (min-width: 48em) {
  .about-us-menu-item .level1.category-item {
    text-align: center; } }

@media screen and (min-width: 48em) {
  .train-with-us-menu .right-side-menu {
    margin-left: 10px;
    max-width: 230px; } }

@media screen and (min-width: 64em) {
  .train-with-us-menu .right-side-menu {
    margin-left: 28px;
    max-width: 285px; }
    .train-with-us-menu .right-side-menu p {
      font-size: 14px; }
    .train-with-us-menu .right-side-menu a {
      margin-bottom: 10px; } }

.footer-gallery {
  background-color: #ebedf2; }

.footer_slider-slider {
  padding: 2.1875rem 0.3125rem;
  position: relative; }
  @media screen and (min-width: 75em) {
    .footer_slider-slider {
      padding: 3.75rem 3.125rem 3.75rem; } }
  .footer_slider-slider .slide-content-box {
    width: 100%; }
  .footer_slider-slider .slide-content-text {
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    max-width: 815px;
    margin: 0 auto; }
  .footer_slider-slider .slick-slider-nav .slick-slide img {
    max-width: 100%;
    width: auto !important;
    width: 185px; }
    @media screen and (min-width: 75em) {
      .footer_slider-slider .slick-slider-nav .slick-slide img {
        max-width: 185px; } }
  .footer_slider-slider .slick-slide > div, .footer_slider-slider .slick-slide > a {
    display: block;
    padding: 0 0.625rem; }
    @media screen and (min-width: 64em) {
      .footer_slider-slider .slick-slide > div, .footer_slider-slider .slick-slide > a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; } }
    @media screen and (min-width: 75em) {
      .footer_slider-slider .slick-slide > div, .footer_slider-slider .slick-slide > a {
        padding: 0 1.5625rem; } }
    .footer_slider-slider .slick-slide > div .author, .footer_slider-slider .slick-slide > a .author {
      position: relative;
      color: #a3a3a3;
      font-weight: 500;
      padding-top: 10px;
      margin-top: 15px; }
      .footer_slider-slider .slick-slide > div .author:before, .footer_slider-slider .slick-slide > a .author:before {
        content: '-';
        line-height: 4px;
        position: absolute;
        left: 50%;
        top: -2px;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%); }
    .footer_slider-slider .slick-slide > div p, .footer_slider-slider .slick-slide > a p {
      font-size: 0.9375rem;
      color: #000000;
      margin: 0;
      text-align: center; }
      @media screen and (min-width: 64em) {
        .footer_slider-slider .slick-slide > div p, .footer_slider-slider .slick-slide > a p {
          font-size: 1.0625rem;
          width: 100%; } }
  .footer_slider-slider .slick-prev {
    left: -0.3125rem; }
    @media screen and (min-width: 75em) {
      .footer_slider-slider .slick-prev {
        left: -1.5625rem; } }
  .footer_slider-slider .slick-next {
    right: -0.3125rem; }
    @media screen and (min-width: 75em) {
      .footer_slider-slider .slick-next {
        right: -1.5625rem; } }
  .footer_slider-slider .slick-dots {
    position: absolute;
    bottom: 0;
    width: 100%;
    left: 0; }
    @media screen and (min-width: 75em) {
      .footer_slider-slider .slick-dots {
        top: 50%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        bottom: auto;
        width: auto; } }
    .footer_slider-slider .slick-dots li {
      margin-bottom: 0.625rem; }
      @media screen and (min-width: 75em) {
        .footer_slider-slider .slick-dots li {
          display: block; } }
      .footer_slider-slider .slick-dots li:last-of-type {
        margin-bottom: 0; }
      .footer_slider-slider .slick-dots li button:before {
        font-size: 1.125rem;
        opacity: 1;
        color: #a3a3a3; }
      .footer_slider-slider .slick-dots li.slick-active button:before {
        opacity: 1;
        color: #000000; }
  .footer_slider-slider .slick-track {
    margin: 0 auto; }

.footer {
  font-size: 0.875rem;
  font-weight: 500; }
  @media screen and (min-width: 48em) {
    .footer {
      font-size: 1rem; } }
  .footer h2, .footer .h2 {
    text-transform: uppercase;
    font-size: 1.125rem;
    font-weight: 500;
    margin-bottom: 1.25rem;
    font-family: 'BrandonGrotesque', sans-serif;
    letter-spacing: 1.4px; }
    .footer h2 label, .footer .h2 label {
      font-weight: 500; }
      @media screen and (min-width: 64em) {
        .footer h2 label, .footer .h2 label {
          font-size: 1.125rem; } }
  .footer .footer-container {
    position: relative; }
  .footer a {
    color: inherit; }
    .footer a:hover {
      color: #a3a3a3; }
  .footer p {
    font-size: inherit; }
  .footer .newsletter-description {
    margin-bottom: 20px; }
  .footer .input-box {
    margin-bottom: 0; }
  .footer .btn-arrow:hover {
    background: rgba(0, 0, 0, 0.14); }

.footer-holder {
  text-align: center;
  border-bottom: 1px solid rgba(0, 0, 0, 0.14); }
  .footer-holder:last-of-type {
    border-bottom: none; }
  @media screen and (min-width: 64em) {
    .footer-holder {
      padding: 1.875rem 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  .footer-holder .item {
    padding: 1.5625rem 0.9375rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.14); }
    .footer-holder .item:last-of-type {
      border-bottom: none; }
    @media screen and (min-width: 64em) {
      .footer-holder .item {
        padding: 0.9375rem;
        border-bottom: none;
        border-left: 1px solid rgba(0, 0, 0, 0.14);
        width: 33.3%; }
        .footer-holder .item:first-of-type {
          border-left: none; } }
    @media screen and (min-width: 90em) {
      .footer-holder .item {
        padding: 0.9375rem 1.5625rem; } }
    .footer-holder .item.middle p {
      max-width: 21.875rem;
      margin: 0 auto 1rem; }

.contact-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .contact-block .item {
    border: 0 !important; }
    @media screen and (min-width: 64em) {
      .contact-block .item {
        width: 100%;
        max-width: 1000px; } }
    @media screen and (max-width: 63.9375em) {
      .contact-block .item + .item {
        padding-top: 0; } }
  .contact-block .item-mail {
    margin-bottom: 15px; }
    @media screen and (min-width: 64em) {
      .contact-block .item-mail {
        margin: 0;
        padding: 0 5px; } }
    .contact-block .item-mail p {
      margin-bottom: 5px; }
    .contact-block .item-mail a {
      color: #a3a3a3; }
      .contact-block .item-mail a:hover {
        color: #000000; }

@media screen and (min-width: 64em) {
  .emails-holder {
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; } }

@media screen and (min-width: 64em) {
  .privacy-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row; } }

@media screen and (min-width: 64em) {
  .privacy-block .footer-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; } }

@media screen and (min-width: 64em) {
  .privacy-block .footer-nav li {
    margin-bottom: 0; } }

@media screen and (min-width: 64em) {
  .privacy-block .footer-nav li + li {
    margin-left: 15px; } }

.privacy-block .footer-nav a {
  text-transform: uppercase;
  font-size: 0.75rem; }

.privacy-block .item {
  border: 0 !important; }
  @media screen and (min-width: 64em) {
    .privacy-block .item {
      width: auto;
      padding: 0; } }
  @media screen and (min-width: 64em) {
    .privacy-block .item:first-of-type {
      text-align: left; } }
  @media screen and (min-width: 64em) {
    .privacy-block .item:last-of-type {
      text-align: right; } }
  @media screen and (max-width: 63.9375em) {
    .privacy-block .item + .item {
      padding-top: 0; } }

.block-subscribe, .block-subscribe-popup {
  max-width: 28.125rem;
  margin: 0 auto; }
  .block-subscribe .form-group, .block-subscribe-popup .form-group {
    position: relative; }
    @media screen and (min-width: 64em) {
      .block-subscribe .form-group, .block-subscribe-popup .form-group {
        max-width: 90%;
        margin: 0 auto; } }
  .block-subscribe .input-text, .block-subscribe-popup .input-text {
    font-size: 0.75rem;
    letter-spacing: 1px;
    height: 2.625rem;
    padding-right: 4.375rem;
    color: #000000;
    line-height: 2.625rem;
    border-color: #000000; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .block-subscribe .input-text, .block-subscribe-popup .input-text {
        line-height: 1.25rem; } }
    @media screen and (min-width: 48em) {
      .block-subscribe .input-text, .block-subscribe-popup .input-text {
        padding-right: 7.5rem; } }
    .block-subscribe .input-text::-webkit-input-placeholder, .block-subscribe-popup .input-text::-webkit-input-placeholder {
      color: #000000;
      opacity: 1;
      letter-spacing: 1px;
      -webkit-transition: color .25s;
      transition: color .25s; }
    .block-subscribe .input-text::-moz-placeholder, .block-subscribe-popup .input-text::-moz-placeholder {
      color: #000000;
      opacity: 1;
      letter-spacing: 1px;
      -webkit-transition: color .25s;
      transition: color .25s; }
    .block-subscribe .input-text:-ms-input-placeholder, .block-subscribe-popup .input-text:-ms-input-placeholder {
      color: #000000;
      letter-spacing: 1px;
      -webkit-transition: color .25s;
      transition: color .25s; }
  .block-subscribe .btn-arrow, .block-subscribe-popup .btn-arrow {
    position: absolute;
    right: 0;
    top: 0;
    border-color: #000000;
    -webkit-transition: background-color 0.15s ease;
    transition: background-color 0.15s ease; }

.follow-links {
  margin: 0 -0.625rem 1.5625rem;
  list-style: none; }
  @media screen and (min-width: 90em) {
    .follow-links {
      margin: 0 -1.0625rem 2.1875rem; } }
  .follow-links li {
    display: inline-block;
    vertical-align: top;
    margin: 0 0.625rem; }
    @media screen and (min-width: 90em) {
      .follow-links li {
        margin: 0 1.0625rem; } }
    .follow-links li a {
      font-size: 0.8125rem;
      padding: 0 0.3125rem; }

.footer-nav {
  margin-left: 0;
  list-style: none; }
  .footer-nav li {
    margin-bottom: 0.3125rem; }
  .footer-nav a {
    text-transform: uppercase;
    font-size: 0.75rem; }

.scroll-top {
  color: #000000 !important;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: 1rem; }
  @media screen and (min-width: 64em) {
    .scroll-top {
      bottom: 0.625rem; } }

.copyright span {
  font-weight: 400; }

.breadcrumbs {
  padding: 0.9375rem 0;
  margin-bottom: 1.5625rem; }
  @media screen and (min-width: 90em) {
    .breadcrumbs {
      margin-bottom: 2.8125rem; } }
  @media screen and (min-width: 64em) {
    .breadcrumbs {
      padding: 1.6875rem 0; } }
  .breadcrumbs.white {
    background-color: transparent !important;
    border-top: 1px solid rgba(0, 0, 0, 0.1); }
    @media screen and (min-width: 90em) {
      .breadcrumbs.white {
        margin-bottom: 1.5625rem; } }
  .breadcrumbs .breadcrumbs-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 0.5px; }
  .breadcrumbs ul {
    margin: 0;
    margin-right: 0.9375rem;
    padding: 0;
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .breadcrumbs ul a {
      color: #000000;
      -webkit-transition: color 0.3s ease;
      transition: color 0.3s ease; }
      .breadcrumbs ul a:hover {
        color: #a3a3a3; }
    .breadcrumbs ul strong {
      color: #a3a3a3; }
    .breadcrumbs ul a, .breadcrumbs ul strong {
      font-weight: 500; }
    .breadcrumbs ul span {
      padding: 0 0.3125rem;
      font-weight: 500; }
  .breadcrumbs .back-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #000000; }
    .breadcrumbs .back-link:hover:before {
      -webkit-transform: translateX(-5px);
              transform: translateX(-5px); }
    .breadcrumbs .back-link:before {
      content: '\e802';
      font-family: 'fontello';
      display: inline-block;
      vertical-align: middle;
      margin-right: 0.375rem;
      font-size: 0.875rem;
      -webkit-transition: -webkit-transform .3s ease;
      transition: -webkit-transform .3s ease;
      transition: transform .3s ease;
      transition: transform .3s ease, -webkit-transform .3s ease; }

.content-boxes {
  background-color: #f8f9fa;
  padding: 2.8125rem 0 1.5625rem;
  text-align: center; }
  @media screen and (min-width: 90em) {
    .content-boxes {
      padding: 5.9375rem 0 4.375rem; } }
  .content-boxes .columns {
    margin-bottom: 0.9375rem; }
  @media screen and (min-width: 90em) {
    .content-boxes p {
      padding: 0 1.875rem; } }
  .content-boxes h2 {
    margin-bottom: 1.5rem; }
    @media screen and (min-width: 90em) {
      .content-boxes h2 {
        font-size: 1.875rem; } }
  .content-boxes .picture {
    padding-top: 49.18%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    margin-bottom: 1.5625rem;
    max-width: 100% !important; }

.block-subscribe-popup {
  background-image: url("../images/tulle.jpg");
  background-size: cover;
  background-position: center;
  padding: 1.875rem;
  text-align: center;
  color: #000000;
  z-index: 101;
  max-width: 100%; }
  @media screen and (min-width: 30em) {
    .block-subscribe-popup {
      max-width: 46.875rem; } }
  @media screen and (min-width: 48em) {
    .block-subscribe-popup {
      padding: 1.25rem; } }
  @media screen and (min-width: 75em) {
    .block-subscribe-popup {
      left: 0.9375rem;
      right: 0.9375rem;
      max-width: 59.375rem; } }
  .block-subscribe-popup .border-holder {
    border: 1px dashed black;
    padding: 15px; }
    @media screen and (min-width: 75em) {
      .block-subscribe-popup .border-holder {
        padding: 2.8125rem 2.1875rem; } }
  .block-subscribe-popup .block-subscribe-popup-content {
    color: #000000; }
    @media screen and (min-width: 40em) {
      .block-subscribe-popup .block-subscribe-popup-content {
        max-width: 31.25rem;
        width: 100%;
        margin: 0 auto; } }
  .block-subscribe-popup .validation-advice {
    color: red;
    font-weight: 400; }
  .block-subscribe-popup .form-group {
    max-width: 21.875rem;
    margin: 0 auto; }
    @media screen and (min-width: 75em) {
      .block-subscribe-popup .form-group {
        margin-top: 3.125rem; } }
  .block-subscribe-popup h2 {
    font-size: 1.125rem;
    margin-bottom: 0.9375rem;
    font-weight: bold;
    color: #000000; }
    .block-subscribe-popup h2 label {
      color: #000000;
      font-weight: 600; }
      @media screen and (min-width: 64em) {
        .block-subscribe-popup h2 label {
          font-size: 1.125rem; } }
      @media screen and (min-width: 75em) {
        .block-subscribe-popup h2 label {
          font-size: 2.1875rem; } }
  .block-subscribe-popup p {
    font-size: 0.875rem;
    max-width: 21.875rem;
    margin: 0 auto 1rem; }
    @media screen and (min-width: 75em) {
      .block-subscribe-popup p {
        font-size: 1.125rem;
        max-width: 28.125rem; } }
  .block-subscribe-popup .input-text {
    background-color: transparent;
    border-color: #000000;
    color: #000000;
    caret-color: #000000; }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      .block-subscribe-popup .input-text {
        line-height: 1.25rem; } }
    @media screen and (min-width: 75em) {
      .block-subscribe-popup .input-text {
        font-size: 1rem; } }
    .block-subscribe-popup .input-text:focus {
      border-color: #000000;
      color: #000000; }
    .block-subscribe-popup .input-text::-webkit-input-placeholder {
      color: #000000; }
    .block-subscribe-popup .input-text::-moz-placeholder {
      color: #000000; }
    .block-subscribe-popup .input-text:-ms-input-placeholder {
      color: #000000; }
  .block-subscribe-popup .btn-arrow {
    position: static;
    border-color: transparent;
    background-color: transparent;
    width: 11.25rem;
    margin: 0 auto;
    font-weight: 500; }
    @media screen and (min-width: 40em) {
      .block-subscribe-popup .btn-arrow {
        width: 15.9375rem;
        text-transform: uppercase; } }
    .block-subscribe-popup .btn-arrow:hover {
      border-color: transparent; }
    .block-subscribe-popup .btn-arrow span {
      background-color: #000000; }
      .block-subscribe-popup .btn-arrow span:after {
        top: -12px; }
  .block-subscribe-popup .button-secondary {
    text-transform: uppercase; }
  .block-subscribe-popup .pink {
    color: #f16567;
    font-weight: bold;
    font-size: 1.375rem; }
    @media screen and (min-width: 75em) {
      .block-subscribe-popup .pink {
        font-size: 3.125rem; } }
  .block-subscribe-popup .load-button {
    color: #000000;
    font-size: 1.25rem; }
  .block-subscribe-popup .cross {
    height: 1.375rem;
    top: 0.4375rem;
    right: 0.3125rem; }
    @media screen and (min-width: 48em) {
      .block-subscribe-popup .cross {
        height: 1.5rem;
        top: -2.125rem;
        right: -2.125rem; }
        .block-subscribe-popup .cross > span {
          width: 1.5rem; }
          .block-subscribe-popup .cross > span span {
            width: 1.5rem; } }
    @media screen and (min-width: 75em) {
      .block-subscribe-popup .cross {
        top: -2.5rem;
        right: -2.5rem;
        height: 1.875rem; }
        .block-subscribe-popup .cross > span {
          width: 1.875rem; }
          .block-subscribe-popup .cross > span span {
            width: 1.875rem; } }
    .block-subscribe-popup .cross > span {
      position: relative;
      width: 1.375rem;
      height: 1px;
      background-color: #000000;
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg);
      -webkit-transform-origin: center center;
              transform-origin: center center;
      display: block; }
      .block-subscribe-popup .cross > span span {
        position: relative;
        width: 1.375rem;
        height: 1px;
        background-color: #000000;
        -webkit-transform: rotate(90deg);
                transform: rotate(90deg);
        -webkit-transform-origin: center center;
                transform-origin: center center;
        display: block; }

.newsletter-subscription.modal-popup .modal-inner-wrap {
  padding: 0;
  overflow: visible; }

.newsletter-subscription.modal-popup .action-close {
  width: 20px;
  height: 20px;
  z-index: 6; }
  @media screen and (min-width: 48em) {
    .newsletter-subscription.modal-popup .action-close {
      top: -38px;
      right: -36px; } }

.newsletter-subscription.modal-popup .modal-content {
  margin: 0; }
  @media screen and (max-width: 63.9375em) {
    .newsletter-subscription.modal-popup .modal-content {
      width: calc(100% - 30px);
      height: auto;
      position: absolute;
      z-index: 5;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); } }

.checkbox {
  position: absolute;
  opacity: 0; }
  .checkbox + label {
    position: relative;
    cursor: pointer;
    padding: 0;
    margin: 0;
    font-size: 0.9375rem;
    line-height: 1.55;
    padding-left: 1.375rem; }
    .checkbox + label a {
      position: relative; }
      .checkbox + label a:hover:after {
        background-color: #000000; }
      .checkbox + label a:after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 1px;
        background-color: #a3a3a3;
        -webkit-transition: background-color .3s ease;
        transition: background-color .3s ease; }
    @media screen and (min-width: 64em) {
      .checkbox + label {
        font-size: 1.0625rem;
        padding-left: 1.6875rem;
        line-height: 1.4; } }
  .checkbox + label:before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 0.25rem;
    width: 0.9375rem;
    height: 0.9375rem;
    background: #ffffff;
    border: 1px solid #000000; }
  .checkbox:checked + label:before {
    background: #ffffff; }
  .checkbox:disabled + label {
    color: #d5d6d7;
    cursor: auto; }
  .checkbox:disabled + label:before {
    -webkit-box-shadow: none;
            box-shadow: none;
    background: #ddd; }
  .checkbox:checked + label:after {
    content: '';
    position: absolute;
    top: 0.375rem;
    left: 0.3125rem;
    width: 0.125rem;
    height: 0.5625rem;
    padding: 0.125rem;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    text-align: center;
    border: solid #000000;
    border-width: 0 1px 1px 0; }

.radio:checked,
.radio:not(:checked) {
  position: absolute;
  left: -9999px; }

.radio:checked + label,
.radio:not(:checked) + label {
  position: relative;
  padding-left: 2.5rem;
  cursor: pointer;
  line-height: 1.25rem;
  display: inline-block;
  color: rgba(0, 0, 0, 0.5);
  font-size: 0.9375rem; }
  @media screen and (min-width: 64em) {
    .radio:checked + label,
    .radio:not(:checked) + label {
      font-size: 1.0625rem; } }
  @media screen and (min-width: 75em) {
    .radio:checked + label,
    .radio:not(:checked) + label {
      font-size: 1.25rem; } }

.radio:checked + label:before,
.radio:not(:checked) + label:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 1.25rem;
  height: 1.25rem;
  border: 1px solid #000000;
  border-radius: 100%;
  background: #ffffff; }

.radio:checked + label:after,
.radio:not(:checked) + label:after {
  content: '';
  width: 0.375rem;
  height: 0.375rem;
  background: #000000;
  position: absolute;
  top: 0.4375rem;
  left: 0.4375rem;
  border-radius: 100%; }

.radio:not(:checked) + label:after {
  opacity: 0; }

.radio:checked + label:after {
  opacity: 1; }

.custom-select {
  position: relative; }
  .custom-select .selected-value {
    font-family: inherit;
    font-size: 1.0625rem;
    letter-spacing: .5px;
    height: 2.5rem;
    line-height: 2.375rem;
    margin: 0 0 1rem;
    padding: 0 2.1875rem 0 1.125rem;
    -webkit-transition: border-color .25s ease-in-out;
    transition: border-color .25s ease-in-out;
    color: #a3a3a3;
    border: 1px solid #ccc;
    background-color: #fff;
    background-image: url(../images/icons/arrow-down.svg);
    background-repeat: no-repeat;
    background-position: right 18px center;
    background-size: 14px;
    cursor: pointer; }
  .custom-select.disabled .selected-value {
    cursor: not-allowed;
    background-color: #b4bfc2; }
  .custom-select.opened .selected-value {
    border-color: #000000; }
  .custom-select.opened .select-options {
    display: block; }
  .custom-select .select-list {
    max-height: 14.375rem; }
  .custom-select .select-options {
    position: absolute;
    left: 0;
    width: 100%;
    top: 3.0625rem;
    border: 1px solid #ccc;
    background-color: #ffffff;
    z-index: 100;
    overflow: hidden;
    cursor: pointer;
    display: none; }
    .custom-select .select-options ul {
      list-style: none;
      margin: 0;
      padding: 0.625rem; }
      @media screen and (min-width: 75em) {
        .custom-select .select-options ul {
          padding: 1.25rem 0.625rem 1.25rem 1.25rem; } }
    .custom-select .select-options li {
      font-size: 1.0625rem;
      letter-spacing: .5px;
      color: #a3a3a3;
      margin-bottom: 0.3125rem; }
      .custom-select .select-options li:last-child {
        margin-bottom: 0; }

.custom-scroll {
  min-height: 0;
  min-width: 0; }
  .custom-scroll .outer-container {
    overflow: hidden;
    position: relative; }
    .custom-scroll .outer-container:hover .custom-scrollbar {
      opacity: 1;
      -webkit-transition-duration: 0.2s;
              transition-duration: 0.2s; }
  .custom-scroll .inner-container {
    overflow-x: hidden;
    overflow-y: scroll;
    position: relative;
    z-index: 0; }
    .custom-scroll .inner-container:after {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      left: 0;
      height: 0;
      background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), color-stop(60%, rgba(0, 0, 0, 0.05)), to(rgba(0, 0, 0, 0)));
      background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.05) 60%, rgba(0, 0, 0, 0) 100%);
      pointer-events: none;
      -webkit-transition: height 0.1s ease-in;
      transition: height 0.1s ease-in;
      will-change: height; }
    .custom-scroll .inner-container.content-scrolled:after {
      height: 5px;
      -webkit-transition: height 0.15s ease-out;
      transition: height 0.15s ease-out; }
  .custom-scroll.scroll-handle-dragged .inner-container {
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
  .custom-scroll .custom-scrollbar {
    position: absolute;
    height: 100%;
    width: 0.25rem;
    right: 0.1875rem;
    z-index: 1;
    -webkit-transition: opacity 0.4s ease-out;
    transition: opacity 0.4s ease-out;
    padding: 0.375rem 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    pointer-events: none; }
    .custom-scroll .custom-scrollbar.custom-scrollbar-rtl {
      right: auto;
      left: 3px; }
  .custom-scroll.scroll-handle-dragged .custom-scrollbar {
    opacity: 1; }
  .custom-scroll .custom-scroll-handle {
    position: absolute;
    width: 100%;
    top: 0; }
  .custom-scroll .inner-handle {
    height: calc(100% - 12px);
    margin-top: 6px;
    background-color: rgba(0, 0, 0, 0.7);
    border-radius: 0.25rem; }

.block-account > nav, .block-category > nav {
  margin: 0 auto 1.875rem;
  max-width: 30rem; }

.block-account ul.level1, .block-category ul.level1 {
  max-width: calc(100% - 10px);
  margin: 0 auto; }
  .block-account ul.level1 li:first-child, .block-category ul.level1 li:first-child {
    margin-top: 0; }

.block-account ul.level2, .block-category ul.level2 {
  max-width: calc(100% - 10px);
  margin: 0 auto; }
  .block-account ul.level2 li:first-child, .block-category ul.level2 li:first-child {
    margin-top: 0; }

@media screen and (min-width: 64em) {
  .block-account > nav, .block-category > nav {
    margin: 0 0 2.5rem;
    max-width: 100%; }
  .block-account ul.level1, .block-category ul.level1 {
    margin-top: 1px; }
  .block-account ul.level2, .block-category ul.level2 {
    margin-left: 1px; }
  .block-account li.parent.level1.spill ul.level2, .block-category li.parent.level1.spill ul.level2 {
    margin-left: 0;
    margin-right: 1px; }
  .block-account ul.level1, .block-account ul.level2, .block-category ul.level1, .block-category ul.level2 {
    max-width: 100%;
    position: relative;
    z-index: 10; } }

.catalog-product-view .block-account, .catalog-product-view .block-category {
  background-color: #f6f7fb; }

.block-account .items, .block-category .items {
  list-style: none;
  margin: 0;
  text-align: center;
  padding-top: 1px; }
  @media screen and (min-width: 64em) {
    .block-account .items, .block-category .items {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  .block-account .items .item, .block-category .items .item {
    position: relative;
    margin-top: -1px; }
    @media screen and (min-width: 64em) {
      .block-account .items .item, .block-category .items .item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        margin-top: 0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -ms-flex-preferred-size: calc(100% / 4.001);
            flex-basis: calc(100% / 4.001); }
        .block-account .items .item:after, .block-account .items .item:before, .block-category .items .item:after, .block-category .items .item:before {
          content: '';
          position: absolute;
          left: 0;
          width: 100%;
          height: 1px;
          background-color: #ccc;
          z-index: 1;
          -webkit-transition: background-color .3s ease;
          transition: background-color .3s ease; }
        .block-account .items .item:after, .block-category .items .item:after {
          top: -1px; }
        .block-account .items .item:before, .block-category .items .item:before {
          bottom: 0; } }
    @media screen and (min-width: 75em) {
      .block-account .items .item, .block-category .items .item {
        -ms-flex-preferred-size: calc(100% / 6.001);
            flex-basis: calc(100% / 6.001); } }
    @media screen and (min-width: 90em) {
      .block-account .items .item, .block-category .items .item {
        -ms-flex-preferred-size: calc(100% / 8.001);
            flex-basis: calc(100% / 8.001); } }
    .touch .block-account .items .item.parent > ul, .touch .block-category .items .item.parent > ul {
      display: none !important;
      opacity: 0 !important; }
    .touch .block-account .items .item.parent.menu-active > ul, .touch .block-category .items .item.parent.menu-active > ul {
      display: block !important;
      opacity: 1 !important; }
    .block-account .items .item.current, .block-account .items .item.active, .block-category .items .item.current, .block-category .items .item.active {
      z-index: 1; }
      .block-account .items .item.current:after, .block-account .items .item.current:before, .block-account .items .item.active:after, .block-account .items .item.active:before, .block-category .items .item.current:after, .block-category .items .item.current:before, .block-category .items .item.active:after, .block-category .items .item.active:before {
        background-color: #000000; }
      .block-account .items .item.current a, .block-account .items .item.current strong, .block-account .items .item.active a, .block-account .items .item.active strong, .block-category .items .item.current a, .block-category .items .item.current strong, .block-category .items .item.active a, .block-category .items .item.active strong {
        background-color: #000000;
        color: #ffffff;
        border: 1px solid #000000; }
        .block-account .items .item.current a:after, .block-account .items .item.current a:before, .block-account .items .item.current strong:after, .block-account .items .item.current strong:before, .block-account .items .item.active a:after, .block-account .items .item.active a:before, .block-account .items .item.active strong:after, .block-account .items .item.active strong:before, .block-category .items .item.current a:after, .block-category .items .item.current a:before, .block-category .items .item.current strong:after, .block-category .items .item.current strong:before, .block-category .items .item.active a:after, .block-category .items .item.active a:before, .block-category .items .item.active strong:after, .block-category .items .item.active strong:before {
          background-color: #000000; }
      .block-account .items .item.current strong, .block-account .items .item.active strong, .block-category .items .item.current strong, .block-category .items .item.active strong {
        border: 0; }
    .no-touch .block-account .items .item:hover, .no-touch .block-category .items .item:hover {
      z-index: 9; }
      .no-touch .block-account .items .item:hover:after, .no-touch .block-account .items .item:hover:before, .no-touch .block-category .items .item:hover:after, .no-touch .block-category .items .item:hover:before {
        background-color: #000000; }
      .no-touch .block-account .items .item:hover > a, .no-touch .block-category .items .item:hover > a {
        background-color: #000000;
        color: #ffffff;
        border: 1px solid #000000; }
        .no-touch .block-account .items .item:hover > a:after, .no-touch .block-account .items .item:hover > a:before, .no-touch .block-category .items .item:hover > a:after, .no-touch .block-category .items .item:hover > a:before {
          background-color: #000000; }
  .block-account .items li.parent.level1, .block-category .items li.parent.level1 {
    position: relative; }
    .block-account .items li.parent.level1 > ul.level1, .block-category .items li.parent.level1 > ul.level1 {
      display: none; }
      @media screen and (min-width: 64em) {
        .block-account .items li.parent.level1 > ul.level1, .block-category .items li.parent.level1 > ul.level1 {
          display: none;
          position: absolute;
          left: 0;
          top: 100%;
          width: 100%; } }
    .block-account .items li.parent.level1 a.has-children span, .block-category .items li.parent.level1 a.has-children span {
      position: relative;
      margin: 0 0.625rem;
      -webkit-transition: margin-top .3s ease, -webkit-transform .3s ease;
      transition: margin-top .3s ease, -webkit-transform .3s ease;
      transition: transform .3s ease, margin-top .3s ease;
      transition: transform .3s ease, margin-top .3s ease, -webkit-transform .3s ease; }
      .block-account .items li.parent.level1 a.has-children span:after, .block-category .items li.parent.level1 a.has-children span:after {
        content: '\f004';
        font-family: 'fontello'; }
      .block-account .items li.parent.level1 a.has-children span.left, .block-category .items li.parent.level1 a.has-children span.left {
        display: none; }
    .block-account .items li.parent.level1.menu-active > a span, .block-category .items li.parent.level1.menu-active > a span {
      -webkit-transform-origin: center center;
              transform-origin: center center;
      -webkit-transform: rotate(-180deg);
              transform: rotate(-180deg);
      margin-top: -2px; }
    @media screen and (min-width: 64em) {
      .block-account .items li.parent.level1.spill ul.level2, .block-category .items li.parent.level1.spill ul.level2 {
        left: auto;
        right: 100%; }
      .block-account .items li.parent.level1.spill li.parent.level2 span, .block-category .items li.parent.level1.spill li.parent.level2 span {
        display: none; }
        .block-account .items li.parent.level1.spill li.parent.level2 span.left, .block-category .items li.parent.level1.spill li.parent.level2 span.left {
          display: block; } }
  .block-account .items li.parent.level2, .block-category .items li.parent.level2 {
    position: relative; }
    .block-account .items li.parent.level2 > ul.level2, .block-category .items li.parent.level2 > ul.level2 {
      display: none; }
      @media screen and (min-width: 64em) {
        .block-account .items li.parent.level2 > ul.level2, .block-category .items li.parent.level2 > ul.level2 {
          display: none;
          position: absolute;
          left: 100%;
          top: 0;
          width: 100%; } }
    @media screen and (max-width: 74.9375em) {
      .block-account .items li.parent.level2.menu-active > a span, .block-category .items li.parent.level2.menu-active > a span {
        -webkit-transform-origin: center center;
                transform-origin: center center;
        -webkit-transform: rotate(-180deg);
                transform: rotate(-180deg);
        margin-top: -2px; } }
    @media screen and (min-width: 64em) {
      .touch .block-account .items li.parent.level2.menu-active > a span, .touch .block-category .items li.parent.level2.menu-active > a span {
        -webkit-transform: rotate(-90deg) translateZ(0) !important;
                transform: rotate(-90deg) translateZ(0) !important; }
        .touch .block-account .items li.parent.level2.menu-active > a span.left, .touch .block-category .items li.parent.level2.menu-active > a span.left {
          -webkit-transform: rotate(90deg) !important;
                  transform: rotate(90deg) !important; } }
    .block-account .items li.parent.level2 a.has-children span, .block-category .items li.parent.level2 a.has-children span {
      position: relative;
      margin: 0 0.625rem; }
      @media screen and (min-width: 64em) {
        .block-account .items li.parent.level2 a.has-children span, .block-category .items li.parent.level2 a.has-children span {
          -webkit-transform: rotate(-90deg) translateZ(0);
                  transform: rotate(-90deg) translateZ(0);
          -webkit-transition: none !important;
          transition: none !important; } }
      .block-account .items li.parent.level2 a.has-children span:after, .block-category .items li.parent.level2 a.has-children span:after {
        content: '\f004';
        font-family: 'fontello'; }
      .block-account .items li.parent.level2 a.has-children span.left, .block-category .items li.parent.level2 a.has-children span.left {
        -webkit-transform: rotate(90deg);
                transform: rotate(90deg);
        margin-top: 0; }
  .block-account .items a, .block-account .items strong, .block-category .items a, .block-category .items strong {
    width: 100%;
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: .5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0.625rem;
    background-color: #f2f3f6;
    font-weight: 500;
    color: #000000;
    -webkit-transition: background-color .3s ease, border .3s ease, color .3s ease;
    transition: background-color .3s ease, border .3s ease, color .3s ease;
    position: relative;
    border: 1px solid #ccc; }
    @media screen and (min-width: 64em) {
      .block-account .items a, .block-account .items strong, .block-category .items a, .block-category .items strong {
        border: none !important; } }
    @media screen and (min-width: 64em) {
      .block-account .items a:after, .block-account .items a:before, .block-account .items strong:after, .block-account .items strong:before, .block-category .items a:after, .block-category .items a:before, .block-category .items strong:after, .block-category .items strong:before {
        content: '';
        position: absolute;
        top: -1px;
        bottom: 0;
        width: 1px;
        background-color: #ccc;
        -webkit-transition: background-color .3s ease;
        transition: background-color .3s ease; }
      .block-account .items a:after, .block-account .items strong:after, .block-category .items a:after, .block-category .items strong:after {
        left: -1px; }
      .block-account .items a:before, .block-account .items strong:before, .block-category .items a:before, .block-category .items strong:before {
        right: 0; } }
    @media screen and (min-width: 64em) {
      .block-account .items a, .block-account .items strong, .block-category .items a, .block-category .items strong {
        padding: 0.9375rem; } }
    @media screen and (min-width: 75em) {
      .block-account .items a, .block-account .items strong, .block-category .items a, .block-category .items strong {
        padding: 1.25rem; } }
    .block-account .items a strong, .block-account .items strong strong, .block-category .items a strong, .block-category .items strong strong {
      font-weight: 500; }

.reveal {
  overflow-y: auto;
  padding: 1.875rem;
  background: #ffffff; }
  @media screen and (min-width: 64em) {
    .reveal {
      overflow-y: visible;
      padding: 1.25rem; } }
  @media screen and (min-width: 64em) {
    .reveal.full {
      padding-right: 1.875rem; } }
  @media screen and (min-width: 75em) {
    .reveal.full {
      padding-right: 2.5rem; } }
  .reveal.full .close-button {
    position: absolute;
    cursor: pointer; }
    @media screen and (min-width: 64em) {
      .reveal.full .close-button {
        height: 1.375rem;
        top: 1.0625rem;
        right: 0.3125rem; }
        .reveal.full .close-button > span, .reveal.full .close-button span {
          background-color: #000000 !important; } }
    @media screen and (min-width: 75em) {
      .reveal.full .close-button {
        height: 1.875rem; }
        .reveal.full .close-button span {
          width: 1.875rem; } }
  .reveal.create-custom-workout, .reveal.playlist-modal {
    padding: 0;
    max-width: 78.125rem; }
    .reveal.create-custom-workout .irs-grid-text, .reveal.playlist-modal .irs-grid-text {
      margin-left: 0 !important; }
    .reveal.create-custom-workout h3, .reveal.playlist-modal h3 {
      text-align: center;
      margin-bottom: 2.1875rem; }
      @media screen and (min-width: 75em) {
        .reveal.create-custom-workout h3, .reveal.playlist-modal h3 {
          margin-bottom: 4.375rem; } }
      .reveal.create-custom-workout h3.title, .reveal.playlist-modal h3.title {
        margin-bottom: 1.25rem; }
        @media screen and (min-width: 64em) {
          .reveal.create-custom-workout h3.title, .reveal.playlist-modal h3.title {
            margin-bottom: 2.5rem; } }
    .reveal.create-custom-workout .row, .reveal.playlist-modal .row {
      margin-bottom: 2.1875rem; }
      @media screen and (min-width: 75em) {
        .reveal.create-custom-workout .row, .reveal.playlist-modal .row {
          margin-bottom: 4.375rem; } }
      .reveal.create-custom-workout .row:last-of-type, .reveal.playlist-modal .row:last-of-type {
        margin-bottom: 0; }
    .reveal.create-custom-workout .workout-content-modal, .reveal.playlist-modal .workout-content-modal {
      padding: 2.1875rem 0.625rem 1.25rem; }
      @media screen and (min-width: 64em) {
        .reveal.create-custom-workout .workout-content-modal, .reveal.playlist-modal .workout-content-modal {
          padding: 1.25rem 1.875rem; } }
      @media screen and (min-width: 75em) {
        .reveal.create-custom-workout .workout-content-modal, .reveal.playlist-modal .workout-content-modal {
          padding: 2.8125rem 3.125rem 2.1875rem; } }
    .reveal.create-custom-workout .playlist-content-modal, .reveal.playlist-modal .playlist-content-modal {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      height: 100%;
      padding: 2.1875rem 0.625rem; }
      @media screen and (min-width: 64em) {
        .reveal.create-custom-workout .playlist-content-modal, .reveal.playlist-modal .playlist-content-modal {
          padding: 1.25rem 1.875rem; } }
      @media screen and (min-width: 75em) {
        .reveal.create-custom-workout .playlist-content-modal, .reveal.playlist-modal .playlist-content-modal {
          padding: 2.8125rem 3.125rem; } }
    .reveal.create-custom-workout .attr-holder, .reveal.playlist-modal .attr-holder {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-align: end;
          -ms-flex-align: end;
              align-items: flex-end; }
      .reveal.create-custom-workout .attr-holder label, .reveal.playlist-modal .attr-holder label {
        padding: 0 0.625rem;
        position: relative;
        text-align: center;
        margin-bottom: 1.25rem;
        cursor: pointer; }
      .reveal.create-custom-workout .attr-holder img, .reveal.playlist-modal .attr-holder img {
        margin-bottom: 0.9375rem;
        max-width: 60px; }
        @media screen and (min-width: 48em) {
          .reveal.create-custom-workout .attr-holder img, .reveal.playlist-modal .attr-holder img {
            max-width: 90px; } }
      .reveal.create-custom-workout .attr-holder input[type=radio], .reveal.playlist-modal .attr-holder input[type=radio] {
        position: absolute;
        visibility: hidden; }
        .reveal.create-custom-workout .attr-holder input[type=radio]:checked + span, .reveal.playlist-modal .attr-holder input[type=radio]:checked + span {
          color: #000000; }
      .reveal.create-custom-workout .attr-holder span, .reveal.playlist-modal .attr-holder span {
        color: #a3a3a3;
        -webkit-transition: color .25s;
        transition: color .25s;
        font-size: 1.0625rem;
        letter-spacing: .5px; }
        @media screen and (min-width: 75em) {
          .reveal.create-custom-workout .attr-holder span, .reveal.playlist-modal .attr-holder span {
            font-size: 1.25rem; } }
    .reveal.create-custom-workout .create-workout, .reveal.playlist-modal .create-workout {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-bottom: 1.875rem; }
      @media screen and (min-width: 64em) {
        .reveal.create-custom-workout .create-workout, .reveal.playlist-modal .create-workout {
          margin-bottom: 0; } }
      .reveal.create-custom-workout .create-workout h3, .reveal.playlist-modal .create-workout h3 {
        text-transform: none;
        letter-spacing: .5px;
        margin-bottom: 0;
        text-align: left; }
      .reveal.create-custom-workout .create-workout p, .reveal.playlist-modal .create-workout p {
        font-size: 1.0625rem;
        letter-spacing: .5px;
        margin-bottom: 0;
        color: #a3a3a3; }
      .reveal.create-custom-workout .create-workout .count, .reveal.playlist-modal .create-workout .count {
        width: 2.5rem;
        height: 2.5rem;
        background-color: #f16567;
        border-radius: 50%;
        font-size: 1.5rem;
        text-align: center;
        color: #ffffff;
        line-height: 2.375rem;
        margin-right: 1.25rem;
        -ms-flex-negative: 0;
            flex-shrink: 0; }
        @media screen and (min-width: 48em) {
          .reveal.create-custom-workout .create-workout .count, .reveal.playlist-modal .create-workout .count {
            width: 3.5rem;
            height: 3.5rem;
            line-height: 3.375rem; } }
    .reveal.create-custom-workout .buttons-group, .reveal.playlist-modal .buttons-group {
      padding: 1.25rem 0.625rem;
      border-top: 1px solid #edeef1;
      text-align: center; }
      .reveal.create-custom-workout .buttons-group .button, .reveal.playlist-modal .buttons-group .button {
        margin: 0; }
      @media screen and (min-width: 64em) {
        .reveal.create-custom-workout .buttons-group, .reveal.playlist-modal .buttons-group {
          padding: 1.5625rem; } }
      @media screen and (min-width: 75em) {
        .reveal.create-custom-workout .buttons-group, .reveal.playlist-modal .buttons-group {
          padding: 2.5rem; } }
  @media screen and (min-width: 48em) {
    .reveal.playlist-modal .attr-holder img {
      max-width: 60px; } }
  .reveal.workout-video-gallery .buttons-group {
    display: none; }
  @media screen and (min-width: 64em) {
    .reveal.workout-video-gallery.gallery {
      padding-left: 3.125rem;
      padding-right: 3.125rem !important; } }
  .reveal.workout-video-gallery.gallery iframe {
    height: calc(100vh - 55px); }
    @media screen and (min-width: 64em) {
      .reveal.workout-video-gallery.gallery iframe {
        height: calc(100vh - 40px); } }
  @media screen and (min-width: 64em) {
    .reveal.workout-video-gallery.gallery .workout-prev-video {
      left: 15px; } }
  @media screen and (min-width: 64em) {
    .reveal.workout-video-gallery.gallery .workout-next-video {
      right: 15px; } }
  .reveal.workout-video-gallery.gallery .workout-prev-video,
  .reveal.workout-video-gallery.gallery .workout-next-video {
    position: static;
    display: inline-block;
    vertical-align: top;
    -webkit-transform: none;
            transform: none;
    top: auto; }
    @media screen and (min-width: 64em) {
      .reveal.workout-video-gallery.gallery .workout-prev-video,
      .reveal.workout-video-gallery.gallery .workout-next-video {
        top: 50%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        position: absolute; } }
  .reveal.workout-video-gallery.gallery .buttons-group {
    padding-top: 5px;
    text-align: center;
    display: block; }
  .reveal.cancel-subscription p {
    font-size: 1.25rem;
    margin: 0 auto 1.5rem; }
    @media screen and (min-width: 75em) {
      .reveal.cancel-subscription p {
        font-size: 1.5rem; } }
  @media screen and (min-width: 75em) {
    .reveal.cancel-subscription .checkbox + label:before {
      top: 0.375rem; } }
  @media screen and (min-width: 75em) {
    .reveal.cancel-subscription .checkbox + label:after {
      top: 0.5rem; } }
  .reveal.cancel-subscription .btn-group {
    display: inline-block; }
    .reveal.cancel-subscription .btn-group a {
      margin: 0 8px 1rem; }
  .reveal.cancel-subscription .control {
    margin-bottom: 0; }
  .reveal.cancel-subscription .advaice-list {
    margin-bottom: 1.875rem; }
  @media screen and (min-width: 30em) {
    .reveal.cancel-subscription #advaice-container-cancel-subscription {
      margin-left: 0.9375rem; } }
  .reveal.cancel-subscription .form-list {
    list-style: none;
    text-align: left; }
    .reveal.cancel-subscription .form-list label {
      font-size: 1.0625rem; }
      @media screen and (min-width: 75em) {
        .reveal.cancel-subscription .form-list label {
          font-size: 1.25rem; } }
    .reveal.cancel-subscription .form-list li {
      padding: 0.625rem 0; }
      @media screen and (min-width: 30em) {
        .reveal.cancel-subscription .form-list li {
          padding: 0.9375rem;
          display: inline-block;
          width: 49%;
          vertical-align: top; } }
  .reveal.cancel-subscription textarea {
    height: 10rem;
    resize: vertical;
    margin-bottom: 1.5625rem; }
    @media screen and (min-width: 75em) {
      .reveal.cancel-subscription textarea {
        margin-bottom: 2.5rem; } }
  .reveal.cancel-subscription .input-box {
    margin: 0; }
  @media screen and (min-width: 90em) {
    .reveal.cancel-subscription h2 {
      font-size: 2.5rem; } }
  .reveal .close-button {
    position: absolute;
    cursor: pointer;
    height: 1.375rem;
    top: 0.4375rem;
    right: 0.3125rem; }
    @media screen and (min-width: 64em) {
      .reveal .close-button {
        right: -1.875rem;
        top: -0.25rem; }
        .reveal .close-button > span, .reveal .close-button span {
          background-color: #ffffff !important; } }
    .reveal .close-button > span {
      position: relative;
      width: 1.375rem;
      height: 1px;
      background-color: #000000;
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg);
      -webkit-transform-origin: center center;
              transform-origin: center center;
      display: block; }
      .reveal .close-button > span span {
        position: relative;
        width: 1.375rem;
        height: 1px;
        background-color: #000000;
        -webkit-transform: rotate(90deg);
                transform: rotate(90deg);
        -webkit-transform-origin: center center;
                transform-origin: center center;
        display: block; }
  .reveal .pad-info {
    margin: 0;
    padding: 25vh 0; }
  .reveal iframe {
    width: 100%;
    height: calc(100vh - 60px);
    margin: 0;
    vertical-align: top; }
    @media screen and (min-width: 64em) {
      .reveal iframe {
        height: calc(100vh - 40px); } }

.reveal-content {
  border: 1px solid rgba(0, 0, 0, 0.2);
  padding: 0.9375rem 0.625rem;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media screen and (min-width: 64em) {
    .reveal-content {
      padding: 3.4375rem 4.6875rem; }
      .reveal-content.middle {
        padding: 2.375rem 3.75rem; } }
  .reveal-content p {
    margin: 0;
    font-size: 1.125rem;
    color: #a3a3a3; }
    @media screen and (min-width: 64em) {
      .reveal-content p {
        font-size: 1.25rem; } }

@media screen and (min-width: 64em) {
  .reveal-overlay {
    padding: 0 2.1875rem; } }

.modal-popup {
  display: none;
  position: fixed !important;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 999 !important;
  background: rgba(0, 0, 0, 0.85); }
  .modal-popup._show {
    display: block; }
  .modal-popup .action-close {
    position: absolute;
    right: 20px;
    top: 20px;
    font-size: 0;
    line-height: 20px; }
    .modal-popup .action-close {
      display: inline-block;
      width: 10px;
      height: 10px; }
    .modal-popup .action-close:before, .modal-popup .action-close:after {
      content: '';
      display: block;
      width: 140%;
      height: 1px;
      background: #f16567;
      -webkit-transition: background 0.3s ease;
      transition: background 0.3s ease; }
    .modal-popup .action-close:before {
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg);
      -webkit-transform-origin: 0 0;
              transform-origin: 0 0;
      margin-top: -0.25px;
      margin-left: 0.5px; }
    .modal-popup .action-close:after {
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg);
      -webkit-transform-origin: 100% 0;
              transform-origin: 100% 0;
      margin-left: -41%;
      margin-top: -1px; }
    .modal-popup .action-close:hover {
      cursor: pointer; }
      .modal-popup .action-close:hover:before, .modal-popup .action-close:hover:after {
        background: #000000; }
    .modal-popup .action-close:before, .modal-popup .action-close:after {
      position: absolute;
      top: 0; }
    .modal-popup .action-close:before {
      top: -1px;
      margin-top: 0;
      margin-left: 0; }
  .modal-popup .modal-inner-wrap {
    background: #ffffff;
    padding: 25px 20px;
    -webkit-box-shadow: 0 4px 7px rgba(163, 163, 163, 0.5);
            box-shadow: 0 4px 7px rgba(163, 163, 163, 0.5);
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    overflow-y: auto; }
    @media screen and (min-width: 64em) {
      .modal-popup .modal-inner-wrap {
        padding: 20px 40px;
        width: 75%;
        max-width: 750px;
        height: auto;
        max-height: calc(100vh - 30px); } }
  .modal-popup.cancel-subscription {
    background: rgba(0, 0, 0, 0.85) !important; }
    @media screen and (min-width: 64em) {
      .modal-popup.cancel-subscription .modal-inner-wrap {
        max-width: 950px; } }
  .modal-popup .modal-content {
    margin-bottom: 15px; }

.cms-home .modal-popup {
  background: rgba(255, 255, 255, 0.55); }

.pagination, .wp-pagenavi {
  margin: 1.5625rem auto 0;
  list-style: none; }
  @media screen and (min-width: 75em) {
    .pagination, .wp-pagenavi {
      margin: 2.5rem auto 0; } }
  .pagination.custom, .wp-pagenavi.custom {
    text-align: center; }
    .pagination.custom .btn-first-page, .pagination.custom .btn-last-page, .pagination.custom .disabled, .wp-pagenavi.custom .btn-first-page, .wp-pagenavi.custom .btn-last-page, .wp-pagenavi.custom .disabled {
      display: none; }
    .pagination.custom li, .wp-pagenavi.custom li {
      display: inline-block;
      vertical-align: middle; }
    .pagination.custom .btn-next-more a:after, .wp-pagenavi.custom .btn-next-more a:after {
      display: none; }
    .pagination.custom .btn-prev-page a, .wp-pagenavi.custom .btn-prev-page a {
      font-size: 0; }
      @media screen and (min-width: 64em) {
        .pagination.custom .btn-prev-page a, .wp-pagenavi.custom .btn-prev-page a {
          margin-right: 1.25rem; }
          .pagination.custom .btn-prev-page a:hover:before, .wp-pagenavi.custom .btn-prev-page a:hover:before {
            -webkit-transform: translateX(-10px);
                    transform: translateX(-10px); } }
      .pagination.custom .btn-prev-page a:before, .wp-pagenavi.custom .btn-prev-page a:before {
        content: '\e802';
        font-family: 'fontello';
        font-size: 1.5rem;
        display: inline-block;
        vertical-align: middle;
        -webkit-transition: -webkit-transform .3s ease;
        transition: -webkit-transform .3s ease;
        transition: transform .3s ease;
        transition: transform .3s ease, -webkit-transform .3s ease; }
        @media screen and (min-width: 64em) {
          .pagination.custom .btn-prev-page a:before, .wp-pagenavi.custom .btn-prev-page a:before {
            font-size: 1.875rem; } }
      .pagination.custom .btn-prev-page a:after, .wp-pagenavi.custom .btn-prev-page a:after {
        content: '•' !important;
        font-size: 1.125rem;
        display: inline-block;
        margin-left: 2px;
        position: relative !important;
        top: 3px;
        opacity: 1 !important;
        width: auto !important;
        background-color: transparent !important; }
        @media screen and (min-width: 64em) {
          .pagination.custom .btn-prev-page a:after, .wp-pagenavi.custom .btn-prev-page a:after {
            margin-left: 4px; } }
    .pagination.custom .btn-next-page a, .wp-pagenavi.custom .btn-next-page a {
      font-size: 0; }
      @media screen and (min-width: 64em) {
        .pagination.custom .btn-next-page a, .wp-pagenavi.custom .btn-next-page a {
          margin-left: 1.25rem; }
          .pagination.custom .btn-next-page a:hover:after, .wp-pagenavi.custom .btn-next-page a:hover:after {
            -webkit-transform: translateX(10px);
                    transform: translateX(10px); } }
      .pagination.custom .btn-next-page a:after, .wp-pagenavi.custom .btn-next-page a:after {
        content: '\e801' !important;
        font-family: 'fontello';
        font-size: 1.5rem;
        display: inline-block;
        vertical-align: middle;
        -webkit-transition: -webkit-transform .3s ease !important;
        transition: -webkit-transform .3s ease !important;
        transition: transform .3s ease !important;
        transition: transform .3s ease, -webkit-transform .3s ease !important;
        position: relative !important;
        width: auto !important;
        height: auto !important;
        background-color: transparent !important;
        opacity: 1 !important; }
        @media screen and (min-width: 64em) {
          .pagination.custom .btn-next-page a:after, .wp-pagenavi.custom .btn-next-page a:after {
            font-size: 1.875rem; } }
      .pagination.custom .btn-next-page a:before, .wp-pagenavi.custom .btn-next-page a:before {
        content: '•';
        font-size: 1.125rem;
        display: inline-block;
        margin-right: 2px;
        position: relative;
        top: 3px; }
        @media screen and (min-width: 64em) {
          .pagination.custom .btn-next-page a:before, .wp-pagenavi.custom .btn-next-page a:before {
            margin-left: 4px; } }
  .pagination a, .pagination li.current, .pagination span.current, .wp-pagenavi a, .wp-pagenavi li.current, .wp-pagenavi span.current {
    color: #000000;
    display: inline-block;
    font-size: 0.875rem;
    padding: 0.3125rem;
    font-weight: 400;
    position: relative; }
    @media screen and (min-width: 40em) {
      .pagination a, .pagination li.current, .pagination span.current, .wp-pagenavi a, .wp-pagenavi li.current, .wp-pagenavi span.current {
        padding: 0.5625rem; } }
    @media screen and (min-width: 75em) {
      .pagination a, .pagination li.current, .pagination span.current, .wp-pagenavi a, .wp-pagenavi li.current, .wp-pagenavi span.current {
        padding: 0.625rem 0.8125rem; } }
  .pagination a :after, .pagination li.current:after, .pagination span.current:after, .wp-pagenavi a :after, .wp-pagenavi li.current:after, .wp-pagenavi span.current:after {
    content: '';
    position: absolute;
    height: 3px;
    left: 0;
    bottom: 0;
    width: 100%;
    background-color: #000000;
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease;
    opacity: 0; }
  .pagination a:hover:after, .pagination li.current:after, .pagination li.active a:after, .pagination span.current:after, .wp-pagenavi a:hover:after, .wp-pagenavi li.current:after, .wp-pagenavi li.active a:after, .wp-pagenavi span.current:after {
    opacity: 1 !important; }
  .pagination ol, .wp-pagenavi ol {
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  .pagination .previous, .pagination .previouspostslink, .wp-pagenavi .previous, .wp-pagenavi .previouspostslink {
    display: inline-block;
    vertical-align: top; }
    @media screen and (min-width: 64em) {
      .pagination .previous, .pagination .previouspostslink, .wp-pagenavi .previous, .wp-pagenavi .previouspostslink {
        margin-right: 1.25rem; }
        .pagination .previous:hover:before, .pagination .previouspostslink:hover:before, .wp-pagenavi .previous:hover:before, .wp-pagenavi .previouspostslink:hover:before {
          -webkit-transform: translateX(-10px);
                  transform: translateX(-10px); } }
    .pagination .previous:before, .pagination .previouspostslink:before, .wp-pagenavi .previous:before, .wp-pagenavi .previouspostslink:before {
      content: '\e802';
      font-family: 'fontello';
      font-size: 1.5rem;
      display: inline-block;
      vertical-align: middle;
      -webkit-transition: -webkit-transform .3s ease;
      transition: -webkit-transform .3s ease;
      transition: transform .3s ease;
      transition: transform .3s ease, -webkit-transform .3s ease; }
      @media screen and (min-width: 64em) {
        .pagination .previous:before, .pagination .previouspostslink:before, .wp-pagenavi .previous:before, .wp-pagenavi .previouspostslink:before {
          font-size: 1.875rem; } }
    .pagination .previous:after, .pagination .previouspostslink:after, .wp-pagenavi .previous:after, .wp-pagenavi .previouspostslink:after {
      content: '•';
      font-size: 1.125rem;
      display: inline-block;
      margin-left: 2px; }
      @media screen and (min-width: 64em) {
        .pagination .previous:after, .pagination .previouspostslink:after, .wp-pagenavi .previous:after, .wp-pagenavi .previouspostslink:after {
          margin-left: 4px; } }
  .pagination .next, .pagination .nextpostslink, .pagination .btn-next-page a, .wp-pagenavi .next, .wp-pagenavi .nextpostslink, .wp-pagenavi .btn-next-page a {
    display: inline-block;
    vertical-align: top; }
    @media screen and (min-width: 64em) {
      .pagination .next, .pagination .nextpostslink, .pagination .btn-next-page a, .wp-pagenavi .next, .wp-pagenavi .nextpostslink, .wp-pagenavi .btn-next-page a {
        margin-left: 1.25rem; }
        .pagination .next:hover:after, .pagination .nextpostslink:hover:after, .pagination .btn-next-page a:hover:after, .wp-pagenavi .next:hover:after, .wp-pagenavi .nextpostslink:hover:after, .wp-pagenavi .btn-next-page a:hover:after {
          -webkit-transform: translateX(10px);
                  transform: translateX(10px); } }
    .pagination .next:after, .pagination .nextpostslink:after, .pagination .btn-next-page a:after, .wp-pagenavi .next:after, .wp-pagenavi .nextpostslink:after, .wp-pagenavi .btn-next-page a:after {
      content: '\e801';
      font-family: 'fontello';
      font-size: 1.5rem;
      display: inline-block;
      vertical-align: middle;
      -webkit-transition: -webkit-transform .3s ease;
      transition: -webkit-transform .3s ease;
      transition: transform .3s ease;
      transition: transform .3s ease, -webkit-transform .3s ease; }
      @media screen and (min-width: 64em) {
        .pagination .next:after, .pagination .nextpostslink:after, .pagination .btn-next-page a:after, .wp-pagenavi .next:after, .wp-pagenavi .nextpostslink:after, .wp-pagenavi .btn-next-page a:after {
          font-size: 1.875rem; } }
    .pagination .next:before, .pagination .nextpostslink:before, .pagination .btn-next-page a:before, .wp-pagenavi .next:before, .wp-pagenavi .nextpostslink:before, .wp-pagenavi .btn-next-page a:before {
      content: '•';
      font-size: 1.125rem;
      display: inline-block;
      margin-right: 2px; }
      @media screen and (min-width: 64em) {
        .pagination .next:before, .pagination .nextpostslink:before, .pagination .btn-next-page a:before, .wp-pagenavi .next:before, .wp-pagenavi .nextpostslink:before, .wp-pagenavi .btn-next-page a:before {
          margin-left: 4px; } }
  .pagination .pages-item-previous.disabled, .pagination .pages-item-next.disabled, .wp-pagenavi .pages-item-previous.disabled, .wp-pagenavi .pages-item-next.disabled {
    position: relative; }
    .pagination .pages-item-previous.disabled:before, .pagination .pages-item-next.disabled:before, .wp-pagenavi .pages-item-previous.disabled:before, .wp-pagenavi .pages-item-next.disabled:before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 2;
      background: rgba(255, 255, 255, 0.75); }

.wp-pagenavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .wp-pagenavi > a, .wp-pagenavi span {
    padding: 0.5625rem !important; }
    @media screen and (min-width: 75em) {
      .wp-pagenavi > a, .wp-pagenavi span {
        padding: 0.625rem 0.8125rem !important; } }

.products-grid {
  list-style: none;
  overflow: hidden; }
  .products-grid .item {
    margin-bottom: 30px; }
  .products-grid.slick-slider {
    overflow: visible; }

.product-holder {
  position: relative; }
  .product-holder > a {
    display: block; }
  .product-holder.product-video-holder {
    text-align: center; }
    .product-holder.product-video-holder .product-image {
      height: 15rem;
      padding-top: 0; }
    .product-holder.product-video-holder .product-name,
    .product-holder.product-video-holder .price-box,
    .product-holder.product-video-holder .actions {
      border-bottom: none; }
    .product-holder.product-video-holder .product-name {
      font-family: 'BrandonGrotesque', sans-serif;
      font-size: 1.25rem;
      text-transform: none; }
      .product-holder.product-video-holder .product-name a {
        letter-spacing: inherit; }
      @media screen and (min-width: 48em) {
        .product-holder.product-video-holder .product-name {
          letter-spacing: 1px;
          font-size: 1.375rem; } }
      @media screen and (min-width: 90em) {
        .product-holder.product-video-holder .product-name {
          font-size: 1.375rem; } }
    .product-holder.product-video-holder .button {
      color: #ffffff;
      letter-spacing: 0;
      cursor: pointer;
      text-transform: none;
      margin-bottom: 0; }
    .product-holder.product-video-holder .price-box {
      padding: 0.3125rem 0 0; }
    .product-holder.product-video-holder .special-price, .product-holder.product-video-holder .old-price, .product-holder.product-video-holder .regular-price, .product-holder.product-video-holder .price {
      font-size: 0.9375rem !important;
      font-family: 'miller', sans-serif; }
      @media screen and (min-width: 75em) {
        .product-holder.product-video-holder .special-price, .product-holder.product-video-holder .old-price, .product-holder.product-video-holder .regular-price, .product-holder.product-video-holder .price {
          font-size: 1.0625rem !important; } }
  .product-holder .product-image {
    width: 17.5rem;
    height: 23.125rem;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    display: block;
    margin: 0 auto 0.3125rem;
    position: relative; }
    @media screen and (min-width: 30em) {
      .product-holder .product-image {
        width: 22.5rem;
        height: 30rem; } }
    @media screen and (min-width: 40em) {
      .product-holder .product-image {
        padding-top: 133%;
        max-width: 100%;
        height: auto;
        width: 100%; } }
  .product-holder .product-caption {
    position: absolute;
    top: 0;
    right: 0;
    text-align: center;
    width: 5.25rem;
    height: 2rem;
    line-height: 2rem;
    background-color: #030303;
    display: block;
    color: #ffffff;
    font-size: 0.9375rem; }
    @media screen and (min-width: 64em) {
      .product-holder .product-caption {
        font-size: 1.0625rem; } }
  .product-holder .product-image-photo {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    left: -9999%;
    top: -9999%; }

.product-info {
  padding-bottom: 0 !important;
  min-height: 0 !important; }
  .product-info .product-name,
  .product-info .price-box,
  .product-info .actions {
    padding: 0.625rem 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    text-transform: uppercase;
    font-size: 0.75rem;
    font-weight: 400;
    color: #000000;
    font-family: "BrandonGrotesque", sans-serif; }
    @media screen and (min-width: 64em) {
      .product-info .product-name,
      .product-info .price-box,
      .product-info .actions {
        padding: 0.8125rem 0; } }
    @media screen and (min-width: 75em) {
      .product-info .product-name,
      .product-info .price-box,
      .product-info .actions {
        padding: 1.0625rem 0; } }
    .new-d .product-info .product-name, .new-d
    .product-info .price-box, .new-d
    .product-info .actions {
      border-bottom: 0;
      font-weight: 500;
      padding: 0.375rem 0;
      font-size: 14px; }
      @media screen and (min-width: 64em) {
        .new-d .product-info .product-name, .new-d
        .product-info .price-box, .new-d
        .product-info .actions {
          padding: 0.8125rem 0; } }
      @media screen and (min-width: 75em) {
        .new-d .product-info .product-name, .new-d
        .product-info .price-box, .new-d
        .product-info .actions {
          padding: 1.0625rem 0; } }
  .product-info .special-price, .product-info .old-price {
    font-size: 0.75rem !important;
    font-weight: 400;
    font-family: "BrandonGrotesque", sans-serif;
    display: inline-block;
    vertical-align: top;
    margin-bottom: 0 !important; }
    .product-info .special-price .price-label, .product-info .old-price .price-label {
      display: none; }
  .product-info .old-price {
    color: #a3a3a3;
    text-decoration: line-through;
    margin-right: 0.6875rem !important; }
  .product-info .product-action {
    color: #ff6666;
    letter-spacing: 2px;
    height: auto;
    width: auto;
    border: none;
    -webkit-box-shadow: none;
            box-shadow: none;
    cursor: pointer;
    text-transform: uppercase; }
  .product-info .out-of-stock {
    text-transform: uppercase;
    font-size: 0.75rem;
    font-weight: 25rem;
    color: #000000; }
  .product-info .actions {
    border-bottom: none; }
  .product-info .product-name {
    margin: 0; }
    .product-info .product-name a {
      letter-spacing: 2px;
      font-weight: 400;
      color: #000000; }
      .new-d .product-info .product-name a {
        font-weight: 500; }

.new-d .product-image {
  height: auto;
  width: 100%;
  padding-top: 115%; }

.wrapper-for-btn {
  position: relative; }
  @media screen and (min-width: 64em) {
    .wrapper-for-btn {
      overflow: hidden; } }
  @media screen and (min-width: 64em) {
    .no-touch .wrapper-for-btn:hover .actions {
      -webkit-transform: translateY(0);
              transform: translateY(0); } }
  @media screen and (min-width: 64em) {
    .no-touch .bestsellers-slider .wrapper-for-btn:hover .actions {
      opacity: 1; } }
  @media screen and (min-width: 64em) {
    .no-touch .bestsellers-slider .wrapper-for-btn .actions {
      width: 100%;
      height: 100%;
      padding: 0;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      opacity: 0;
      -webkit-transition: opacity 0.3s ease;
      transition: opacity 0.3s ease;
      background: none; } }
  @media screen and (min-width: 64em) {
    .no-touch .bestsellers-slider .wrapper-for-btn .actions .product-action {
      color: #f16567;
      padding: 12px 5px;
      width: 135px;
      line-height: 20px;
      text-align: center;
      display: inline-block;
      background: #ffffff;
      -webkit-transition: color 0.3s ease, background-color 0.3s ease;
      transition: color 0.3s ease, background-color 0.3s ease; } }
  @media screen and (min-width: 64em) {
    .no-touch .bestsellers-slider .wrapper-for-btn .actions .product-action:hover {
      color: #ffffff;
      background: #f16567; } }
  .wrapper-for-btn .actions {
    text-align: center;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #000000;
    width: 100%;
    padding: 7px 5px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    text-transform: uppercase;
    font-weight: 400;
    letter-spacing: 1.1px;
    font-size: 14px; }
    @media screen and (min-width: 75em) {
      .wrapper-for-btn .actions {
        padding: 13px 5px; } }
    @media screen and (min-width: 64em) {
      .no-touch .wrapper-for-btn .actions {
        -webkit-transition: -webkit-transform 0.15s ease;
        transition: -webkit-transform 0.15s ease;
        transition: transform 0.15s ease;
        transition: transform 0.15s ease, -webkit-transform 0.15s ease;
        -webkit-transform: translateY(100%);
                transform: translateY(100%); } }
    .wrapper-for-btn .actions span {
      text-transform: uppercase;
      font-weight: 400;
      letter-spacing: 1.1px;
      font-size: 14px; }
    .wrapper-for-btn .actions .product-action {
      display: inline-block;
      color: white; }

.featured-grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  @media screen and (min-width: 30em) {
    .featured-grid {
      margin: 0 -10px; } }
  @media screen and (min-width: 48em) {
    .featured-grid {
      margin: 0 -20px; } }
  @media screen and (min-width: 64em) {
    .featured-grid {
      margin: 0 -30px; } }
  .featured-grid .product-holder {
    width: 100%;
    margin: 0 0 15px; }
    @media screen and (min-width: 30em) {
      .featured-grid .product-holder {
        width: calc(50% - 20px);
        margin: 0 10px 15px; } }
    @media screen and (min-width: 48em) {
      .featured-grid .product-holder {
        width: calc(50% - 40px);
        margin: 0 20px 25px; } }
    @media screen and (min-width: 64em) {
      .featured-grid .product-holder {
        width: calc(33.3% - 40px); } }
    @media screen and (min-width: 90em) {
      .featured-grid .product-holder {
        width: calc(33.3% - 60px);
        margin: 0 30px 25px; } }
  @media screen and (min-width: 30em) {
    .featured-grid .product-image {
      padding-top: 125%; } }

.product-inner-slider {
  padding: 0 0.9375rem; }

.product-slider-block {
  padding: 1.25rem 0; }
  @media screen and (min-width: 64em) {
    .product-slider-block {
      padding: 3.125rem 0; } }
  @media screen and (min-width: 90em) {
    .product-slider-block {
      padding: 5.625rem 0; } }
  @media screen and (min-width: 75em) {
    .cms-home .product-slider-block {
      padding: 0; } }
  @media screen and (min-width: 75em) {
    .featured-items .product-slider-block {
      padding: 0; } }
  .product-slider-block .slider-title {
    text-align: center; }
  .product-slider-block h3:not(.h1) {
    color: #000000;
    letter-spacing: 2px;
    font-family: 'BrandonGrotesque', sans-serif;
    margin-bottom: 1.875rem;
    text-transform: uppercase;
    font-weight: 400; }
    @media screen and (min-width: 75em) {
      .product-slider-block h3:not(.h1) {
        margin-bottom: 3.75rem;
        letter-spacing: 3px; } }

.product-slider {
  text-align: left; }
  .product-slider .slick-track {
    margin: 0 auto; }
  .product-slider .product-holder .product-image {
    width: 100%;
    height: auto;
    padding-top: 100%;
    background-size: cover; }
  .product-slider .item {
    margin-bottom: 0; }
    @media screen and (min-width: 64em) {
      .product-slider .item {
        width: 100%;
        max-width: 390px; } }
  .product-slider .product-video-holder .product-image {
    height: 15rem;
    padding-top: 0; }
  @media screen and (min-width: 75em) {
    .product-slider .slick-arrow {
      top: 40%; } }
  .product-slider .slick-prev {
    left: -1.875rem; }
    @media screen and (min-width: 75em) {
      .product-slider .slick-prev {
        left: -8.125rem; } }
    @media screen and (min-width: 101.25em) {
      .product-slider .slick-prev {
        left: -12.5rem; } }
    @media (min-width: 1800px) {
      .product-slider .slick-prev {
        left: -15.625rem; } }
  .product-slider .slick-next {
    right: -1.875rem; }
    @media screen and (min-width: 75em) {
      .product-slider .slick-next {
        right: -8.125rem; } }
    @media screen and (min-width: 101.25em) {
      .product-slider .slick-next {
        right: -12.5rem; } }
    @media (min-width: 1800px) {
      .product-slider .slick-next {
        right: -15.625rem; } }

.title-credit {
  margin-bottom: 1.25rem; }
  .title-credit .title-credit-label {
    margin-bottom: 1.25rem; }
    @media screen and (min-width: 48em) {
      .title-credit .title-credit-label {
        font-size: 1.25rem; } }

.customer-credit-form-code {
  max-width: 18.125rem;
  margin: 1.25rem 0;
  text-align: left; }
  @media screen and (min-width: 48em) {
    .customer-credit-form-code {
      margin-left: auto; } }
  .customer-credit-form-code p {
    margin-bottom: 0; }
  .customer-credit-form-code dl {
    margin-bottom: 0; }
  .customer-credit-form-code .input-box {
    margin-top: 1.25rem; }
  .customer-credit-form-code ul {
    list-style: none; }
    @media screen and (min-width: 64em) {
      .customer-credit-form-code ul button {
        padding-left: 1.625rem;
        padding-right: 1.625rem; } }

.payment-form .customercredit label {
  font-weight: 400 !important;
  color: #000000 !important;
  padding-left: 0 !important;
  margin-bottom: 0.625rem;
  cursor: text; }

.payment-form .customercredit .checkout-credit-use > span:first-child strong {
  font-weight: 400 !important;
  margin-left: 0 !important; }

.payment-form .customercredit .checkout-credit-use .edit-credit {
  line-height: 1;
  margin-left: 10px; }

.payment-form .customercredit .checkout-credit-use .input-text {
  border: 1px solid #ccc !important; }
  .payment-form .customercredit .checkout-credit-use .input-text:focus {
    border: 1px solid #000000 !important; }

.payment-form .customercredit .checkout-credit-use .checkout_cc_input_alert {
  max-width: 18.125rem;
  width: 100%;
  margin-bottom: 1.25rem; }

.payment-form .customercredit .checkout-credit-use .validation-advice {
  font-weight: 400; }

@media screen and (min-width: 64em) {
  .payment-form .customercredit .checkout-credit-use button {
    padding-left: 1.625rem;
    padding-right: 1.625rem; } }

.faq {
  counter-reset: li;
  margin-bottom: 4.6875rem; }
  @media screen and (min-width: 40em) {
    .faq {
      margin-bottom: 9.375rem; } }
  .faq p {
    margin: 0; }
    .faq p + p {
      margin-top: 1rem; }
  .faq a {
    color: #f16567; }

.accordion-body {
  display: none; }

.accordion-title {
  display: inline-block;
  cursor: pointer; }

.faq-category {
  padding-left: 1.6875rem;
  counter-increment: li; }
  @media screen and (min-width: 40em) {
    .faq-category {
      padding-left: 4.375rem; } }
  .faq-category + .faq-category {
    margin-top: 3.125rem; }

.fcat-name {
  position: relative;
  padding-left: 2.5rem;
  opacity: .6;
  -webkit-transition: opacity .2s;
  transition: opacity .2s; }
  @media screen and (min-width: 40em) {
    .fcat-name {
      padding-left: 3.125rem; } }
  .fcat-name:hover {
    opacity: 1; }
  .fcat-name.active {
    opacity: 1; }
  .fcat-name:before {
    position: absolute;
    top: 50%;
    right: 100%;
    content: counter(li, decimal-leading-zero);
    font-size: 30px;
    line-height: 1;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }
    @media screen and (min-width: 40em) {
      .fcat-name:before {
        font-size: 70px; } }
  .fcat-name:after {
    content: '';
    width: 0.3125rem;
    height: 100%;
    position: absolute;
    left: 0.9375rem;
    top: 0;
    background: #000000; }
    @media screen and (min-width: 40em) {
      .fcat-name:after {
        left: 1.25rem; } }
  .fcat-name .title1 {
    display: inline-block;
    width: 100%;
    font-size: 1.6875rem;
    line-height: 1.4; }
    @media screen and (min-width: 40em) {
      .fcat-name .title1 {
        font-size: 3.125rem; } }
  .fcat-name .title2 {
    display: inline-block;
    width: 100%;
    margin-top: 0.625rem;
    font-size: 1rem;
    line-height: 1.4; }
    @media screen and (min-width: 40em) {
      .fcat-name .title2 {
        margin-top: 0.75rem;
        font-size: 1.25rem; } }

.fcat-content {
  padding-left: 0;
  margin-top: 35px; }
  @media screen and (min-width: 40em) {
    .fcat-content {
      padding-left: 3.75rem; } }

.fsub-name {
  font-size: 1.125rem;
  padding-left: 0.9375rem;
  position: relative;
  opacity: .6;
  -webkit-transition: opacity .2s;
  transition: opacity .2s; }
  @media screen and (min-width: 40em) {
    .fsub-name {
      font-size: 1.5625rem; } }
  .fsub-name:hover {
    opacity: 1; }
  .fsub-name.active {
    text-decoration: underline;
    opacity: 1; }
  .fsub-name:before {
    content: '';
    position: absolute;
    right: 100%;
    top: 50%;
    width: 0.625rem;
    height: 0.625rem;
    background: #000000;
    border-radius: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%); }

.faq-subcategory + .faq-subcategory {
  margin-top: 1.25rem; }

.fsub-content {
  padding-left: 0.9375rem;
  margin-top: 0.875rem; }

.introducing-gallery {
  height: 100%; }
  .introducing-gallery .columns,
  .introducing-gallery .slick-slider,
  .introducing-gallery .introducing_slider,
  .introducing-gallery .second_introducing_slider,
  .introducing-gallery .slick-track,
  .introducing-gallery .slick-list,
  .introducing-gallery .slick-slide > div {
    height: 100%; }

.slider {
  height: 100%; }

.introducing_slider,
.second_introducing_slider,
.introducing_store-slider {
  padding: 2.1875rem 0.625rem;
  position: relative; }
  @media screen and (min-width: 75em) {
    .introducing_slider,
    .second_introducing_slider,
    .introducing_store-slider {
      padding: 3.75rem 0.625rem; } }
  @media screen and (min-width: 90em) {
    .introducing_slider,
    .second_introducing_slider,
    .introducing_store-slider {
      padding: 3.75rem 1.25rem; } }
  .introducing_slider .slide-content-box,
  .second_introducing_slider .slide-content-box,
  .introducing_store-slider .slide-content-box {
    text-align: center;
    color: #000000; }
    @media screen and (min-width: 64em) {
      .introducing_slider .slide-content-box,
      .second_introducing_slider .slide-content-box,
      .introducing_store-slider .slide-content-box {
        width: 50%;
        padding: 0 0.9375rem; } }
    .introducing_slider .slide-content-box .subtitle,
    .second_introducing_slider .slide-content-box .subtitle,
    .introducing_store-slider .slide-content-box .subtitle {
      color: #030303;
      text-transform: uppercase;
      letter-spacing: 2px;
      display: block;
      margin-bottom: 1.25rem; }
    .introducing_slider .slide-content-box h1, .introducing_slider .slide-content-box .h1,
    .second_introducing_slider .slide-content-box h1,
    .second_introducing_slider .slide-content-box .h1,
    .introducing_store-slider .slide-content-box h1,
    .introducing_store-slider .slide-content-box .h1 {
      color: #020202; }
    .introducing_slider .slide-content-box p,
    .second_introducing_slider .slide-content-box p,
    .introducing_store-slider .slide-content-box p {
      font-size: 0.9375rem;
      color: #010101;
      text-align: center; }
      @media screen and (min-width: 64em) {
        .introducing_slider .slide-content-box p,
        .second_introducing_slider .slide-content-box p,
        .introducing_store-slider .slide-content-box p {
          font-size: 1.0625rem; } }
    .introducing_slider .slide-content-box .btn-custom,
    .second_introducing_slider .slide-content-box .btn-custom,
    .introducing_store-slider .slide-content-box .btn-custom {
      color: #000000; }
  .introducing_slider .slick-slide.reverse .slide-content-holder, .introducing_slider .slick-slide.reverse > a,
  .second_introducing_slider .slick-slide.reverse .slide-content-holder,
  .second_introducing_slider .slick-slide.reverse > a,
  .introducing_store-slider .slick-slide.reverse .slide-content-holder,
  .introducing_store-slider .slick-slide.reverse > a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: 100%; }
    @media screen and (min-width: 64em) {
      .introducing_slider .slick-slide.reverse .slide-content-holder, .introducing_slider .slick-slide.reverse > a,
      .second_introducing_slider .slick-slide.reverse .slide-content-holder,
      .second_introducing_slider .slick-slide.reverse > a,
      .introducing_store-slider .slick-slide.reverse .slide-content-holder,
      .introducing_store-slider .slick-slide.reverse > a {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse; } }
  .introducing_slider .slick-slide .slide-content-holder, .introducing_slider .slick-slide > a,
  .second_introducing_slider .slick-slide .slide-content-holder,
  .second_introducing_slider .slick-slide > a,
  .introducing_store-slider .slick-slide .slide-content-holder,
  .introducing_store-slider .slick-slide > a {
    padding: 0 0.625rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 100%; }
    @media screen and (min-width: 75em) {
      .introducing_slider .slick-slide .slide-content-holder, .introducing_slider .slick-slide > a,
      .second_introducing_slider .slick-slide .slide-content-holder,
      .second_introducing_slider .slick-slide > a,
      .introducing_store-slider .slick-slide .slide-content-holder,
      .introducing_store-slider .slick-slide > a {
        padding: 0 1.5625rem; } }
    @media screen and (min-width: 64em) {
      .introducing_slider .slick-slide .slide-content-holder, .introducing_slider .slick-slide > a,
      .second_introducing_slider .slick-slide .slide-content-holder,
      .second_introducing_slider .slick-slide > a,
      .introducing_store-slider .slick-slide .slide-content-holder,
      .introducing_store-slider .slick-slide > a {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row; } }
    .introducing_slider .slick-slide .slide-content-holder img, .introducing_slider .slick-slide > a img,
    .second_introducing_slider .slick-slide .slide-content-holder img,
    .second_introducing_slider .slick-slide > a img,
    .introducing_store-slider .slick-slide .slide-content-holder img,
    .introducing_store-slider .slick-slide > a img {
      max-height: 15.625rem;
      margin: 0 auto 20px;
      max-width: 70%;
      -ms-flex-negative: 0;
          flex-shrink: 0; }
      @media screen and (min-width: 64em) {
        .introducing_slider .slick-slide .slide-content-holder img, .introducing_slider .slick-slide > a img,
        .second_introducing_slider .slick-slide .slide-content-holder img,
        .second_introducing_slider .slick-slide > a img,
        .introducing_store-slider .slick-slide .slide-content-holder img,
        .introducing_store-slider .slick-slide > a img {
          max-width: 35%;
          max-height: 90vh;
          margin: 0 auto;
          padding: 0 0.9375rem; } }
  .introducing_slider .slick-track,
  .second_introducing_slider .slick-track,
  .introducing_store-slider .slick-track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .introducing_slider .slick-prev,
  .second_introducing_slider .slick-prev,
  .introducing_store-slider .slick-prev {
    left: -1.25rem;
    top: 40%; }
    @media screen and (min-width: 64em) {
      .introducing_slider .slick-prev,
      .second_introducing_slider .slick-prev,
      .introducing_store-slider .slick-prev {
        left: -0.625rem;
        top: 50%; } }
    @media screen and (min-width: 90em) {
      .introducing_slider .slick-prev,
      .second_introducing_slider .slick-prev,
      .introducing_store-slider .slick-prev {
        left: 1.5625rem; } }
  .introducing_slider .slick-next,
  .second_introducing_slider .slick-next,
  .introducing_store-slider .slick-next {
    right: -1.25rem;
    top: 40%; }
    @media screen and (min-width: 64em) {
      .introducing_slider .slick-next,
      .second_introducing_slider .slick-next,
      .introducing_store-slider .slick-next {
        right: -0.625rem;
        top: 50%; } }
    @media screen and (min-width: 90em) {
      .introducing_slider .slick-next,
      .second_introducing_slider .slick-next,
      .introducing_store-slider .slick-next {
        right: 1.5625rem; } }
  .introducing_slider .slick-dots,
  .second_introducing_slider .slick-dots,
  .introducing_store-slider .slick-dots {
    position: absolute;
    bottom: 0;
    width: 100%;
    left: 0; }
    .introducing_slider .slick-dots li button:before,
    .second_introducing_slider .slick-dots li button:before,
    .introducing_store-slider .slick-dots li button:before {
      font-size: 1.125rem;
      opacity: 1;
      color: #a3a3a3; }
    .introducing_slider .slick-dots li.slick-active button:before,
    .second_introducing_slider .slick-dots li.slick-active button:before,
    .introducing_store-slider .slick-dots li.slick-active button:before {
      opacity: 1;
      color: #000000; }

.private-workout-info-holder {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  margin-bottom: 30px; }
  @media screen and (min-width: 64em) {
    .private-workout-info-holder {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-align: stretch;
          -ms-flex-align: stretch;
              align-items: stretch; } }
  @media screen and (min-width: 75em) {
    .private-workout-info-holder {
      margin-bottom: 50px; } }
  .private-workout-info-holder .left-side {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    margin-bottom: 20px; }
    @media screen and (min-width: 64em) {
      .private-workout-info-holder .left-side {
        margin-bottom: 0;
        width: 50%;
        padding: 15px; } }
    @media screen and (min-width: 75em) {
      .private-workout-info-holder .left-side {
        width: 48%; } }
    @media screen and (min-width: 101.25em) {
      .private-workout-info-holder .left-side {
        width: 46%; } }
    .private-workout-info-holder .left-side .text-holder {
      max-width: 350px; }
      @media screen and (min-width: 64em) {
        .private-workout-info-holder .left-side .text-holder {
          max-width: 560px; } }
  .private-workout-info-holder h1, .private-workout-info-holder .h1 {
    font-weight: 600; }
    @media screen and (min-width: 64em) {
      .private-workout-info-holder h1, .private-workout-info-holder .h1 {
        font-weight: 500; } }
  @media screen and (min-width: 64em) {
    .private-workout-info-holder .private_workout-slider {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; } }
  .private-workout-info-holder .right-side {
    height: 500px;
    width: 100%;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto; }
    @media screen and (min-width: 64em) {
      .private-workout-info-holder .right-side {
        width: 45%;
        max-width: none;
        height: auto;
        padding-top: 55%;
        position: relative;
        z-index: 1; } }
    @media screen and (min-width: 75em) {
      .private-workout-info-holder .right-side {
        padding-top: 50%; } }
    @media screen and (min-width: 101.25em) {
      .private-workout-info-holder .right-side {
        width: 82vh;
        padding-top: 90vh; } }
  .private-workout-info-holder .general-wrapper {
    position: relative;
    height: 100%; }
    .private-workout-info-holder .general-wrapper:before {
      content: '';
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      background: transparent;
      z-index: 20; }
  .private-workout-info-holder .swiper-container {
    position: relative;
    z-index: 10;
    height: 100%; }
  .private-workout-info-holder .tiny {
    z-index: 15;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 90%;
    height: 75%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
    @media screen and (min-width: 64em) {
      .private-workout-info-holder .tiny {
        width: 60%;
        height: 80%; } }
    @media screen and (min-width: 101.25em) {
      .private-workout-info-holder .tiny {
        width: 55%; } }
    .private-workout-info-holder .tiny .swiper-slide {
      -webkit-transition-timing-function: linear !important;
              transition-timing-function: linear !important; }
  .private-workout-info-holder .swiper-slide {
    overflow: hidden; }
    .private-workout-info-holder .swiper-slide-prev {
      -webkit-transform: scale(1.2);
              transform: scale(1.2); }
    .private-workout-info-holder .swiper-slide-active {
      -webkit-transform: scale(1);
              transform: scale(1); }
  .private-workout-info-holder .slide-inner {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-size: cover;
    background-position: center; }
  .private-workout-info-holder .copy {
    position: absolute;
    bottom: 15px;
    left: 0;
    right: 0;
    text-align: center;
    color: white;
    letter-spacing: 0.06em; }

.bestsellers-slider .swiper-slide {
  overflow: hidden;
  background-position: center center;
  background-size: cover;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: white;
  font-size: 20px;
  font-weight: bold;
  -webkit-transition: -webkit-filter .15s ease;
  transition: -webkit-filter .15s ease;
  transition: filter .15s ease;
  transition: filter .15s ease, -webkit-filter .15s ease;
  width: 100%;
  max-width: 350px; }

.bestsellers-slider .product-holder {
  width: 100%; }

.bestsellers-slider .swiper-wrapper {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear; }

.bestsellers-slider .no-swiper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  @media screen and (min-width: 30em) {
    .bestsellers-slider .no-swiper {
      width: auto;
      margin: 0 -15px; } }
  .bestsellers-slider .no-swiper .swiper-slide {
    margin: 0 0 20px;
    max-width: none;
    width: 100%;
    height: auto; }
    @media screen and (min-width: 30em) {
      .bestsellers-slider .no-swiper .swiper-slide {
        margin: 0 15px 20px;
        width: calc(50% - 30px); } }
    @media screen and (min-width: 48em) {
      .bestsellers-slider .no-swiper .swiper-slide {
        width: calc(33.3% - 30px);
        max-width: 390px; } }

body.is-reveal-open {
  overflow: auto;
  width: 100%; }

body.touch .my-playlist .wrap-create-playlist, body.no-touch .my-playlist .wrap-create-playlist {
  display: table;
  width: 100%; }
  body.touch .my-playlist .wrap-create-playlist div, body.no-touch .my-playlist .wrap-create-playlist div {
    padding: 1.5625rem;
    background-color: #f2f3f6;
    border-bottom: 2px solid #ffffff; }
    body.touch .my-playlist .wrap-create-playlist div:last-of-type, body.no-touch .my-playlist .wrap-create-playlist div:last-of-type {
      border-bottom: none; }
    @media screen and (min-width: 64em) {
      body.touch .my-playlist .wrap-create-playlist div, body.no-touch .my-playlist .wrap-create-playlist div {
        display: table-cell;
        border-right: 2px solid #ffffff;
        border-bottom: none; }
        body.touch .my-playlist .wrap-create-playlist div:last-of-type, body.no-touch .my-playlist .wrap-create-playlist div:last-of-type {
          border-right: none; } }
  body.touch .my-playlist .wrap-create-playlist .desc, body.no-touch .my-playlist .wrap-create-playlist .desc {
    padding: 0; }

body.touch .my-playlist .preview-wrap, body.no-touch .my-playlist .preview-wrap {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  height: 13.75rem;
  margin-bottom: 0.625rem;
  background-image: url("../images/playlist-default-cover.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  cursor: pointer;
  overflow: hidden; }
  body.touch .my-playlist .preview-wrap:before, body.no-touch .my-playlist .preview-wrap:before {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(3, 3, 3, 0.4);
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0;
    -webkit-transition: opacity .25s linear;
    transition: opacity .25s linear;
    content: ''; }
  @media screen and (min-width: 40em) {
    body.touch .my-playlist .preview-wrap, body.no-touch .my-playlist .preview-wrap {
      height: 16.25rem; } }
  @media screen and (min-width: 64em) {
    body.touch .my-playlist .preview-wrap, body.no-touch .my-playlist .preview-wrap {
      height: 15rem; } }
  body.touch .my-playlist .preview-wrap.random, body.no-touch .my-playlist .preview-wrap.random {
    background-image: url("../images/random.jpg"); }
  body.touch .my-playlist .preview-wrap li, body.no-touch .my-playlist .preview-wrap li {
    -webkit-animation: animList .5s linear forwards;
            animation: animList .5s linear forwards; }

body.touch .my-playlist .playlist-content-modal, body.no-touch .my-playlist .playlist-content-modal {
  position: relative;
  padding-bottom: 3.125rem; }
  body.touch .my-playlist .playlist-content-modal .workout-content-modal, body.no-touch .my-playlist .playlist-content-modal .workout-content-modal {
    position: relative;
    padding: 2.1875rem 0.9375rem;
    border: 1px solid #a3a3a3; }
    @media screen and (min-width: 64em) {
      body.touch .my-playlist .playlist-content-modal .workout-content-modal, body.no-touch .my-playlist .playlist-content-modal .workout-content-modal {
        padding: 2.8125rem 3.125rem 2.1875rem; } }
  body.touch .my-playlist .playlist-content-modal .buttons-group, body.no-touch .my-playlist .playlist-content-modal .buttons-group {
    padding-bottom: 0 !important;
    border: none !important; }
    body.touch .my-playlist .playlist-content-modal .buttons-group span, body.no-touch .my-playlist .playlist-content-modal .buttons-group span {
      display: block;
      margin: 0 0.625rem; }
      @media screen and (min-width: 40em) {
        body.touch .my-playlist .playlist-content-modal .buttons-group span, body.no-touch .my-playlist .playlist-content-modal .buttons-group span {
          display: inline-block; } }
  body.touch .my-playlist .playlist-content-modal .title, body.no-touch .my-playlist .playlist-content-modal .title {
    margin-bottom: 1.25rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media screen and (min-width: 64em) {
      body.touch .my-playlist .playlist-content-modal .title, body.no-touch .my-playlist .playlist-content-modal .title {
        margin-bottom: 2.5rem; } }
  body.touch .my-playlist .playlist-content-modal div[class*='step'] li, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] li {
    margin-bottom: 1.25rem; }
    @media screen and (min-width: 75em) {
      body.touch .my-playlist .playlist-content-modal div[class*='step'] li, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] li {
        margin-bottom: 2.5rem; } }
  body.touch .my-playlist .playlist-content-modal div[class*='step'] input[type='checkbox'], body.no-touch .my-playlist .playlist-content-modal div[class*='step'] input[type='checkbox'] {
    display: none; }
    body.touch .my-playlist .playlist-content-modal div[class*='step'] input[type='checkbox']:checked ~ .preview-wrap:before, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] input[type='checkbox']:checked ~ .preview-wrap:before {
      opacity: 1; }
    body.touch .my-playlist .playlist-content-modal div[class*='step'] input[type='checkbox']:checked ~ .preview-wrap .check, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] input[type='checkbox']:checked ~ .preview-wrap .check {
      opacity: 1; }
  body.touch .my-playlist .playlist-content-modal div[class*='step'] .preview-wrap, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .preview-wrap {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding: 0.9375rem; }
    @media screen and (min-width: 40em) {
      body.touch .my-playlist .playlist-content-modal div[class*='step'] .preview-wrap, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .preview-wrap {
        height: 16.25rem; } }
    @media screen and (min-width: 64em) {
      body.touch .my-playlist .playlist-content-modal div[class*='step'] .preview-wrap, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .preview-wrap {
        height: 15rem; } }
    body.touch .my-playlist .playlist-content-modal div[class*='step'] .preview-wrap.new:after, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .preview-wrap.new:after {
      content: 'New';
      position: absolute;
      top: 0;
      right: 0;
      z-index: 1;
      text-align: center;
      width: 3.75rem;
      height: 1.75rem;
      line-height: 1.75rem;
      background-color: #f16567;
      display: block;
      color: #ffffff;
      font-size: 0.875rem; }
      @media screen and (min-width: 64em) {
        body.touch .my-playlist .playlist-content-modal div[class*='step'] .preview-wrap.new:after, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .preview-wrap.new:after {
          font-size: 1rem; } }
    body.touch .my-playlist .playlist-content-modal div[class*='step'] .preview-wrap.play:before, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .preview-wrap.play:before {
      background-image: url("../images/icons/play-button.svg");
      background-repeat: no-repeat;
      background-position: center; }
  body.touch .my-playlist .playlist-content-modal div[class*='step'] .check,
  body.touch .my-playlist .playlist-content-modal div[class*='step'] .remove, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .check,
  body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .remove {
    position: absolute;
    left: calc(50% - 20px);
    top: calc(50% - 20px);
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background-color: #f16567;
    opacity: 0;
    -webkit-transition: opacity .25s linear;
    transition: opacity .25s linear; }
  body.touch .my-playlist .playlist-content-modal div[class*='step'] .check, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .check {
    background-image: url("../images/icons/check-symbol.svg");
    background-repeat: no-repeat;
    background-size: 35%;
    background-position: center; }
  body.touch .my-playlist .playlist-content-modal div[class*='step'] .remove, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .remove {
    cursor: pointer; }
    body.touch .my-playlist .playlist-content-modal div[class*='step'] .remove:before, body.touch .my-playlist .playlist-content-modal div[class*='step'] .remove:after, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .remove:before, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .remove:after {
      position: absolute;
      left: 50%;
      top: 50%;
      width: 1.25rem;
      height: 0.125rem;
      background-color: #ffffff;
      content: ''; }
    body.touch .my-playlist .playlist-content-modal div[class*='step'] .remove:before, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .remove:before {
      -webkit-transform: translate(-50%, -50%) rotate(-45deg);
              transform: translate(-50%, -50%) rotate(-45deg); }
    body.touch .my-playlist .playlist-content-modal div[class*='step'] .remove:after, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .remove:after {
      -webkit-transform: translate(-50%, -50%) rotate(45deg);
              transform: translate(-50%, -50%) rotate(45deg); }
  body.touch .my-playlist .playlist-content-modal div[class*='step'] .name, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .name {
    display: block;
    font-size: 1.0625rem;
    color: #000000;
    letter-spacing: 1px; }
    @media screen and (min-width: 75em) {
      body.touch .my-playlist .playlist-content-modal div[class*='step'] .name, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .name {
        font-size: 1.25rem; } }
  body.touch .my-playlist .playlist-content-modal div[class*='step'] .icon-heart, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .icon-heart {
    position: relative;
    color: #f16567;
    line-height: 1;
    z-index: 1; }
  body.touch .my-playlist .playlist-content-modal div[class*='step'] .runtime, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .runtime {
    display: block;
    font-size: 0.9375rem;
    color: #a3a3a3;
    letter-spacing: .5px; }
    @media screen and (min-width: 75em) {
      body.touch .my-playlist .playlist-content-modal div[class*='step'] .runtime, body.no-touch .my-playlist .playlist-content-modal div[class*='step'] .runtime {
        font-size: 1.0625rem; } }
  body.touch .my-playlist .playlist-content-modal .second-step .buttons-group, body.no-touch .my-playlist .playlist-content-modal .second-step .buttons-group {
    padding-top: 0 !important; }
  body.touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-info,
  body.touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view, body.no-touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-info,
  body.no-touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view {
    padding: 0.625rem;
    border: 1px solid #a3a3a3; }
    @media screen and (min-width: 64em) {
      body.touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-info,
      body.touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view, body.no-touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-info,
      body.no-touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view {
        padding: 0.9375rem; } }
  body.touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-info, body.no-touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-info {
    margin-bottom: 0.9375rem; }
  body.touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view ul, body.no-touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view ul {
    max-width: calc(100% - 25px);
    max-height: 55vh;
    margin: auto;
    padding: 0 1.25rem;
    overflow-x: hidden;
    overflow-y: auto;
    letter-spacing: -0.375rem;
    list-style: none; }
    @media screen and (min-width: 75em) {
      body.touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view ul, body.no-touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view ul {
        max-width: 100%;
        padding: 0; } }
    body.touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view ul li, body.no-touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view ul li {
      display: inline-block;
      vertical-align: top;
      width: calc(100% - 30px);
      margin: 0 0.9375rem 1.875rem;
      letter-spacing: normal; }
      @media screen and (min-width: 40em) {
        body.touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view ul li, body.no-touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view ul li {
          width: calc(50% - 30px); } }
      @media screen and (min-width: 64em) {
        body.touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view ul li, body.no-touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view ul li {
          width: calc(33.33% - 30px); } }
  body.touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view .title, body.no-touch .my-playlist .playlist-content-modal .third-step .wrap-playlist-view .title {
    margin-bottom: 0; }
  body.touch .my-playlist .playlist-content-modal .third-step .preview-wrap, body.no-touch .my-playlist .playlist-content-modal .third-step .preview-wrap {
    cursor: default; }
  body.touch .my-playlist .playlist-content-modal .third-step .sub-title, body.no-touch .my-playlist .playlist-content-modal .third-step .sub-title {
    margin-bottom: 1.25rem;
    text-align: center; }
    @media screen and (min-width: 64em) {
      body.touch .my-playlist .playlist-content-modal .third-step .sub-title, body.no-touch .my-playlist .playlist-content-modal .third-step .sub-title {
        margin-bottom: 2.5rem; } }
  body.touch .my-playlist .playlist-content-modal .third-step input.error,
  body.touch .my-playlist .playlist-content-modal .third-step textarea.error, body.no-touch .my-playlist .playlist-content-modal .third-step input.error,
  body.no-touch .my-playlist .playlist-content-modal .third-step textarea.error {
    border-color: #f16567; }
    body.touch .my-playlist .playlist-content-modal .third-step input.error + label,
    body.touch .my-playlist .playlist-content-modal .third-step textarea.error + label, body.no-touch .my-playlist .playlist-content-modal .third-step input.error + label,
    body.no-touch .my-playlist .playlist-content-modal .third-step textarea.error + label {
      color: #f16567; }
  body.touch .my-playlist .playlist-content-modal .third-step .error-message, body.no-touch .my-playlist .playlist-content-modal .third-step .error-message {
    margin-top: -0.625rem; }
    @media screen and (min-width: 64em) {
      body.touch .my-playlist .playlist-content-modal .third-step .error-message, body.no-touch .my-playlist .playlist-content-modal .third-step .error-message {
        margin-top: -1.25rem; } }
    body.touch .my-playlist .playlist-content-modal .third-step .error-message.active, body.no-touch .my-playlist .playlist-content-modal .third-step .error-message.active {
      color: #f16567; }
  body.touch .my-playlist .playlist-content-modal .error-message, body.no-touch .my-playlist .playlist-content-modal .error-message {
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transition: -webkit-transform .25s linear;
    transition: -webkit-transform .25s linear;
    transition: transform .25s linear;
    transition: transform .25s linear, -webkit-transform .25s linear; }
    body.touch .my-playlist .playlist-content-modal .error-message.active, body.no-touch .my-playlist .playlist-content-modal .error-message.active {
      margin: 0.625rem 0;
      -webkit-transform: scale(1);
              transform: scale(1); }
      body.touch .my-playlist .playlist-content-modal .error-message.active.top, body.no-touch .my-playlist .playlist-content-modal .error-message.active.top {
        margin: 0; }
  body.touch .my-playlist .playlist-content-modal .bg-upload-image, body.no-touch .my-playlist .playlist-content-modal .bg-upload-image {
    position: relative;
    max-width: 13.75rem;
    width: 100%;
    height: 13.75rem;
    background-image: url("../images/playlist-default-cover.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat; }
    @media screen and (min-width: 75em) {
      body.touch .my-playlist .playlist-content-modal .bg-upload-image, body.no-touch .my-playlist .playlist-content-modal .bg-upload-image {
        max-width: 19.375rem; } }
    body.touch .my-playlist .playlist-content-modal .bg-upload-image .preview-image, body.no-touch .my-playlist .playlist-content-modal .bg-upload-image .preview-image {
      position: absolute;
      width: 100%;
      height: 100%;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat; }
    body.touch .my-playlist .playlist-content-modal .bg-upload-image.random, body.no-touch .my-playlist .playlist-content-modal .bg-upload-image.random {
      background-image: url("../images/random.jpg"); }
  body.touch .my-playlist .playlist-content-modal .upload-label, body.no-touch .my-playlist .playlist-content-modal .upload-label {
    display: inline-block;
    -webkit-transition: color .25s linear;
    transition: color .25s linear;
    cursor: pointer; }
  body.touch .my-playlist .playlist-content-modal textarea, body.no-touch .my-playlist .playlist-content-modal textarea {
    min-height: 13.75rem; }
    @media screen and (min-width: 64em) {
      body.touch .my-playlist .playlist-content-modal textarea, body.no-touch .my-playlist .playlist-content-modal textarea {
        min-height: 18.5rem; } }

body.touch .my-playlist .draging, body.no-touch .my-playlist .draging {
  list-style: none;
  z-index: 1005;
  pointer-events: auto !important; }
  body.touch .my-playlist .draging .preview-wrap, body.no-touch .my-playlist .draging .preview-wrap {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding: 0.9375rem; }
    body.touch .my-playlist .draging .preview-wrap.new:after, body.no-touch .my-playlist .draging .preview-wrap.new:after {
      content: 'New';
      position: absolute;
      top: 0;
      right: 0;
      z-index: 1;
      text-align: center;
      width: 3.75rem;
      height: 1.75rem;
      line-height: 1.75rem;
      background-color: #f16567;
      display: block;
      color: #ffffff;
      font-size: 0.875rem; }
      @media screen and (min-width: 64em) {
        body.touch .my-playlist .draging .preview-wrap.new:after, body.no-touch .my-playlist .draging .preview-wrap.new:after {
          font-size: 1rem; } }
  body.touch .my-playlist .draging .icon-heart, body.no-touch .my-playlist .draging .icon-heart {
    position: relative;
    color: #f16567;
    line-height: 1;
    z-index: 1; }
  body.touch .my-playlist .draging .name, body.no-touch .my-playlist .draging .name {
    display: block;
    font-size: 1.0625rem;
    color: #000000;
    letter-spacing: 1px; }
    @media screen and (min-width: 75em) {
      body.touch .my-playlist .draging .name, body.no-touch .my-playlist .draging .name {
        font-size: 1.25rem; } }
  body.touch .my-playlist .draging .runtime, body.no-touch .my-playlist .draging .runtime {
    display: block;
    font-size: 0.9375rem;
    color: #a3a3a3;
    letter-spacing: .5px; }
    @media screen and (min-width: 75em) {
      body.touch .my-playlist .draging .runtime, body.no-touch .my-playlist .draging .runtime {
        font-size: 1.0625rem; } }

body.touch .my-playlist .playlist-info, body.no-touch .my-playlist .playlist-info {
  margin-top: 1.25rem; }
  body.touch .my-playlist .playlist-info li, body.no-touch .my-playlist .playlist-info li {
    margin-bottom: 1.25rem; }
  body.touch .my-playlist .playlist-info .dot:nth-of-type(1), body.no-touch .my-playlist .playlist-info .dot:nth-of-type(1) {
    -webkit-animation: animDots 1s linear infinite;
            animation: animDots 1s linear infinite; }
  body.touch .my-playlist .playlist-info .dot:nth-of-type(2), body.no-touch .my-playlist .playlist-info .dot:nth-of-type(2) {
    -webkit-animation: animDots 1s .2s linear infinite;
            animation: animDots 1s .2s linear infinite; }
  body.touch .my-playlist .playlist-info .dot:nth-of-type(3), body.no-touch .my-playlist .playlist-info .dot:nth-of-type(3) {
    -webkit-animation: animDots 1s .4s linear infinite;
            animation: animDots 1s .4s linear infinite; }

@-webkit-keyframes animDots {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

@keyframes animDots {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }
  body.touch .my-playlist .playlist-info .preview-wrap:before, body.no-touch .my-playlist .playlist-info .preview-wrap:before {
    background-image: url("../images/icons/play-button.svg"); }
  body.touch .my-playlist .playlist-info .edit,
  body.touch .my-playlist .playlist-info .delete, body.no-touch .my-playlist .playlist-info .edit,
  body.no-touch .my-playlist .playlist-info .delete {
    position: absolute;
    bottom: 0;
    padding: 0.625rem 0.9375rem;
    font-size: 1rem;
    color: #ffffff;
    letter-spacing: 1px;
    -webkit-transition: all .25s linear;
    transition: all .25s linear;
    z-index: 2;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none; }
    body.touch .my-playlist .playlist-info .edit:hover,
    body.touch .my-playlist .playlist-info .delete:hover, body.no-touch .my-playlist .playlist-info .edit:hover,
    body.no-touch .my-playlist .playlist-info .delete:hover {
      color: #f16567; }
  body.touch .my-playlist .playlist-info .edit, body.no-touch .my-playlist .playlist-info .edit {
    right: -50%; }
  body.touch .my-playlist .playlist-info .delete, body.no-touch .my-playlist .playlist-info .delete {
    left: -50%; }
  body.touch .my-playlist .playlist-info .name, body.no-touch .my-playlist .playlist-info .name {
    display: block;
    font-size: 1.0625rem;
    color: #000000;
    letter-spacing: 1px; }
    @media screen and (min-width: 75em) {
      body.touch .my-playlist .playlist-info .name, body.no-touch .my-playlist .playlist-info .name {
        font-size: 1.25rem; } }
  body.touch .my-playlist .playlist-info .validation, body.no-touch .my-playlist .playlist-info .validation {
    display: none;
    color: #f16567; }
    body.touch .my-playlist .playlist-info .validation.active, body.no-touch .my-playlist .playlist-info .validation.active {
      display: block; }

body.touch .my-playlist #videoGallery, body.no-touch .my-playlist #videoGallery {
  padding: 1.25rem 3.125rem; }
  body.touch .my-playlist #videoGallery .slick-prev, body.no-touch .my-playlist #videoGallery .slick-prev {
    left: -2.5rem; }
  body.touch .my-playlist #videoGallery .slick-next, body.no-touch .my-playlist #videoGallery .slick-next {
    right: -2.5rem; }

body.touch .my-playlist .range-slider .irs-grid-text:nth-of-type(1n+2), body.no-touch .my-playlist .range-slider .irs-grid-text:nth-of-type(1n+2) {
  margin: 0.9375rem 0 0 !important; }
  @media screen and (min-width: 75em) {
    body.touch .my-playlist .range-slider .irs-grid-text:nth-of-type(1n+2), body.no-touch .my-playlist .range-slider .irs-grid-text:nth-of-type(1n+2) {
      margin: 1.75rem 0 0 !important; } }

body.touch .my-playlist .range-slider .irs-grid-text:first-of-type, body.touch .my-playlist .range-slider .irs-grid-text:last-of-type, body.no-touch .my-playlist .range-slider .irs-grid-text:first-of-type, body.no-touch .my-playlist .range-slider .irs-grid-text:last-of-type {
  margin-top: 0.9375rem !important;
  -webkit-transform: none;
          transform: none; }
  @media screen and (min-width: 75em) {
    body.touch .my-playlist .range-slider .irs-grid-text:first-of-type, body.touch .my-playlist .range-slider .irs-grid-text:last-of-type, body.no-touch .my-playlist .range-slider .irs-grid-text:first-of-type, body.no-touch .my-playlist .range-slider .irs-grid-text:last-of-type {
      margin-top: 1.75rem !important; } }

body.touch .my-playlist .custom-overlay, body.no-touch .my-playlist .custom-overlay {
  background-image: url(../images/loader.svg);
  opacity: 1; }
  body.touch .my-playlist .custom-overlay.inner, body.no-touch .my-playlist .custom-overlay.inner {
    position: absolute; }
  body.touch .my-playlist .custom-overlay.opacity, body.no-touch .my-playlist .custom-overlay.opacity {
    opacity: .5; }

body.touch .my-playlist .favorite-overlay-holder, body.no-touch .my-playlist .favorite-overlay-holder {
  position: relative; }

body.touch .my-playlist .preloader .mr-top, body.no-touch .my-playlist .preloader .mr-top {
  margin-top: 1.25rem; }

body.touch .my-playlist .playlist-view-header, body.no-touch .my-playlist .playlist-view-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-bottom: 1.25rem; }
  @media screen and (min-width: 64em) {
    body.touch .my-playlist .playlist-view-header, body.no-touch .my-playlist .playlist-view-header {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start; } }
  @media screen and (min-width: 64em) {
    body.touch .my-playlist .playlist-view-header .short-info, body.no-touch .my-playlist .playlist-view-header .short-info {
      width: 80%; } }
  body.touch .my-playlist .playlist-view-header .button, body.no-touch .my-playlist .playlist-view-header .button {
    margin: 0 auto 0 0; }
    @media screen and (min-width: 64em) {
      body.touch .my-playlist .playlist-view-header .button, body.no-touch .my-playlist .playlist-view-header .button {
        margin-left: 0.9375rem;
        width: 20%; } }

body.touch .my-playlist .playlist-info-step .row, body.no-touch .my-playlist .playlist-info-step .row {
  max-width: 88%;
  margin: auto; }
  @media screen and (min-width: 75em) {
    body.touch .my-playlist .playlist-info-step .row, body.no-touch .my-playlist .playlist-info-step .row {
      max-width: 100%; } }

body.touch .my-playlist .playlist-modal, body.no-touch .my-playlist .playlist-modal {
  top: 1.5625rem !important;
  bottom: 1.5625rem !important;
  margin-bottom: 0;
  border: 0;
  opacity: 1;
  -webkit-transition: opacity .5s linear;
  transition: opacity .5s linear; }
  @media screen and (min-width: 64em) {
    body.touch .my-playlist .playlist-modal, body.no-touch .my-playlist .playlist-modal {
      top: 3.125rem !important;
      bottom: 3.125rem !important; } }
  body.touch .my-playlist .playlist-modal .modal-info, body.no-touch .my-playlist .playlist-modal .modal-info {
    position: relative;
    max-height: calc(100vh - 50px);
    overflow-x: hidden;
    overflow-y: auto; }
    @media screen and (width: 375px) and (min-height: 600px) and (orientation: portrait) {
      body.touch .my-playlist .playlist-modal .modal-info, body.no-touch .my-playlist .playlist-modal .modal-info {
        max-height: calc(100vh - 100px); } }
    @media screen and (min-width: 64em) {
      body.touch .my-playlist .playlist-modal .modal-info, body.no-touch .my-playlist .playlist-modal .modal-info {
        max-height: calc(100vh - 100px); } }
    body.touch .my-playlist .playlist-modal .modal-info.no-overlay, body.no-touch .my-playlist .playlist-modal .modal-info.no-overlay {
      overflow-y: hidden; }
  body.touch .my-playlist .playlist-modal .header-info, body.no-touch .my-playlist .playlist-modal .header-info {
    overflow: hidden; }
  body.touch .my-playlist .playlist-modal .step,
  body.touch .my-playlist .playlist-modal .back,
  body.touch .my-playlist .playlist-modal .add-video, body.no-touch .my-playlist .playlist-modal .step,
  body.no-touch .my-playlist .playlist-modal .back,
  body.no-touch .my-playlist .playlist-modal .add-video {
    padding: 0.3125rem 0.9375rem;
    background-color: #f16567;
    font-size: 1rem;
    font-weight: 500;
    color: #ffffff;
    cursor: pointer;
    -webkit-transition: background-color .25s linear;
    transition: background-color .25s linear; }
    body.touch .my-playlist .playlist-modal .step:hover,
    body.touch .my-playlist .playlist-modal .back:hover,
    body.touch .my-playlist .playlist-modal .add-video:hover, body.no-touch .my-playlist .playlist-modal .step:hover,
    body.no-touch .my-playlist .playlist-modal .back:hover,
    body.no-touch .my-playlist .playlist-modal .add-video:hover {
      background-color: #000000; }
  body.touch .my-playlist .playlist-modal .back, body.no-touch .my-playlist .playlist-modal .back {
    float: left; }
  body.touch .my-playlist .playlist-modal .step, body.no-touch .my-playlist .playlist-modal .step {
    float: right;
    margin-right: 1.875rem; }
    @media screen and (min-width: 64em) {
      body.touch .my-playlist .playlist-modal .step, body.no-touch .my-playlist .playlist-modal .step {
        margin-right: 0; } }
    body.touch .my-playlist .playlist-modal .step.hide, body.no-touch .my-playlist .playlist-modal .step.hide {
      display: none; }
  body.touch .my-playlist .playlist-modal .wrap-inner-buttons, body.no-touch .my-playlist .playlist-modal .wrap-inner-buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  body.touch .my-playlist .playlist-modal .re-random,
  body.touch .my-playlist .playlist-modal .select-all, body.no-touch .my-playlist .playlist-modal .re-random,
  body.no-touch .my-playlist .playlist-modal .select-all {
    padding: 0 0.9375rem;
    font-size: 1rem;
    color: #a3a3a3;
    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -webkit-transition: color .25s;
    transition: color .25s; }
    body.touch .my-playlist .playlist-modal .re-random:hover,
    body.touch .my-playlist .playlist-modal .select-all:hover, body.no-touch .my-playlist .playlist-modal .re-random:hover,
    body.no-touch .my-playlist .playlist-modal .select-all:hover {
      color: #000000; }
      body.touch .my-playlist .playlist-modal .re-random:hover em:after,
      body.touch .my-playlist .playlist-modal .select-all:hover em:after, body.no-touch .my-playlist .playlist-modal .re-random:hover em:after,
      body.no-touch .my-playlist .playlist-modal .select-all:hover em:after {
        opacity: 1; }
    @media screen and (min-width: 64em) {
      body.touch .my-playlist .playlist-modal .re-random,
      body.touch .my-playlist .playlist-modal .select-all, body.no-touch .my-playlist .playlist-modal .re-random,
      body.no-touch .my-playlist .playlist-modal .select-all {
        font-size: 1.25rem; } }
    body.touch .my-playlist .playlist-modal .re-random em,
    body.touch .my-playlist .playlist-modal .select-all em, body.no-touch .my-playlist .playlist-modal .re-random em,
    body.no-touch .my-playlist .playlist-modal .select-all em {
      position: relative; }
      body.touch .my-playlist .playlist-modal .re-random em:after,
      body.touch .my-playlist .playlist-modal .select-all em:after, body.no-touch .my-playlist .playlist-modal .re-random em:after,
      body.no-touch .my-playlist .playlist-modal .select-all em:after {
        position: absolute;
        left: 0;
        bottom: -2px;
        width: 100%;
        height: 1px;
        content: '';
        opacity: 0;
        background-color: #000000;
        -webkit-transition: opacity .25s ease;
        transition: opacity .25s ease; }
  body.touch .my-playlist .playlist-modal .re-random .icon-arrows-cw, body.no-touch .my-playlist .playlist-modal .re-random .icon-arrows-cw {
    margin-right: 0.3125rem; }
  body.touch .my-playlist .playlist-modal .re-random em, body.no-touch .my-playlist .playlist-modal .re-random em {
    position: relative; }
    body.touch .my-playlist .playlist-modal .re-random em:after, body.no-touch .my-playlist .playlist-modal .re-random em:after {
      position: absolute;
      left: 0;
      bottom: -2px;
      width: 100%;
      height: 1px;
      content: '';
      opacity: 0;
      background-color: #000000;
      -webkit-transition: opacity .25s ease;
      transition: opacity .25s ease; }
  body.touch .my-playlist .playlist-modal .scrollToBottom, body.no-touch .my-playlist .playlist-modal .scrollToBottom {
    position: absolute;
    right: 1.25rem;
    bottom: 6.25rem;
    width: 1.25rem;
    height: 1.25rem;
    font-size: 1.25rem;
    line-height: 1.25rem;
    cursor: pointer;
    z-index: 1; }
    @media screen and (orientation: landscape) {
      body.touch .my-playlist .playlist-modal .scrollToBottom, body.no-touch .my-playlist .playlist-modal .scrollToBottom {
        bottom: 3.75rem; } }
    @media screen and (width: 375px) and (min-height: 600px) and (orientation: portrait) {
      body.touch .my-playlist .playlist-modal .scrollToBottom, body.no-touch .my-playlist .playlist-modal .scrollToBottom {
        bottom: 9.375rem; } }
    @media screen and (min-width: 75em) {
      body.touch .my-playlist .playlist-modal .scrollToBottom, body.no-touch .my-playlist .playlist-modal .scrollToBottom {
        right: 1.875rem;
        bottom: 0.625rem; } }
  body.touch .my-playlist .playlist-modal .add-video, body.no-touch .my-playlist .playlist-modal .add-video {
    display: table;
    margin: 0 0 15px auto;
    cursor: pointer;
    -webkit-transition: background-color .25s linear;
    transition: background-color .25s linear; }
    body.touch .my-playlist .playlist-modal .add-video:hover, body.no-touch .my-playlist .playlist-modal .add-video:hover {
      background-color: #000000; }

body.touch .my-playlist .first-step .attr-holder, body.no-touch .my-playlist .first-step .attr-holder {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  body.touch .my-playlist .first-step .attr-holder span, body.no-touch .my-playlist .first-step .attr-holder span {
    display: inline-block;
    line-height: normal; }
    @media screen and (min-width: 64em) {
      body.touch .my-playlist .first-step .attr-holder span, body.no-touch .my-playlist .first-step .attr-holder span {
        font-size: 1.125rem; } }

body.touch .my-playlist .first-step label, body.no-touch .my-playlist .first-step label {
  width: 33%; }
  @media screen and (min-width: 40em) {
    body.touch .my-playlist .first-step label, body.no-touch .my-playlist .first-step label {
      width: 25%; } }
  @media screen and (min-width: 64em) {
    body.touch .my-playlist .first-step label, body.no-touch .my-playlist .first-step label {
      width: 20%; } }
  @media screen and (min-width: 75em) {
    body.touch .my-playlist .first-step label, body.no-touch .my-playlist .first-step label {
      width: 16.6%; } }

body.touch .my-playlist #secondStepForm, body.no-touch .my-playlist #secondStepForm {
  max-width: 88%;
  margin: auto; }
  @media screen and (min-width: 75em) {
    body.touch .my-playlist #secondStepForm, body.no-touch .my-playlist #secondStepForm {
      max-width: 100%; } }

body.touch .my-playlist .not-found-title, body.no-touch .my-playlist .not-found-title {
  margin-bottom: 0; }

body.touch .my-playlist .draggable-item, body.no-touch .my-playlist .draggable-item {
  cursor: pointer; }

@-webkit-keyframes animList {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes animList {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

body.touch .my-playlist .loading-mask, body.no-touch .my-playlist .loading-mask {
  position: absolute;
  z-index: 10;
  width: 100%;
  height: 100%;
  background: #ffffff; }
  body.touch .my-playlist .loading-mask .loader, body.no-touch .my-playlist .loading-mask .loader {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }

body.touch .my-playlist .playlist-info .preview-wrap:before {
  opacity: 1; }

body.touch .my-playlist .playlist-info .preview-wrap .edit {
  right: 0; }

body.touch .my-playlist .playlist-info .preview-wrap .delete {
  left: 0; }

body.touch .my-playlist .playlist-info-step .preview-wrap.play:before {
  opacity: 1; }

body.touch .my-playlist .third-step .preview-wrap:before {
  opacity: 1; }

body.touch .my-playlist .playlist-view-header .button.button-secondary:hover {
  background-color: #f16567; }

body.touch .my-playlist div[class*='step'] .remove {
  opacity: 1 !important; }

body.touch .my-playlist div[class*='step'] .buttons-group .button:hover {
  color: #000000;
  background-color: transparent; }

body.touch .my-playlist .playlist-modal .back:hover,
body.touch .my-playlist .playlist-modal .step:hover {
  background-color: #f16567; }

body.no-touch .my-playlist .preview-wrap:hover:before {
  opacity: 1; }

body.no-touch .my-playlist .preview-wrap:hover .check,
body.no-touch .my-playlist .preview-wrap:hover .remove {
  opacity: 1; }

body.no-touch .my-playlist .preview-wrap:hover .edit {
  right: 0; }

body.no-touch .my-playlist .preview-wrap:hover .delete {
  left: 0; }

body.no-touch .my-playlist .playlist-content-modal .preview-wrap:hover:before {
  opacity: 1; }

body.no-touch .my-playlist .playlist-content-modal .preview-wrap:hover .check,
body.no-touch .my-playlist .playlist-content-modal .preview-wrap:hover .remove {
  opacity: 1; }

body.no-touch .my-playlist .playlist-content-modal .upload-label:hover {
  color: #f16567; }

.authentication-popup-customer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }
  @media screen and (min-width: 64em) {
    .authentication-popup-customer {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row; } }
  @media screen and (min-width: 64em) {
    .authentication-popup-customer > .block {
      padding: 0 15px; } }

.cms-home .main-container {
  padding-top: 180px; }

.cms-home .page.messages {
  display: none; }

.cms-home .wrapper {
  max-width: 90rem;
  margin: 0 auto; }

@media screen and (min-width: 75em) {
  .cms-home .featured-items {
    padding: 3.125rem 0.9375rem; } }

.cms-home .book-class .holder {
  color: rgba(0, 0, 0, 0.75); }
  .cms-home .book-class .holder .btn-custom {
    color: rgba(0, 0, 0, 0.75); }
    .cms-home .book-class .holder .btn-custom:after, .cms-home .book-class .holder .btn-custom:before {
      background-color: rgba(0, 0, 0, 0.75); }
    .cms-home .book-class .holder .btn-custom:hover {
      color: rgba(0, 0, 0, 0.75); }
    .cms-home .book-class .holder .btn-custom span:after {
      background-color: rgba(0, 0, 0, 0.75); }

@media (max-width: 1315px) {
  .cms-home .main-container {
    padding-top: 160px; } }

@media (max-width: 1200px) {
  .cms-home .main-container {
    padding-top: 140px; } }

@media (max-width: 1080px) {
  .cms-home .main-container {
    padding-top: 0px; } }

.home-page .page.messages {
  position: absolute; }

.home-page .panel {
  min-height: calc(72vh - 10px);
  padding: 0.9375rem;
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center; }
  .home-page .panel:first-child {
    background-position: 75% center; }
    @media screen and (min-width: 64em) {
      .home-page .panel:first-child {
        background-position: center center; } }
  .home-page .panel.custom-workout {
    background-position: 25% center; }
    @media screen and (min-width: 64em) {
      .home-page .panel.custom-workout {
        background-position: center center; } }
  .home-page .panel.book-holder {
    background-position: center top; }
    @media screen and (min-width: 90em) {
      .home-page .panel.book-holder {
        background-position: center center; } }
  .home-page .panel.introducing-gallery {
    height: 65vh;
    padding: 0 1.875rem;
    min-height: 34.375rem; }
    @media screen and (max-width: 47.9375em) {
      .touch .home-page .panel.introducing-gallery {
        min-height: auto;
        padding-left: 0;
        padding-right: 0; } }
    @media screen and (max-width: 39.9375em) {
      .touch .home-page .panel.introducing-gallery {
        padding-left: 15px;
        padding-right: 15px; } }
  .home-page .panel.intro-section {
    min-height: 45.625rem;
    height: calc(100vh - 180px); }
  @media screen and (min-width: 75em) {
    .home-page .panel .introducing_slider, .home-page .panel .second_introducing_slider {
      padding: 1.875rem 0.625rem; } }
  @media screen and (min-width: 90em) {
    .home-page .panel .introducing_slider, .home-page .panel .second_introducing_slider {
      padding: 2.5rem 1.25rem; } }
  .home-page .panel .slick-slider.background {
    padding: 0 1.875rem; }
    .home-page .panel .slick-slider.background .slick-slider-item {
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center; }
  .home-page .panel .slick-slider .full-width .slider-bg {
    cursor: pointer;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center; }
  .touch .home-page .panel {
    min-height: 21.875rem;
    height: auto !important;
    padding: 3.125rem 0.9375rem; }
    @media screen and (min-width: 64em) {
      .touch .home-page .panel {
        padding: 4.6875rem 0.9375rem; }
        .touch .home-page .panel.introducing-gallery {
          padding: 4.6875rem 2.8125rem; } }
    .touch .home-page .panel .introducing_slider, .touch .home-page .panel .second_introducing_slider {
      padding-top: 0;
      padding-bottom: 0; }
      @media screen and (max-width: 47.9375em) {
        .touch .home-page .panel .introducing_slider, .touch .home-page .panel .second_introducing_slider {
          padding-left: 0;
          padding-right: 0; } }
    .touch .home-page .panel .slick-slider.background .slider-bg,
    .touch .home-page .panel .slick-slider .full-width .slider-bg {
      height: 35vh; }
      @media screen and (orientation: landscape) {
        .touch .home-page .panel .slick-slider.background .slider-bg,
        .touch .home-page .panel .slick-slider .full-width .slider-bg {
          height: 60vh; } }
    .touch .home-page .panel .product-slider-block {
      padding-top: 0;
      padding-bottom: 0; }
      .touch .home-page .panel .product-slider-block .item {
        margin-bottom: 0; }
    .touch .home-page .panel .row {
      min-height: 1px; }
    @media screen and (min-width: 64em) {
      .touch .home-page .panel:first-of-type {
        padding-bottom: 6.25rem;
        padding-top: 15.625rem; } }
    @media screen and (min-width: 75em) {
      .touch .home-page .panel:first-of-type {
        padding-bottom: 9.375rem;
        padding-top: 18.75rem; } }
  .home-page .panel.align-right {
    background-position: center center; }
    @media screen and (min-width: 64em) {
      .home-page .panel.align-right .row {
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end; } }
  @media screen and (max-width: 74.9375em) {
    .home-page .panel {
      height: 72vh; }
      .home-page .panel.intro-section {
        padding: 6.25rem 0.9375rem; }
      .home-page .panel.featured-items {
        height: auto; } }
  @media screen and (min-width: 64em) {
    .home-page .panel {
      background-position: center center;
      padding: 6.3125rem 0.9375rem; }
      .home-page .panel:first-of-type {
        padding-top: 11.75rem; } }
  @media screen and (min-width: 75em) {
    .home-page .panel {
      min-height: 34.375rem;
      height: 72vh; }
      .home-page .panel:first-of-type {
        padding-top: 12.5rem; }
      .home-page .panel.featured-items {
        height: auto; } }
  @media screen and (min-width: 90em) {
    .home-page .panel:first-of-type {
      padding-top: 15.625rem; } }
  .home-page .panel .row {
    height: 100%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .home-page .panel p {
    font-size: 0.875rem;
    max-width: 37.5rem;
    letter-spacing: 0.5px;
    margin: 0 auto 1rem; }
    @media screen and (min-width: 48em) {
      .home-page .panel p {
        font-size: 1.0625rem; } }
    @media screen and (min-width: 75em) {
      .home-page .panel p {
        font-size: 1.25rem; } }
  .home-page .panel h1, .home-page .panel .h1 {
    margin-bottom: 0.9375rem; }
    @media screen and (min-width: 101.25em) {
      .home-page .panel h1, .home-page .panel .h1 {
        margin-bottom: 1.875rem; } }

.home-page .holder {
  color: rgba(255, 255, 255, 0.9);
  text-align: center; }

.home-page .book-holder .holder {
  margin: 0 auto;
  max-width: 41.875rem;
  padding: 4.0625rem 0;
  color: rgba(0, 0, 0, 0.75); }
  .home-page .book-holder .holder .btn-custom {
    color: rgba(0, 0, 0, 0.75); }
    .home-page .book-holder .holder .btn-custom:after, .home-page .book-holder .holder .btn-custom:before {
      background-color: rgba(0, 0, 0, 0.75); }
    .home-page .book-holder .holder .btn-custom:hover {
      color: rgba(0, 0, 0, 0.75); }
    .home-page .book-holder .holder .btn-custom span:after {
      background-color: rgba(0, 0, 0, 0.75); }

.home-page .book-holder .row {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

@media screen and (max-width: 47.9375em) {
  .home-page .custom-workout {
    background-image: none !important; } }

.home-page .custom-workout .holder {
  color: rgba(0, 0, 0, 0.75); }
  .home-page .custom-workout .holder .btn-custom {
    color: rgba(0, 0, 0, 0.75); }
    .home-page .custom-workout .holder .btn-custom:after, .home-page .custom-workout .holder .btn-custom:before {
      background-color: rgba(0, 0, 0, 0.75); }
    .home-page .custom-workout .holder .btn-custom:hover {
      color: rgba(0, 0, 0, 0.75); }
    .home-page .custom-workout .holder .btn-custom span:after {
      background-color: rgba(0, 0, 0, 0.75); }

.reveal {
  overflow-y: auto;
  padding: 1.875rem;
  background: #ffffff; }
  @media screen and (min-width: 64em) {
    .reveal {
      overflow-y: visible;
      padding: 1.25rem; } }
  @media screen and (min-width: 64em) {
    .reveal.full {
      padding-right: 1.875rem; } }
  @media screen and (min-width: 75em) {
    .reveal.full {
      padding-right: 2.5rem; } }
  .reveal.full .close-button {
    position: absolute;
    cursor: pointer; }
    @media screen and (min-width: 64em) {
      .reveal.full .close-button {
        height: 1.375rem;
        top: 1.0625rem;
        right: 0.3125rem; }
        .reveal.full .close-button > span, .reveal.full .close-button span {
          background-color: #000000 !important; } }
    @media screen and (min-width: 75em) {
      .reveal.full .close-button {
        height: 1.875rem; }
        .reveal.full .close-button span {
          width: 1.875rem; } }
  .reveal.create-custom-workout, .reveal.playlist-modal {
    padding: 0;
    max-width: 78.125rem; }
    .reveal.create-custom-workout .irs-grid-text, .reveal.playlist-modal .irs-grid-text {
      margin-left: 0 !important; }
    .reveal.create-custom-workout h3, .reveal.playlist-modal h3 {
      text-align: center;
      margin-bottom: 2.1875rem; }
      @media screen and (min-width: 75em) {
        .reveal.create-custom-workout h3, .reveal.playlist-modal h3 {
          margin-bottom: 4.375rem; } }
      .reveal.create-custom-workout h3.title, .reveal.playlist-modal h3.title {
        margin-bottom: 1.25rem; }
        @media screen and (min-width: 64em) {
          .reveal.create-custom-workout h3.title, .reveal.playlist-modal h3.title {
            margin-bottom: 2.5rem; } }
    .reveal.create-custom-workout .row, .reveal.playlist-modal .row {
      margin-bottom: 2.1875rem; }
      @media screen and (min-width: 75em) {
        .reveal.create-custom-workout .row, .reveal.playlist-modal .row {
          margin-bottom: 4.375rem; } }
      .reveal.create-custom-workout .row:last-of-type, .reveal.playlist-modal .row:last-of-type {
        margin-bottom: 0; }
    .reveal.create-custom-workout .workout-content-modal, .reveal.playlist-modal .workout-content-modal {
      padding: 2.1875rem 0.625rem 1.25rem; }
      @media screen and (min-width: 64em) {
        .reveal.create-custom-workout .workout-content-modal, .reveal.playlist-modal .workout-content-modal {
          padding: 1.25rem 1.875rem; } }
      @media screen and (min-width: 75em) {
        .reveal.create-custom-workout .workout-content-modal, .reveal.playlist-modal .workout-content-modal {
          padding: 2.8125rem 3.125rem 2.1875rem; } }
    .reveal.create-custom-workout .playlist-content-modal, .reveal.playlist-modal .playlist-content-modal {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      height: 100%;
      padding: 2.1875rem 0.625rem; }
      @media screen and (min-width: 64em) {
        .reveal.create-custom-workout .playlist-content-modal, .reveal.playlist-modal .playlist-content-modal {
          padding: 1.25rem 1.875rem; } }
      @media screen and (min-width: 75em) {
        .reveal.create-custom-workout .playlist-content-modal, .reveal.playlist-modal .playlist-content-modal {
          padding: 2.8125rem 3.125rem; } }
    .reveal.create-custom-workout .attr-holder, .reveal.playlist-modal .attr-holder {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -webkit-box-align: end;
          -ms-flex-align: end;
              align-items: flex-end; }
      .reveal.create-custom-workout .attr-holder label, .reveal.playlist-modal .attr-holder label {
        padding: 0 0.625rem;
        position: relative;
        text-align: center;
        margin-bottom: 1.25rem;
        cursor: pointer; }
      .reveal.create-custom-workout .attr-holder img, .reveal.playlist-modal .attr-holder img {
        margin-bottom: 0.9375rem;
        max-width: 60px; }
        @media screen and (min-width: 48em) {
          .reveal.create-custom-workout .attr-holder img, .reveal.playlist-modal .attr-holder img {
            max-width: 90px; } }
      .reveal.create-custom-workout .attr-holder input[type=radio], .reveal.playlist-modal .attr-holder input[type=radio] {
        position: absolute;
        visibility: hidden; }
        .reveal.create-custom-workout .attr-holder input[type=radio]:checked + span, .reveal.playlist-modal .attr-holder input[type=radio]:checked + span {
          color: #000000; }
      .reveal.create-custom-workout .attr-holder span, .reveal.playlist-modal .attr-holder span {
        color: #a3a3a3;
        -webkit-transition: color .25s;
        transition: color .25s;
        font-size: 1.0625rem;
        letter-spacing: .5px; }
        @media screen and (min-width: 75em) {
          .reveal.create-custom-workout .attr-holder span, .reveal.playlist-modal .attr-holder span {
            font-size: 1.25rem; } }
    .reveal.create-custom-workout .create-workout, .reveal.playlist-modal .create-workout {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-bottom: 1.875rem; }
      @media screen and (min-width: 64em) {
        .reveal.create-custom-workout .create-workout, .reveal.playlist-modal .create-workout {
          margin-bottom: 0; } }
      .reveal.create-custom-workout .create-workout h3, .reveal.playlist-modal .create-workout h3 {
        text-transform: none;
        letter-spacing: .5px;
        margin-bottom: 0;
        text-align: left; }
      .reveal.create-custom-workout .create-workout p, .reveal.playlist-modal .create-workout p {
        font-size: 1.0625rem;
        letter-spacing: .5px;
        margin-bottom: 0;
        color: #a3a3a3; }
      .reveal.create-custom-workout .create-workout .count, .reveal.playlist-modal .create-workout .count {
        width: 2.5rem;
        height: 2.5rem;
        background-color: #f16567;
        border-radius: 50%;
        font-size: 1.5rem;
        text-align: center;
        color: #ffffff;
        line-height: 2.375rem;
        margin-right: 1.25rem;
        -ms-flex-negative: 0;
            flex-shrink: 0; }
        @media screen and (min-width: 48em) {
          .reveal.create-custom-workout .create-workout .count, .reveal.playlist-modal .create-workout .count {
            width: 3.5rem;
            height: 3.5rem;
            line-height: 3.375rem; } }
    .reveal.create-custom-workout .buttons-group, .reveal.playlist-modal .buttons-group {
      padding: 1.25rem 0.625rem;
      border-top: 1px solid #edeef1;
      text-align: center; }
      .reveal.create-custom-workout .buttons-group .button, .reveal.playlist-modal .buttons-group .button {
        margin: 0; }
      @media screen and (min-width: 64em) {
        .reveal.create-custom-workout .buttons-group, .reveal.playlist-modal .buttons-group {
          padding: 1.5625rem; } }
      @media screen and (min-width: 75em) {
        .reveal.create-custom-workout .buttons-group, .reveal.playlist-modal .buttons-group {
          padding: 2.5rem; } }
  @media screen and (min-width: 48em) {
    .reveal.playlist-modal .attr-holder img {
      max-width: 60px; } }
  .reveal.workout-video-gallery .buttons-group {
    display: none; }
  @media screen and (min-width: 64em) {
    .reveal.workout-video-gallery.gallery {
      padding-left: 3.125rem;
      padding-right: 3.125rem !important; } }
  .reveal.workout-video-gallery.gallery iframe {
    height: calc(100vh - 55px); }
    @media screen and (min-width: 64em) {
      .reveal.workout-video-gallery.gallery iframe {
        height: calc(100vh - 40px); } }
  @media screen and (min-width: 64em) {
    .reveal.workout-video-gallery.gallery .workout-prev-video {
      left: 15px; } }
  @media screen and (min-width: 64em) {
    .reveal.workout-video-gallery.gallery .workout-next-video {
      right: 15px; } }
  .reveal.workout-video-gallery.gallery .workout-prev-video,
  .reveal.workout-video-gallery.gallery .workout-next-video {
    position: static;
    display: inline-block;
    vertical-align: top;
    -webkit-transform: none;
            transform: none;
    top: auto; }
    @media screen and (min-width: 64em) {
      .reveal.workout-video-gallery.gallery .workout-prev-video,
      .reveal.workout-video-gallery.gallery .workout-next-video {
        top: 50%;
        -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
        position: absolute; } }
  .reveal.workout-video-gallery.gallery .buttons-group {
    padding-top: 5px;
    text-align: center;
    display: block; }
  .reveal.cancel-subscription p {
    font-size: 1.25rem;
    margin: 0 auto 1.5rem; }
    @media screen and (min-width: 75em) {
      .reveal.cancel-subscription p {
        font-size: 1.5rem; } }
  @media screen and (min-width: 75em) {
    .reveal.cancel-subscription .checkbox + label:before {
      top: 0.375rem; } }
  @media screen and (min-width: 75em) {
    .reveal.cancel-subscription .checkbox + label:after {
      top: 0.5rem; } }
  .reveal.cancel-subscription .btn-group {
    display: inline-block; }
    .reveal.cancel-subscription .btn-group a {
      margin: 0 8px 1rem; }
  .reveal.cancel-subscription .control {
    margin-bottom: 0; }
  .reveal.cancel-subscription .advaice-list {
    margin-bottom: 1.875rem; }
  @media screen and (min-width: 30em) {
    .reveal.cancel-subscription #advaice-container-cancel-subscription {
      margin-left: 0.9375rem; } }
  .reveal.cancel-subscription .form-list {
    list-style: none;
    text-align: left; }
    .reveal.cancel-subscription .form-list label {
      font-size: 1.0625rem; }
      @media screen and (min-width: 75em) {
        .reveal.cancel-subscription .form-list label {
          font-size: 1.25rem; } }
    .reveal.cancel-subscription .form-list li {
      padding: 0.625rem 0; }
      @media screen and (min-width: 30em) {
        .reveal.cancel-subscription .form-list li {
          padding: 0.9375rem;
          display: inline-block;
          width: 49%;
          vertical-align: top; } }
  .reveal.cancel-subscription textarea {
    height: 10rem;
    resize: vertical;
    margin-bottom: 1.5625rem; }
    @media screen and (min-width: 75em) {
      .reveal.cancel-subscription textarea {
        margin-bottom: 2.5rem; } }
  .reveal.cancel-subscription .input-box {
    margin: 0; }
  @media screen and (min-width: 90em) {
    .reveal.cancel-subscription h2 {
      font-size: 2.5rem; } }
  .reveal .close-button {
    position: absolute;
    cursor: pointer;
    height: 1.375rem;
    top: 0.4375rem;
    right: 0.3125rem; }
    @media screen and (min-width: 64em) {
      .reveal .close-button {
        right: -1.875rem;
        top: -0.25rem; }
        .reveal .close-button > span, .reveal .close-button span {
          background-color: #ffffff !important; } }
    .reveal .close-button > span {
      position: relative;
      width: 1.375rem;
      height: 1px;
      background-color: #000000;
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg);
      -webkit-transform-origin: center center;
              transform-origin: center center;
      display: block; }
      .reveal .close-button > span span {
        position: relative;
        width: 1.375rem;
        height: 1px;
        background-color: #000000;
        -webkit-transform: rotate(90deg);
                transform: rotate(90deg);
        -webkit-transform-origin: center center;
                transform-origin: center center;
        display: block; }
  .reveal .pad-info {
    margin: 0;
    padding: 25vh 0; }
  .reveal iframe {
    width: 100%;
    height: calc(100vh - 60px);
    margin: 0;
    vertical-align: top; }
    @media screen and (min-width: 64em) {
      .reveal iframe {
        height: calc(100vh - 40px); } }

.reveal-content {
  border: 1px solid rgba(0, 0, 0, 0.2);
  padding: 0.9375rem 0.625rem;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media screen and (min-width: 64em) {
    .reveal-content {
      padding: 3.4375rem 4.6875rem; }
      .reveal-content.middle {
        padding: 2.375rem 3.75rem; } }
  .reveal-content p {
    margin: 0;
    font-size: 1.125rem;
    color: #a3a3a3; }
    @media screen and (min-width: 64em) {
      .reveal-content p {
        font-size: 1.25rem; } }

@media screen and (min-width: 64em) {
  .reveal-overlay {
    padding: 0 2.1875rem; } }

.modal-popup {
  display: none;
  position: fixed !important;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 999 !important;
  background: rgba(0, 0, 0, 0.85); }
  .modal-popup._show {
    display: block; }
  .modal-popup .action-close {
    position: absolute;
    right: 20px;
    top: 20px;
    font-size: 0;
    line-height: 20px; }
    .modal-popup .action-close {
      display: inline-block;
      width: 10px;
      height: 10px; }
    .modal-popup .action-close:before, .modal-popup .action-close:after {
      content: '';
      display: block;
      width: 140%;
      height: 1px;
      background: #f16567;
      -webkit-transition: background 0.3s ease;
      transition: background 0.3s ease; }
    .modal-popup .action-close:before {
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg);
      -webkit-transform-origin: 0 0;
              transform-origin: 0 0;
      margin-top: -0.25px;
      margin-left: 0.5px; }
    .modal-popup .action-close:after {
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg);
      -webkit-transform-origin: 100% 0;
              transform-origin: 100% 0;
      margin-left: -41%;
      margin-top: -1px; }
    .modal-popup .action-close:hover {
      cursor: pointer; }
      .modal-popup .action-close:hover:before, .modal-popup .action-close:hover:after {
        background: #000000; }
    .modal-popup .action-close:before, .modal-popup .action-close:after {
      position: absolute;
      top: 0; }
    .modal-popup .action-close:before {
      top: -1px;
      margin-top: 0;
      margin-left: 0; }
  .modal-popup .modal-inner-wrap {
    background: #ffffff;
    padding: 25px 20px;
    -webkit-box-shadow: 0 4px 7px rgba(163, 163, 163, 0.5);
            box-shadow: 0 4px 7px rgba(163, 163, 163, 0.5);
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    overflow-y: auto; }
    @media screen and (min-width: 64em) {
      .modal-popup .modal-inner-wrap {
        padding: 20px 40px;
        width: 75%;
        max-width: 750px;
        height: auto;
        max-height: calc(100vh - 30px); } }
  .modal-popup.cancel-subscription {
    background: rgba(0, 0, 0, 0.85) !important; }
    @media screen and (min-width: 64em) {
      .modal-popup.cancel-subscription .modal-inner-wrap {
        max-width: 950px; } }
  .modal-popup .modal-content {
    margin-bottom: 15px; }

.cms-home .modal-popup {
  background: rgba(255, 255, 255, 0.55); }

.btn-arrow {
  height: 2.625rem;
  width: 4.125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #d2d3d3;
  cursor: pointer;
  -webkit-transition: border .3s ease;
  transition: border .3s ease; }
  @media screen and (min-width: 48em) {
    .btn-arrow {
      width: 7.125rem; } }
  .btn-arrow:hover {
    border: 1px solid #000000; }
  .btn-arrow span {
    width: 1.6875rem;
    height: 1px;
    background-color: #000000;
    position: relative;
    margin: auto; }
    @media screen and (min-width: 48em) {
      .btn-arrow span {
        width: 3.4375rem; } }
    .btn-arrow span:after {
      content: '\e803';
      font-family: 'fontello';
      position: absolute;
      right: -1px;
      top: -8px;
      font-size: 1.125rem; }
  .btn-arrow.on {
    background-position: center center;
    background-size: 1.875rem;
    background-repeat: no-repeat; }
    .btn-arrow.on span {
      display: none; }

.btn-custom {
  text-transform: uppercase;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.9);
  font-size: 0.75rem;
  letter-spacing: 2px;
  display: inline-block;
  vertical-align: top;
  position: relative;
  margin-bottom: 1rem;
  cursor: pointer; }
  .btn-custom.black {
    color: #000000; }
    .btn-custom.black:hover, .btn-custom.black:focus {
      color: #000000; }
    .btn-custom.black:before, .btn-custom.black:after, .btn-custom.black span:after {
      background-color: #000000; }
  @media screen and (min-width: 48em) {
    .btn-custom {
      font-size: 0.875rem; } }
  .no-touch .btn-custom.black {
    color: #000000; }
    .no-touch .btn-custom.black:hover, .no-touch .btn-custom.black:focus {
      color: #000000; }
  .no-touch .btn-custom:hover, .no-touch .btn-custom:focus {
    color: rgba(255, 255, 255, 0.9); }
    .no-touch .btn-custom:hover:before, .no-touch .btn-custom:hover:after, .no-touch .btn-custom:focus:before, .no-touch .btn-custom:focus:after {
      opacity: 1; }
    .no-touch .btn-custom:hover span:after, .no-touch .btn-custom:focus span:after {
      opacity: 0; }
  .btn-custom:before {
    left: 0; }
  .btn-custom:after {
    right: 0; }
  .btn-custom:before, .btn-custom:after {
    content: '';
    height: 4px;
    width: 4px;
    border-radius: 2px;
    background-color: rgba(255, 255, 255, 0.9);
    display: inline-block;
    vertical-align: middle;
    position: absolute;
    top: 50%;
    margin-top: -2px;
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease;
    opacity: 0; }
  .btn-custom span {
    padding: 1.0625rem 1.3125rem;
    display: block;
    position: relative; }
    .btn-custom span:after {
      content: '';
      height: 4px;
      width: 4px;
      border-radius: 2px;
      background-color: rgba(255, 255, 255, 0.9);
      position: absolute;
      left: 50%;
      margin-left: -2px;
      bottom: 0;
      -webkit-transition: opacity .3s ease;
      transition: opacity .3s ease; }

.read-more {
  color: #000000;
  font-size: 0.9375rem; }
  @media screen and (min-width: 64em) {
    .read-more {
      font-size: 1.0625rem; } }
  .read-more:before {
    content: '•';
    font-size: 1.1875rem;
    display: inline-block;
    vertical-align: baseline;
    margin-right: 0.625rem; }

.underline {
  position: relative; }
  .underline:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 100%;
    height: 1px;
    background-color: #a3a3a3;
    -webkit-transition: background-color .3s ease;
    transition: background-color .3s ease; }
  .underline:hover:after {
    background-color: #000000; }

* {
  outline: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

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

.websecurity-table {
  position: fixed;
  z-index: 100;
  left: 0;
  bottom: 0;
  margin-bottom: 0;
  min-width: unset;
  width: 14.25rem;
  border-collapse: unset; }
  .websecurity-table td:first-child {
    padding: 0.3125rem 1.25rem; }
    @media screen and (max-width: 47.9375em) {
      .websecurity-table td:first-child {
        padding: 0.3125rem 0.8125rem; } }
    @media screen and (max-width: 47.9375em) {
      .websecurity-table td:first-child img {
        max-width: 3.75rem; } }
    @media screen and (max-width: 74.9375em) {
      .websecurity-table td:first-child img {
        max-width: 6.25rem; } }
    @media screen and (max-width: 47.9375em) {
      .websecurity-table td:first-child a {
        font: bold 5px verdana, sans-serif !important;
        max-width: 100px; } }
    @media screen and (max-width: 74.9375em) {
      .websecurity-table td:first-child a {
        font: bold 8px verdana, sans-serif !important;
        max-width: 120px;
        display: inline-block;
        text-align: left !important;
        margin-top: 0.1875rem !important; } }

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

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

html, body {
  padding: 0;
  margin: 0; }

body {
  font-weight: 400;
  padding: 0 0.625rem;
  min-width: 20rem;
  -webkit-font-smoothing: inherit; }
  @media screen and (min-width: 75em) {
    body {
      padding: 0 0.9375rem; } }
  body.cms-no-route {
    padding: 0; }

h1, .h1 {
  margin-top: 0;
  font-size: 30px; }
  @media screen and (min-width: 48em) {
    h1, .h1 {
      font-size: 45px; } }
  @media screen and (min-width: 90em) {
    h1, .h1 {
      font-size: 70px; } }

.col2-right-layout {
  max-width: 100rem;
  margin: 0 auto; }

.page-wrap, .wrapper {
  position: relative;
  overflow-x: hidden; }

body:not(.cms-home) .main-container {
  -webkit-transition: padding 0.3s ease;
  transition: padding 0.3s ease;
  padding-top: 6.5rem;
  position: relative;
  z-index: 4; }
  @media screen and (min-width: 40em) {
    body:not(.cms-home) .main-container {
      padding-top: 6.75rem; } }
  @media screen and (min-width: 48em) {
    body:not(.cms-home) .main-container {
      padding-top: 9.4375rem; } }
  @media screen and (min-width: 64em) {
    body:not(.cms-home) .main-container {
      padding-top: 11.125rem; } }
  @media screen and (min-width: 75em) {
    body:not(.cms-home) .main-container {
      padding-top: 9.9375rem; } }

ul {
  margin: 0;
  padding: 0; }

.note-msg {
  font-size: 1.125rem;
  padding: 0 0.625rem;
  text-align: center; }
  @media screen and (min-width: 75em) {
    .note-msg {
      padding: 0 0.9375rem; } }
  @media screen and (min-width: 90em) {
    .note-msg {
      font-size: 1.25rem; } }

.page-title {
  text-align: center;
  margin-bottom: 2.1875rem; }
  @media screen and (min-width: 75em) {
    .page-title {
      margin-bottom: 4.375rem; } }
  @media screen and (min-width: 90em) {
    .page-title {
      margin-bottom: 5.625rem; } }
  @media screen and (min-width: 90em) {
    .page-title.page-title-middle {
      margin-bottom: 4.375rem; } }
  .page-title h1, .page-title .h1 {
    line-height: 1.3;
    margin: 0; }
  .page-title span {
    font-size: 0.875rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2px; }

.custom-list {
  font-size: 0.9375rem;
  list-style: none;
  margin: 0 0 1rem; }
  .custom-list li:before {
    content: '•';
    font-size: 1.1875rem;
    display: inline-block;
    vertical-align: baseline;
    margin-right: 0.625rem; }
  @media screen and (min-width: 64em) {
    .custom-list {
      font-size: 1.0625rem; } }

.paypal-express-review-custom .legend {
  margin-bottom: 1.25rem; }

.paypal-express-review-custom .box-title, .paypal-express-review-custom .box-content {
  margin-bottom: 1.25rem; }

a {
  -webkit-transition: color .25s;
  transition: color .25s; }

address {
  font-style: normal; }

textarea {
  resize: none !important; }

input[type=text]::-ms-clear {
  display: none !important; }

input::-webkit-contacts-auto-fill-button {
  visibility: hidden;
  display: none !important;
  pointer-events: none;
  position: absolute;
  right: 0; }

input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px white inset !important;
          box-shadow: 0 0 0 1000px white inset !important; }

input, select {
  margin-bottom: 0.1875rem; }

.required > .label, ._required > .label {
  display: inline-block; }
  .required > .label:after, ._required > .label:after {
    content: '*';
    margin-left: 5px; }

.input-box {
  margin-bottom: 0.9375rem; }
  @media screen and (min-width: 75em) {
    .input-box {
      margin-bottom: 1.875rem; } }

.validation-advice {
  text-align: left;
  color: #f16567; }

blockquote {
  border: none;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  margin-bottom: 1.25rem;
  font-family: 'miller', sans-serif;
  font-size: 1.125rem; }
  @media screen and (min-width: 75em) {
    blockquote {
      font-size: 1.375rem; } }

small {
  font-size: 0.9375rem; }
  @media screen and (min-width: 64em) {
    small {
      font-size: 1.0625rem; } }

.large-padding {
  padding: 2.1875rem 0 1.875rem; }
  @media screen and (min-width: 75em) {
    .large-padding {
      padding: 4.375rem 0 3.75rem; } }
  @media screen and (min-width: 90em) {
    .large-padding {
      padding: 6.25rem 0 5.3125rem; } }

.middle-padding {
  padding: 1.25rem 0 1.875rem; }
  @media screen and (min-width: 75em) {
    .middle-padding {
      padding: 2.5rem 0 3.75rem; } }
  @media screen and (min-width: 90em) {
    .middle-padding {
      padding: 3.125rem 0 5.3125rem; } }

.large-margin {
  margin-bottom: 2.1875rem; }
  @media screen and (min-width: 75em) {
    .large-margin {
      margin-bottom: 4.375rem; } }
  @media screen and (min-width: 90em) {
    .large-margin {
      margin-bottom: 6.25rem; } }

.middle-margin {
  margin-bottom: 1.5625rem; }
  @media screen and (min-width: 75em) {
    .middle-margin {
      margin-bottom: 3.125rem; } }
  @media screen and (min-width: 90em) {
    .middle-margin {
      margin-bottom: 4.6875rem; } }

.small-mb {
  margin-bottom: 1rem; }

.middle-mb {
  margin-bottom: 2.5rem; }

.no-display {
  display: none !important; }

.no-visible {
  position: absolute;
  height: 0;
  width: 0;
  visibility: hidden; }

.email-hint {
  font-size: 0.9375rem;
  color: rgba(2, 2, 2, 0.5);
  margin-top: -1rem; }
  @media screen and (min-width: 75em) {
    .email-hint {
      margin-top: -1.5rem;
      font-size: 1.0625rem; } }

.with-padding {
  padding: 0 0.9375rem;
  max-width: 18.125rem; }
  @media screen and (min-width: 48em) {
    .with-padding {
      max-width: 100%; } }

[type='checkbox'] + label,
[type='radio'] + label {
  margin-left: 0; }

.message {
  display: inline-block;
  padding: 0.625rem;
  margin-bottom: 0.3125rem; }
  .message.success {
    border: 1px solid #3adb76; }
  .message.error {
    border: 1px solid #cc4b37; }
  .message.notice {
    border: 1px solid #e26703; }

.messages-wrapper, .checkout-cart-index .page.messages {
  padding: 1rem 10px;
  text-align: center; }

.white-loader {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 3rem;
  z-index: 200;
  padding: 3.125rem 1.25rem;
  display: block; }

.loading {
  padding: 3.125rem 0; }

@media screen and (min-width: 48em) {
  .full-width .input-text {
    max-width: 100% !important; } }

.overflow {
  overflow: hidden; }

.limiter {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-bottom: 1.25rem; }
  @media screen and (min-width: 48em) {
    .limiter {
      margin-bottom: 0; }
      .limiter select {
        width: 18.125rem; } }
  .limiter label {
    font-weight: 500;
    margin-right: 1.25rem; }
  .limiter select {
    max-width: 18.125rem; }

.print-wrapper {
  font-size: 0.9375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0.625rem; }
  @media screen and (min-width: 64em) {
    .print-wrapper {
      font-size: 1.0625rem; } }
  .print-wrapper:last-of-type {
    margin-bottom: 1.5625rem; }
    @media screen and (min-width: 75em) {
      .print-wrapper:last-of-type {
        margin-bottom: 2.8125rem; } }
  .print-wrapper img {
    width: 1.0625rem;
    margin-right: 0.9375rem; }
  .print-wrapper .print {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }

.sub-title.underlined {
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
  @media screen and (min-width: 75em) {
    .sub-title.underlined {
      padding-bottom: 1.875rem;
      margin-bottom: 1.875rem; } }

input[type=file] {
  position: absolute;
  height: 0;
  width: 0;
  visibility: hidden; }

.custom-overlay, .please-wait {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ffffff;
  opacity: .5;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 3rem;
  z-index: 200; }

#review-please-wait {
  font-size: 0; }
  #review-please-wait img {
    display: none; }

#details-reload {
  overflow: auto; }

.custom-overlay {
  display: none; }
  .custom-overlay.visible {
    display: block; }

.white-bg {
  height: 0.625rem;
  background-color: #ffffff;
  position: relative;
  z-index: 1; }
  @media screen and (min-width: 75em) {
    .white-bg {
      height: 0.9375rem; } }

.slick-slider {
  margin: 0; }

.slick-slide {
  -webkit-transition: opacity .15s;
  transition: opacity .15s;
  outline: none; }
  .slick-slide a {
    position: relative;
    top: auto;
    left: auto;
    -webkit-animation: none;
            animation: none;
    background: transparent;
    border-radius: 0; }

.slick-slider-nav {
  margin-top: 15px; }
  @media screen and (min-width: 48em) {
    .slick-slider-nav {
      margin-top: 40px; } }
  .slick-slider-nav .slick-slide {
    opacity: .5;
    cursor: pointer; }
    .slick-slider-nav .slick-slide.is-active {
      opacity: 1; }
    .slick-slider-nav .slick-slide img {
      width: auto;
      height: auto;
      max-width: 100%;
      max-height: 100%; }
  .slick-slider-nav .image-holder {
    margin: 0 auto;
    height: 60px;
    padding: 0 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media screen and (min-width: 30em) {
      .slick-slider-nav .image-holder {
        height: 80px; } }
    @media screen and (min-width: 48em) {
      .slick-slider-nav .image-holder {
        height: 125px;
        padding: 0 25px; } }

@media print {
  img, .description {
    display: inline-block !important;
    vertical-align: top !important; } }

table {
  width: 100%;
  border-collapse: collapse;
  min-width: 43.75rem;
  margin-bottom: 0.625rem; }
  table h4 {
    font-family: 'BrandonGrotesque', sans-serif;
    font-weight: 400;
    letter-spacing: 1px; }
  table thead {
    background-color: #000000; }
  table tbody tr {
    border-bottom: 1px solid #edeef1; }
  table tfoot strong {
    font-weight: 500; }
  table tfoot tr td {
    padding: 0.625rem 1.125rem 0; }
    table tfoot tr td:first-child {
      display: block;
      -webkit-column-span: 1;
         -moz-column-span: 1;
              column-span: 1; }
      @media screen and (min-width: 64em) {
        table tfoot tr td:first-child {
          font-size: 1.0625rem; } }
    @media screen and (min-width: 64em) {
      table tfoot tr td {
        padding: 0.625rem 1.75rem 0; } }
  table th {
    padding: 0.625rem 1.25rem;
    text-align: center;
    color: #ffffff;
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: 3px;
    font-weight: 500; }
    @media screen and (min-width: 64em) {
      table th {
        padding: 0.9375rem 2.3125rem; } }
    table th:first-child {
      text-align: left; }
  table td {
    padding: 1.5625rem 1.125rem;
    text-align: center;
    font-size: 0.9375rem;
    font-weight: 400;
    overflow: hidden; }
    @media screen and (min-width: 64em) {
      table td {
        font-size: 1.0625rem;
        padding: 2.375rem 1.75rem; }
        table td:first-child {
          font-size: 1.25rem; } }
    table td:first-child {
      text-align: left;
      font-size: 1.0625rem; }
      table td:first-child img {
        margin-right: 0.6875rem; }
        @media screen and (min-width: 75em) {
          table td:first-child img {
            margin-right: 1.5625rem; } }
      table td:first-child .description {
        overflow: hidden;
        vertical-align: middle;
        display: inline-block;
        margin-top: 15px; }
        @media screen and (min-width: 64em) {
          table td:first-child .description {
            margin-top: 0;
            max-width: calc(100% - 185px); } }
        table td:first-child .description span, table td:first-child .description p {
          font-size: 0.9375rem;
          color: #a3a3a3; }
          @media screen and (min-width: 75em) {
            table td:first-child .description span, table td:first-child .description p {
              font-size: 1.0625rem; } }
  table#my-orders-table .number {
    white-space: nowrap; }
  @media screen and (min-width: 75em) {
    table#my-orders-table tbody td:first-child, table.my-table tbody td:first-child {
      width: 40%; } }
  @media screen and (min-width: 75em) {
    table#my-shipment-table-1 tbody td:first-child {
      width: 70%; } }

.for-tfoot {
  min-width: 1px; }
  .for-tfoot tr {
    border: none; }
  .for-tfoot th {
    color: #000000; }
  .for-tfoot td {
    padding: 0.625rem 0;
    text-align: right;
    font-weight: 500; }
    .for-tfoot td:last-child {
      font-size: 1.0625rem; }
    .for-tfoot td:first-child {
      text-align: right;
      padding-right: 3.125rem;
      font-size: 1.0625rem; }
      @media screen and (min-width: 75em) {
        .for-tfoot td:first-child {
          font-size: 1.25rem; } }
  .for-tfoot tfoot {
    background: #ffffff;
    border: 0; }

.scrollable {
  overflow-x: auto; }
  .scrollable.with-pd {
    padding: 0 0 0.9375rem; }
    @media screen and (min-width: 64em) {
      .scrollable.with-pd {
        padding: 0 0 0.9375rem; } }

.col2-right-layout .main {
  overflow: hidden;
  margin-bottom: 2.1875rem; }
  @media screen and (min-width: 75em) {
    .col2-right-layout .main {
      margin-bottom: 4.375rem; } }
  @media screen and (min-width: 90em) {
    .col2-right-layout .main {
      margin-bottom: 5.625rem; } }

.col2-right-layout .col-main, .col2-right-layout .col-right {
  padding: 0 0.625rem; }
  @media screen and (min-width: 64em) {
    .col2-right-layout .col-main, .col2-right-layout .col-right {
      padding: 0 0.9375rem; } }

@media screen and (min-width: 64em) {
  .col2-right-layout .col-main {
    float: left;
    max-width: 66.66667%;
    width: 100%; } }

@media screen and (min-width: 64em) {
  .col2-right-layout .col-right {
    float: right;
    max-width: 33.33333%;
    width: 100%; } }

#aw-ln-filters-container dd ol.custom-filtered-list li,
#aw-ln-filters-container dd ol.filter-type li {
  display: block !important;
  padding: 0 !important;
  line-height: 1 !important; }

div.mage-error, .field-error {
  color: red;
  text-align: left;
  font-size: 12px;
  font-weight: 400; }

.no-bullets {
  list-style-type: none; }

.custom-table thead, .custom-table tbody, .custom-table tfoot {
  border-left: 0;
  border-right: 0; }

.custom-table .items-qty .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

[v-cloak] {
  display: none; }

.vue-modal {
  /*
   * The following styles are auto-applied to elements with
   * transition="modal" when their visibility is toggled
   * by Vue.js.
   *
   * You can easily play with the modal transition by editing
   * these styles.
   */ }
  .vue-modal .modal-mask {
    position: fixed;
    z-index: 9998;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    display: table;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease; }
  .vue-modal .modal-wrapper {
    display: table-cell;
    vertical-align: middle; }
  .vue-modal .modal-container {
    width: 300px;
    margin: 0px auto;
    padding: 20px 30px;
    background-color: #fff;
    border-radius: 2px;
    -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.33);
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.33);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    font-family: Helvetica, Arial, sans-serif; }
  .vue-modal .modal-header h3 {
    margin-top: 0;
    color: #42b983; }
  .vue-modal .modal-body {
    margin: 20px 0; }
  .vue-modal .modal-default-button {
    float: right; }
  .vue-modal .modal-enter {
    opacity: 0; }
  .vue-modal .modal-leave-active {
    opacity: 0; }
  .vue-modal .modal-enter .modal-container,
  .vue-modal .modal-leave-active .modal-container {
    -webkit-transform: scale(1.1);
    transform: scale(1.1); }

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

.link-print {
  font-size: 0.9375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1.5625rem; }
  @media screen and (min-width: 75em) {
    .link-print {
      margin-bottom: 2.8125rem; } }
  @media screen and (min-width: 64em) {
    .link-print {
      font-size: 1.0625rem; } }
  .link-print img {
    width: 1.0625rem;
    margin-right: 0.9375rem; }

/**
 * 3D Secure Container
 */
#braintree-three-d-modal {
  position: fixed;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100vh;
  width: 100vw;
  z-index: 100000;
  visibility: visible; }

#braintree-three-d-modal .bt-modal-frame {
  height: 420px;
  width: 440px;
  margin: auto;
  background-color: #ffffff;
  z-index: 2;
  border-radius: 6px; }

#braintree-three-d-modal .bt-modal-body {
  height: 380px;
  margin: 20px;
  background-color: white;
  border: 1px solid lightgray; }

#braintree-three-d-modal .bt-mask {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: black;
  opacity: 0.75; }

@media (max-width: 650px) {
  #braintree-three-d-modal .bt-modal-frame {
    width: 100%; } }

/**
 * Apple Pay button
 */
.braintree-applepay-container-product {
  display: inline-block; }
  .braintree-applepay-container-product .braintree-apple-pay-button {
    padding: 10px 0px;
    margin: 0;
    margin-bottom: 15px; }

@media (max-width: 768px) {
  .braintree-applepay-container-product {
    display: block; }
    .braintree-applepay-container-product .braintree-apple-pay-button {
      width: 100%; } }

.braintree-apple-pay-button {
  display: block;
  width: 200px;
  min-height: 40px;
  border: 1px solid black;
  background-color: black;
  border-radius: 5px;
  padding: 2px;
  margin: 20px auto;
  -webkit-transition: background-color .15s;
  transition: background-color .15s;
  cursor: pointer;
  background-image: url("../images/apple-pay.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center; }

/**
 * PP Credit Calculator
 */
.ppcredit-summary {
  background: -webkit-gradient(linear, left top, right top, from(#009CDE), to(#003087));
  background: linear-gradient(to right, #009CDE, #003087);
  color: #fff;
  padding: 15px;
  text-align: center;
  margin: 10px 0px; }

.ppcreditcalc-container {
  border: 1px solid #dedede;
  background: #FFF; }

.ppcreditcalc-header {
  background: #FFF;
  padding: 15px; }

.ppcreditcalc-legal {
  background-color: #eee;
  border-top: 1px solid #dedede;
  padding: 15px;
  font-size: 1.2rem;
  line-height: 2rem; }

.ppcreditcalc-instalments {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid #DEDEDE;
  border-bottom: 1px solid #DEDEDE;
  background-color: #eeeeee; }

.ppcreditcalc-instalments li {
  display: inline-block;
  margin: 0;
  padding: 0; }

.ppcreditcalc-instalments-term {
  display: block;
  padding: 10px 15px;
  color: #000; }

.ppcreditcalc-instalments-term:hover {
  background: #009CDE;
  color: #FFF;
  text-decoration: none; }

.ppcreditcalc-instalments-term.active {
  background: #003087;
  color: #FFF; }

.ppcreditcalc-instalment-summary {
  padding: 15px; }

.ppcreditcalc-instalment-summary dl {
  margin: 0; }

.ppcreditcalc-instalment-summary dt {
  display: inline-block;
  width: 50%; }

.ppcreditcalc-instalment-summary dd {
  display: inline-block; }

/**
 * CC FORM
 */
#braintree_expirationDate {
  width: 90px; }

/**
 * Google Pay
 */
button.braintree-googlepay-button {
  background-origin: content-box;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  border: 0px;
  border-radius: 4px;
  -webkit-box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 1px 0px, rgba(60, 64, 67, 0.15) 0px 1px 3px 1px;
          box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 1px 0px, rgba(60, 64, 67, 0.15) 0px 1px 3px 1px;
  cursor: pointer;
  height: 40px;
  min-height: 40px;
  padding: 11px 24px; }

button.braintree-googlepay-button.black {
  background-color: #000;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 12px 24px 10px; }

button.braintree-googlepay-button.white {
  background-color: #fff; }

button.braintree-googlepay-button.short {
  min-width: 90px;
  width: 160px; }

button.braintree-googlepay-button.black.short {
  background-image: url(https://www.gstatic.com/instantbuy/svg/dark_gpay.svg); }

button.braintree-googlepay-button.white.short {
  background-image: url(https://www.gstatic.com/instantbuy/svg/light_gpay.svg); }

button.braintree-googlepay-button.black:active {
  background-color: #5f6368; }

button.braintree-googlepay-button.black:hover {
  background-color: #3c4043; }

button.braintree-googlepay-button.white:active {
  background-color: #fff; }

button.braintree-googlepay-button.white:focus {
  -webkit-box-shadow: #e8e8e8 0 1px 1px 0, #e8e8e8 0 1px 3px;
          box-shadow: #e8e8e8 0 1px 1px 0, #e8e8e8 0 1px 3px; }

button.braintree-googlepay-button.white:hover {
  background-color: #f8f8f8; }

button.braintree-googlepay-button.long {
  min-width: 152px;
  width: 240px; }

button.braintree-googlepay-button.white.long {
  background-image: url(https://www.gstatic.com/instantbuy/svg/light/en.svg); }

button.braintree-googlepay-button.black.long {
  background-image: url(https://www.gstatic.com/instantbuy/svg/dark/en.svg); }

.googlepay-minicart-logo {
  margin-top: 15px;
  text-align: center; }

.payment-method-braintree .hosted-control {
  padding: 8px 15px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box; }

#braintree_cc_number {
  padding-left: 68px; }

.payment-method-braintree .cvv .field-tooltip {
  left: 10rem;
  top: 10px; }

.checkout-payment-method .credit-card-types.braintree-credit-card-types img {
  width: 30px;
  -webkit-filter: none;
  -webkit-transition: none; }

.braintree-card-control {
  position: relative; }

.braintree-credit-card-selected {
  position: absolute;
  z-index: 10;
  left: 10px; }

.braintree-paypal-logo.oneclick-container {
  width: 100%; }

#payment_form_braintree_ach_direct_debit .field > .fields .field .label {
  font-weight: 400; }

#payment_form_braintree_ach_direct_debit .field > .fields .field.required > .label:after {
  content: '*';
  color: #e02b27;
  font-size: 18px;
  margin: 0 0 0 5px; }

#payment_form_braintree_ach_direct_debit .field > .fields .field .control {
  margin: 10px 10px 0 0; }
  #payment_form_braintree_ach_direct_debit .field > .fields .field .control input[type="text"]::-webkit-input-placeholder, #payment_form_braintree_ach_direct_debit .field > .fields .field .control input[type="number"]::-webkit-input-placeholder {
    color: lightgrey; }
  #payment_form_braintree_ach_direct_debit .field > .fields .field .control input[type="text"]::-moz-placeholder, #payment_form_braintree_ach_direct_debit .field > .fields .field .control input[type="number"]::-moz-placeholder {
    color: lightgrey; }
  #payment_form_braintree_ach_direct_debit .field > .fields .field .control input[type="text"]::-ms-input-placeholder, #payment_form_braintree_ach_direct_debit .field > .fields .field .control input[type="number"]::-ms-input-placeholder {
    color: lightgrey; }
  #payment_form_braintree_ach_direct_debit .field > .fields .field .control input[type="text"]::placeholder, #payment_form_braintree_ach_direct_debit .field > .fields .field .control input[type="number"]::placeholder {
    color: lightgrey; }

#payment-method-braintree-cc-vault .field.required .label {
  font-weight: 400; }
  #payment-method-braintree-cc-vault .field.required .label:after {
    content: '*';
    color: #e02b27;
    font-size: 18px;
    margin: 0 0 0 5px; }

#payment-method-braintree-cc-vault .field .hosted-control {
  background: #ffffff;
  background-clip: padding-box;
  border: 1px solid #c2c2c2;
  border-radius: 1px;
  font-size: 14px;
  height: 32px;
  padding: 0 9px;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  width: 5rem; }
  #payment-method-braintree-cc-vault .field .hosted-control.braintree-hosted-fields-invalid:not(.braintree-hosted-fields-focused) ~ .hosted-error {
    height: auto;
    opacity: 1; }

#payment-method-braintree-cc-vault .field .hosted-error {
  clear: both;
  color: #e02b27;
  font-size: 12px;
  height: 0;
  margin-top: 7px;
  opacity: 0; }

.live_stream-index-index .page-title-wrapper h1, .live_stream-index-index .page-title-wrapper .h1 {
  text-align: center; }

.accordion {
  margin-left: 0;
  margin-bottom: 2.1875rem;
  list-style: none; }
  @media screen and (min-width: 75em) {
    .accordion {
      margin-bottom: 4.375rem; } }
  @media screen and (min-width: 90em) {
    .accordion {
      margin-bottom: 6.25rem; } }
  .accordion > li {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
    .accordion > li .accordion-title {
      position: relative;
      padding: 0.9375rem 1.25rem 0.9375rem 0;
      margin: 0;
      color: #000000;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .accordion > li .accordion-title.is-active:after {
        -webkit-transform: rotate(-180deg);
                transform: rotate(-180deg); }
      @media screen and (min-width: 75em) {
        .accordion > li .accordion-title {
          padding: 1.875rem 1.25rem 1.875rem 0; } }
      .accordion > li .accordion-title:after {
        content: '\e805';
        font-family: 'fontello';
        font-size: 1rem;
        position: absolute;
        right: 0;
        color: #000000;
        -webkit-transform-origin: center center;
                transform-origin: center center;
        -webkit-transition: -webkit-transform .3s ease;
        transition: -webkit-transform .3s ease;
        transition: transform .3s ease;
        transition: transform .3s ease, -webkit-transform .3s ease; }
      .accordion > li .accordion-title h2 {
        margin: 0;
        overflow: hidden;
        text-overflow: ellipsis; }
    .accordion > li .accordion-content {
      display: none;
      padding-right: 0.3125rem; }
      @media screen and (min-width: 75em) {
        .accordion > li .accordion-content {
          padding-right: 0.9375rem; } }
      .accordion > li .accordion-content ul, .accordion > li .accordion-content > a {
        margin-bottom: 1.5rem; }
      .accordion > li .accordion-content * {
        color: #a3a3a3; }

.descr-holder {
  margin-bottom: 2.1875rem; }
  @media screen and (min-width: 75em) {
    .descr-holder {
      margin-bottom: 3.75rem; } }
  @media screen and (min-width: 90em) {
    .descr-holder {
      margin-bottom: 5rem; } }
  .descr-holder h1, .descr-holder .h1, .descr-holder p {
    margin-bottom: 1.5rem; }
  .descr-holder address {
    margin-bottom: 1.5rem; }

.training-block {
  background-color: #f2f3f6;
  padding: 1.5625rem 0.9375rem;
  margin: 1.875rem auto 0; }
  @media screen and (min-width: 64em) {
    .training-block {
      margin: 3.75rem auto 1.25rem;
      padding: 3.125rem; } }
  .training-block .holder {
    max-width: 31.25rem;
    margin: 0 auto; }
  .training-block h3 {
    margin-bottom: 1.5rem;
    position: relative; }
    .training-block h3:after {
      content: '•';
      font-size: 1.125rem;
      position: absolute;
      left: 50%;
      bottom: -1.35rem;
      margin-left: -2px;
      color: #000000; }
  .training-block .button {
    margin: 0; }
  .training-block p a {
    color: #000000;
    text-decoration: underline; }
  .training-block p:last-child {
    margin-bottom: 0; }

.terms-conditions h1, .terms-conditions .h1 {
  text-align: center;
  margin-bottom: 1.5rem; }

.terms-conditions p {
  margin-bottom: 1.5rem;
  color: #a3a3a3; }

.training-descr p {
  max-width: 32.5rem;
  margin: 0 auto 1.5rem; }
  .training-descr p a {
    color: #000000;
    text-decoration: underline; }

.training-picture {
  margin: 1.875rem auto 0; }
  @media screen and (min-width: 64em) {
    .training-picture {
      margin: 3.75rem auto 1.25rem; } }

.page-error-holder {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 75% center;
  height: 100vh;
  min-height: 35.5rem;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.9375rem; }
  .page-error-holder:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(216, 222, 238, 0.6); }
  .page-error-holder .error-wrap {
    position: relative;
    z-index: 1;
    max-width: 17.5rem;
    text-align: center; }
    .page-error-holder .error-wrap > div {
      font-size: 3.75rem;
      font-weight: 100;
      line-height: 1.1; }
      @media screen and (min-width: 48em) {
        .page-error-holder .error-wrap > div {
          font-size: 5rem; } }
      @media screen and (min-width: 64em) {
        .page-error-holder .error-wrap > div {
          font-size: 6.875rem; } }
      @media screen and (min-width: 90em) {
        .page-error-holder .error-wrap > div {
          font-size: 8.75rem; } }
    .page-error-holder .error-wrap p {
      font-size: 0.875rem;
      text-transform: uppercase;
      letter-spacing: 2.3px; }
      @media screen and (min-width: 48em) {
        .page-error-holder .error-wrap p {
          letter-spacing: 3.3px;
          margin-bottom: 2rem; } }
  @media screen and (min-width: 64em) {
    .page-error-holder {
      background-position: center center; } }

.schedule-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 30px 0; }
  @media screen and (min-width: 48em) {
    .schedule-block {
      margin: 50px 0 0; } }
  .schedule-block .text-holder {
    position: relative;
    width: 100%;
    max-width: 350px;
    padding-bottom: 30px; }
    @media screen and (min-width: 75em) {
      .schedule-block .text-holder {
        margin-bottom: 30px;
        margin-right: 129px; } }
    .schedule-block .text-holder .bg-holder {
      display: none;
      position: absolute;
      z-index: -1;
      top: -5px;
      right: -35%;
      height: 100%; }
      @media screen and (min-width: 48em) {
        .schedule-block .text-holder .bg-holder {
          display: block; } }
      @media screen and (min-width: 75em) {
        .schedule-block .text-holder .bg-holder {
          top: -10px;
          right: -60%;
          height: 110%; } }
      .schedule-block .text-holder .bg-holder img {
        height: 100%;
        width: auto; }
  .schedule-block .title {
    text-transform: uppercase;
    font-size: 32px;
    color: #808185;
    letter-spacing: 2px; }
    @media screen and (min-width: 75em) {
      .schedule-block .title {
        font-size: 42px;
        letter-spacing: 4px; } }
  .schedule-block .year {
    color: #e91e25;
    letter-spacing: 15px;
    font-weight: bold;
    font-size: 22px; }
    @media screen and (min-width: 75em) {
      .schedule-block .year {
        font-size: 26px;
        letter-spacing: 20px; } }
  .schedule-block .link-holder {
    font-size: 16px;
    letter-spacing: 2px;
    text-transform: uppercase; }
    .schedule-block .link-holder a {
      color: #494949; }
  .schedule-block .schedule-holder {
    width: 100%;
    margin-bottom: 30px; }
    @media screen and (min-width: 48em) {
      .schedule-block .schedule-holder {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row; } }
    @media screen and (min-width: 75em) {
      .schedule-block .schedule-holder {
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center; } }
  .schedule-block .schedule {
    border: 1px solid #9b9b9c;
    border-top: 0;
    padding: 10px; }
    @media screen and (min-width: 48em) {
      .schedule-block .schedule {
        border: 0; } }
    .schedule-block .schedule > * {
      padding: 5px 0; }
      @media screen and (min-width: 48em) {
        .schedule-block .schedule > * {
          height: 55px;
          padding: 0; } }
      @media screen and (min-width: 75em) {
        .schedule-block .schedule > * {
          height: 80px; } }
  .schedule-block .day {
    margin-bottom: 20px;
    letter-spacing: 2px; }
    @media screen and (min-width: 48em) {
      .schedule-block .day {
        width: calc(33.3% - 20px);
        border: 1px solid #9b9b9c;
        margin: 0 10px 20px; } }
    @media screen and (min-width: 75em) {
      .schedule-block .day {
        width: auto;
        border: 1px solid #9b9b9c;
        margin: 0; } }
    @media screen and (min-width: 75em) {
      .schedule-block .day + .day {
        border-left: 0; } }
    .schedule-block .day:last-of-type {
      margin-bottom: 0; }
  .schedule-block .week-day {
    text-transform: uppercase;
    border: 1px solid #9b9b9c;
    padding: 10px;
    color: #848387;
    font-weight: bold; }
    @media screen and (min-width: 48em) {
      .schedule-block .week-day {
        border: 0;
        border-bottom: 1px solid #9b9b9c; } }
  .schedule-block .course-name {
    text-transform: uppercase;
    font-weight: bold;
    max-width: 200px;
    margin: 0 auto; }
    @media screen and (min-width: 75em) {
      .schedule-block .course-name {
        letter-spacing: 2px;
        max-width: 156px; } }

.about_slider .slick-dots {
  display: none !important; }

.about_slider .slick-arrow {
  top: auto;
  bottom: -2.1875rem;
  -webkit-transform: none;
          transform: none; }
  @media screen and (min-width: 75em) {
    .about_slider .slick-arrow {
      bottom: -2.8125rem; } }
  @media screen and (min-width: 90em) {
    .about_slider .slick-arrow {
      bottom: -3.75rem; } }

.about_slider .slick-prev {
  left: calc(50% - 40px); }

.about_slider .slick-next {
  right: calc(50% - 40px); }

@media screen and (min-width: 48em) {
  .about_slider .slick-slide > div, .about_slider .slick-slide > a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; } }

@media screen and (min-width: 48em) {
  .about_slider .slick-slide > div .inner, .about_slider .slick-slide > a .inner {
    max-width: 28.4375rem;
    margin-left: 0.9375rem; } }

@media screen and (min-width: 64em) {
  .about_slider .slick-slide > div .inner, .about_slider .slick-slide > a .inner {
    margin-left: 1.875rem; } }

@media screen and (min-width: 75em) {
  .about_slider .slick-slide > div .inner, .about_slider .slick-slide > a .inner {
    margin-left: 5rem; } }

@media screen and (min-width: 90em) {
  .about_slider .slick-slide > div .inner, .about_slider .slick-slide > a .inner {
    margin-left: 7.5rem; } }

.about_slider .slick-slide.reverse > div, .about_slider .slick-slide.reverse > a {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row; }
  @media screen and (min-width: 48em) {
    .about_slider .slick-slide.reverse > div > div, .about_slider .slick-slide.reverse > a > div {
      margin: 0 0.9375rem 0 0; } }
  @media screen and (min-width: 64em) {
    .about_slider .slick-slide.reverse > div > div, .about_slider .slick-slide.reverse > a > div {
      margin: 0 1.875rem 0 0; } }
  @media screen and (min-width: 75em) {
    .about_slider .slick-slide.reverse > div > div, .about_slider .slick-slide.reverse > a > div {
      margin: 0 1.875rem 0 0; } }

.about_slider .slick-slide img {
  margin-bottom: 0.9375rem; }
  @media screen and (min-width: 48em) {
    .about_slider .slick-slide img {
      margin-bottom: 0; } }

.about_slider .slick-slide > div, .about_slider .slick-slide > a {
  color: #000000;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }
  @media screen and (min-width: 48em) {
    .about_slider .slick-slide > div > div, .about_slider .slick-slide > a > div {
      max-width: 50%;
      margin: 0 0 0 0.9375rem; } }
  @media screen and (min-width: 64em) {
    .about_slider .slick-slide > div > div, .about_slider .slick-slide > a > div {
      margin: 0 0 0 1.875rem; } }
  @media screen and (min-width: 75em) {
    .about_slider .slick-slide > div > div, .about_slider .slick-slide > a > div {
      margin: 0 0 0 4.375rem; } }
  .about_slider .slick-slide > div img, .about_slider .slick-slide > a img {
    display: block; }
  @media screen and (min-width: 48em) {
    .about_slider .slick-slide > div ul, .about_slider .slick-slide > div p, .about_slider .slick-slide > div blockquote, .about_slider .slick-slide > div strong, .about_slider .slick-slide > div small, .about_slider .slick-slide > div em, .about_slider .slick-slide > a ul, .about_slider .slick-slide > a p, .about_slider .slick-slide > a blockquote, .about_slider .slick-slide > a strong, .about_slider .slick-slide > a small, .about_slider .slick-slide > a em {
      max-width: 28.4375rem;
      margin-left: 0.9375rem; } }
  @media screen and (min-width: 64em) {
    .about_slider .slick-slide > div ul, .about_slider .slick-slide > div p, .about_slider .slick-slide > div blockquote, .about_slider .slick-slide > div strong, .about_slider .slick-slide > div small, .about_slider .slick-slide > div em, .about_slider .slick-slide > a ul, .about_slider .slick-slide > a p, .about_slider .slick-slide > a blockquote, .about_slider .slick-slide > a strong, .about_slider .slick-slide > a small, .about_slider .slick-slide > a em {
      margin-left: 1.875rem; } }
  @media screen and (min-width: 75em) {
    .about_slider .slick-slide > div ul, .about_slider .slick-slide > div p, .about_slider .slick-slide > div blockquote, .about_slider .slick-slide > div strong, .about_slider .slick-slide > div small, .about_slider .slick-slide > div em, .about_slider .slick-slide > a ul, .about_slider .slick-slide > a p, .about_slider .slick-slide > a blockquote, .about_slider .slick-slide > a strong, .about_slider .slick-slide > a small, .about_slider .slick-slide > a em {
      margin-left: 5.625rem; } }

@media screen and (max-width: 74.9375em) {
  .about-list.about-gallery {
    padding-bottom: 3.125rem; } }

@media screen and (max-width: 63.9375em) {
  .about-list .introducing_slider .slick-prev, .about-list .second_introducing_slider .slick-prev {
    left: -10px; } }

@media screen and (max-width: 63.9375em) {
  .about-list .introducing_slider .slick-next, .about-list .second_introducing_slider .slick-next {
    right: -10px; } }

.about-list .introducing_slider .slick-track, .about-list .second_introducing_slider .slick-track {
  display: block; }
  .about-list .introducing_slider .slick-track .slick-slide p, .about-list .second_introducing_slider .slick-track .slick-slide p {
    margin-left: auto !important;
    margin-right: auto !important; }

.about-list .item {
  background-color: #f2f3f6;
  padding: 2.1875rem 0;
  margin-bottom: 2.1875rem; }
  .about-list .item:last-of-type {
    margin-bottom: 0; }
  .about-list .item img {
    margin: 0 auto 0.9375rem; }
    @media screen and (min-width: 48em) {
      .about-list .item img {
        margin: 0; } }
  @media screen and (min-width: 75em) {
    .about-list .item {
      padding: 4.375rem 0;
      margin-bottom: 5rem; } }
  @media screen and (min-width: 90em) {
    .about-list .item {
      padding: 6.25rem 0;
      margin-bottom: 7.5rem; } }
  .about-list .item.middle .item-holder {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    @media screen and (min-width: 48em) {
      .about-list .item.middle .item-holder .inner {
        margin-right: 0.9375rem;
        margin-left: auto; } }
    @media screen and (min-width: 64em) {
      .about-list .item.middle .item-holder .inner {
        margin-right: 1.875rem;
        margin-left: auto; } }
    @media screen and (min-width: 75em) {
      .about-list .item.middle .item-holder .inner {
        margin-right: 5rem; } }
    @media screen and (min-width: 90em) {
      .about-list .item.middle .item-holder .inner {
        margin-right: 7.5rem; } }
  @media screen and (min-width: 48em) {
    .about-list .item.reverse .picture {
      margin-right: 0;
      margin-left: 0.9375rem; } }
  @media screen and (min-width: 64em) {
    .about-list .item.reverse .picture {
      margin-left: 1.875rem; } }
  @media screen and (min-width: 75em) {
    .about-list .item.reverse .picture {
      margin-left: 3.75rem; } }
  .about-list .item.reverse .item-holder {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
    @media screen and (min-width: 48em) {
      .about-list .item.reverse .item-holder .inner {
        margin-right: 0.9375rem;
        margin-left: 0.9375rem; } }
    @media screen and (min-width: 64em) {
      .about-list .item.reverse .item-holder .inner {
        margin-right: 1.875rem;
        margin-left: 1.875rem; } }
    @media screen and (min-width: 75em) {
      .about-list .item.reverse .item-holder .inner {
        margin-right: 5rem;
        margin-left: 5rem; } }
    @media screen and (min-width: 90em) {
      .about-list .item.reverse .item-holder .inner {
        margin-right: 7.5rem;
        margin-left: 7.5rem; } }

.about-list .picture {
  text-align: center; }
  @media screen and (min-width: 48em) {
    .about-list .picture {
      margin-right: 0.9375rem;
      max-width: 50%;
      text-align: inherit; } }
  @media screen and (min-width: 64em) {
    .about-list .picture {
      margin-right: 1.875rem; } }
  @media screen and (min-width: 75em) {
    .about-list .picture {
      margin-right: 3.75rem; } }
  .about-list .picture a {
    display: inline-block;
    position: relative;
    margin: 0 auto 0.9375rem; }
    @media screen and (min-width: 48em) {
      .about-list .picture a {
        margin: 0;
        display: block; } }
    .about-list .picture a img {
      margin: 0; }
    .about-list .picture a:after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.3); }
    .about-list .picture a:hover .play-btn .icon {
      fill: #ffffff; }
    .about-list .picture a .play-btn {
      position: absolute;
      top: 50%;
      left: 50%;
      z-index: 1;
      -webkit-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      width: 4.6875rem;
      height: 4.6875rem; }
      .about-list .picture a .play-btn svg {
        width: 100%;
        height: 100%; }
      .about-list .picture a .play-btn .icon {
        fill: rgba(255, 255, 255, 0.6);
        -webkit-transition: fill .3s ease;
        transition: fill .3s ease; }
      @media screen and (min-width: 75em) {
        .about-list .picture a .play-btn {
          width: 7rem;
          height: 7rem; } }

@media screen and (min-width: 48em) {
  .about-list .item-holder {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; } }

@media screen and (min-width: 48em) {
  .about-list .item-holder .inner {
    max-width: 28.4375rem;
    margin-left: 0.9375rem; } }

@media screen and (min-width: 64em) {
  .about-list .item-holder .inner {
    margin-left: 1.875rem; } }

@media screen and (min-width: 75em) {
  .about-list .item-holder .inner {
    margin-left: 5rem; } }

@media screen and (min-width: 90em) {
  .about-list .item-holder .inner {
    margin-left: 7.5rem; } }

@media screen and (min-width: 48em) {
  .about-list p {
    line-height: 1.875rem; } }

.about-list ul {
  font-size: 0.9375rem;
  list-style: none;
  margin: 2rem 0 1rem; }
  .about-list ul li:before {
    content: '•';
    font-size: 1.1875rem;
    display: inline-block;
    vertical-align: baseline;
    margin-right: 0.625rem; }
  @media screen and (min-width: 64em) {
    .about-list ul {
      font-size: 1.0625rem; } }

.about-list .h1, .about-list h1 {
  color: rgba(163, 163, 163, 0.3);
  font-size: 1.875rem;
  font-family: 'miller', sans-serif; }
  @media screen and (min-width: 48em) {
    .about-list .h1, .about-list h1 {
      font-size: 3.125rem; } }
  @media screen and (min-width: 64em) {
    .about-list .h1, .about-list h1 {
      font-size: 4.375rem; } }
  @media screen and (min-width: 75em) {
    .about-list .h1, .about-list h1 {
      font-size: 6.875rem; } }
  @media screen and (min-width: 101.25em) {
    .about-list .h1, .about-list h1 {
      font-size: 9.375rem; } }

.more-about {
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: #000000;
  margin: 0.9375rem auto;
  display: table; }
  @media screen and (min-width: 75em) {
    .more-about {
      margin: 1.875rem auto; } }
  @media screen and (min-width: 90em) {
    .more-about {
      margin: 2.625rem auto; } }

.contacts-holder {
  text-align: center; }
  @media screen and (min-width: 64em) {
    .contacts-holder {
      border-bottom: 1px solid rgba(0, 0, 0, 0.14);
      padding: 1.875rem 0; } }
  .contacts-holder:last-of-type {
    border-bottom: none;
    margin-bottom: 1.875rem; }
    @media screen and (min-width: 75em) {
      .contacts-holder:last-of-type {
        margin-bottom: 4.0625rem; } }
  @media screen and (min-width: 64em) {
    .contacts-holder {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  .contacts-holder h2 {
    text-transform: uppercase;
    font-size: 1.125rem;
    font-weight: 500;
    margin-bottom: 1.5625rem;
    color: #000000;
    font-family: 'BrandonGrotesque', sans-serif; }
    .contacts-holder h2 label {
      font-weight: 500; }
  .contacts-holder .item {
    padding: 0.9375rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.14);
    color: #a3a3a3; }
    @media screen and (min-width: 64em) {
      .contacts-holder .item {
        border-bottom: none;
        border-left: 1px solid rgba(0, 0, 0, 0.14);
        width: 50%; }
        .contacts-holder .item:first-of-type {
          border-left: none; } }
    @media screen and (min-width: 90em) {
      .contacts-holder .item {
        padding: 1.5625rem 3.125rem; } }

.contacts-form {
  margin-bottom: 2.1875rem; }
  @media screen and (min-width: 75em) {
    .contacts-form {
      margin-bottom: 4.375rem; } }
  @media screen and (min-width: 90em) {
    .contacts-form {
      margin-bottom: 5.9375rem; } }
  .contacts-form h2 {
    text-transform: uppercase;
    font-size: 1.125rem;
    font-weight: 500;
    margin-bottom: 1.5625rem;
    color: #000000;
    font-family: 'BrandonGrotesque', sans-serif;
    position: relative; }
    .contacts-form h2:after {
      content: '•';
      font-size: 1.125rem;
      position: absolute;
      left: 50%;
      bottom: -1.35rem;
      margin-left: -2px;
      color: #000000; }
    .contacts-form h2 label {
      font-weight: 500; }
  .contacts-form p {
    max-width: 38.125rem;
    margin: 0 auto 1.5625rem; }
  .contacts-form ul {
    list-style: none; }
  .contacts-form .wide {
    margin-bottom: 1.25rem; }
    @media screen and (min-width: 90em) {
      .contacts-form .wide {
        margin-bottom: 2.3125rem; } }
  @media screen and (min-width: 40em) {
    .contacts-form .fields {
      margin: 0 -0.9375rem;
      letter-spacing: -6px; } }
  .contacts-form .fields .field {
    margin-bottom: 2.5rem; }
    @media screen and (min-width: 40em) {
      .contacts-form .fields .field {
        letter-spacing: 0;
        padding: 0 0.9375rem;
        width: 50%;
        display: inline-block;
        vertical-align: top; } }
    @media screen and (min-width: 90em) {
      .contacts-form .fields .field {
        margin-bottom: 4.6875rem; } }
  .contacts-form textarea {
    padding: 1.25rem 0; }
  .contacts-form input {
    padding: 0.625rem 0;
    line-height: 1.5; }
  .contacts-form input, .contacts-form textarea {
    border: none;
    max-width: 100% !important; }
    .contacts-form input::-webkit-input-placeholder, .contacts-form textarea::-webkit-input-placeholder {
      color: #a3a3a3;
      opacity: 1;
      text-transform: uppercase;
      letter-spacing: 3px;
      font-size: 0.75rem;
      -webkit-transition: color .25s;
      transition: color .25s; }
    .contacts-form input::-moz-placeholder, .contacts-form textarea::-moz-placeholder {
      color: #a3a3a3;
      opacity: 1;
      text-transform: uppercase;
      letter-spacing: 3px;
      font-size: 0.75rem;
      -webkit-transition: color .25s;
      transition: color .25s; }
    .contacts-form input:-ms-input-placeholder, .contacts-form textarea:-ms-input-placeholder {
      color: #a3a3a3;
      text-transform: uppercase;
      letter-spacing: 3px;
      font-size: 0.75rem;
      -webkit-transition: color .25s;
      transition: color .25s; }
  .contacts-form input {
    border-bottom: 1px solid #000000;
    height: 3.625rem; }
    @media screen and (min-width: 64em) {
      .contacts-form input {
        height: 3.75rem; } }
    .contacts-form input:focus {
      border: none;
      border-bottom: 1px solid #000000; }
  .contacts-form textarea {
    height: 13.125rem;
    resize: none;
    border-bottom: 1px solid #000000;
    border-top: 1px solid #000000; }

.catalog-category-view.categorypath-store .main-container {
  max-width: 100%;
  margin-bottom: 0; }

.catalog-category-view.categorypath-store .introducing_slider .slick-slide:first-child, .catalog-category-view.categorypath-store .second_introducing_slider .slick-slide:first-child {
  background-position: 95% center; }
  @media screen and (min-width: 64em) {
    .catalog-category-view.categorypath-store .introducing_slider .slick-slide:first-child, .catalog-category-view.categorypath-store .second_introducing_slider .slick-slide:first-child {
      background-position: center center; } }

.catalog-category-view.categorypath-store .introducing_slider .slick-slide:last-child, .catalog-category-view.categorypath-store .second_introducing_slider .slick-slide:last-child {
  background-position: 5% center; }
  @media screen and (min-width: 64em) {
    .catalog-category-view.categorypath-store .introducing_slider .slick-slide:last-child, .catalog-category-view.categorypath-store .second_introducing_slider .slick-slide:last-child {
      background-position: center center; } }

.categorypath-store .page-title-wrapper {
  font-size: 0;
  line-height: 0;
  margin: 0;
  padding: 0;
  opacity: 0;
  visibility: hidden; }

.categorypath-store .page-title {
  font-size: 0;
  line-height: 0;
  margin: 0;
  padding: 0;
  opacity: 0;
  visibility: hidden; }

.categorypath-store .main-container {
  max-width: 100%;
  margin-bottom: 0; }

.categorypath-store .introducing_slider, .categorypath-store .introducing_store-slider {
  padding: 0; }
  .categorypath-store .introducing_slider .slider-bg, .categorypath-store .introducing_store-slider .slider-bg {
    position: absolute;
    z-index: 5;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    background-position: 75% center; }
    .categorypath-store .introducing_slider .slider-bg.reverse, .categorypath-store .introducing_store-slider .slider-bg.reverse {
      background-position: 25% center; }
    @media screen and (min-width: 64em) {
      .categorypath-store .introducing_slider .slider-bg, .categorypath-store .introducing_store-slider .slider-bg {
        background-position: center center !important; } }
  .categorypath-store .introducing_slider .slide-content-holder, .categorypath-store .introducing_store-slider .slide-content-holder {
    position: relative;
    z-index: 10;
    min-height: 100vh;
    padding: 1.875rem 2.5rem; }
    @media screen and (min-width: 64em) {
      .categorypath-store .introducing_slider .slide-content-holder, .categorypath-store .introducing_store-slider .slide-content-holder {
        padding: 1.875rem 4.375rem;
        height: 40rem;
        min-height: 40rem; } }
    @media screen and (min-width: 75em) {
      .categorypath-store .introducing_slider .slide-content-holder, .categorypath-store .introducing_store-slider .slide-content-holder {
        height: 53.75rem;
        min-height: 53.75rem; } }
    @media screen and (min-width: 90em) {
      .categorypath-store .introducing_slider .slide-content-holder, .categorypath-store .introducing_store-slider .slide-content-holder {
        padding: 1.875rem 6.25rem; } }
  .categorypath-store .introducing_slider .slick-arrow, .categorypath-store .introducing_store-slider .slick-arrow {
    top: calc(50% - 15px); }
  .categorypath-store .introducing_slider .slick-prev, .categorypath-store .introducing_store-slider .slick-prev {
    left: 0.3125rem; }
    @media screen and (min-width: 64em) {
      .categorypath-store .introducing_slider .slick-prev, .categorypath-store .introducing_store-slider .slick-prev {
        left: 1.5625rem; } }
    @media screen and (min-width: 90em) {
      .categorypath-store .introducing_slider .slick-prev, .categorypath-store .introducing_store-slider .slick-prev {
        left: 4.375rem; } }
  .categorypath-store .introducing_slider .slick-next, .categorypath-store .introducing_store-slider .slick-next {
    right: 0.3125rem; }
    @media screen and (min-width: 64em) {
      .categorypath-store .introducing_slider .slick-next, .categorypath-store .introducing_store-slider .slick-next {
        right: 1.5625rem; } }
    @media screen and (min-width: 90em) {
      .categorypath-store .introducing_slider .slick-next, .categorypath-store .introducing_store-slider .slick-next {
        right: 4.375rem; } }
  .categorypath-store .introducing_slider p, .categorypath-store .introducing_store-slider p {
    max-width: 37.5rem;
    margin: 0 auto 1rem;
    letter-spacing: .5px; }

@media screen and (min-width: 64em) {
  .categorypath-store .slick-dots {
    width: auto;
    bottom: auto;
    left: auto;
    right: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; } }

@media screen and (min-width: 64em) {
  .categorypath-store .slick-dots li {
    display: block;
    margin: 10px 0; } }

@media screen and (min-width: 64em) {
  .categorypath-store .slick-dots li button:before {
    content: '';
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    width: 0;
    height: 0;
    border-style: solid;
    -webkit-transition: all 0.15s ease;
    transition: all 0.15s ease;
    border-radius: 50%;
    border-width: 4px;
    border-color: #000000; } }

@media screen and (min-width: 64em) {
  .categorypath-store .slick-dots li.slick-active button:before {
    border-radius: 0;
    border-width: 8px 5px 0 5px;
    border-color: #000000 transparent transparent transparent; } }

.catalog-category-view .sorter, .catalog-category-view .count-container {
  display: none; }

.catalog-category-view .main-container {
  max-width: 100rem;
  margin: 0 auto; }

.catalog-category-view main {
  overflow: hidden; }

.catalog-category-view .col-left {
  max-width: 18.75rem;
  margin: 0 auto; }
  @media screen and (min-width: 48em) {
    .catalog-category-view .col-left {
      width: 26%;
      float: left;
      min-width: 17.5rem;
      max-width: 100%; } }
  @media screen and (min-width: 64em) {
    .catalog-category-view .col-left {
      margin-right: 0.625rem; } }
  @media screen and (min-width: 75em) {
    .catalog-category-view .col-left {
      margin-right: 1.25rem;
      width: 23.5%; } }

@media screen and (min-width: 48em) {
  .catalog-category-view .col2-left-layout .col.main {
    overflow: hidden;
    vertical-align: top; } }

.catalog-category-view .col.main {
  overflow: hidden;
  vertical-align: top;
  margin-bottom: 25px; }
  @media screen and (min-width: 75em) {
    .catalog-category-view .col.main {
      margin-bottom: 40px; } }

.catalog-category-view .pagination ol {
  margin-bottom: 0; }

.catalog-category-view .col-left {
  padding: 0 0.625rem; }
  @media screen and (min-width: 64em) {
    .catalog-category-view .col-left {
      padding: 0 0.9375rem; } }

.catalog-category-view h4 {
  font-family: 'BrandonGrotesque', sans-serif;
  margin-bottom: 1.125rem;
  font-weight: 400; }

.catalog-category-view .cols {
  overflow: auto; }

.catalog-category-view .loading-mask {
  position: fixed !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 999;
  background: rgba(255, 255, 255, 0.5); }
  .catalog-category-view .loading-mask .loader {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .catalog-category-view .loading-mask img {
    position: static !important; }

.block-layered-nav .aw-ln-clear-all {
  float: none;
  font-size: 0.75rem;
  padding: 0;
  display: block; }
  .block-layered-nav .aw-ln-clear-all a {
    height: 2.875rem;
    line-height: 3rem;
    display: block;
    font-weight: 400;
    background-color: rgba(0, 0, 0, 0.5);
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 0.75rem;
    text-align: center;
    padding: 0 0.625rem;
    margin-bottom: 1.5625rem;
    -webkit-transition: background-color .3s ease;
    transition: background-color .3s ease; }
    .block-layered-nav .aw-ln-clear-all a:hover, .block-layered-nav .aw-ln-clear-all a:focus {
      background-color: #000000; }
    @media screen and (min-width: 75em) {
      .block-layered-nav .aw-ln-clear-all a {
        height: 3.5rem;
        line-height: 3.625rem;
        margin-bottom: 2.5rem; } }

.option-block {
  background-color: #f2f3f6;
  margin-bottom: 1.5625rem;
  position: relative;
  width: 100%;
  overflow: hidden; }
  @media screen and (min-width: 75em) {
    .option-block {
      margin-bottom: 2.5rem; } }
  .option-block.active .filter-options-title span:before {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  .option-block .filter-options-title {
    padding: 1.0625rem 1.0625rem 0.8125rem;
    cursor: pointer;
    display: inline-block;
    width: 100%; }
    @media screen and (min-width: 75em) {
      .option-block .filter-options-title {
        padding: 1.6875rem 1.6875rem 1.4375rem; } }
    .option-block .filter-options-title span {
      position: relative;
      font-weight: 400;
      font-size: 0.9375rem;
      letter-spacing: 1px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      @media screen and (min-width: 64em) {
        .option-block .filter-options-title span {
          font-size: 1.0625rem; } }
      @media screen and (min-width: 75em) {
        .option-block .filter-options-title span {
          font-size: 1.25rem; } }
      .option-block .filter-options-title span:before {
        -webkit-transform: rotate(-90deg);
                transform: rotate(-90deg);
        -webkit-transform-origin: center center;
                transform-origin: center center;
        -webkit-transition: -webkit-transform .3s ease;
        transition: -webkit-transform .3s ease;
        transition: transform .3s ease;
        transition: transform .3s ease, -webkit-transform .3s ease; }
      .option-block .filter-options-title span:before, .option-block .filter-options-title span:after {
        content: '';
        position: absolute;
        right: 0;
        top: calc(50% - 1px);
        height: 2px;
        width: 10px;
        background-color: #000000; }
  .option-block .filter-options-content {
    padding: 0.8125rem 1.0625rem;
    border-top: 1px solid rgba(0, 0, 0, 0.1); }
    @media screen and (min-width: 75em) {
      .option-block .filter-options-content {
        padding: 1.4375rem 1.6875rem; } }
  .option-block ol, .option-block ul {
    list-style: none;
    margin: 0;
    overflow: hidden; }
    .option-block ol li, .option-block ul li {
      font-size: 0.9375rem;
      color: #000000; }
      @media screen and (min-width: 75em) {
        .option-block ol li, .option-block ul li {
          font-size: 1.0625rem; } }
  .option-block .categories label {
    font-size: 15px; }
    @media screen and (min-width: 90em) {
      .option-block .categories label {
        font-size: 18px; } }
  .option-block .categories .cat-name:before {
    line-height: 0;
    top: 50%;
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px); }
  .option-block .custom-filtered-list .item, .option-block .custom-filtered-list label, .option-block .filter-type .item, .option-block .filter-type label, .option-block .categories-scroll .item, .option-block .categories-scroll label {
    cursor: pointer;
    white-space: nowrap; }
    .option-block .custom-filtered-list .item.show-more, .option-block .custom-filtered-list label.show-more, .option-block .filter-type .item.show-more, .option-block .filter-type label.show-more, .option-block .categories-scroll .item.show-more, .option-block .categories-scroll label.show-more {
      display: none; }
  .option-block .custom-filtered-list .cat-name, .option-block .filter-type .cat-name, .option-block .categories-scroll .cat-name {
    position: relative;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-left: 0.9375rem !important; }
    .option-block .custom-filtered-list .cat-name:before, .option-block .filter-type .cat-name:before, .option-block .categories-scroll .cat-name:before {
      content: '•';
      font-size: 1.1875rem;
      display: inline-block;
      vertical-align: baseline;
      position: absolute;
      left: 0;
      opacity: 0;
      -webkit-transition: opacity .3s ease;
      transition: opacity .3s ease; }
  .option-block .custom-filtered-list span, .option-block .custom-filtered-list a, .option-block .filter-type span, .option-block .filter-type a, .option-block .categories-scroll span, .option-block .categories-scroll a {
    color: #a3a3a3;
    -webkit-transition: color .3s ease;
    transition: color .3s ease; }
  .option-block .custom-filtered-list li, .option-block .filter-type li, .option-block .categories-scroll li {
    overflow: visible; }
    .option-block .custom-filtered-list li:hover a, .option-block .custom-filtered-list li:hover span, .option-block .custom-filtered-list li:focus a, .option-block .custom-filtered-list li:focus span, .option-block .filter-type li:hover a, .option-block .filter-type li:hover span, .option-block .filter-type li:focus a, .option-block .filter-type li:focus span, .option-block .categories-scroll li:hover a, .option-block .categories-scroll li:hover span, .option-block .categories-scroll li:focus a, .option-block .categories-scroll li:focus span {
      color: #000000; }
      .option-block .custom-filtered-list li:hover a:before, .option-block .custom-filtered-list li:hover span:before, .option-block .custom-filtered-list li:focus a:before, .option-block .custom-filtered-list li:focus span:before, .option-block .filter-type li:hover a:before, .option-block .filter-type li:hover span:before, .option-block .filter-type li:focus a:before, .option-block .filter-type li:focus span:before, .option-block .categories-scroll li:hover a:before, .option-block .categories-scroll li:hover span:before, .option-block .categories-scroll li:focus a:before, .option-block .categories-scroll li:focus span:before {
        opacity: 1; }
  .option-block .custom-filtered-list label > div, .option-block .filter-type label > div, .option-block .categories-scroll label > div {
    overflow: hidden;
    text-overflow: ellipsis; }
  .option-block .custom-filtered-list input, .option-block .filter-type input, .option-block .categories-scroll input {
    position: absolute;
    visibility: hidden;
    width: 0;
    height: 0;
    margin: 0; }
    .option-block .custom-filtered-list input[checked] + div a, .option-block .custom-filtered-list input[checked] + div span, .option-block .filter-type input[checked] + div a, .option-block .filter-type input[checked] + div span, .option-block .categories-scroll input[checked] + div a, .option-block .categories-scroll input[checked] + div span {
      color: #000000; }
      .option-block .custom-filtered-list input[checked] + div a:before, .option-block .custom-filtered-list input[checked] + div span:before, .option-block .filter-type input[checked] + div a:before, .option-block .filter-type input[checked] + div span:before, .option-block .categories-scroll input[checked] + div a:before, .option-block .categories-scroll input[checked] + div span:before {
        opacity: 1; }
  .option-block .ui-slider-handle {
    width: 8px;
    height: 8px;
    top: -3px;
    background: #000000;
    cursor: pointer; }
    .option-block .ui-slider-handle:focus {
      cursor: -webkit-grab;
      cursor: grab; }
  .option-block .ui-slider-range {
    height: 100%;
    background: #000000;
    position: absolute; }
  .option-block .ui-slider-horizontal {
    background: rgba(0, 0, 0, 0.1);
    height: 2px; }
  .option-block .aw-ln-slider-button {
    cursor: pointer;
    width: 100%;
    height: 2.875rem;
    line-height: 3rem;
    display: block;
    font-weight: 400;
    background-color: rgba(0, 0, 0, 0.5);
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 0.75rem;
    text-align: center;
    padding: 0 0.625rem;
    margin-top: 0.9375rem;
    -webkit-transition: background-color .3s ease;
    transition: background-color .3s ease; }
    .option-block .aw-ln-slider-button:hover, .option-block .aw-ln-slider-button:focus {
      background-color: #000000; }
    @media screen and (min-width: 75em) {
      .option-block .aw-ln-slider-button {
        height: 3.5rem;
        line-height: 3.625rem; } }

.aw-ln-slider-filter-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 0.9375rem;
  font-weight: 400;
  font-size: 0.875rem; }

.swatch-attribute.color .swatch-attribute-options {
  margin: 0 -7px; }

.swatch-attribute.color .swatch-option {
  cursor: pointer;
  position: relative;
  display: inline-block;
  width: 26px;
  height: 26px;
  border: 2px solid #f2f3f6;
  padding: 6px;
  margin: 0 7px 5px;
  background-size: contain !important;
  background-position: center;
  background-repeat: no-repeat; }
  .swatch-attribute.color .swatch-option:hover {
    outline: 1px solid rgba(0, 0, 0, 0.1); }
  .swatch-attribute.color .swatch-option:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background-image: url(../images/icons/check-symbol.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 44%;
    opacity: 0;
    -webkit-transition: opacity .3s ease;
    transition: opacity .3s ease; }
  .swatch-attribute.color .swatch-option.active {
    outline: 1px solid rgba(0, 0, 0, 0.1); }
    .swatch-attribute.color .swatch-option.active:after {
      opacity: 1; }

.swatch-attribute.color input {
  position: absolute;
  visibility: hidden;
  width: 0;
  height: 0;
  margin: 0; }

.swatch-attribute.size .swatch-attribute-options {
  margin: 0 -11px; }

.swatch-attribute.size .swatch-option {
  cursor: pointer;
  display: inline-block;
  width: 2.5rem;
  height: 2.5rem;
  text-align: center;
  margin: 0 11px 5px;
  line-height: 2.375rem;
  font-size: 0.875rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  font-weight: 400;
  color: #000000;
  border: 1px solid #000000; }
  .swatch-attribute.size .swatch-option.active {
    color: #ffffff;
    background: #000000; }
  .swatch-attribute.size .swatch-option:hover {
    color: #ffffff;
    background: #000000; }

.swatch-attribute .swatch-option.disabled {
  display: none !important; }

.aw-ln-filter-options-range .aw-ln-filter-options-range-slider-wrapper {
  height: 2px;
  background: rgba(0, 0, 0, 0.1); }

.aw-ln-filter-options-range .aw-ln-filter-options-range-slider-wrapper-left,
.aw-ln-filter-options-range .aw-ln-filter-options-range-slider-wrapper-right {
  background: none; }

.aw-ln-filter-options-range .aw-ln-filter-options-range-slider-min,
.aw-ln-filter-options-range .aw-ln-filter-options-range-slider-max {
  width: 8px;
  height: 8px;
  background: #000000;
  border-radius: 4px;
  margin-top: -3px; }

.aw-ln-filter-options-range .aw-ln-filter-options-range-slider-active {
  height: 2px;
  background: #000000; }

.aw-ln-filter-options-fromto {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .aw-ln-filter-options-fromto .fieldset {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; }
  .aw-ln-filter-options-fromto .form-control {
    width: 2.4375rem;
    height: 2.4375rem;
    padding: 0.3125rem;
    text-align: center;
    margin: 0; }
  .aw-ln-filter-options-fromto span {
    margin-bottom: 0.3125rem; }
  .aw-ln-filter-options-fromto .minus {
    padding: 0.5rem 0.625rem;
    margin: 0; }
  .aw-ln-filter-options-fromto .button {
    margin: 0;
    margin-left: 0.625rem;
    padding: .75rem 1.875rem !important;
    font-size: .9375rem !important; }

.layered-selected-filters-block .selected-items-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin: 0 -5px; }

.layered-selected-filters-block .selected-item {
  cursor: pointer;
  color: #a3a3a3;
  background: #f2f3f6;
  margin: 0 5px 10px;
  padding: 3px 20px 3px 10px;
  position: relative; }
  .layered-selected-filters-block .selected-item .action-close {
    cursor: pointer;
    position: absolute;
    top: 50%;
    right: 5px;
    width: 10px;
    height: 10px;
    -webkit-transform: translateY(-50%) rotate(45deg);
            transform: translateY(-50%) rotate(45deg); }
    .layered-selected-filters-block .selected-item .action-close:before, .layered-selected-filters-block .selected-item .action-close:after {
      content: '';
      position: absolute;
      background: #000000; }
    .layered-selected-filters-block .selected-item .action-close:before {
      width: 1px;
      height: 100%;
      top: 0;
      left: 50%;
      -webkit-transform: translateX(-50%);
              transform: translateX(-50%); }
    .layered-selected-filters-block .selected-item .action-close:after {
      width: 100%;
      height: 1px;
      top: 50%;
      left: 0;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%); }

.product-info-main {
  padding-bottom: 30px; }
  @media screen and (min-width: 64em) {
    .product-info-main {
      padding-bottom: 70px; } }

.catalog-product-view .product-content {
  width: 100%; }

.catalog-product-view .breadcrumbs, .catalog-product-view .product-info-main, .catalog-product-view .messages {
  background: #f6f7fb; }

.catalog-product-view .product-info-main {
  padding-top: 25px; }
  @media screen and (min-width: 90em) {
    .catalog-product-view .product-info-main {
      padding-top: 45px; } }

.catalog-product-view .breadcrumbs {
  margin-bottom: 0; }

@media screen and (max-width: 63.9375em) {
  .catalog-product-view .row.row {
    margin-left: auto;
    margin-right: auto; } }

.product-info-box .page-title {
  text-align: left;
  margin-bottom: 1.25rem;
  font-size: 1.5625rem; }
  @media screen and (min-width: 48em) {
    .product-info-box .page-title {
      font-size: 1.75rem; } }
  @media screen and (min-width: 90em) {
    .product-info-box .page-title {
      font-size: 2rem; } }

.product-info-box .price-label {
  display: none; }

.product-info-box .product-info-price {
  display: inline-block;
  font-family: 'miller', sans-serif;
  font-weight: 300;
  margin-bottom: 1.875rem; }

.product-info-box .special-price, .product-info-box .normal-price, .product-info-box .price {
  font-size: 1.5rem; }

.product-info-box .old-price {
  color: #a3a3a3;
  font-size: 1.25rem;
  text-decoration: line-through;
  margin-left: 0.9375rem; }

.product-info-box .short-description {
  margin-bottom: 1.25rem; }

.product-info-box .box-tocart .button {
  height: 2.875rem;
  width: 180px;
  padding: 16px; }

.product-info-box .overview {
  margin-bottom: 30px; }

.page-product-configurable .product-info-box .old-price {
  display: block !important; }

.box-tocart, .add-to-cart-wrapper {
  margin-top: 1.5625rem; }
  @media screen and (min-width: 75em) {
    .box-tocart, .add-to-cart-wrapper {
      margin-top: 3.125rem; } }

.product.info.detailed .items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.product.info.detailed .title {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  margin: 0 15px 20px 0; }
  .product.info.detailed .title.active a {
    color: #000000;
    font-weight: 500; }
    .product.info.detailed .title.active a:after {
      background-color: #000000; }
  .product.info.detailed .title a {
    letter-spacing: 1px;
    font-size: 0.9375rem;
    position: relative;
    cursor: pointer;
    color: #a3a3a3;
    -webkit-transition: color .3s ease;
    transition: color .3s ease;
    display: inline-block; }
    .product.info.detailed .title a:after {
      content: '';
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 1px;
      background-color: transparent;
      -webkit-transition: background-color .3s ease;
      transition: background-color .3s ease; }
    @media screen and (min-width: 64em) {
      .product.info.detailed .title a {
        font-size: 1.0625rem; } }
    .product.info.detailed .title a:hover {
      color: #000000; }
      .product.info.detailed .title a:hover:after {
        background-color: #000000; }

.product.info.detailed .content {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  width: 100%; }

.swatch-opt .swatch-attribute {
  padding: 0.9375rem 0;
  border-bottom: 1px solid rgba(3, 3, 3, 0.2);
  font-size: 17px;
  font-weight: 400;
  line-height: 1.8;
  display: block;
  margin: 0;
  letter-spacing: .9px;
  color: #000; }
  @media screen and (min-width: 75em) {
    .swatch-opt .swatch-attribute {
      padding: 1.875rem 0; } }

.swatch-opt .swatch-attribute-label:after {
  content: ':'; }

.swatch-opt .swatch-attribute-selected-option {
  margin-left: 5px; }

.swatch-opt .swatch-input {
  position: absolute;
  visibility: hidden;
  opacity: 0; }

.swatch-opt .swatch-attribute-options {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -7px 0; }

.swatch-opt .swatch-option {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  cursor: pointer; }
  .swatch-opt .swatch-option.disabled {
    opacity: .4; }
  .swatch-opt .swatch-option.text {
    width: 40px;
    height: 40px;
    text-align: center;
    line-height: 2.375rem;
    font-size: 0.875rem;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    font-weight: 400;
    display: block;
    color: #000000;
    border: 1px solid #000000;
    margin: 0 7px 5px; }
    .swatch-opt .swatch-option.text.selected {
      color: #ffffff;
      background-color: #000000; }
    .swatch-opt .swatch-option.text:hover:not(.disabled) {
      color: #ffffff;
      background-color: #000000; }

.swatch-opt .color .swatch-option {
  width: 32px;
  height: 32px;
  border-width: 1px;
  border-style: solid;
  border-color: transparent;
  padding: 3px;
  margin: 0 7px 5px; }
  .swatch-opt .color .swatch-option.selected {
    border-color: rgba(0, 0, 0, 0.2); }
  .swatch-opt .color .swatch-option:hover:not(.disabled) {
    border-color: rgba(0, 0, 0, 0.2); }

.swatch-opt .swatch-inner {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat; }

.custom-counter {
  height: 2.875rem;
  border: 1px solid #000000;
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin-bottom: 0.3125rem; }
  @media screen and (min-width: 30em) {
    .custom-counter {
      margin-bottom: 1.25rem; } }
  .custom-counter input {
    height: 100%;
    background-color: transparent;
    border: none !important;
    font-size: 1.0625rem;
    color: #000000;
    padding: 0 2.9375rem;
    max-width: 180px;
    text-align: center;
    margin: 0; }
    .custom-counter input:focus {
      background-color: transparent; }
  .custom-counter .btn-count {
    height: 2.75rem;
    width: 2.75rem;
    position: absolute;
    top: 0;
    display: block;
    font-size: 1.0625rem;
    cursor: pointer;
    color: #000000; }
    .custom-counter .btn-count[disabled] {
      cursor: not-allowed;
      color: #a3a3a3; }
    .custom-counter .btn-count.minus {
      left: 0; }
    .custom-counter .btn-count.plus {
      right: 0; }

.product-options-bottom, .add-to-cart-wrapper {
  margin-top: 1.5625rem; }
  @media screen and (min-width: 75em) {
    .product-options-bottom, .add-to-cart-wrapper {
      margin-top: 3.125rem; } }

.qty-wrapper {
  display: inline-block;
  vertical-align: top;
  margin-right: 1.5625rem; }
  .qty-wrapper .availability {
    text-align: center;
    margin-bottom: 0.625rem; }
    .qty-wrapper .availability span {
      font-size: 0.75rem;
      letter-spacing: 3px;
      text-transform: uppercase; }
    .qty-wrapper .availability .label {
      display: none; }

.add-to-cart-buttons {
  display: inline-block;
  vertical-align: top; }
  .add-to-cart-buttons .button {
    margin: 0;
    padding-top: 0.90625rem;
    padding-bottom: 0.90625rem; }

.product-img-box .loading-mask {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.product-img-box .product.media {
  max-height: 700px;
  overflow: hidden;
  position: relative; }

.product-img-box .main-product-slider {
  width: 100%;
  margin: 0 auto 1.5625rem; }
  @media screen and (min-width: 64em) {
    .product-img-box .main-product-slider {
      margin: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start; } }
  .product-img-box .main-product-slider .item {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
    transition: opacity 0.3s ease, visibility 0.3s ease; }
    .product-img-box .main-product-slider .item.slick-current, .product-img-box .main-product-slider .item.slick-active {
      visibility: visible;
      opacity: 1; }

.product-img-box .product-images {
  margin-bottom: 0; }
  @media screen and (min-width: 64em) {
    .product-img-box .product-images {
      width: 75%; } }
  @media screen and (min-width: 64em) {
    .product-img-box .product-images .slick-list {
      height: 100% !important; } }
  .product-img-box .product-images .item {
    height: auto; }
    .product-img-box .product-images .item div {
      width: 100%;
      margin: 0 auto;
      text-align: center; }

.product-img-box .product-image-thumbs {
  padding: 0 2.5rem;
  z-index: 2;
  width: auto;
  margin-bottom: 1.25rem; }
  @media screen and (min-width: 64em) {
    .product-img-box .product-image-thumbs {
      margin-bottom: 0;
      padding: 2.5rem 0;
      margin-right: 1.25rem;
      width: calc(25% - 20px); } }
  @media screen and (min-width: 75em) {
    .product-img-box .product-image-thumbs {
      margin-right: 3.625rem;
      width: calc(25% - 58px); } }
  .product-img-box .product-image-thumbs .item {
    padding: 0 0.5rem;
    margin: 0 auto; }
    @media screen and (min-width: 64em) {
      .product-img-box .product-image-thumbs .item {
        width: 100% !important;
        padding: 0.5rem 0;
        float: none; } }
    @media screen and (min-width: 75em) {
      .product-img-box .product-image-thumbs .item {
        padding: 0.6875rem 0; } }
    .product-img-box .product-image-thumbs .item div {
      text-align: center; }
      .product-img-box .product-image-thumbs .item div div {
        border: 1px solid rgba(0, 0, 0, 0.1);
        display: inline-block; }
  .product-img-box .product-image-thumbs .slick-track {
    margin: 0 auto; }
  @media screen and (min-width: 64em) {
    .product-img-box .product-image-thumbs .slick-prev {
      -webkit-transform: rotate(90deg);
              transform: rotate(90deg);
      left: 50%;
      top: 0.5rem;
      margin-left: -0.9375rem; } }
  @media screen and (min-width: 64em) {
    .product-img-box .product-image-thumbs .slick-next {
      -webkit-transform: rotate(90deg);
              transform: rotate(90deg);
      left: 50%;
      right: auto;
      top: auto;
      bottom: 0.5rem;
      margin-left: -0.9375rem; } }

.video-attr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1.25rem 0 1.5625rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2); }
  @media screen and (min-width: 75em) {
    .video-attr {
      padding: 1.875rem 0 2.1875rem; } }
  .video-attr > div {
    width: 50%;
    font-size: 1.0625rem; }
    @media screen and (min-width: 75em) {
      .video-attr > div {
        font-size: 1.25rem; } }
  .video-attr span {
    color: #a3a3a3; }
    .video-attr span.attr-label {
      color: #000000; }
      @media screen and (min-width: 75em) {
        .video-attr span.attr-label {
          margin-right: 1.5625rem; } }

.product-options-bottom, .add-to-cart-wrapper {
  margin-top: 1.5625rem; }
  @media screen and (min-width: 75em) {
    .product-options-bottom, .add-to-cart-wrapper {
      margin-top: 3.125rem; } }

.products-related .product-holder .product-image {
  background-size: contain; }

.featured-items .product-slider .product-holder .product-image {
  background-size: contain; }

.is-reveal-open #DigiCertClickID_-Auarm6O {
  z-index: 3; }

.product-custom-workout-page .breadcrumbs {
  background: transparent;
  margin-bottom: 1.5625rem; }
  @media screen and (min-width: 90em) {
    .product-custom-workout-page .breadcrumbs {
      margin-bottom: 2.8125rem; } }

.product-custom-workout-page .product-content {
  margin: 0; }

.product-custom-workout-page .product-info-main {
  background: transparent;
  padding-top: 0; }

.product-custom-workout-page .product-info-box {
  text-align: center;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  margin-top: 20px; }
  @media screen and (min-width: 64em) {
    .product-custom-workout-page .product-info-box {
      margin-top: 0;
      -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
              order: 1;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; } }
  @media screen and (min-width: 75em) {
    .product-custom-workout-page .product-info-box {
      padding-bottom: 40px; } }

.product-custom-workout-page .page-title-wrapper {
  width: 100%; }

.product-custom-workout-page .page-title {
  text-align: center; }
  @media screen and (min-width: 48em) {
    .product-custom-workout-page .page-title {
      font-size: 27px; } }
  @media screen and (min-width: 64em) {
    .product-custom-workout-page .page-title {
      font-size: 43px; } }
  @media screen and (min-width: 75em) {
    .product-custom-workout-page .page-title {
      font-size: 53px; } }
  @media screen and (min-width: 90em) {
    .product-custom-workout-page .page-title {
      font-size: 57px; } }

@media screen and (min-width: 48em) {
  .product-custom-workout-page .overview {
    font-size: 18px; } }

@media screen and (min-width: 64em) {
  .product-custom-workout-page .overview {
    font-size: 19px;
    max-width: 400px; } }

.product-custom-workout-page .box-tocart {
  margin: 0; }

.product-custom-workout-page .price-box {
  display: inline-block; }

.product-custom-workout-page .product-img-box {
  margin-top: 40px;
  text-align: center;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1; }
  @media screen and (min-width: 64em) {
    .product-custom-workout-page .product-img-box {
      -webkit-box-ordinal-group: 3;
          -ms-flex-order: 2;
              order: 2;
      margin-top: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }

.product-custom-workout-page .product.attribute.overview {
  margin: 0 auto 40px; }

.custom-join {
  background: #fcb69e;
  display: inline-block;
  padding: 20px 35px; }
  .custom-join .btn-custom {
    color: #000000; }
    .custom-join .btn-custom:after, .custom-join .btn-custom:before {
      background-color: #000000; }
    .custom-join .btn-custom:hover {
      color: #000000; }
    .custom-join .btn-custom span:after {
      background-color: #000000; }
  @media screen and (min-width: 48em) {
    .custom-join {
      padding: 20px 45px; } }
  .custom-join .btn-custom {
    margin: 0;
    font-size: 12px; }
  .custom-join .pricing-explanation {
    font-family: 'miller', sans-serif;
    font-size: 25px;
    margin-bottom: 5px; }

.custom-workout-description {
  background: #F3F4F8;
  padding: 15px; }
  @media screen and (min-width: 64em) {
    .custom-workout-description {
      padding: 30px 15px;
      -webkit-box-flex: 0;
          -ms-flex: none;
              flex: none; } }
  @media screen and (min-width: 75em) {
    .custom-workout-description {
      padding: 50px 30px; } }
  .custom-workout-description ul {
    list-style-type: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    @media screen and (min-width: 64em) {
      .custom-workout-description ul {
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start; } }
    .custom-workout-description ul li {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin: 0 0 20px;
      text-align: center; }
      @media screen and (min-width: 30em) {
        .custom-workout-description ul li {
          margin: 0 10px 20px; } }
      @media screen and (min-width: 64em) {
        .custom-workout-description ul li {
          -webkit-box-orient: horizontal;
          -webkit-box-direction: normal;
              -ms-flex-direction: row;
                  flex-direction: row;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          text-align: left;
          margin: 0 0 25px; }
          .custom-workout-description ul li:last-child {
            margin-bottom: 0; } }
  .custom-workout-description .image-holder {
    width: 35px;
    height: 35px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: 10px; }
    @media screen and (min-width: 64em) {
      .custom-workout-description .image-holder {
        margin-right: 15px;
        margin-bottom: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0; } }
    .custom-workout-description .image-holder img {
      width: auto;
      height: auto;
      max-width: 100%;
      max-height: 100%; }

@media screen and (min-width: 48em) {
  .custom-workout-holder .no-results {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; } }

.custom-workout-holder .no-results a {
  font-size: 1.0625rem;
  letter-spacing: .5px;
  position: relative; }
  @media screen and (min-width: 75em) {
    .custom-workout-holder .no-results a {
      font-size: 1.25rem; } }
  .custom-workout-holder .no-results a:first-child {
    margin-right: 1.25rem; }
  .custom-workout-holder .no-results a em {
    position: relative;
    font-style: normal; }
    .custom-workout-holder .no-results a em:after {
      position: absolute;
      bottom: -2px;
      left: 0;
      width: 100%;
      height: 1px;
      content: '';
      -webkit-transition: opacity .3s ease;
      transition: opacity .3s ease;
      background-color: #000000;
      opacity: 0; }
  .no-touch .custom-workout-holder .no-results a:hover em:after {
    opacity: 1; }
  .custom-workout-holder .no-results a span {
    margin-right: 0.3125rem; }

.custom-workout-holder .tab-holder {
  display: none;
  padding-bottom: 0 !important; }
  .custom-workout-holder .tab-holder.current {
    display: block; }

.custom-workout-holder .bottom-line {
  padding-bottom: 1.5625rem;
  margin-bottom: 1.5625rem;
  border-bottom: 1px solid #edeef1; }
  @media screen and (min-width: 75em) {
    .custom-workout-holder .bottom-line {
      padding-bottom: 2.8125rem;
      margin-bottom: 2.8125rem; } }

.custom-workout-holder .tabs-header .edit {
  margin-top: 0.625rem; }
  .custom-workout-holder .tabs-header .edit a {
    position: relative; }
    .custom-workout-holder .tabs-header .edit a:first-child {
      margin-right: 1.25rem; }
    .custom-workout-holder .tabs-header .edit a em {
      position: relative;
      font-style: normal; }
      .custom-workout-holder .tabs-header .edit a em:after {
        position: absolute;
        bottom: -2px;
        left: 0;
        width: 100%;
        height: 1px;
        content: '';
        -webkit-transition: opacity .3s ease;
        transition: opacity .3s ease;
        background-color: #000000;
        opacity: 0; }
    .no-touch .custom-workout-holder .tabs-header .edit a:hover em:after {
      opacity: 1; }
    .custom-workout-holder .tabs-header .edit a span {
      margin-right: 0.3125rem; }

@media screen and (min-width: 64em) {
  .custom-workout-holder .tabs-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .custom-workout-holder .tabs-header .edit {
      margin-top: 0; }
    .custom-workout-holder .tabs-header .edit a {
      -ms-flex-negative: 0;
          flex-shrink: 0; } }

.custom-workout-holder .tabs-header .change-variation-select {
  max-width: 200px;
  margin-bottom: 10px; }
  @media screen and (min-width: 64em) {
    .custom-workout-holder .tabs-header .change-variation-select {
      display: inline-block;
      margin-bottom: 0;
      margin-right: 25px; } }

.custom-workout-holder a {
  font-size: 1.0625rem;
  letter-spacing: .5px; }
  @media screen and (min-width: 75em) {
    .custom-workout-holder a {
      font-size: 1.25rem; } }

.custom-workout-holder .tabs a {
  display: inline-block;
  vertical-align: top;
  margin: 0.3125rem 0.875rem 0.3125rem 0; }
  .custom-workout-holder .tabs a.current {
    color: #000000; }
  @media screen and (min-width: 48em) {
    .custom-workout-holder .tabs a {
      margin: 0.3125rem 1.75rem 0.3125rem 0; } }
  @media screen and (min-width: 75em) {
    .custom-workout-holder .tabs a {
      margin: 0.3125rem 2.75rem 0.3125rem 0; } }

.custom-workout-holder .video-title h2 {
  margin-right: 0.9375rem;
  display: inline-block;
  margin-bottom: 0; }
  @media screen and (min-width: 75em) {
    .custom-workout-holder .video-title h2 {
      margin-right: 1.5625rem; } }
  @media screen and (min-width: 90em) {
    .custom-workout-holder .video-title h2 {
      font-size: 2.5rem; } }

.custom-workout-holder .video-title span {
  font-size: 1.0625rem;
  letter-spacing: .5px;
  margin-right: 0.9375rem;
  color: #a3a3a3; }
  @media screen and (min-width: 75em) {
    .custom-workout-holder .video-title span {
      letter-spacing: 1px;
      font-size: 1.25rem; } }

.custom-workout-holder .video-preview {
  margin-bottom: 1.25rem; }
  @media screen and (min-width: 30em) {
    .custom-workout-holder .video-preview {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; } }
  .custom-workout-holder .video-preview .button {
    margin: 0.9375rem 0 0; }
    @media screen and (min-width: 30em) {
      .custom-workout-holder .video-preview .button {
        margin: 0; } }
  @media screen and (min-width: 75em) {
    .custom-workout-holder .video-preview {
      margin-bottom: 1.875rem; }
      .custom-workout-holder .video-preview .button {
        min-width: 13.75rem; } }

.workout-list .columns {
  margin-bottom: 1.5625rem; }
  @media screen and (min-width: 75em) {
    .workout-list .columns {
      margin-bottom: 2.8125rem; } }

.cw-slider-slider {
  margin-top: 50px;
  padding: 0 15px; }
  @media screen and (max-width: 63.9375em) {
    .cw-slider-slider {
      display: none; } }
  @media screen and (min-width: 90em) {
    .cw-slider-slider {
      margin-top: 90px; } }
  .cw-slider-slider .slick-slide {
    height: 150px;
    padding: 0 40px; }
    @media screen and (min-width: 75em) {
      .cw-slider-slider .slick-slide {
        height: 165px;
        padding: 0 80px; } }
    @media screen and (min-width: 90em) {
      .cw-slider-slider .slick-slide {
        padding: 0 140px; } }
  .cw-slider-slider .slider-bg {
    height: 100%;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    cursor: pointer; }

#customWorkout {
  position: relative; }
  #customWorkout .loading-mask {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.5);
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  #customWorkout .reveal .loading-mask {
    position: absolute;
    width: 100%;
    height: 100%;
    background: white;
    z-index: 3; }
  @media screen and (min-width: 64em) {
    #customWorkout .reveal.full {
      padding-left: 30px; } }
  #customWorkout .hidden-wrap {
    display: none; }
  #customWorkout.show .hidden-wrap {
    display: block; }

#videoGallery .slick-next {
  right: -30px; }

#videoGallery .slick-prev {
  left: -30px; }

.custom-workout-preview {
  background-color: #f2f3f6;
  margin: 0 0 0.9375rem;
  padding: 0.9375rem 0.625rem;
  text-align: center; }
  @media screen and (min-width: 64em) {
    .custom-workout-preview {
      padding: 1.875rem; } }
  @media screen and (min-width: 75em) {
    .custom-workout-preview {
      padding: 3.4375rem 3.125rem 3.75rem;
      margin: 0 1.625rem 0.9375rem; } }
  .custom-workout-preview h3 {
    letter-spacing: 1px;
    margin: 0 auto 1.25rem;
    max-width: 58.125rem; }
    @media screen and (min-width: 75em) {
      .custom-workout-preview h3 {
        margin: 0 auto 2.1875rem; } }
  .custom-workout-preview p {
    font-size: 1.0625rem;
    max-width: 58.125rem;
    margin: 0 auto 1.25rem; }
    @media screen and (min-width: 75em) {
      .custom-workout-preview p {
        margin: 0 auto 1.875rem;
        font-size: 1.25rem; } }
  .custom-workout-preview .button {
    margin-bottom: 0; }

.workout-custom-index .page-title-wrapper {
  display: none; }

.block-layered-nav h3 {
  font-weight: 400;
  font-family: 'BrandonGrotesque', sans-serif;
  letter-spacing: 1px;
  margin-bottom: 1.875rem; }

.block-layered-nav #narrow-by-list2 ol, .block-layered-nav #narrow-by-list2 ul {
  margin-bottom: 1.875rem; }
  @media screen and (min-width: 75em) {
    .block-layered-nav #narrow-by-list2 ol, .block-layered-nav #narrow-by-list2 ul {
      margin-bottom: 3.75rem; } }

.block-layered-nav ol, .block-layered-nav ul {
  list-style: none;
  margin-bottom: 0; }
  .block-layered-nav ol li, .block-layered-nav ul li {
    font-size: 1.0625rem;
    margin-bottom: 0.3125rem; }
  @media screen and (min-width: 75em) {
    .block-layered-nav ol li, .block-layered-nav ul li {
      font-size: 1.25rem; } }

.block-layered-nav .mCustomScrollbar .show-more {
  display: none; }

.about-videos {
  margin-bottom: 1.5625rem; }
  .about-videos .info-block {
    padding: 0.625rem;
    background-color: #f2f3f6;
    margin-bottom: 2px; }
    @media screen and (min-width: 48em) {
      .about-videos .info-block {
        padding: 1.25rem; } }
    @media screen and (min-width: 101.25em) {
      .about-videos .info-block {
        padding: 2.75rem 3rem 2.75rem 1.875rem; } }
    .about-videos .info-block:last-of-type {
      margin-bottom: 1.5625rem; }
      @media screen and (min-width: 75em) {
        .about-videos .info-block:last-of-type {
          margin-bottom: 2.8125rem; } }
  .about-videos .title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 1.25rem; }
    .about-videos .title h4 {
      margin-bottom: 0;
      margin-right: 0.625rem;
      overflow: hidden;
      text-overflow: ellipsis; }
  .about-videos p {
    font-size: 0.9375rem; }
    @media screen and (min-width: 75em) {
      .about-videos p {
        font-size: 1.0625rem;
        letter-spacing: 0.5px; } }

.join-workout {
  background-color: #f2f3f6;
  padding: 0.625rem;
  margin-bottom: 1.25rem; }
  @media screen and (min-width: 48em) {
    .join-workout {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      padding: 1.25rem; } }
  @media screen and (min-width: 75em) {
    .join-workout {
      padding: 2.125rem 2.5rem;
      margin-bottom: 2.375rem; } }
  .join-workout .button {
    margin: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0; }
  .join-workout p {
    margin-right: 0.625rem;
    font-size: 1.0625rem; }
    @media screen and (min-width: 48em) {
      .join-workout p {
        margin-bottom: 0;
        letter-spacing: 1px; } }
    @media screen and (min-width: 75em) {
      .join-workout p {
        font-size: 1.25rem; } }

.video-images {
  background-color: #000000; }
  .video-images .item {
    padding-top: 56.3%;
    position: relative;
    min-height: 15.625rem; }
    .video-images .item a {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.2);
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      padding: 0.625rem;
      z-index: 1; }
    .video-images .item .play-btn {
      color: #ffffff;
      text-transform: uppercase;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      border: 2px solid #ffffff;
      width: 125px;
      height: 125px;
      border-radius: 50%;
      font-size: 0; }
      @media screen and (min-width: 75em) {
        .video-images .item .play-btn {
          width: 175px;
          height: 175px; } }
    .video-images .item .preview-bg {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center center; }
    .video-images .item iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      display: none; }

.checkout-cart-index tbody {
  border: none; }

.checkout-cart-index #block-shipping {
  display: none !important; }

.checkout-cart-index .header-banner {
  display: none; }

.cart-table {
  min-width: 56.25rem; }

#shopping-cart-totals-table, .cart-totals-table {
  min-width: 1px; }
  #shopping-cart-totals-table span.price, .cart-totals-table span.price {
    white-space: nowrap; }
  #shopping-cart-totals-table tbody tr:nth-child(even), .cart-totals-table tbody tr:nth-child(even) {
    background-color: inherit; }

.product-cart-image .product-cart-descr, .description .product-cart-descr {
  overflow: hidden;
  vertical-align: middle;
  display: inline-block; }
  .product-cart-image .product-cart-descr .product-name a, .description .product-cart-descr .product-name a {
    color: #000000; }

.product-cart-image .item-options, .description .item-options {
  margin-bottom: .5rem; }
  .product-cart-image .item-options dl, .description .item-options dl {
    overflow: hidden; }
  .product-cart-image .item-options dt, .description .item-options dt {
    float: left;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 500;
    margin: 0.375rem 0.625rem 0 0; }
  .product-cart-image .item-options dd, .description .item-options dd {
    overflow: hidden;
    vertical-align: top;
    font-size: 1.0625rem;
    font-weight: 400; }

.product-cart-image .product-image {
  display: inline-block;
  width: 165px;
  height: 165px;
  margin: 0 15px 5px 0;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center; }

.product-cart-image img {
  visibility: hidden; }

.cart-totals-wrapper {
  margin-bottom: 1.5625rem; }
  .cart-totals-wrapper thead, .cart-totals-wrapper tbody, .cart-totals-wrapper tfoot {
    border: 0; }
  .cart-totals-wrapper tr {
    border: none;
    background: transparent !important; }
  .cart-totals-wrapper td, .cart-totals-wrapper th {
    padding: 0.625rem 0;
    text-align: right;
    font-weight: 500;
    color: inherit;
    text-transform: none;
    letter-spacing: inherit; }
    .cart-totals-wrapper td:last-child, .cart-totals-wrapper th:last-child {
      font-size: 1.0625rem; }
    .cart-totals-wrapper td:first-child, .cart-totals-wrapper th:first-child {
      text-align: right;
      padding-right: 3.125rem;
      font-size: 1.0625rem; }
      @media screen and (min-width: 75em) {
        .cart-totals-wrapper td:first-child, .cart-totals-wrapper th:first-child {
          font-size: 1.25rem; } }
    .cart-totals-wrapper td strong, .cart-totals-wrapper th strong {
      font-weight: 500; }
  .cart-totals-wrapper .checkout-types {
    list-style: none;
    margin-top: 1.25rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
    @media screen and (min-width: 48em) {
      .cart-totals-wrapper .checkout-types {
        margin-top: 1.875rem;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; } }
    .cart-totals-wrapper .checkout-types .paypal {
      line-height: 0; }
      .cart-totals-wrapper .checkout-types .paypal input {
        margin: 0; }
      .cart-totals-wrapper .checkout-types .paypal img {
        display: none; }
      .cart-totals-wrapper .checkout-types .paypal + .paypal {
        margin-top: 10px; }
    .cart-totals-wrapper .checkout-types button {
      margin: 0; }
    .cart-totals-wrapper .checkout-types li {
      display: inline-block; }
    .cart-totals-wrapper .checkout-types .item + .item {
      margin-top: 15px; }
      @media screen and (min-width: 48em) {
        .cart-totals-wrapper .checkout-types .item + .item {
          margin-top: 0;
          margin-left: 20px; } }
    .cart-totals-wrapper .checkout-types .checkout-types-info {
      margin-bottom: 0.9375rem;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: end;
          -ms-flex-align: end;
              align-items: flex-end; }
      @media screen and (min-width: 40em) {
        .cart-totals-wrapper .checkout-types .checkout-types-info {
          margin-right: 2.5rem;
          margin-bottom: 0; } }
      .cart-totals-wrapper .checkout-types .checkout-types-info img {
        margin-right: 1.1875rem; }
      .cart-totals-wrapper .checkout-types .checkout-types-info p {
        font-size: 0.75rem;
        line-height: 0.875rem;
        color: #a3a3a3;
        margin: 0; }
  .cart-totals-wrapper .method-checkout-cart-methods-multishipping {
    display: none !important; }
  .cart-totals-wrapper button.braintree-googlepay-button.long {
    max-width: 174px; }

.product-cart-remove .actions-toolbar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.product-cart-actions .custom-counter {
  border: none;
  margin: 0; }

.discount-form {
  position: relative;
  max-width: 18.125rem; }
  @media screen and (min-width: 48em) {
    .discount-form {
      margin-left: auto; } }
  .checkout-index-index .discount-form {
    margin-left: 0; }
  .discount-form .field-wrapper {
    position: relative; }
  .discount-form input {
    font-size: 1.0625rem;
    border: none;
    padding: 0.1875rem 1.5625rem 0.1875rem 0;
    border-bottom: 1px solid #a3a3a3;
    letter-spacing: 1px; }
    .discount-form input:focus {
      border: none;
      border-bottom: 1px solid #000000; }
    .discount-form input::-webkit-input-placeholder {
      color: #a3a3a3;
      opacity: 1;
      -webkit-transition: color .25s;
      transition: color .25s; }
    .discount-form input::-moz-placeholder {
      color: #a3a3a3;
      opacity: 1;
      -webkit-transition: color .25s;
      transition: color .25s; }
    .discount-form input:-ms-input-placeholder {
      color: #a3a3a3;
      -webkit-transition: color .25s;
      transition: color .25s; }
  .discount-form button {
    cursor: pointer;
    position: absolute;
    width: 5.625rem;
    padding: 0 0.9375rem;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 2px;
    right: 0;
    top: 0;
    font-size: 0.6875rem;
    color: #a3a3a3;
    height: 2.5rem; }
    .discount-form button.apply-coupon span span:before {
      font-weight: 900; }

@media screen and (min-width: 48em) {
  .cart-footer-actions {
    margin: 0 -0.625rem 1.875rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
    text-align: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start; } }

.cart-footer-actions .action {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  line-height: 22px;
  display: inline-block;
  cursor: pointer;
  color: #000000;
  font-family: sans-serif; }
  .cart-footer-actions .action:after {
    background-color: transparent; }
  .cart-footer-actions .action:hover:after {
    background-color: #000000; }

.cart-footer-actions .field-wrapper .action {
  color: #ffffff; }

.cart-footer-actions .item {
  padding: 0.4375rem 0; }
  @media screen and (min-width: 48em) {
    .cart-footer-actions .item {
      padding: 0.9375rem 1.5625rem; } }
  .cart-footer-actions .item.update-cart {
    display: none; }

.shopping-support {
  max-width: 26.875rem; }
  .shopping-support ul {
    list-style: none; }
    .shopping-support ul li {
      display: inline-block;
      vertical-align: top;
      font-size: 1.0625rem;
      margin-right: 1.5625rem;
      margin-bottom: 1.5625rem; }
      @media screen and (min-width: 48em) {
        .shopping-support ul li {
          margin-bottom: 2.1875rem;
          margin-right: 3.4375rem; } }
      .shopping-support ul li a {
        letter-spacing: 1px; }
  .shopping-support h4 {
    font-family: 'BrandonGrotesque', sans-serif;
    font-weight: 400;
    margin-bottom: 0.9375rem; }
  .shopping-support p {
    font-size: 1.0625rem;
    color: #a3a3a3; }
    .shopping-support p a {
      color: #000000;
      letter-spacing: 3px;
      font-weight: 400; }

@media screen and (min-width: 64em) {
  .account-login .columns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; } }

.form-list, .fieldset {
  list-style: none; }
  .form-list a, .fieldset a {
    display: inline-block;
    vertical-align: top; }
  .form-list .control, .fieldset .control {
    position: relative;
    max-width: 21.25rem;
    margin-bottom: 0.9375rem; }
    @media screen and (min-width: 75em) {
      .form-list .control, .fieldset .control {
        margin-bottom: 1.875rem; } }
  .form-list .div.mage-error, .form-list .field-error, .fieldset .div.mage-error, .fieldset .field-error {
    position: absolute;
    top: 100%;
    left: 0; }
  .form-list #password-strength-meter-container, .fieldset #password-strength-meter-container {
    display: none; }
    .form-list #password-strength-meter-container.password-weak, .fieldset #password-strength-meter-container.password-weak {
      display: block;
      color: red; }
    .form-list #password-strength-meter-container.password-medium, .fieldset #password-strength-meter-container.password-medium {
      display: block;
      color: #ffae00; }
    .form-list #password-strength-meter-container.password-strong, .form-list #password-strength-meter-container.password-very-strong, .fieldset #password-strength-meter-container.password-strong, .fieldset #password-strength-meter-container.password-very-strong {
      display: block;
      color: #3adb76; }

.checkout {
  margin-bottom: 30px; }
  @media screen and (min-width: 64em) {
    .checkout {
      margin-bottom: 0; } }
  @media screen and (min-width: 75em) {
    .checkout > .row {
      padding: 0 3rem; } }
  .checkout .payment-method {
    padding-bottom: 35px;
    margin-bottom: 35px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
    .checkout .payment-method._active .payment-method-title {
      margin-bottom: 20px; }
    .checkout .payment-method._active .payment-method-content {
      display: block; }

.checkout-onepage-success .receive-order-title .sub-title {
  text-transform: uppercase;
  font-family: inherit;
  font-weight: 400; }

.checkout-success .receive-order-info > * {
  display: block;
  margin-right: auto;
  margin-left: auto; }

.checkout-container h3 {
  font-family: 'BrandonGrotesque', sans-serif;
  text-transform: uppercase;
  font-weight: 400;
  margin-bottom: 1.875rem; }

.checkout-container .modal-header {
  display: none; }

.checkout-header {
  margin-bottom: 2.5rem; }
  @media screen and (min-width: 75em) {
    .checkout-header {
      margin-bottom: 5.625rem; } }
  .checkout-header ul {
    list-style: none; }
    @media screen and (min-width: 48em) {
      .checkout-header ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: distribute;
            justify-content: space-around;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center; } }
    .checkout-header ul li {
      margin-bottom: 0.9375rem; }
      @media screen and (min-width: 48em) {
        .checkout-header ul li {
          padding: 0 0.625rem; } }
      .checkout-header ul li.active div {
        border: 2px solid #f16567;
        color: #f16567;
        background-color: transparent;
        text-indent: 0;
        background-image: none; }
      .checkout-header ul li.complete div {
        border: 1px solid #f16567;
        background-color: #f16567;
        overflow: hidden;
        text-indent: -9999px;
        background-image: url(../images/icons/check-symbol.svg);
        background-repeat: no-repeat;
        background-position: center center;
        background-size: 28%; }
        @media screen and (min-width: 48em) {
          .checkout-header ul li.complete div {
            background-size: 34%; } }
    .checkout-header ul a {
      color: #000000;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
      @media screen and (min-width: 48em) {
        .checkout-header ul a {
          display: block; } }
    .checkout-header ul div {
      width: 2.5rem;
      height: 2.5rem;
      border-radius: 1.875rem;
      text-align: center;
      line-height: 2.375rem;
      font-size: 1.5rem;
      border: 1px solid #000000;
      margin-right: 0.9375rem; }
      @media screen and (min-width: 48em) {
        .checkout-header ul div {
          width: 3.75rem;
          height: 3.75rem;
          margin: 0 auto 1.25rem;
          line-height: 3.625rem; } }
    .checkout-header ul span {
      font-size: 1.0625rem;
      letter-spacing: 1px; }
      @media screen and (min-width: 75em) {
        .checkout-header ul span {
          font-size: 1.25rem; } }

.checkoutSteps {
  margin: 0;
  list-style: none;
  max-width: 43.75rem; }
  body.review .checkoutSteps {
    max-width: 100%; }
    @media screen and (min-width: 75em) {
      body.review .checkoutSteps .order-review-details {
        margin-bottom: 1.875rem; } }
  body.payment .checkoutSteps {
    max-width: 100%; }
    @media screen and (min-width: 64em) {
      body.payment .checkoutSteps .payment-info {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between; } }
    body.payment .checkoutSteps .payment-form {
      max-width: 38.75rem;
      width: 100%; }
      @media screen and (min-width: 64em) {
        body.payment .checkoutSteps .payment-form {
          max-width: 100%;
          width: 50.75%;
          padding-right: 1.875rem; } }

.form-list {
  list-style: none; }
  .form-list ul {
    list-style: none;
    margin: 0; }

.remember-me-popup {
  display: none; }

.checkout-form .col-1 {
  margin-bottom: 1.25rem; }

.checkout-form .form-list {
  margin: 0 0 1.5625rem;
  list-style: none; }
  .checkout-form .form-list .fields {
    margin: 0 -0.9375rem;
    letter-spacing: -6px; }
  .checkout-form .form-list .field {
    padding: 0 0.9375rem;
    letter-spacing: 0; }
    @media screen and (min-width: 48em) {
      .checkout-form .form-list .field {
        display: inline-block;
        vertical-align: top;
        width: 50%; } }
  .checkout-form .form-list input.input-text, .checkout-form .form-list select:not(.address-select) {
    max-width: 18.125rem; }

.checkout-form .control {
  margin-bottom: 1.25rem; }

.checkout-form .control-radio {
  display: inline-block;
  vertical-align: top;
  margin-right: 1.875rem;
  margin-top: 0.3125rem; }

.customer-login {
  margin-bottom: 1.25rem; }
  .customer-login ul {
    color: #a3a3a3;
    list-style: none;
    margin: 0; }
    .customer-login ul li {
      font-size: 1.0625rem; }
      @media screen and (min-width: 64em) {
        .customer-login ul li {
          font-size: 1.25rem; } }
    .customer-login ul li:before {
      content: '\2014';
      margin-right: 0.625rem; }

.shipping-address-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -12px; }
  .shipping-address-items .shipping-address-item {
    font-size: 14px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    padding: 20px 30px;
    margin: 0 12px 20px;
    width: calc(100% - 24px); }
    @media screen and (min-width: 48em) {
      .shipping-address-items .shipping-address-item {
        width: calc(50% - 24px); } }
  .shipping-address-items .button {
    margin: 15px 0 0; }

.benefits.custom-list {
  margin-bottom: 16px; }

.sp-methods {
  margin-bottom: 1.875rem; }
  .sp-methods.sp-paygate dd {
    margin-bottom: 0; }
  .sp-methods.sp-paygate dt {
    margin-bottom: 1.25rem; }
  .sp-methods dd {
    margin-bottom: 0.9375rem; }
  .sp-methods ul {
    list-style: none;
    margin-left: 0; }

.payment-info-holder label {
  margin-bottom: 0.625rem; }

.payment-info-holder ul {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0; }
  .payment-info-holder ul li {
    margin: 0 0.9375rem 1.0625rem 0; }

.payment-info-holder .checkout-types-info {
  margin-bottom: 1.5625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end; }
  .payment-info-holder .checkout-types-info img {
    margin-right: 1.1875rem; }
  .payment-info-holder .checkout-types-info p {
    font-size: 0.75rem;
    line-height: 0.875rem;
    color: #a3a3a3;
    margin: 0; }

#checkout-review-table-wrapper {
  margin-bottom: 1.25rem; }

.checkout-totals {
  padding: 0.3125rem 0 1.25rem;
  border-bottom: 1px solid #edeef1;
  margin-bottom: 1.25rem; }
  @media screen and (min-width: 75em) {
    .checkout-totals {
      margin-bottom: 2.5rem; } }
  .checkout-totals table {
    min-width: 1px; }

.receive-order-info h3 {
  margin-bottom: 0; }

.receive-order-info p {
  font-size: 0.9375rem;
  max-width: 25rem; }
  @media screen and (min-width: 75em) {
    .receive-order-info p {
      font-size: 1.0625rem; } }

.receive-order-info span {
  font-size: 1.0625rem; }
  @media screen and (min-width: 75em) {
    .receive-order-info span {
      font-size: 1.25rem; } }

.receive-order-info a {
  margin-bottom: 2.1875rem;
  margin-top: 1.375rem; }

.receive-order-info .receive-order-title {
  margin-bottom: 1.5625rem; }

.receive-order-info .link-print {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

#checkout-review-submit {
  overflow: hidden; }
  #checkout-review-submit .buttons-set {
    float: right;
    margin-bottom: 1.0625rem; }
    #checkout-review-submit .buttons-set .button {
      margin-bottom: 0; }
  #checkout-review-submit .policy-agreements {
    float: left; }
  #checkout-review-submit .checkout-agreements {
    list-style: none;
    margin-left: 0;
    margin-right: 0.625rem;
    margin-bottom: 1.0625rem; }
    #checkout-review-submit .checkout-agreements .agreement-content {
      display: none; }
    #checkout-review-submit .checkout-agreements p {
      margin-bottom: 0.625rem; }

#payment_form_authorizenet_cim {
  margin-bottom: 1.25rem; }

.checkout-index-index .loading-mask {
  position: fixed !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 999;
  background: rgba(255, 255, 255, 0.5); }
  .checkout-index-index .loading-mask .loader {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
  .checkout-index-index .loading-mask img {
    position: static !important; }

.checkout-index-index .header-banner {
  display: none; }

.opc-wrapper ul {
  list-style-type: none; }

@media screen and (min-width: 48em) {
  .custom-address-form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 -10px; } }

@media screen and (min-width: 48em) {
  .custom-address-form > .field {
    width: 50%;
    padding: 0 10px; } }

.custom-address-form legend.label {
  display: none; }

.custom-address-form .field-tooltip {
  display: none; }

.custom-address-form .wide-field {
  width: 100%; }
  @media screen and (min-width: 48em) {
    .custom-address-form .wide-field {
      padding: 0 10px; } }

.additional-address-info {
  margin-bottom: 12px; }

@media screen and (min-width: 48em) {
  .step-content .form-login {
    margin: 0 -10px; } }

.step-content .form-login .field, .step-content .form-login .actions-toolbar {
  width: 100%; }
  @media screen and (min-width: 48em) {
    .step-content .form-login .field, .step-content .form-login .actions-toolbar {
      padding: 0 10px; } }

@media screen and (min-width: 48em) {
  .step-content .form-login .control {
    max-width: none;
    margin-bottom: 15px; } }

.step-content .note {
  display: inline-block;
  margin-bottom: 10px; }

#customer-email-fieldset .custom-address-form {
  margin: 0; }
  @media screen and (min-width: 48em) {
    #customer-email-fieldset .custom-address-form .field {
      width: 50%; } }

.table-checkout-shipping-method label {
  height: 16px; }

.table-checkout-shipping-method tr {
  cursor: pointer; }

#checkout-shipping-method-load {
  overflow: auto; }

.new-address-popup {
  margin-top: 10px; }

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

.opc-estimated-wrapper {
  display: none; }

.opc-block-summary label, .opc-block-summary .toggle {
  cursor: pointer; }

.opc-block-summary dt, .opc-block-summary dd {
  display: inline-block; }

.opc-block-summary table {
  min-width: unset;
  margin-bottom: 25px; }
  @media screen and (min-width: 75em) {
    .opc-block-summary table {
      margin-bottom: 40px; } }
  .opc-block-summary table tr {
    background-color: #f2f3f6; }
    .opc-block-summary table tr:last-of-type {
      border-bottom: 0; }
  .opc-block-summary table th, .opc-block-summary table td {
    padding: 15px 20px;
    color: #000000; }

.opc-block-summary caption {
  display: none; }

.items-in-cart {
  background-color: #f2f3f6;
  margin-bottom: 1.5625rem;
  position: relative;
  width: 100%;
  overflow: hidden; }
  @media screen and (min-width: 75em) {
    .items-in-cart {
      margin-bottom: 2.5rem; } }
  .items-in-cart > .accordion-title {
    display: block;
    padding: 15px 20px;
    cursor: pointer; }
    .items-in-cart > .accordion-title.is-active label:before {
      -webkit-transform: rotate(0);
              transform: rotate(0); }
    .items-in-cart > .accordion-title label {
      position: relative;
      font-weight: 400;
      padding-right: 12px; }
      .items-in-cart > .accordion-title label:before {
        -webkit-transform: rotate(-90deg);
                transform: rotate(-90deg);
        -webkit-transform-origin: center center;
                transform-origin: center center;
        -webkit-transition: -webkit-transform .3s ease;
        transition: -webkit-transform .3s ease;
        transition: transform .3s ease;
        transition: transform .3s ease, -webkit-transform .3s ease; }
      .items-in-cart > .accordion-title label:before, .items-in-cart > .accordion-title label:after {
        content: '';
        position: absolute;
        right: 0;
        top: calc(50% - 1px);
        height: 2px;
        width: 10px;
        background-color: #000000; }
  .items-in-cart > .accordion-body {
    padding: 0.8125rem 1.0625rem;
    border-top: 1px solid rgba(0, 0, 0, 0.1); }
    @media screen and (min-width: 75em) {
      .items-in-cart > .accordion-body {
        padding: 20px 10px; } }
  .items-in-cart .product-item + .product-item {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid rgba(0, 0, 0, 0.1); }
  .items-in-cart .product-item > .product {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .items-in-cart .product-item-details {
    padding-left: 8px; }
  .items-in-cart .options .accordion-title {
    text-decoration: underline; }

.opc-payment .step-title {
  margin-bottom: 15px; }

.opc-payment .button {
  margin-bottom: 0; }

.payment-method-title img {
  height: 20px;
  width: auto;
  max-height: 20px;
  vertical-align: bottom;
  padding-right: 5px; }

.payment-method-content {
  display: none; }
  @media screen and (min-width: 48em) {
    .payment-method-content {
      padding-left: 40px; } }

.field-select-billing {
  padding-top: 15px; }
  .field-select-billing .control {
    width: 100%;
    max-width: none; }

.billing-address-same-as-shipping-block {
  margin-bottom: 10px; }

.action-help-block {
  margin-top: 10px;
  font-size: 16px; }

.opc-block-shipping-information [class^="ship-"] {
  margin-bottom: 25px; }
  @media screen and (min-width: 75em) {
    .opc-block-shipping-information [class^="ship-"] {
      margin-bottom: 40px; } }
  .opc-block-shipping-information [class^="ship-"] .shipping-information-title {
    background: #f2f3f6;
    padding: 15px 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .opc-block-shipping-information [class^="ship-"] .shipping-information-title button {
      cursor: pointer;
      font-family: "BrandonGrotesque", Helvetica, Roboto, Arial, sans-serif;
      color: #a3a3a3;
      -webkit-transition: color 0.15s ease;
      transition: color 0.15s ease; }
      .opc-block-shipping-information [class^="ship-"] .shipping-information-title button:hover {
        color: #000000; }
  .opc-block-shipping-information [class^="ship-"] .shipping-information-content {
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-top: 0;
    padding: 15px 20px;
    font-size: 14px; }

.billing-address-details {
  font-size: 14px; }
  .billing-address-details button {
    cursor: pointer;
    padding: 5px 0;
    color: #a3a3a3;
    -webkit-transition: color 0.3s ease;
    transition: color 0.3s ease; }
    .billing-address-details button:hover {
      color: #000000; }

.credit-card-types {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-left: 0; }

.authorize-cim .field.date, .authorize-cim .field.cvv {
  display: inline-block;
  width: calc(50% - 2px);
  vertical-align: top; }

.authorize-cim .payment-method-content {
  padding-left: 0; }

.checkout-billing-address .actions-toolbar {
  margin-top: 15px; }

.checkout-agreements-block {
  margin: 20px 0; }
  .checkout-agreements-block .checkbox + label {
    font-size: 15px; }

.order-review-form-container .checkout-agreement {
  display: inline-block; }

.store-credit-add {
  margin-top: 35px; }
  .store-credit-add .payment-option-title {
    background: #f2f3f6;
    display: block;
    padding: 15px 20px;
    cursor: pointer;
    position: relative; }
    .store-credit-add .payment-option-title:before {
      -webkit-transform: rotate(-90deg);
              transform: rotate(-90deg);
      -webkit-transform-origin: center center;
              transform-origin: center center;
      -webkit-transition: -webkit-transform .3s ease;
      transition: -webkit-transform .3s ease;
      transition: transform .3s ease;
      transition: transform .3s ease, -webkit-transform .3s ease; }
    .store-credit-add .payment-option-title:before, .store-credit-add .payment-option-title:after {
      content: '';
      position: absolute;
      right: 20px;
      top: calc(50% - 1px);
      height: 2px;
      width: 10px;
      background-color: #000000; }
  .store-credit-add._active .payment-option-title:before {
    -webkit-transform: rotate(0);
            transform: rotate(0); }
  .store-credit-add .payment-option-content {
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-top: 0;
    padding: 15px 20px;
    font-size: 14px; }

.account h1, .account .h1 {
  text-align: left;
  margin-top: 1.25rem;
  margin-bottom: 1.25rem; }

.account .form-list .fields {
  margin: 0 -0.9375rem;
  letter-spacing: -6px; }

.account .form-list .field {
  padding: 0 0.9375rem;
  letter-spacing: 0; }
  @media screen and (min-width: 48em) {
    .account .form-list .field {
      display: inline-block;
      vertical-align: top;
      width: 50%; } }

.account .form-list input.input-text, .account .form-list select {
  max-width: 18.125rem; }

.account .control {
  margin-bottom: 1.25rem; }

.account h3 {
  text-transform: uppercase;
  font-family: 'BrandonGrotesque', sans-serif;
  font-weight: 400; }

.account .ui-tooltip {
  z-index: 800;
  background: #ffffff; }

.account .tracking-title {
  display: inline-block;
  background: #000000;
  font-weight: normal;
  text-transform: uppercase;
  color: #ffffff;
  padding: 5px 10px;
  font-size: 13px;
  letter-spacing: 3px;
  margin-bottom: 10px; }

.account .order-tracking {
  margin-bottom: 1.5625rem; }
  @media screen and (min-width: 75em) {
    .account .order-tracking {
      margin-bottom: 2.8125rem; } }

.count-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin: 20px 0; }

@media screen and (min-width: 48em) {
  .dashboard .title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; } }

.dashboard .welcome-msg {
  max-width: 53.125rem;
  margin-bottom: 1.5625rem; }
  .dashboard .welcome-msg p {
    font-size: 1.0625rem;
    color: #a3a3a3; }
    @media screen and (min-width: 75em) {
      .dashboard .welcome-msg p {
        font-size: 1.25rem; } }

.dashboard .box-recent .box-head {
  margin-bottom: 1.5625rem; }
  @media screen and (min-width: 40em) {
    .dashboard .box-recent .box-head {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: baseline;
          -ms-flex-align: baseline;
              align-items: baseline; } }
  .dashboard .box-recent .box-head a.underline {
    font-size: 1.0625rem; }
    @media screen and (min-width: 40em) {
      .dashboard .box-recent .box-head a.underline {
        margin: 0 3.125rem; } }
    @media screen and (min-width: 75em) {
      .dashboard .box-recent .box-head a.underline {
        font-size: 1.25rem; } }

.dashboard .block-title h3 {
  margin-bottom: 2.1875rem; }

.dashboard .top .pagination {
  display: none; }

.dashboard .bottom .count-container {
  display: none; }

.account-info {
  margin: 0 -0.0625rem; }
  @media screen and (min-width: 48em) {
    .account-info {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; } }
  .account-info .box {
    margin: 0 0.0625rem 1.5625rem;
    padding: 0.9375rem;
    background-color: #f2f3f6;
    position: relative; }
    @media screen and (min-width: 48em) {
      .account-info .box {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        width: 50%; } }
    @media screen and (min-width: 75em) {
      .account-info .box {
        -webkit-box-pack: start;
            -ms-flex-pack: start;
                justify-content: flex-start;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        padding: 1.875rem;
        margin: 0 0.0625rem 2.5rem; } }
    @media screen and (min-width: 75em) {
      .account-info .box.box-subscription {
        padding-right: 255px; } }
    .account-info .box span, .account-info .box a, .account-info .box p {
      font-size: 1.0625rem;
      margin: 0; }
      @media screen and (min-width: 75em) {
        .account-info .box span, .account-info .box a, .account-info .box p {
          font-size: 1.25rem; } }
    .account-info .box p {
      color: #a3a3a3; }
    .account-info .box span, .account-info .box p {
      line-height: 1.2; }
  @media screen and (min-width: 75em) {
    .account-info .underline {
      position: absolute;
      right: 1.875rem;
      bottom: 2.6875rem; } }
  .account-info .subscribe .info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .account-info .profile .picture {
    margin-bottom: 0.9375rem; }
    .account-info .profile .picture + div {
      overflow: hidden;
      text-overflow: ellipsis; }
      .account-info .profile .picture + div p {
        overflow: hidden;
        text-overflow: ellipsis; }
    @media screen and (min-width: 40em) {
      .account-info .profile .picture {
        margin-bottom: 0; } }
  @media screen and (min-width: 40em) {
    .account-info .profile .info {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; } }
  .account-info .info {
    margin-bottom: 0.9375rem; }
    @media screen and (min-width: 75em) {
      .account-info .info {
        margin: 0; } }
  .account-info .icon-holder {
    margin-right: 1.25rem;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 2.3125rem;
    height: 2.3125rem;
    border-radius: 1.25rem;
    background-color: #a3a3a3;
    background-position: center center;
    background-size: 45%;
    background-repeat: no-repeat;
    position: relative; }
    .account-info .icon-holder:before, .account-info .icon-holder:after {
      content: '';
      height: 2px;
      width: 14px;
      position: absolute;
      top: 50%;
      left: 50%;
      margin: -1px 0 0 -7px;
      background-color: #ffffff;
      display: block; }
    .account-info .icon-holder:before {
      -webkit-transform: rotate(-45deg);
              transform: rotate(-45deg); }
    .account-info .icon-holder:after {
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg); }
    .account-info .icon-holder.subscribed {
      background-color: #f16567;
      background-image: url(../images/icons/check-symbol.svg); }
      .account-info .icon-holder.subscribed:before, .account-info .icon-holder.subscribed:after {
        display: none; }
  .account-info .picture {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 5rem;
    height: 5rem;
    border-radius: 2.5rem;
    border: 1px solid rgba(0, 0, 0, 0.1);
    padding: 0.375rem;
    margin-right: 1.25rem; }
    .account-info .picture div {
      height: 100%;
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center center;
      overflow: hidden;
      border-radius: 2.5rem; }

.account-photo {
  margin-bottom: 1.25rem; }
  .account-photo .picture, .account-photo .delete-image {
    margin-bottom: 0.9375rem;
    display: block; }
  .account-photo .picture {
    width: 5rem;
    height: 5rem;
    border-radius: 2.5rem;
    border: 1px solid rgba(0, 0, 0, 0.1);
    padding: 0.375rem;
    margin-right: 1.25rem; }
    .account-photo .picture div {
      height: 100%;
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center center;
      overflow: hidden;
      border-radius: 2.5rem; }
  .account-photo .button {
    max-width: 15rem;
    overflow: hidden;
    text-overflow: ellipsis; }

.account-gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 -0.0625rem; }
  .account-gallery h3 {
    font-family: 'BrandonGrotesque', sans-serif;
    font-weight: 400;
    text-transform: capitalize; }
  .account-gallery p {
    font-size: 1.0625rem;
    color: #a3a3a3; }
    @media screen and (min-width: 75em) {
      .account-gallery p {
        font-size: 1.25rem;
        margin-bottom: 1.875rem; } }
  .account-gallery .picture {
    padding-top: 57.47%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    margin-bottom: 1.5625rem; }
  .account-gallery .item {
    margin: 0 0 2.1875rem;
    padding: 0 0.0625rem; }
    @media screen and (min-width: 75em) {
      .account-gallery .item {
        margin: 0 0 4.375rem; } }
  .account-gallery .info {
    padding: 0 1.1875rem; }
  .account-gallery .button {
    margin: 0;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    min-width: 15rem; }

.account-information, .edit-address {
  max-width: 38.75rem; }
  .account-information .change-hidden, .edit-address .change-hidden {
    position: relative;
    padding-top: 1.5625rem; }
    @media screen and (min-width: 75em) {
      .account-information .change-hidden, .edit-address .change-hidden {
        padding-top: 2.5rem; } }
    .account-information .change-hidden:before, .edit-address .change-hidden:before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 300%;
      height: 1px;
      background-color: #edeef1; }
  .account-information .button, .edit-address .button {
    margin: 0; }
  .account-information .additional-address-info, .edit-address .additional-address-info {
    margin-bottom: 0.75rem; }
    .account-information .additional-address-info:last-of-type, .edit-address .additional-address-info:last-of-type {
      margin-bottom: 1.875rem; }

.addresses-list .buttons-set {
  overflow: hidden; }
  .addresses-list .buttons-set .button {
    float: right; }

.addresses-list ol {
  list-style: none;
  margin: 0; }

.addresses-list .empty p {
  font-size: 1.0625rem; }
  @media screen and (min-width: 64em) {
    .addresses-list .empty p {
      font-size: 1.25rem; } }
  @media screen and (min-width: 75em) {
    .addresses-list .empty p {
      font-size: 1.5rem; } }

.addresses-additional h3, .addresses-additional p {
  margin-bottom: 0; }

.addresses-additional .box {
  margin-bottom: 0;
  margin-top: 1.5625rem; }
  @media screen and (min-width: 75em) {
    .addresses-additional .box {
      margin-top: 2.1875rem; } }

.addresses-additional .underline {
  margin-right: 0.625rem; }

@media screen and (min-width: 64em) {
  .addresses-primary .underline {
    position: absolute;
    top: 1.5625rem;
    right: 1.5625rem; } }

@media screen and (min-width: 75em) {
  .addresses-primary .underline {
    top: 3.125rem;
    right: 3.125rem; } }

.addresses-primary h3 {
  text-transform: capitalize;
  font-weight: 400;
  margin-bottom: 1rem; }
  @media screen and (min-width: 64em) {
    .addresses-primary h3 {
      padding-right: 3.125rem; } }

.addresses-primary li, .addresses-additional li {
  margin-bottom: 1.5625rem; }

@media screen and (min-width: 75em) {
  .addresses-primary, .addresses-additional {
    margin-bottom: 1.875rem; } }

.addresses-primary .small-12.xmedium-6.columns, .addresses-additional .small-12.xmedium-6.columns {
  margin-bottom: 30px; }

.addresses-primary .holder, .addresses-primary .box, .addresses-additional .holder, .addresses-additional .box {
  height: 100%;
  background-color: #f2f3f6;
  padding: 0.9375rem 0.625rem;
  font-size: 1.0625rem;
  position: relative; }
  @media screen and (min-width: 48em) {
    .addresses-primary .holder, .addresses-primary .box, .addresses-additional .holder, .addresses-additional .box {
      padding: 1.5625rem; } }
  @media screen and (min-width: 75em) {
    .addresses-primary .holder, .addresses-primary .box, .addresses-additional .holder, .addresses-additional .box {
      padding: 3.125rem;
      font-size: 1.25rem; } }

.addresses-primary .address, .addresses-additional .address {
  margin-bottom: 15px;
  font-size: 16px; }

.addresses-primary abbr, .addresses-additional abbr {
  display: inline-block;
  width: 100%;
  margin-bottom: 15px; }

.addresses-primary .button.action, .addresses-additional .button.action {
  margin-bottom: 15px; }
  @media screen and (max-width: 63.9375em) {
    .addresses-primary .button.action, .addresses-additional .button.action {
      margin-left: 0; } }

@media screen and (max-width: 63.9375em) {
  .addresses-primary .item.actions, .addresses-additional .item.actions {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; } }

.block-addresses-default {
  margin-bottom: 25px; }

.about-order {
  margin-bottom: 1.25rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1); }
  @media screen and (min-width: 75em) {
    .about-order {
      margin-bottom: 1.5625rem; } }
  .about-order p {
    margin-bottom: 1.0625rem;
    font-size: 1.0625rem; }
    @media screen and (min-width: 75em) {
      .about-order p {
        font-size: 1.25rem;
        margin-bottom: 1.5625rem; } }
  .about-order span {
    min-width: 6.25rem;
    display: inline-block;
    vertical-align: top; }
    @media screen and (min-width: 40em) {
      .about-order span {
        min-width: 12.5rem; } }

.order-info {
  margin-top: 1.25rem; }
  .order-info ul li, .order-info dt {
    font-size: 1.0625rem; }
    @media screen and (min-width: 75em) {
      .order-info ul li, .order-info dt {
        font-size: 1.25rem; } }
  .order-info dt {
    font-weight: normal; }

.order-info-box .box-payment .box-content {
  padding-bottom: 1.25rem;
  margin-bottom: 1.25rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.5); }
  .order-info-box .box-payment .box-content:last-child {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none; }
  .order-info-box .box-payment .box-content .cards-list li {
    font-weight: 400;
    list-style-type: none; }

.order-info-box .box {
  background-color: #f2f3f6;
  padding: 0.9375rem 0.625rem;
  font-size: 1.0625rem;
  position: relative;
  margin-bottom: 1.5625rem; }
  @media screen and (min-width: 48em) {
    .order-info-box .box {
      padding: 1.5625rem; } }
  @media screen and (min-width: 75em) {
    .order-info-box .box {
      padding: 3.125rem;
      font-size: 1.25rem;
      margin-bottom: 2.1875rem; } }

.order-info-box h3 {
  text-transform: capitalize !important;
  font-weight: 400 !important;
  margin-bottom: 1rem !important; }
  @media screen and (min-width: 64em) {
    .order-info-box h3 {
      padding-right: 3.125rem; } }

.order-info-box .box-content {
  font-weight: 500; }
  .order-info-box .box-content address {
    font-weight: 400; }
  .order-info-box .box-content p {
    margin: 0;
    font-size: 1.0625rem; }
    @media screen and (min-width: 75em) {
      .order-info-box .box-content p {
        font-size: 1.25rem; } }

.order-info-box .payment-method {
  margin: 0; }
  .order-info-box .payment-method .title {
    margin: 0;
    font-weight: normal; }

.order-items .table-caption {
  margin: 1.5625rem 0; }

.create-account-form.form-list .field {
  width: 100%;
  padding: 0; }

.create-account-form.form-list .fields {
  margin: 0; }

.create-account-form.form-list input.input-text, .create-account-form.form-list select {
  max-width: none; }

.order-links {
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  background: #f2f3f6;
  margin-bottom: 1.25rem;
  overflow: auto; }
  .order-links a, .order-links strong {
    display: inline-block;
    padding: 20px;
    -webkit-transition: color 0.3s ease, background-color 0.3s ease;
    transition: color 0.3s ease, background-color 0.3s ease;
    margin: 0;
    color: #000000;
    font-weight: normal;
    min-width: 150px;
    text-align: center; }
  .order-links a:hover {
    color: #ffffff;
    background: #000000; }
  .order-links .item + .item {
    border-left: 1px solid rgba(0, 0, 0, 0.1); }
  .order-links .current {
    border-top: 1px solid #000000;
    border-left: 0 !important; }
    .order-links .current + .item {
      border-left: 0 !important; }
    .order-links .current a, .order-links .current strong {
      background: #ffffff;
      color: #000000; }

.table.tracking .label {
  font-size: 13px;
  line-height: 1;
  display: inline-block;
  padding: 5px 10px;
  cursor: default;
  white-space: nowrap;
  color: #fff;
  border-radius: 0;
  background: #000; }

.credit-card-primary ol, .credit-card-primary ul {
  list-style: none;
  margin: 0; }

.credit-card-primary .card-info {
  font-weight: 500;
  margin-bottom: 1.25rem;
  font-size: 1.0625rem; }
  @media screen and (min-width: 75em) {
    .credit-card-primary .card-info {
      margin-bottom: 2rem;
      font-size: 1.25rem;
      letter-spacing: 1px; } }

.credit-card-primary .button {
  margin-bottom: 0; }
  @media screen and (min-width: 75em) {
    .credit-card-primary .button {
      margin-right: 1.625rem; } }
  @media screen and (min-width: 90em) {
    .credit-card-primary .button {
      min-width: 11.0625rem; } }

.page-print {
  background: #FFFFFF; }
  .page-print .main-container {
    padding: 0 !important; }
  .page-print table {
    min-width: unset; }
    .page-print table td {
      padding: 10px 5px; }
  .page-print .description {
    margin-top: 0 !important;
    max-width: 145px;
    overflow: hidden;
    text-overflow: ellipsis; }
    .page-print .description span {
      white-space: nowrap;
      color: #a3a3a3; }
    .page-print .description br {
      display: none; }
  .page-print .product-cart-image .product-image {
    text-align: center;
    width: 90px;
    height: 90px;
    margin: 0 5px 5px 0; }
  .page-print .product-cart-image img {
    visibility: visible;
    max-height: 100%;
    max-width: 100%;
    margin: 0; }
  .page-print tbody tr:nth-child(even) {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    background-color: #ffffff; }
  .page-print .box {
    border: 1px solid rgba(0, 0, 0, 0.1); }
  .page-print .table-caption {
    margin: 0 0 15px; }
  .page-print .messages {
    display: none; }
  .page-print .logo {
    display: inline-block;
    margin-bottom: 15px; }
  .page-print .item-options {
    margin-bottom: 0 !important; }
  .page-print .small-12 {
    max-width: 50%; }
  .page-print h1, .page-print .h1 {
    margin: 15px 0; }
  .page-print .product-item-name {
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 2px; }
  .page-print .product-cart-image .item-options dt,
  .page-print .description .item-options dt {
    font-size: 10px; }
  .page-print .product-cart-image .item-options dd,
  .page-print .description .item-options dd {
    font-size: 14px; }
  .page-print.sales-order-print .logo {
    position: absolute;
    top: 0;
    right: 0; }
  .page-print.sales-order-print .page-title-wrapper {
    padding-right: 200px; }

.page-print .print-head {
  margin: 0 0 15px; }

.page-print .print-head .logo {
  float: none;
  max-height: 50px;
  width: auto; }

@media screen and (min-width: 75em) {
  .streaming-library h1, .streaming-library .h1 {
    margin-bottom: 2.5rem; } }

#streaming-library-grid {
  position: relative; }
  @media screen and (min-width: 48em) {
    #streaming-library-grid .make-playlist {
      position: absolute;
      right: 0;
      bottom: 100%;
      margin-bottom: 30px; } }
  @media screen and (min-width: 90em) {
    #streaming-library-grid .make-playlist {
      margin-bottom: 45px; } }
  #streaming-library-grid .loading-mask {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.5);
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
  #streaming-library-grid .pagination .current {
    cursor: auto; }
    #streaming-library-grid .pagination .current a {
      padding: 0;
      cursor: auto; }
  #streaming-library-grid .hidden-wrap {
    display: none; }
  #streaming-library-grid.show .hidden-wrap {
    display: block; }
  #streaming-library-grid .cw-add a {
    color: #f16567; }

.streaming-library-list ul {
  list-style: none;
  margin: 0 auto; }
  .streaming-library-list ul li {
    margin-bottom: 1.5625rem; }
    @media screen and (min-width: 75em) {
      .streaming-library-list ul li {
        margin-bottom: 2.8125rem; } }

.streaming-library-list .preview-wrap {
  position: relative; }
  .streaming-library-list .preview-wrap .like-container {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 0.9375rem;
    color: #ffffff;
    font-size: 1.0625rem;
    letter-spacing: 1px;
    line-height: 1;
    cursor: pointer; }
    .streaming-library-list .preview-wrap .like-container i {
      line-height: 1;
      display: inline-block; }
    .streaming-library-list .preview-wrap .like-container.active i {
      color: #ffffff; }

.streaming-library-list .preview {
  padding-top: 62.16%;
  min-height: 14.375rem;
  margin-bottom: 0.625rem;
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .streaming-library-list .preview:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(3, 3, 3, 0.4);
    background-image: url(../images/icons/play-button.svg);
    background-size: 48px;
    background-repeat: no-repeat;
    background-position: center center; }
  .streaming-library-list .preview.new:before {
    content: 'New';
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    text-align: center;
    width: 5.25rem;
    height: 2rem;
    line-height: 2rem;
    background-color: #030303;
    display: block;
    color: #ffffff;
    font-size: 0.9375rem; }
    @media screen and (min-width: 64em) {
      .streaming-library-list .preview.new:before {
        font-size: 1.0625rem; } }
  .streaming-library-list .preview img {
    display: none !important; }

.streaming-library-list .name {
  font-size: 1.0625rem;
  color: #000000;
  letter-spacing: 1px;
  display: inline-block;
  margin-bottom: 0.75rem; }
  @media screen and (min-width: 75em) {
    .streaming-library-list .name {
      font-size: 1.25rem; } }

.streaming-library-list .runtime {
  font-size: 0.9375rem;
  color: #a3a3a3;
  letter-spacing: .5px;
  display: block; }
  @media screen and (min-width: 75em) {
    .streaming-library-list .runtime {
      font-size: 1.0625rem; } }

.library-filter-area {
  margin-bottom: 1.875rem; }
  .library-filter-area > div .row {
    background-color: #f2f3f6;
    margin: 0;
    padding: 0.9375rem; }
    @media screen and (min-width: 48em) {
      .library-filter-area > div .row {
        padding: 1.25rem 1.5625rem; } }
    @media screen and (min-width: 75em) {
      .library-filter-area > div .row {
        padding: 2.5rem; } }
  @media screen and (min-width: 75em) {
    .library-filter-area {
      margin-bottom: 3.75rem; } }
  .library-filter-area .inline {
    position: relative; }
    .library-filter-area .inline .custom-select {
      width: calc(100% - 60px); }
    .library-filter-area .inline .icon {
      cursor: pointer;
      position: absolute;
      top: 0;
      right: 0; }
  .library-filter-area .form-control {
    color: #a3a3a3; }
  .library-filter-area .search-form-holder {
    position: relative; }
    .library-filter-area .search-form-holder .search-icon {
      position: absolute;
      top: 50%;
      right: 10px;
      width: 14px;
      height: 14px;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      background-image: url(../images/icons/search.svg);
      background-size: contain;
      background-repeat: no-repeat;
      cursor: pointer; }
      @media screen and (min-width: 75em) {
        .library-filter-area .search-form-holder .search-icon {
          right: 20px; } }
  .library-filter-area .exchange {
    height: 2.5rem;
    width: 2.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0 0.3125rem;
    border: 1px solid #ccc;
    background-color: #ffffff; }
    .library-filter-area .exchange.disabled {
      cursor: not-allowed;
      background-color: #b4bfc2; }
      .library-filter-area .exchange.disabled.active .icon-heart-empty {
        color: #000000 !important; }
    .library-filter-area .exchange span {
      color: #a3a3a3 !important; }
    .library-filter-area .exchange .icon-down {
      color: #000000 !important; }
    .library-filter-area .exchange.active .icon-heart-empty {
      color: #000000 !important; }
    .library-filter-area .exchange.up .icon-down {
      color: #a3a3a3 !important; }
    .library-filter-area .exchange.up .icon-up {
      color: #000000 !important; }

.subscribe-overlay {
  position: relative;
  height: 100%; }
  .subscribe-overlay.visible {
    padding: 15px; }
    .subscribe-overlay.visible:before {
      content: '';
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.2);
      position: absolute;
      z-index: 50;
      cursor: not-allowed;
      left: 0;
      top: 0; }

.wordpress-homepage-view .page-wrap > .row > .small-12 {
  position: relative; }

@media screen and (min-width: 64em) {
  .wordpress-homepage-view .search-blog {
    top: 23px; } }

@media screen and (min-width: 90em) {
  .wordpress-homepage-view .search-blog {
    top: 36px; } }

.search-blog div.mage-error {
  opacity: 0; }

.search-blog input.mage-error {
  border-color: red; }

.search-blog .validation-advice {
  opacity: 0; }

.wordpress-post-view .page-title {
  margin-bottom: 25px; }
  @media screen and (min-width: 48em) {
    .wordpress-post-view .page-title {
      font-size: 40px; } }
  @media screen and (min-width: 90em) {
    .wordpress-post-view .page-title {
      font-size: 50px; } }

.wordpress-post-view .post-content > * {
  max-width: 100%; }
  @media screen and (min-width: 48em) {
    .wordpress-post-view .post-content > * {
      max-width: 610px; } }

/* Always set the map height explicitly to define the size of the div
      * element that contains the map. */
/* Optional: Makes the sample page fill the window. */

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy5jc3MiLCJzb3VyY2UvZm91bmRhdGlvbi9fZm91bmRhdGlvbi5zY3NzIiwic291cmNlL2ZvdW5kYXRpb24vX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MiLCJzb3VyY2UvZm91bmRhdGlvbi9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192YXJpYWJsZXMuc2NzcyIsInNvdXJjZS9mb3VuZGF0aW9uL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX3ZlcnRpY2FsLXJoeXRobS5zY3NzIiwic291cmNlL2ZvdW5kYXRpb24vX2dsb2JhbC5zY3NzIiwic291cmNlL2ZvdW5kYXRpb24vc2V0dGluZ3MvX3NldHRpbmdzLnNjc3MiLCJzb3VyY2UvZm91bmRhdGlvbi91dGlsL19taXhpbnMuc2NzcyIsInNvdXJjZS9mb3VuZGF0aW9uL2dyaWQvX2ZsZXgtZ3JpZC5zY3NzIiwic291cmNlL2ZvdW5kYXRpb24vdXRpbC9fdW5pdC5zY3NzIiwic291cmNlL2ZvdW5kYXRpb24vZ3JpZC9fcm93LnNjc3MiLCJzb3VyY2UvZm91bmRhdGlvbi91dGlsL19icmVha3BvaW50LnNjc3MiLCJzb3VyY2UvZm91bmRhdGlvbi9ncmlkL19ndXR0ZXIuc2NzcyIsInNvdXJjZS9mb3VuZGF0aW9uL2dyaWQvX2NvbHVtbi5zY3NzIiwic291cmNlL2ZvdW5kYXRpb24vZ3JpZC9fcG9zaXRpb24uc2NzcyIsInNvdXJjZS9mb3VuZGF0aW9uL3V0aWwvX2ZsZXguc2NzcyIsInNvdXJjZS9mb3VuZGF0aW9uL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsInNvdXJjZS9mb3VuZGF0aW9uL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzIiwic291cmNlL2ZvdW5kYXRpb24vZm9ybXMvX3RleHQuc2NzcyIsInNvdXJjZS9mb3VuZGF0aW9uL2Zvcm1zL19sYWJlbC5zY3NzIiwic291cmNlL2ZvdW5kYXRpb24vZm9ybXMvX3NlbGVjdC5zY3NzIiwic291cmNlL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fcmV2ZWFsLnNjc3MiLCJzb3VyY2UvZm91bmRhdGlvbi9jb21wb25lbnRzL19idXR0b24uc2NzcyIsInNvdXJjZS9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MiLCJzb3VyY2UvZm91bmRhdGlvbi91dGlsL19jb2xvci5zY3NzIiwic291cmNlL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fZmxleC5zY3NzIiwic291cmNlL2xpYnMvX2ZvbnRzLnNjc3MiLCJzb3VyY2UvbGlicy9fZm9udGVsbG8uc2NzcyIsInNvdXJjZS9saWJzL19zbGljay5zY3NzIiwic291cmNlL2xpYnMvX3NsaWNrLXRoZW1lLnNjc3MiLCJzb3VyY2UvbGlicy9fc3dpcGVyLnNjc3MiLCJzb3VyY2UvbGlicy9faW9uLnJhbmdlU2xpZGVyLnNjc3MiLCJzb3VyY2UvbGlicy9faW9uLnJhbmdlU2xpZGVyU2tpbi5zY3NzIiwic291cmNlL2xpYnMvX2pxdWVyeS5tQ3VzdG9tU2Nyb2xsYmFyLnNjc3MiLCJzb3VyY2UvY29tcG9uZW50cy9faGVhZGVyLnNjc3MiLCJzb3VyY2UvbGlicy9fbWl4aW5zLnNjc3MiLCJzb3VyY2UvY29tcG9uZW50cy9fZm9vdGVyLWdhbGxlcnkuc2NzcyIsInNvdXJjZS9jb21wb25lbnRzL19mb290ZXIuc2NzcyIsInNvdXJjZS9jb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwic291cmNlL2NvbXBvbmVudHMvX2NvbnRlbnQtYm94ZXMuc2NzcyIsInNvdXJjZS9jb21wb25lbnRzL19zdWJzY3JpYmUtcG9wdXAuc2NzcyIsInNvdXJjZS9jb21wb25lbnRzL19jdXN0b20tZm9ybXMuc2NzcyIsInNvdXJjZS9jb21wb25lbnRzL19ibG9jay1hY2NvdW50LnNjc3MiLCJzb3VyY2UvY29tcG9uZW50cy9fbW9kYWxzLnNjc3MiLCJzb3VyY2UvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwic291cmNlL2NvbXBvbmVudHMvX3Byb2R1Y3RzLWdyaWQuc2NzcyIsInNvdXJjZS9jb21wb25lbnRzL19wcm9kdWN0LXNsaWRlci5zY3NzIiwic291cmNlL2NvbXBvbmVudHMvX2N1c3RvbWVyY3JlZGl0LnNjc3MiLCJzb3VyY2UvY29tcG9uZW50cy9fZmFxLnNjc3MiLCJzb3VyY2UvY29tcG9uZW50cy9faW50cm9kdWNpbmdfc2xpZGVyLnNjc3MiLCJzb3VyY2UvY29tcG9uZW50cy9fcHJpdmF0ZS13b3Jrb3V0LnNjc3MiLCJzb3VyY2UvY29tcG9uZW50cy9fYmVzdHNlbGxlcnMtc2xpZGVyLnNjc3MiLCJzb3VyY2UvY29tcG9uZW50cy9fcGxheWxpc3Quc2NzcyIsInNvdXJjZS9jb21wb25lbnRzL19hdXRoZW50aWNhdGlvbi1wb3B1cC5zY3NzIiwic291cmNlL3BhZ2VzL19ob21lLnNjc3MiLCJzb3VyY2UvY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwic291cmNlL3BhZ2VzL19nbG9iYWwuc2NzcyIsInNvdXJjZS9jb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyIsInNvdXJjZS9wYWdlcy9fc3RhdGljLXBhZ2VzLnNjc3MiLCJzb3VyY2UvcGFnZXMvX2Fib3V0LnNjc3MiLCJzb3VyY2UvcGFnZXMvX2NvbnRhY3RzLnNjc3MiLCJzb3VyY2UvcGFnZXMvX3Nob3AtaW5kZXguc2NzcyIsInNvdXJjZS9wYWdlcy9fcHJvZHVjdC1saXN0aW5nLnNjc3MiLCJzb3VyY2UvcGFnZXMvX2NhdGFsb2ctcHJvZHVjdC12aWV3LnNjc3MiLCJzb3VyY2UvcGFnZXMvX2N1c3RvbS13b3Jrb3V0LnNjc3MiLCJzb3VyY2UvcGFnZXMvX3ZpZGVvLXByb2R1Y3QtbGlzdGluZy5zY3NzIiwic291cmNlL3BhZ2VzL19zaG9wcGluZy1jYXJ0LnNjc3MiLCJzb3VyY2UvcGFnZXMvX3JlZ2lzdGVyLnNjc3MiLCJzb3VyY2UvcGFnZXMvX2NoZWNrb3V0LnNjc3MiLCJzb3VyY2UvcGFnZXMvX2Rhc2hib2FyZC5zY3NzIiwic291cmNlL3BhZ2VzL19wYXltZW50LW1ldGhvZHMuc2NzcyIsInNvdXJjZS9wYWdlcy9fcHJpbnQuc2NzcyIsInNvdXJjZS9wYWdlcy9fc3RyZWFtaW5nLWxpYnJhcnkuc2NzcyIsInNvdXJjZS9wYWdlcy9fYmxvZy5zY3NzIiwic3R5bGVzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUJBQWlCO0FDQWpCOzs7OztHQUtHO0FDd0NELGlFQUFpRTtBQUcvRDtvRkFDZ0Y7QUFFaEY7Ozs7O09BS0c7QUFFSDtFQUNFLHdCQzFDdUI7RUQwQ1MsT0FBTztFQVFyQyxrQkFBaUI7RUFBRSxPQUFPO0VBRTVCLDJCQUEwQjtFQUFFLE9BQU87RUFDbkMsK0JBQThCO0VBQUUsT0FBTyxFQUN4Qzs7QUFJRDtvRkFDZ0Y7QUFFaEY7O09BRUc7QUFFSDtFQUNFLFVBQVMsRUFDVjs7QUFFRDs7T0FFRztBQUVIOzs7Ozs7RUFNRSxlQUFjLEVBQ2Y7O0FBRUQ7OztPQUdHO0FBRUg7RUU5RUYsZUFYdUM7RUZvR2pDLGlCQUFnQixFQUVuQjs7QUFvQ0Q7b0ZBQ2dGO0FBdUNoRjs7T0FFRztBQUVIOztFQUVFLGVBQWMsRUFDZjs7QUFFRDs7T0FFRztBQUVIO0VBS0ksaUJDdkxZLEVEeUxmOztBQUVEOzs7T0FHRztBQUVIO0VBQ0UsZ0NBQXVCO1VBQXZCLHdCQUF1QjtFQUFFLE9BQU87RUFDaEMsVUFBUztFQUFFLE9BQU87RUFDbEIsa0JBQWlCO0VBQUUsT0FBTyxFQUMzQjs7QUFFRDs7T0FFRztBQUVIO0VBQ0UsZUFBYyxFQUNmOztBQWFEOzs7T0FHRztBQUVIO0VBQ0Usa0NBQWlDO0VBQUUsT0FBTztFQUMxQyxlQUFjO0VBQUUsT0FBTyxFQUN4Qjs7QUFJRDtvRkFDZ0Y7QUFFaEY7OztPQUdHO0FBRUg7RUFDRSw4QkFBNkI7RUFBRSxPQUFPO0VBQ3RDLHNDQUFxQztFQUFFLE9BQU8sRUFDL0M7O0FBRUQ7OztPQUdHO0FBRUg7O0VBRUUsaUJBQWdCLEVBQ2pCOztBQUlEO29GQUNnRjtBQUVoRjs7O09B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Y0s3SStDO0VMOEkvQyxlSzlJK0MsRUwrSWhEOztBQUlEO0VNeklKLHVCRFZxRCxFTHFKaEQ7O0FBVEQ7RUFDRSxvQks3SStDO01MNkkvQyx3Qks3SStDO1VMNkkvQyxvQks3SStDO0VMOEkvQyxxQks5SStDLEVMK0loRDs7QUFJRDtFTXpJSixpQkRWcUQsRUxxSmhEOztBQVREO0VBQ0Usb0JLN0krQztNTDZJL0Msd0JLN0krQztVTDZJL0Msb0JLN0krQztFTDhJL0MscUJLOUkrQyxFTCtJaEQ7O0FBSUQ7RU16SUosdUJEVnFELEVMcUpoRDs7QUFURDtFQUNFLG9CSzdJK0M7TUw2SS9DLGtCSzdJK0M7VUw2SS9DLGNLN0krQztFTDhJL0MsZUs5SStDLEVMK0loRDs7QUFJRDtFTXpJSix1QkRWcUQsRUxxSmhEOztBQVREO0VBQ0Usb0JLN0krQztNTDZJL0Msd0JLN0krQztVTDZJL0Msb0JLN0krQztFTDhJL0MscUJLOUkrQyxFTCtJaEQ7O0FBSUQ7RU16SUosaUJEVnFELEVMcUpoRDs7QUFURDtFQUNFLG9CSzdJK0M7TUw2SS9DLHdCSzdJK0M7VUw2SS9DLG9CSzdJK0M7RUw4SS9DLHFCSzlJK0MsRUwrSWhEOztBQUlEO0VNeklKLHVCRFZxRCxFTHFKaEQ7O0FBVEQ7RUFDRSxvQks3SStDO01MNkkvQyxtQks3SStDO1VMNkkvQyxlSzdJK0M7RUw4SS9DLGdCSzlJK0MsRUwrSWhEOztBQUlEO0VNeklKLHVCRFZxRCxFTHFKaEQ7O0FBSUQ7RU81R0osNkJQMkdnQjtNTzNHaEIsa0JQMkdnQjtVTzNHaEIsU1AyR2dCLEVBR1g7O0FBRkQ7RU81R0osNkJQMkdnQjtNTzNHaEIsa0JQMkdnQjtVTzNHaEIsU1AyR2dCLEVBR1g7O0FBRkQ7RU81R0osNkJQMkdnQjtNTzNHaEIsa0JQMkdnQjtVTzNHaEIsU1AyR2dCLEVBR1g7O0FBRkQ7RU81R0osNkJQMkdnQjtNTzNHaEIsa0JQMkdnQjtVTzNHaEIsU1AyR2dCLEVBR1g7O0FBRkQ7RU81R0osNkJQMkdnQjtNTzNHaEIsa0JQMkdnQjtVTzNHaEIsU1AyR2dCLEVBR1g7O0FBRkQ7RU81R0osNkJQMkdnQjtNTzNHaEIsa0JQMkdnQjtVTzNHaEIsU1AyR2dCLEVBR1g7O0FBSUQ7RUF2Rkosb0JBQWU7TUFBZixnQkFBZSxFQXlGVjtFQXZGTDtJQUdFLG9CQUZzQjtRQUV0QixtQkFGc0I7WUFFdEIsZUFGc0I7SUFHdEIsZ0JBSHNCLEVBSXZCOztBQWdGRztFQXZGSixvQkFBZTtNQUFmLGdCQUFlLEVBeUZWO0VBdkZMO0lBR0Usb0JBRnNCO1FBRXRCLGtCQUZzQjtZQUV0QixjQUZzQjtJQUd0QixlQUhzQixFQUl2Qjs7QUFnRkc7RUF2Rkosb0JBQWU7TUFBZixnQkFBZSxFQXlGVjtFQXZGTDtJQUdFLG9CQUZzQjtRQUV0Qix3QkFGc0I7WUFFdEIsb0JBRnNCO0lBR3RCLHFCQUhzQixFQUl2Qjs7QUFnRkc7RUF2Rkosb0JBQWU7TUFBZixnQkFBZSxFQXlGVjtFQXZGTDtJQUdFLG9CQUZzQjtRQUV0QixrQkFGc0I7WUFFdEIsY0FGc0I7SUFHdEIsZUFIc0IsRUFJdkI7O0FBZ0ZHO0VBdkZKLG9CQUFlO01BQWYsZ0JBQWUsRUF5RlY7RUF2Rkw7SUFHRSxvQkFGc0I7UUFFdEIsa0JBRnNCO1lBRXRCLGNBRnNCO0lBR3RCLGVBSHNCLEVBSXZCOztBQWdGRztFQXZGSixvQkFBZTtNQUFmLGdCQUFlLEVBeUZWO0VBdkZMO0lBR0Usb0JBRnNCO1FBRXRCLHdCQUZzQjtZQUV0QixvQkFGc0I7SUFHdEIscUJBSHNCLEVBSXZCOztBQWdGRztFQXZGSixvQkFBZTtNQUFmLGdCQUFlLEVBeUZWO0VBdkZMO0lBR0Usb0JBRnNCO1FBRXRCLHdCQUZzQjtZQUV0QixvQkFGc0I7SUFHdEIscUJBSHNCLEVBSXZCOztBQWdGRztFQXZGSixvQkFBZTtNQUFmLGdCQUFlLEVBeUZWO0VBdkZMO0lBR0Usb0JBRnNCO1FBRXRCLG9CQUZzQjtZQUV0QixnQkFGc0I7SUFHdEIsaUJBSHNCLEVBSXZCOztBQXlHQztFSWxNRixnQkFBZTtFQUNmLGlCQUFnQixFSmtNOEI7O0FBRzVDO0VJaE1GLHVCQUQ4QjtFQUU5Qix3QkFGOEIsRUpvTTJCOztBR3RHdkQ7RUhtREU7SUFDRSxvQks3SStDO1FMNkkvQyx1Qks3SStDO1lMNkkvQyxtQks3SStDO0lMOEkvQyxvQks5SStDLEVMK0loRDtFQUlEO0lNeklKLGdCRGJnQyxFTHdKM0I7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLHdCSzdJK0M7WUw2SS9DLG9CSzdJK0M7SUw4SS9DLHFCSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosc0JEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msa0JLN0krQztZTDZJL0MsY0s3SStDO0lMOEkvQyxlSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosdUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msd0JLN0krQztZTDZJL0Msb0JLN0krQztJTDhJL0MscUJLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSixpQkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyx3Qks3SStDO1lMNkkvQyxvQks3SStDO0lMOEkvQyxxQks5SStDLEVMK0loRDtFQUlEO0lNeklKLHVCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLGtCSzdJK0M7WUw2SS9DLGNLN0krQztJTDhJL0MsZUs5SStDLEVMK0loRDtFQUlEO0lNeklKLHVCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLHdCSzdJK0M7WUw2SS9DLG9CSzdJK0M7SUw4SS9DLHFCSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosaUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msd0JLN0krQztZTDZJL0Msb0JLN0krQztJTDhJL0MscUJLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSix1QkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyxrQks3SStDO1lMNkkvQyxjSzdJK0M7SUw4SS9DLGVLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSix1QkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkv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SixzQkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyxrQks3SStDO1lMNkkvQyxjSzdJK0M7SUw4SS9DLGVLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSix1QkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyx3Qks3SStDO1lMNkkvQyxvQks3SStDO0lMOEkvQyxxQks5SStDLEVMK0loRDtFQUlEO0lNeklKLGlCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLHdCSzdJK0M7WUw2SS9DLG9CSzdJK0M7SUw4SS9DLHFCSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosdUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msa0JLN0krQztZTDZJL0MsY0s3SStDO0lMOEkvQyxlSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosdUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msd0JLN0krQztZTDZJL0Msb0JLN0krQztJTDhJL0MscUJLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSixpQkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyx3Qks3SStDO1lMNkkvQyxvQks3SStDO0lMOEkvQyxxQks5SStDLEVMK0loRDtFQUlEO0lNeklKLHVCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLGtCSzdJK0M7WUw2SS9DLGNLN0krQztJTDhJL0MsZUs5SStDLEVMK0loRDtFQUlEO0lNeklKLHVCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLHdCSzdJK0M7WUw2SS9DLG9CSzdJK0M7SUw4SS9DLHFCSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosaUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msd0JLN0krQztZTDZJL0Msb0JLN0krQztJTDhJL0MscUJLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSix1QkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyxtQks3SStDO1lM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RDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msd0JLN0krQztZTDZJL0Msb0JLN0krQztJTDhJL0MscUJLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSix1QkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyxrQks3SStDO1lMNkkvQyxjSzdJK0M7SUw4SS9DLGVLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSix1QkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyx3Qks3SStDO1lMNkkvQyxvQks3SStDO0lMOEkvQyxxQks5SStDLEVMK0loRDtFQUlEO0lNeklKLGlCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLHdCSzdJK0M7WUw2SS9DLG9CSzdJK0M7SUw4SS9DLHFCSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosdUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msa0JLN0krQztZTDZJL0MsY0s3SStDO0lMOEkvQyxlSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosdUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msd0JLN0krQztZTDZJL0Msb0JLN0krQztJTDhJL0MscUJLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSixpQkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyx3Qks3SStDO1lMNkkvQyxvQks3SStDO0lMOEkvQyxxQks5SStDLEVMK0loRDtFQUlEO0lNeklKLHVCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLG1CSzdJK0M7WUw2SS9DLGVLN0krQztJTDhJL0MsZ0JLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSix1QkRWcUQsRUxxSmhEO0VBSUQ7SU81R0osNkJQMkdnQjtRTzNHaEIsa0JQMkdnQjtZTzNHaEIsU1AyR2dCLEVBR1g7RUFGRDtJTzVHSiw2QlAyR2dCO1FPM0doQixrQlAyR2dCO1lPM0doQixTUDJHZ0IsRUFHWDtFQUZEO0lPNUdKLDZCUDJHZ0I7UU8zR2hCLGtCUDJHZ0I7WU8zR2hCLFNQMkdnQixFQUdYO0VBRkQ7SU81R0osNkJQMkdnQjtRTzNHaEIsa0JQMkdnQjtZTzNHaEIsU1AyR2dCLEVBR1g7RUFGRDtJTzVHSiw2QlAyR2dCO1FPM0doQixrQlAyR2dCO1lPM0doQixTUDJHZ0IsRUFHWDtFQUZEO0lPNUdKLDZCUDJHZ0I7UU8zR2hCLGtCUDJHZ0I7WU8zR2hCLFNQMkdnQixFQUdYO0VBSUQ7SUF2Rkosb0JBQWU7UUFBZixnQkFBZSxFQXlGVjtJQXZGTDtNQUdFLG9CQUZzQjtVQUV0QixtQkFGc0I7Y0FFdEIsZUFGc0I7TUFHdEIsZ0JBSHNCLEVBSXZCO0VBZ0ZHO0lBdkZKLG9CQUFlO1FBQWYsZ0JBQWUsRUF5RlY7SUF2Rkw7TUFHRSxvQkFGc0I7VUFFdEIsa0JBRnNCO2NBRXRCLGNBRnNCO01BR3RCLGVBSHNCLEVBSXZCO0VBZ0ZHO0lBdkZKLG9CQUFlO1FBQWYsZ0JBQWUsRUF5RlY7SUF2Rkw7TUFHRSxvQkFGc0I7VUFFdEIsd0JBRnNCO2NBRXRCLG9CQUZzQjtNQUd0QixxQkFIc0IsRUFJdkI7RUFnRkc7SUF2Rkosb0JBQWU7UUFBZixnQkFBZSxFQXlGVjtJQXZGTDtNQUdFLG9CQUZzQjtVQUV0QixrQkFGc0I7Y0FFdEIsY0FGc0I7TUFHdEIsZUFIc0IsRUFJdkI7RUFnRkc7SUF2Rkosb0JBQWU7UUFBZixnQkFBZSxFQXlGVjtJQXZGTDtNQUdFLG9CQUZzQjtVQUV0QixrQkFGc0I7Y0FFdEIsY0FGc0I7TUFHdEIsZUFIc0IsRUFJdkI7RUFnRkc7SUF2Rkosb0JBQWU7UUFBZixnQkFBZSxFQXlGVjtJQXZGTDtNQUdFLG9CQUZzQjtVQUV0Qix3QkFGc0I7Y0FFdEIsb0JBRnNCO01BR3RCLHFCQUhzQixFQUl2QjtFQWdGRztJQXZGSixvQkFBZTtRQUFmLGdCQUFlLEVBeUZWO0lBdkZMO01BR0Usb0JBRnNCO1VBRXRCLHdCQUZzQjtjQUV0QixvQkFGc0I7TUFHdEIscUJBSHNCLEVBSXZCO0VBZ0ZHO0lBdkZKLG9CQUFlO1FBQWYsZ0JBQWUsRUF5RlY7SUF2Rkw7TUFHRSxvQkFGc0I7VUFFdEIsb0JBRnNCO2NBRXRCLGdCQUZzQjtNQUd0QixpQkFIc0IsRUFJdkIsRUFBQTs7QUdVQztFSDZFSTtJQUNFLG9CQTlJTTtRQThJTixrQkE5SU07WUE4SU4sY0E5SU0sRUErSVAsRUFBQTs7QUFJRDtFQUVJLG9CQUEyQjtNQUEzQixtQkFBMkI7VUFBM0IsZUFBMkIsRUFLNUI7RUcxRlA7SUhtRkk7TUFLTSxvQkF4SkU7VUF3SkYsa0JBeEpFO2NBd0pGLGNBeEpFLEVBMEpMLEVBQUE7O0FHMUZQO0VIK0ZBO0lJbE1GLGdCQUFlO0lBQ2YsaUJBQWdCLEVKa004QjtFQUc1QztJSWhNRix3QkFEOEI7SUFFOUIseUJBRjhCLEVKb00yQixFQUFBOztBR3RHdkQ7RUhtREU7SUFDRSxvQks3SStDO1FMNkkvQyx1Qks3SStDO1lMNkkvQyxtQks3SStDO0lMOEkvQyxvQks5SStDLEVMK0loRDtFQUlEO0lNeklKLGdCRGJnQyxFTHdKM0I7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLHdCSzdJK0M7WUw2SS9DLG9CSzdJK0M7SUw4SS9DLHFCSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosc0JEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msa0JLN0krQztZTDZJL0MsY0s3SStDO0lMOEkvQyxlSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosdUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msd0JLN0krQztZTDZJL0Msb0JLN0krQztJTDhJL0MscUJLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSixpQkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyx3Qks3SStDO1lMNkkvQyxvQks3SStDO0lMOEkvQyxxQks5SStDLEVMK0loRDtFQUlEO0lNeklKLHVCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLGtCSzdJK0M7WUw2SS9DLGNLN0krQztJTDhJL0MsZUs5SStDLEVMK0loRDtFQUlEO0lNeklKLHVCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLHdCSzdJK0M7WUw2SS9DLG9CSzdJK0M7SUw4SS9DLHFCSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosaUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msd0JLN0krQztZTDZJL0Msb0JLN0krQztJTDhJL0MscUJLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSix1QkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyxrQks3SStDO1lMNkkvQyxjSzdJK0M7SUw4SS9DLGVLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSix1QkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyx3Qks3SStDO1lMNkkvQyxvQks3SStDO0lMOEkvQyxxQks5SStDLEVMK0loRDtFQUlEO0lNeklKLGlCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLHdCSzdJK0M7WUw2SS9DLG9CSzdJK0M7SUw4SS9DLHFCSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosdUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0MsbUJLN0krQztZTDZJL0MsZUs3SStDO0lMOEkvQyxnQks5SStDLEVMK0loRDtFQUlEO0lNeklKLHVCRFZxRCxFTHFKaEQ7RUFJRDtJTzVHSiw2QlAyR2dCO1FPM0doQixrQlAyR2dCO1lPM0doQixTUDJHZ0IsRUFHWDtFQUZEO0lPNUdKLDZCUDJHZ0I7UU8zR2hCLGtCUDJHZ0I7WU8zR2hCLFNQMkdnQixFQUdYO0VBRkQ7SU81R0osNkJQMkdnQjtRTzNHaEIsa0JQMkdnQjtZTzNHaEIsU1AyR2dCLEVBR1g7RUFGRDtJTzVHSiw2QlAyR2dCO1FPM0doQixrQlAyR2dCO1lPM0doQixTUDJHZ0IsRUFHWDtFQUZEO0lPNUdKLDZCUDJHZ0I7UU8zR2hCLGtCUDJHZ0I7WU8zR2hCLFNQMkdnQixFQUdYO0VBRkQ7SU81R0osNkJQMkdnQjtRTzNHaEIsa0JQMkdnQjtZTzNHaEIsU1AyR2dCLEVBR1g7RUFJRDtJQXZGSixvQkFBZTtRQUFmLGdCQUFlLEVBeUZWO0lBdkZMO01BR0Usb0JBRnNCO1VBRXRCLG1CQUZzQjtjQUV0QixlQUZzQjtNQUd0QixnQkFIc0IsRUFJdkI7RUFnRkc7SUF2Rkosb0JBQWU7UUFBZixnQkFBZSxFQXlGVjtJQXZGTDtNQUdFLG9CQUZzQjtVQUV0QixrQkFGc0I7Y0FFdEIsY0FGc0I7TUFHdEIsZUFIc0IsRUFJdkI7RUFnRkc7SUF2Rkosb0JBQWU7UUFBZixnQkFBZSxFQXlGVjtJQXZGTDtNQUdFLG9CQUZzQjtVQUV0Qix3QkFGc0I7Y0FFdEIsb0JBRnNCO01BR3RCLHFCQUhzQixFQUl2QjtFQWdGRztJQXZGSixvQkFBZTtRQUFmLGdCQUFlLEVBeUZWO0lBdkZMO01BR0Usb0JBRnNCO1VBRXRCLGtCQUZzQjtjQUV0QixjQUZzQjtNQUd0QixlQUhzQixFQUl2QjtFQWdGRztJQXZGSixvQkFBZTtRQUFmLGdCQUFlLEVBeUZWO0lBdkZMO01BR0Usb0JBRnNCO1VBRXRCLGtCQUZzQjtjQUV0QixjQUZzQjtNQUd0QixlQUhzQixFQUl2QjtFQWdGRztJQXZGSixvQkFBZTtRQUFmLGdCQUFlLEVBeUZWO0lBdkZMO01BR0Usb0JBRnNCO1VBRXRCLHdCQUZzQjtjQUV0QixvQkFGc0I7TUFHdEIscUJBSHNCLEVBSXZCO0VBZ0ZHO0lBdkZKLG9CQUFlO1FBQWYsZ0JBQWUsRUF5RlY7SUF2Rkw7TUFHRSxvQkFGc0I7VUFFdEIsd0JBRnNCO2NBRXRCLG9CQUZzQjtNQUd0QixxQkFIc0IsRUFJdkI7RUFnRkc7SUF2Rkosb0JBQWU7UUFBZixnQkFBZSxFQXlGVjtJQXZGTDtNQUdFLG9CQUZzQjtVQUV0QixvQkFGc0I7Y0FFdEIsZ0JBRnNCO01BR3RCLGlCQUhzQixFQUl2QixFQUFBOztBR1VDO0VINkVJO0lBQ0Usb0JBOUlNO1FBOElOLGtCQTlJTTtZQThJTixjQTlJTSxFQStJUCxFQUFBOztBQUlEO0VBRUksb0JBQTJCO01BQTNCLG1CQUEyQjtVQUEzQixlQUEyQixFQUs1QjtFRzFGUDtJSG1GSTtNQUtNLG9CQXhKRTtVQXdKRixrQkF4SkU7Y0F3SkYsY0F4SkUsRUEwSkwsRUFBQTs7QUcxRlA7RUgrRkE7SUlsTUYsZ0JBQWU7SUFDZixpQkFBZ0IsRUprTThCO0VBRzVDO0lJaE1GLHdCQUQ4QjtJQUU5Qix5QkFGOEIsRUpvTTJCLEVBQUE7O0FHdEd2RDtFSG1ERTtJQUNFLG9CSzdJK0M7UUw2SS9DLHVCSzdJK0M7WUw2SS9DLG1CSzdJK0M7SUw4SS9DLG9CSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosZ0JEYmdDLEVMd0ozQjtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msd0JLN0krQztZTDZJL0Msb0JLN0krQztJTDhJL0MscUJLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSixzQkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyxrQks3SStDO1lMNkkvQyxjSzdJK0M7SUw4SS9DLGVLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSix1QkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyx3Qks3SStDO1lMNkkvQyxvQks3SStDO0lMOEkvQyxxQks5SStDLEVMK0loRDtFQUlEO0lNeklKLGlCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLHdCSzdJK0M7WUw2SS9DLG9CSzdJK0M7SUw4SS9DLHFCSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosdUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msa0JLN0krQztZTDZJL0MsY0s3SStDO0lMOEkvQyxlSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosdUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msd0JLN0krQztZTDZJL0Msb0JLN0krQztJTDhJL0MscUJLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSixpQkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyx3Qks3SStDO1lMNkkvQyxvQks3SStDO0lMOEkvQyxxQks5SStDLEVMK0loRDtFQUlEO0lNeklKLHVCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLGtCSzdJK0M7WUw2SS9DLGNLN0krQztJTDhJL0MsZUs5SStDLEVMK0loRDtFQUlEO0lNeklKLHVCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLHdCSzdJK0M7WUw2SS9DLG9CSzdJK0M7SUw4SS9DLHFCSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosaUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msd0JLN0krQztZTDZJL0Msb0JLN0krQztJTDhJL0MscUJLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSix1QkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyxtQks3SStDO1lMNkkvQyxlSzdJK0M7SUw4SS9DLGdCSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosdUJEVnFELEVMcUpoRDtFQUlEO0lPNUdKLDZCUDJHZ0I7UU8zR2hCLGtCUDJHZ0I7WU8zR2hCLFNQMkdnQixFQUdYO0VBRkQ7SU81R0osNkJQMkdnQjtRTzNHaEIsa0JQMkdnQjtZTzNHaEIsU1AyR2dCLEVBR1g7RUFGRDtJTzVHSiw2QlAyR2dCO1FPM0doQixrQlAyR2dCO1lPM0doQixTUDJHZ0IsRUFHWDtFQUZEO0lPNUdKLDZCUDJHZ0I7UU8zR2hCLGtCUDJHZ0I7WU8zR2hCLFNQMkdnQixFQUdYO0VBRkQ7SU81R0osNkJQMkdnQjtRTzNHaEIsa0JQMkdnQjtZTzNHaEIsU1AyR2dCLEVBR1g7RUFGRDtJTzVHSiw2QlAyR2dCO1FPM0doQixrQlAyR2dCO1lPM0doQixTUDJHZ0IsRUFHWDtFQUlEO0lBdkZKLG9CQUFlO1FBQWYsZ0JBQWUsRUF5RlY7SUF2Rkw7TUFHRSxvQkFGc0I7VUFFdEIsbUJBRnNCO2NBRXRCLGVBRnNCO01BR3RCLGdCQUhzQixFQUl2QjtFQWdGRztJQXZGSixvQkFBZTtRQUFmLGdCQUFlLEVBeUZWO0lBdkZMO01BR0Usb0JBRnNCO1VBRXRCLGtCQUZzQjtjQUV0QixjQUZzQjtNQUd0QixlQUhzQixFQUl2QjtFQWdGRztJQXZGSixvQkFBZTtRQUFmLGdCQUFlLEVBeUZWO0lBdkZMO01BR0Usb0JBRnNCO1VBRXRCLHdCQUZzQjtjQUV0QixvQkFGc0I7TUFHdEIscUJBSHNCLEVBSXZCO0VBZ0ZHO0lBdkZKLG9CQUFlO1FBQWYsZ0JBQWUsRUF5RlY7SUF2Rkw7TUFHRSxvQkFGc0I7VUFFdEIsa0JBRnNCO2NBRXRCLGNBRnNCO01BR3RCLGVBSHNCLEVBSXZCO0VBZ0ZHO0lBdkZKLG9CQUFlO1FBQWYsZ0JBQWUsRUF5RlY7SUF2Rkw7TUFHRSxvQkFGc0I7VUFFdEIsa0JBRnNCO2NBRXRCLGNBRnNCO01BR3RCLGVBSHNCLEVBSXZCO0VBZ0ZHO0lBdkZKLG9CQUFlO1FBQWYsZ0JBQWUsRUF5RlY7SUF2Rkw7TUFHRSxvQkFGc0I7VUFFdEIsd0JBRnNCO2NBRXRCLG9CQUZzQjtNQUd0QixxQkFIc0IsRUFJdkI7RUFnRkc7SUF2Rkosb0JBQWU7UUFBZixnQkFBZSxFQXlGVjtJQXZGTDtNQUdFLG9CQUZzQjtVQUV0Qix3QkFGc0I7Y0FFdEIsb0JBRnNCO01BR3RCLHFCQUhzQixFQUl2QjtFQWdGRztJQXZGSixvQkFBZTtRQUFmLGdCQUFlLEVBeUZWO0lBdkZMO01BR0Usb0JBRnNCO1VBRXRCLG9CQUZzQjtjQUV0QixnQkFGc0I7TUFHdEIsaUJBSHNCLEVBSXZCLEVBQUE7O0FHVUM7RUg2RUk7SUFDRSxvQkE5SU07UUE4SU4sa0JBOUlNO1lBOElOLGNBOUlNLEVBK0lQLEVBQUE7O0FBSUQ7RUFFSSxvQkFBMkI7TUFBM0IsbUJBQTJCO1VBQTNCLGVBQTJCLEVBSzVCO0VHMUZQO0lIbUZJO01BS00sb0JBeEpFO1VBd0pGLGtCQXhKRTtjQXdKRixjQXhKRSxFQTBKTCxFQUFBOztBRzFGUDtFSCtGQTtJSWxNRixnQkFBZTtJQUNmLGlCQUFnQixFSmtNOEI7RUFHNUM7SUloTUYsd0JBRDhCO0lBRTlCLHlCQUY4QixFSm9NMkIsRUFBQTs7QUd0R3ZEO0VIbURFO0lBQ0Usb0JLN0krQztRTDZJL0MsdUJLN0krQztZTDZJL0MsbUJLN0krQztJTDhJL0Msb0JLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSixnQkRiZ0MsRUx3SjNCO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyx3Qks3SStDO1lMNkkvQyxvQks3SStDO0lMOEkvQyxxQks5SStDLEVMK0loRDtFQUlEO0lNeklKLHNCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLGtCSzdJK0M7WUw2SS9DLGNLN0krQztJTDhJL0MsZUs5SStDLEVMK0loRDtFQUlEO0lNeklKLHVCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLHdCSzdJK0M7WUw2SS9DLG9CSzdJK0M7SUw4SS9DLHFCSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosaUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msd0JLN0krQztZTDZJL0Msb0JLN0krQztJTDhJL0MscUJLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSix1QkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyxrQks3SStDO1lMNkkvQyxjSzdJK0M7SUw4SS9DLGVLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSix1QkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyx3Qks3SStDO1lMNkkvQyxvQks3SStDO0lMOEkvQyxxQks5SStDLEVMK0loRDtFQUlEO0lNeklKLGlCRFZxRCxFTHFKaEQ7RUFURDtJQUNFLG9CSzdJK0M7UUw2SS9DLHdCSzdJK0M7WUw2SS9DLG9CSzdJK0M7SUw4SS9DLHFCSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosdUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msa0JLN0krQztZTDZJL0MsY0s3SStDO0lMOEkvQyxlSzlJK0MsRUwrSWhEO0VBSUQ7SU16SUosdUJEVnFELEVMcUpoRDtFQVREO0lBQ0Usb0JLN0krQztRTDZJL0Msd0JLN0krQztZTDZJL0Msb0JLN0krQztJTDhJL0MscUJLOUkrQyxFTCtJaEQ7RUFJRDtJTXpJSixpQkRWcUQsRUxxSmhEO0VBVEQ7SUFDRSxvQks3SStDO1FMNkkvQyx3Qks3SStDO1lMNkkv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O0lBSUksb0JQaFQ2QyxFTzZVaEQ7RUFqQ0Q7SUFJSSxvQlBoVDZDLEVPNlVoRDtFQWpDRDtJQUlJLHFCUGhUNkMsRU82VWhEO0VBakNEO0lBSUksZ0JQaFQ2QyxFTzZVaEQsRUFBQTs7QUx4Ukw7RUt1UEk7SUFJSSxvQlBoVDZDLEVPNlVoRDtFQTFDUDtJQWFVLGdCUGhUNkMsRU82VWhEO0VBakNEO0lBSUksa0JQaFQ2QyxFTzZVaEQ7RUFqQ0Q7SUFJSSxtQlBoVDZDLEVPNlVoRDtFQWpDRDtJQUlJLHFCUGhUNkMsRU82VWhEO0VBakNEO0lBSUksZ0JQaFQ2QyxFTzZVaEQsRUFBQTs7QWRuSEw7RWMwSEEscUJBQW9CO0VBQ3BCLGVWdFVlO0VVdVVmLHNCVmpPeUI7RVVtT3pCLGdCQUFlLEVBYWhCO0VBbEJEO0lBU0ksZVY1VVMsRVVnVlY7RUFiSDtJQWdCSSxVQUFTLEVBQ1Y7O0FkdkxEO0VjNExBLFlBQVc7RUFFWCxrQlAzV3FEO0VPNFdyRCxVQUFTO0VBQ1QscUJWcFB5QjtFVXNQekIsY0FBYTtFQUNiLGdCQUFlO0VBQ2YsaUNWbldpQjtFVW9XakIsZUFBYyxFQUNmOztBQUdEOzs7RUFHRSxvQlY5UTBCO0VVK1ExQiw0QlY3UHdCO0VVOFB4QixpQlZqUnNCLEVVa1J2Qjs7QUFHRDtFQUNFLG1CQUFrQixFQUNuQjs7QUFHRDtFQUNFLGVWdlFnQjtFVXdRaEIsc0JWMVFrQixFVTJRbkI7O0FBR0Q7RUFDRSxlVjdRZ0IsRVU4UWpCOztBQUdEO0VBRUkscUJWbFIyQjtFVW1SM0IsaUJBQWdCLEVBQ2pCOztBQUlIO0VBQ0Usb0JWeFJ5QixFVThSMUI7RUFQRDtJQUlJLHNCVnpSOEI7SVUwUjlCLGtCVmpZbUIsRVVrWXBCOztBQUlIO0VBQ0UsaUJWdlQwQjtFVXdUMUIsdUJQL1pTO0VPZ2FULCtCVnRaaUIsRVU0WmxCO0VBVEQ7SUFNSSxpQlY3VG9CO0lVOFRwQixlVnhaUyxFVXlaVjs7QUFJSDtFQUNFLGVBQWM7RUFDZCxxQlAvYXFEO0VPZ2JyRCxlVmphZSxFVXNhaEI7RUFSRDtJQU1JLGNWM1M2QixF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U0FBUTtJQUNSLFVBQVM7SUFDVCxvQmVnTlk7SWY3TVYsOENBQXFEO0lBQ3JELHdCQUF1QjtJQUN2Qix1QkFBc0I7SWVpTnRCLG1CQUFrQjtJQUNsQixXQUFVO0lBRVYsc0JBQXFCO0lBQ3JCLGFBQU87SUFDUCxpQmhCaUN1QixFZ0JoQ3hCO0VBZ0NEO0lBcUVJLFlBQVc7SUFDWCxZQUFXO0lBQ1gsZUFBZ0MsRUFDakM7RUF4RUg7SUExSEEsMEJoQnRGd0I7SWdCdUZ4QixlaEI1RWEsRWdCa1JWO0lBcE1IO01BQ0UsMEJoQmhGVztNZ0JpRlgsZWhCaEZXLEVnQmlGWjtFQW9IRDtJQTFHQSw4QkFOd0I7SUFPeEIsZWhCN0ZhO0lnQjhGYiwwQmhCOUZhO0lnQitGYiw0QmIvR3VELEVhc1NwRDtJWGpQRDtNV2lLRjtRQXJHRSw0QmJqSHFELEVhc1NwRCxFQUFBO0lBbExIO01BQ0UsMEJoQnJHVztNZ0JzR1gsZWhCckdXLEVnQnNHWjtFWGxFQztJV2lLRjtNQW1GTSxzQmJ6U2lEO01hMFNqRCwyQmIxU2lEO01hMlNqRCwyQmIzU2lELEVhNlNwRCxFQUFBO0VYeFBEO0lXaUtGO01BMEZNLHNCYmhUaUQ7TWFpVGpELDJCYmpUaUQsRWFtVHBELEVBQUE7RUE3Rkg7SUErRkksa0JiclRtRDtJYXNUbkQsZWJ0VG1EO0lhMlRuRCxtQ0FBa0M7SUFDbEMsMEJiNVRtRDtJYTZUbkQsNkJBQTRCLEVBQzdCO0lBeEdIO01Ba0dNLGNBQWEsRUFDZDs7QUN6REw7RUFqSEEsWUFBVztFQUNYLG9CakJ4SGtCO0VpQnlIbEIsaUJqQnJIZSxFaUJzT2Q7RUF2TUQ7OztJQUdFLDBCQ2xCNkM7SURtQjdDLDBCakI5Q1csRWlCK0NaO0VBR0Q7SUFDRSxrQ2RwRXFEO0ljcUVyRCxrQmpCMUNxQixFaUIyQ3RCO0VBR0Q7SUFDRSxvQkM5QjZDO0lEK0I3QyxlakIzRFcsRWlCNERaO0VBR0Q7SUFDRSxvQkNwQzZDO0lEcUM3QyxlakJqRVcsRWlCa0VaO0VBR0Q7O0lBSUksd0JBQXVCLEVBQ3hCO0VBTEg7Ozs7SUFVSSxrQ2QvRm1EO0ljZ0duRCxrQmpCckVtQjtJaUJzRW5CLGlCQUFZLEVBQ2I7RUFJSDs7SUFHSSxrQ2R6R21ELEVjMEdwRDtFQXZFQztJQUNFLGlCQUFnQjtJQUNoQiwwQkNPeUMsRUROMUM7RUE4RUQ7SUFFRSwwQmpCckdPLEVpQnNHUjtJQXBFTDtNQUNFLGlCQUFnQjtNQUNoQixpQ0NUNkM7TURVN0MsMEJqQnJDVyxFaUJzQ1o7O0FaRkM7RVlzTEE7SUFDRSxjQUFhLEVBQ2Q7RUFHSDtJQUNFLGNBQWEsRUFDZDtFQUVEOzs7SUFHRSxlQUFjLEVBQ2Y7RUFFRDtJQUNFLGNBQWEsRUFDZCxFQUFBOztBQWNEO0VBM0dBLGVBQWM7RUFDZCxZQUFXO0VBQ1gsaUJBQWdCLEVBMkdmOztBQXBHQztFQUNFLDBCakJvV21FLEVpQm5XcEU7O0FBS0Q7RUFDRSwwQmpCK1ZtRSxFaUI5VnBFOztBQUtEO0VBQ0UsMEJqQmdWeUQsRWlCL1UxRDs7QUFNQztFQUNFLDBCakJ5VW1GLEVpQnhVcEY7O0FBa0ZMO0VBQ0UsaUJBQWdCLEVBS2pCO0VBTkQ7SUFJSSxZQUFXLEVBQ1o7O0FFcFVEO0VWb0NGLHNCQXBDaUI7TUFvQ2pCLG1CQXBDaUI7VUFvQ2pCLDBCQXBDaUIsRVVFZDs7QUFGRDtFVm9DRix5QkFuQ2dCO01BbUNoQixzQkFuQ2dCO1VBbUNoQix3QkFuQ2dCLEVVQ2I7O0FBRkQ7RVZvQ0YsMEJBbEN3QjtNQWtDeEIsdUJBbEN3QjtVQWtDeEIsK0JBbEN3QixFVUFyQjs7QUFGRDtFVm9DRiwwQkFqQ3NCO01BaUN0Qiw4QkFqQ3NCLEVVRG5COztBQUlEO0VWK0JGLHlCQTlCaUI7TUE4QmpCLHNCQTlCaUI7VUE4QmpCLHdCQTlCaUIsRVVDZDs7QUFFRDtFVndDRiwyQkEzQ2lCO01BMkNqQix1QkEzQ2lCLEVVS2Q7O0FBTkQ7RVYrQkYsdUJBN0JrQjtNQTZCbEIsb0JBN0JrQjtVQTZCbEIsc0JBN0JrQixFVUFmOztBQUVEO0VWd0NGLHlCQTFDa0I7TUEwQ2xCLHFCQTFDa0IsRVVJZjs7QUFORDtFVitCRiwwQkE1QmdCO01BNEJoQix1QkE1QmdCO1VBNEJoQixvQkE1QmdCLEVVRGI7O0FBRUQ7RVZ3Q0YsNEJBekNnQjtNQXlDaEIsbUJBekNnQixFVUdiOztBQU5EO0VWK0JGLDJCQTNCa0I7TUEyQmxCLHdCQTNCa0I7VUEyQmxCLHFCQTNCa0IsRVVGZjs7QUFFRDtFVndDRiw2QkF4Q2tCO01Bd0NsQixvQkF4Q2tCLEVVRWY7O0FqQnNKQztFTzVHSiw2QlV0Q2dCO01Wc0NoQixrQlV0Q2dCO1VWc0NoQixTVXRDZ0IsRUFHWDs7QWpCK0lEO0VPNUdKLDZCVXRDZ0I7TVZzQ2hCLGtCVXRDZ0I7VVZzQ2hCLFNVdENnQixFQUdYOztBakIrSUQ7RU81R0osNkJVdENnQjtNVnNDaEIsa0JVdENnQjtVVnNDaEIsU1V0Q2dCLEVBR1g7O0FqQitJRDtFTzVHSiw2QlV0Q2dCO01Wc0NoQixrQlV0Q2dCO1VWc0NoQixTVXRDZ0IsRUFHWDs7QWpCK0lEO0VPNUdKLDZCVXRDZ0I7TVZzQ2hCLGtCVXRDZ0I7VVZzQ2hCLFNVdENnQixFQUdYOztBakIrSUQ7RU81R0osNkJVdENnQjtNVnNDaEIsa0JVdENnQjtVVnNDaEIsU1V0Q2dCLEVBR1g7O0FkK0VIO0VIZ0VFO0lPNUdKLDZCVXRDZ0I7UVZzQ2hCLGtCVXRDZ0I7WVZzQ2hCLFNVdENnQixFQUdYO0VqQitJRDtJTzVHSiw2QlV0Q2dCO1FWc0NoQixrQlV0Q2dCO1lWc0NoQixTVXRDZ0IsRUFHWDtFakIrSUQ7SU81R0osNkJVdENnQjtRVnNDaEIsa0JVdENnQjtZVnNDaEIsU1V0Q2dCLEVBR1g7RWpCK0lEO0lPNUdKLDZCVXRDZ0I7UVZzQ2hCLGtCVXRDZ0I7WVZzQ2hCLFNVdENnQixFQUdYO0VqQitJRDtJTzVHSiw2QlV0Q2dCO1FWc0NoQixrQlV0Q2dCO1lWc0NoQixTVXRDZ0IsRUFHWDtFakIrSUQ7SU81R0osNkJVdENnQjtRVnNDaEIsa0JVdENnQjtZVnNDaEIsU1V0Q2dCLEVBR1gsRUFBQTs7QWQrRUg7RUhnRUU7SU81R0osNkJVdENnQjtRVnNDaEIsa0JVdENnQjtZVnNDaEIsU1V0Q2dCLEVBR1g7RWpCK0lEO0lPNUdKLDZCVXRDZ0I7UVZzQ2hCLGtCVXRDZ0I7WVZzQ2hCLFNVdENnQixFQUdYO0VqQitJRDtJTzVHSiw2QlV0Q2dCO1FWc0NoQixrQlV0Q2dCO1lWc0NoQixTVXRDZ0IsRUFHWDtFakIrSUQ7SU81R0osNkJVdENnQjtRVnNDaEIsa0JVdENnQjtZVnNDaEIsU1V0Q2dCLEVBR1g7RWpCK0lEO0lPNUdKLDZCVXRDZ0I7UVZzQ2hCLGtCVXRDZ0I7WVZzQ2hCLFNVdENnQixFQUdYO0VqQitJRDtJTzVHSiw2QlV0Q2dCO1FWc0NoQixrQlV0Q2dCO1lWc0NoQixTVXRDZ0IsRUFHWCxFQUFBOztBZCtFSDtFSGdFRTtJTzVHSiw2QlV0Q2dCO1FWc0NoQixrQlV0Q2dCO1lWc0NoQixTVXRDZ0IsRUFHWDtFakIrSUQ7SU81R0osNkJVdENnQjtRVnNDaEIsa0JVdENnQjtZVnNDaEIsU1V0Q2dCLEVBR1g7RWpCK0lEO0lPNUdKLDZCVXRDZ0I7UVZzQ2hCLGtCVXRDZ0I7WVZzQ2hCLFNVdENnQixFQUdYO0VqQitJRDtJTzVHSiw2QlV0Q2dCO1FWc0NoQixrQlV0Q2dCO1lWc0NoQixTVXRDZ0IsRUFHWDtFakIrSUQ7SU81R0osNkJVdENnQjtRVnNDaEIsa0JVdENnQjtZVnNDaEIsU1V0Q2dCLEVBR1g7RWpCK0lEO0lPNUdKLDZCVXRDZ0I7UVZzQ2hCLGtCVXRDZ0I7WVZzQ2hCLFNVdENnQixFQUdYLEVBQUE7O0FkK0VIO0VIZ0VFO0lPNUdKLDZCVXRDZ0I7UVZzQ2hCLGtCVXRDZ0I7WVZzQ2hCLFNVdENnQixFQUdYO0VqQitJRDtJTzVHSiw2QlV0Q2dCO1FWc0NoQixrQlV0Q2dCO1lWc0NoQixTVXRDZ0IsRUFHWDtFakIrSUQ7SU81R0osNkJVdENnQjtRVnNDaEIsa0JVdENnQjtZVnNDaEIsU1V0Q2dCLEVBR1g7RWpCK0lEO0lPNUdKLDZCVXRDZ0I7UVZzQ2hCLGtCVXRDZ0I7WVZzQ2hCLFNVdENnQixFQUdYO0VqQitJRDtJTzVHSiw2QlV0Q2dCO1FWc0NoQixrQlV0Q2dCO1lWc0NoQixTVXRDZ0IsRUFHWDtFakIrSUQ7SU81R0osNkJVdENnQjtRVnNDaEIsa0JVdENnQjtZVnNDaEIsU1V0Q2dCLEVBR1gsRUFBQTs7QWQrRUg7RUhnRUU7SU81R0osNkJVdENnQjtRVnNDaEIsa0JVdENnQjtZVnNDaEIsU1V0Q2dCLEVBR1g7RWpCK0lEO0lPNUdKLDZCVXRDZ0I7UVZzQ2hCLGtCVXRDZ0I7WVZzQ2hCLFNVdENnQixFQUdYO0VqQitJRDtJTzVHSiw2QlV0Q2dCO1FWc0NoQixrQlV0Q2dCO1lWc0NoQixTVXRDZ0IsRUFHWDtFakIrSUQ7SU81R0osNkJVdENnQjtRVnNDaEIsa0JVdENnQjtZVnNDaEIsU1V0Q2dCLEVBR1g7RWpCK0lEO0lPNUdKLDZCVXRDZ0I7UVZzQ2hCLGtCVXRDZ0I7WVZzQ2hCLFNVdENnQixFQUdYO0VqQitJRDtJTzVHSiw2QlV0Q2dCO1FWc0NoQixrQlV0Q2dCO1lWc0NoQixTVXRDZ0IsRUFHWCxFQUFBOztBZCtFSDtFSGdFRTtJTzVHSiw2QlV0Q2dCO1FWc0NoQixrQlV0Q2dCO1lWc0NoQixTVXRDZ0IsRUFHWDtFakIrSUQ7SU81R0osNkJVdENnQjtRVnNDaEIsa0JVdENnQjtZVnNDaEIsU1V0Q2dCLEVBR1g7RWpCK0lEO0lPNUdKLDZCVXRDZ0I7UVZzQ2hCLGtCVXRDZ0I7WVZzQ2hCLFNVdENnQixFQUdYO0VqQitJRDtJTzVHSiw2QlV0Q2dCO1FWc0NoQixrQlV0Q2dCO1lWc0NoQixTVXRDZ0IsRUFHWDtFakIrSUQ7SU81R0osNkJVdENnQjtRVnNDaEIsa0JVdENnQjtZVnNDaEIsU1V0Q2dCLEVBR1g7RWpCK0lEO0lPNUdKLDZCVXRDZ0I7UVZzQ2hCLGtCVXRDZ0I7WVZzQ2hCLFNVdENnQixFQUdYLEVBQUE7O0FDWFA7RUFDSSxzQkFBcUI7RUFDckIsdURBQW9FO0VBQ3BFLGtUQUdvRjtFQUNwRixvQkFBbUI7RUFDbkIsbUJBQW1CLEVBQUE7O0FBR3ZCO0VBQ0ksbUNBQWtDO0VBQ2xDLGlFQUE4RTtFQUM5RSwrVkFHbUc7RUFDbkcsaUJBQWdCO0VBQ2hCLG1CQUFtQixFQUFBOztBQUd2QjtF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QlNuM0xtRDtNVG8zTG5ELG9CMkN6ekxZO1UzQ3l6TFosZ0IyQ3p6TFk7TTNDMHpMWix1QjJDenpMb0I7VTNDeXpMcEIsb0IyQ3p6TG9CO2MzQ3l6THBCLHNCMkN6ekxvQixFQUFBO00zQzB6THBCO1EyQ3h6TEUsb0JBSUQ7UUEvR1AsbUJBQU87UUFrSEMsbUJsQ3JFSTtRa0NzRUosdUJBSUQ7UWhDckJILGdCQUFhLEVBQUE7TVh1MExYO1FBQ0UseUIyQ256TEQ7UUF2SFAsZ0JBQU8sRUFBQTtRQTBIQztVQUNBO1lBM0hSLGdCQUFPLEVBQUEsRUFBQTtNM0MrNkxEO1EyQy82TE4sbUJBQU87UUFtSUMsbUJyQ3ZFVyxFQUFBO1FxQ3dFWDtVQUNBLGVsQ3hGSSxFQUFBO01UdTRMTjtRV2wxTEYsZUFBYTtRWG8xTFQsK0IyQ3Q3TEQ7UTNDczdMQyx1QjJDdDdMRDtRM0N1N0xDLHFCUzE0TEk7UWtDN0NaLHFCQUFPLEVBQUE7UUE4SUQ7VUFDQTtZQUNBLG1CbENuR21ELEVrQ3VJcEQsRUFBQTtJM0N3d0xEO01BQ0UscUIyQzc3TEM7TTNDNjdMRCxxQjJDNzdMQztNM0M2N0xELGMyQzc3TEM7TTNDODdMRCwwQjJDNXlMa0I7VTNDNHlMbEIsdUIyQzV5TGtCO2MzQzR5TGxCLG9CMkM1eUxrQjtNQWxKeEIsd0JBQU8sRUFBQTtNM0NnOExEO1EyQ3p5TEU7VUFDQSxpQkFBZ0IsRUFBQSxFQUFBO00zQzJ5TGxCO1EyQ244TE4scUJBQU87UUE2SkMscUJsQ2hIaUQ7UWtDaUhqRCxpQkFBZ0I7UUFDaEIsaUJBQWdCLEVBQUE7TTNDeXlMbEI7UTJDeDhMTixxQkFBTztRQW9LQyxxQmxDdkhpRDtRa0N3SGpELGlCbEN4SGlEO1FrQ3lIakQsZUFBQSxFQUFnQjtNM0N1eUxsQjtRMkNyeUxFLGNsQzNISTtRa0M0SEosZUFBWTtRQUNaLDBCckM1R087UXFDNkdQLG1CbEM5SEk7UWtDK0hKLGtCbEMvSEk7UWtDZ0lKLG1CQU1EO1FoQ2pGSCxlQUFhO1FYbTNMVCxzQjJDcjlMRDtRM0NzOUxDLHNCU3o2TGlEO1FUMDZMakQs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STNDdW5RcEI7TVdwa1FBLDBCQUFtQixFQUFTO0lYc2tRNUI7TUFDRSxtQlM1blFNO01rQzdDWix5QkFBTyxFQUFBO00zQzJxUUQ7UVd6a1FGO1VnQ2xHSix3QkFBTyxFQUFBLEVBQUE7TTNDOHFRRDtRMkM5cVFOLHVCQUFPLEVBcUNrQjtRQXlCbkI7VWhDb0NGO1lnQ2xHSixzQkFBTyxFQUFBLEVBNkRIO0kzQ3NuUUE7TTJDbnJRSix5QkFBTyxFQUFBO00zQ3FyUUQ7UTJDcnJRTjtVQXlFTSx3QmxDNUJNLEVBQUEsRUFBQTtNRXFEUjtRZ0NsR0osaUJBQU8sRUFBQTtJM0MwclFIO01XeGxRQSxvQ0FBa0MsRUFBQTtNWDBsUWhDO1FBQ0U7VTJDN3JRUiwwQkFrRkksRUFBQSxFQUFBO01BQ0U7UUFDQTtVQUNBLHNDQUF1QixFQUFBLEVBQUE7STNDNm1RekI7TTJDM21RRSxxQmxDMUNNO01rQzBDTixxQmxDMUNNO01rQzBDTixjbEMxQ007TUVxRFIsNkJBQW1CO01BQW5CLDhCQUFtQjtVQUFuQiwyQkFBbUI7Y0FBbkIsdUJBQW1CO01YbW1RakIseUIyQ3JzUUM7VTNDcXNRRCxzQjJDcnNRQztjM0Nxc1FELHdCMkNyc1FDO00zQ3NzUUQsYVN6cFFNO01FcURSLDRCQUE0QixFQUFFO01Yc21RNUI7UUFDRTtVMkN6c1FSLDBCQWdHSSxFQUFBLEVBQUE7TUFDRTtRQUNBO1VBQ0EsNEJBQWUsRUFBQSxFQUFBO0kzQzJtUWpCO00yQzlzUUoscUJBQU87TUFBUCxxQkFBTztNQUFQLGNBQU87TTNDZ3RRRCwwQlNucVFtRDtVVG1xUW5ELHVCU25xUW1EO2NUbXFRbkQsK0JTbnFRbUQ7TVRvcVFuRCxvQjJDem1RWTtVM0N5bVFaLGdCMkN6bVFZO00zQzBtUVosdUIyQ3ptUW9CO1UzQ3ltUXBCLG9CMkN6bVFvQjtjM0N5bVFwQixzQjJDem1Rb0IsRUFBQTtNM0MwbVFwQjtRMkN4bVFFLG9CQUlEO1FBL0dQLG1CQUFPO1FBa0hDLG1CbENyRUk7UWtDc0VKLHVCQUlEO1FoQ3JCSCxnQkFBYSxFQUFBO01YdW5RWDtRQUNFLHlCMkNubVFEO1FBdkhQLGdCQUFPLEVBQUE7UUEwSEM7VUFDQTtZQTNIUixnQkFBTyxFQUFBLEVBQUE7TTNDK3RRRDtRMkMvdFFOLG1CQUFPO1FBbUlDLG1CckN2RVcsRUFBQTtRcUN3RVg7VUFDQSxlbEN4RkksRUFBQTtNVHVyUU47UVdsb1FGLGVBQWE7UVhvb1FULCtCMkN0dVFEO1EzQ3N1UUMsdUIyQ3R1UUQ7UTNDdXVRQyxxQlMxclFJO1FrQzdDWixxQkFBTyxFQUFBO1FBOElEO1VBQ0E7WUFDQSxtQmxDbkdtRCxFa0N1SXBELEVBQUE7STNDd2pRRDtNQUNFLHFCMkM3dVFDO00zQzZ1UUQscUIyQzd1UUM7TTNDNnVRRCxjMkM3dVFDO00zQzh1UUQsMEIyQzVsUWtCO1UzQzRsUWxCLHVCMkM1bFFrQjtjM0M0bFFsQixvQjJDNWxRa0I7TUFsSnhCLHdCQUFPLEVBQUE7TTNDZ3ZRRDtRMkN6bFFFO1VBQ0EsaUJBQWdCLEVBQUEsRUFBQTtNM0MybFFsQjtRMkNudlFOLHFCQUFPO1FBNkpDLHFCbENoSGlEO1FrQ2lIakQsaUJBQWdCO1FBQ2hCLGlCQUFnQixFQUFBO00zQ3lsUWxCO1EyQ3h2UU4scUJBQU87UUFvS0MscUJsQ3ZIaUQ7UWtDd0hqRCxpQmxDeEhpRDtRa0N5SGpELGVBQUEsRUFBZ0I7TTNDdWxRbEI7UTJDcmxRRSxjbEMzSEk7UWtDNEhKLGVBQVk7UUFDWiwwQnJDNUdPO1FxQzZHUCxtQmxDOUhJO1FrQytISixrQmxDL0hJO1FrQ2dJSixtQkFNRDtRaENqRkgsZUFBYTtRWG1xUVQsc0IyQ3J3UUQ7UTNDc3dRQyxzQlN6dFFpRDtRVDB0UWpELHFCUzF0UUk7WVQwdFFKLGVTMXRRSSxFQUFBO1FUMnRRSjtVMkN4d1FSO1lBdUxNLGNsQzFJTTtZa0MySU4sZUFBWTtZQUNaLHNCQVlELEVBQUEsRUFBQTtJM0N3a1FEO01BQ0UsMEIyQ2psUUM7TWhDM0ZILDhCQUE4QjtNWDhxUTVCLG1CMkNoeFFDLEVBQUE7TTNDaXhRRDtRVy9xUUYsVUFBTyxFQUFNO01YaXJRWDtRQUNFO1VXbHJRRyxtQkFB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RUFBQSxFQUFBOztBM0R1MlRGO0VBQ0UsZUFBZSxFQUFFO0UyRDkyVG5CO0lBMEJJLDZCckRsRWlCO0lxRG1FakIsOEJsRDNFUyxFQUFBOztBVG02VGI7RUFDRSwwQjJEcjFURztFQS9CTCxxQkFnQ087RTNEczFUTCx5QlMxNlRVLEVBQTZDO0VUMjZUdkQ7SUFDRSxpQjJELzFURixFQUFLO0UzRGcyVEw7SVd4M1RFLHlCQUFtQixFQUFTO0lnRERoQztNQXVDTTtRQUNBLFVBQUEsRUFBYSxFbEQ1RlA7RUVxRFI7SWdEREo7TUEyQ00sb0JsRDNGTztNa0Q0RlAsb0JsRGhHTSxFQUE2QyxFa0QwSnREO0VBdEdIO0lBZ0RRO01oRC9DSixtQkFBbUI7TWdERHZCLHNCQXlCTyxFQXFCSyxFQUNOO0UzRHUxVEo7SUFDRSwwQjJEbjFUcUI7UTNEbTFUckIsdUIyRG4xVHFCO1kzRG0xVHJCLG9CMkRuMVRxQixFQUFJO0loRG5EekI7TWdEREo7UUF1RFksd0JsRDNHNkM7UWtENEc3QyxrQkFBaUIsRUFRcEIsRUFBQTtJaEQvREw7TWdEREo7UUEyRFksdUJBS0g7UWhEL0RMLGtCQUFtQixFQUFBLEVBQUE7SVgrNFRuQjtNQUNFO1FXaDVUSSxtQkFBYSxFQUFBLEVBQVM7SWdERGhDO01Bc0VVO1FBQ0EscUJsRDNIK0MsRWtEbUlsRCxFQUFBO0VoRDlFSDtJZ0RESjtNQTBFVSxnQmxEOUhFO01FcURSLHVCQUFtQixFQUFTLEVBQUU7RVh5NVRoQztJQUNFO00yRDM1VEosc0JBZ0ZNLEVBQUEsRUFBQTtFM0Q2MFRKO0lXNTVURTtNZ0RESixxQkF5Qk8sRUFBQSxFQTBDTTtFM0Q2MVRYO0lBQ0UsK0JTcjlUcUQ7SVRxOVRyRCwrQlNyOVRxRDtRVHE5VHJELGdDU3I5VHFEO1lUcTlUckQsNEJTcjlUcUQsRWtEdUpoRDtJaERsR0w7TWdEREo7UUF3Rlksd0JsRDVJNkM7UWtENkk3Qyx1QmxEN0k2QyxFa0R1SmhELEVBQUE7SWhEbEdMO01nRERKO1FBNEZZLHVCbERoSjZDO1FrRGlKN0Msc0JBTUgsRUFBQSxFQUFBO0loRGxH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SGpCO01BbUlNLGtDL0Q1Tm9CO2MrRDROcEIsMEIvRDVOb0IsRUFBQTtJTndxWnRCO01xRS9rWkosaUNBa0dFO2NBbEdGLHlCQWtHRSxFQUFZO0lyRSsrWVY7TXFFamxaSiwwQkE0SVc7TUFDUCx3REFBYyxFQUFBO01BQ2Q7UUFDQSxjNUQ5T3FELEVBQUE7RVRxclp2RDtJcUVyOFlFLHFCQUFZO1FBQVosZUFBWTtJQUNaLFk1RGpQUTtJNERrUFIsYUFBWTtJQW5KaEIsc0JBNElVO0lyRSs4WU4scUNxRXI4WWM7SXJFczhZZCxrQm1DenVaRjtJbkMwdVpFLHNCbUN6dVplLEVBQUs7SW5DMHVacEI7TXFFdDhZRSxhQUFVO01BQ1YsNkJBQ0Q7TXJFdThZQyx1QkFBdUI7TXFFbjhZN0IsbUNBQWU7TUFDYixpQjVEOVBVO000RDZQWixzQkFBQSxFQUFBOztBckV3OFlBO0VxRXg4WUEsdUJBUVUsRUFBQztFckVrOFlUO0lxRWg4WUUseUI1RHZRcUQ7STREd1FyRCxlNUR4UVEsRUFBQTtFVDBzWlY7SXFFaDhZRSxZNUQxUVE7STREMlFSLGFBQVk7SUFkaEIsc0JBUUU7SXJFeThZRSxxQ3FFaDhZYztJckVpOFlkLGtCbUM3dlpGO0luQzh2WkUsc0JtQzd2WmUsRUFBSztJbkM4dlpwQjtNcUVqOFlFLGFBQVU7TUFDViw2QkFDRDtNQXJCTCx1QkF3QlU7TUFDTixtQzVEdFJxRDtNNER1UnJELGlCQUFnQjtNQUNoQixzQkFBdUIsRUFDeEI7RXJFKzdZRDtJcUU1N1lGLGlCQUFpQjtJQUNmLGlCQUFhO0lBQ2Isd0JBQWUsRUFBQTs7QXJFKzdZakI7RXFFajhZQSxxQkFBQTtFQUFBLHFCQUFBO0VBQUEsY0FBQTtFckVtOFlFLG9CcUU1N1llO01yRTQ3WWYsZ0JxRTU3WWU7RXJFNjdZZix5QnFFNTdZa0I7TXJFNDdZbEIsc0JxRTU3WWtCO1VyRTQ3WWxCLHdCcUU1N1lrQjtFckU2N1lsQixxQnFFNTdZa0IsRUFBQTtFQVRwQjtJQWFJLDRDNUR6U3FEO0k0RDBTckQsaUJBS0Q7STFEMVBDLDJCQUFtQixFQUFTO0VYaXJa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QUF3QixFQUN6QjtJeEV3amFIO013RW5qYUosMEJBQW1CLEVBQUE7SUFDakI7TUFDQSwwQkFpQkQsRUFBQTs7QXhFcWlhRDtFQUNFLG1Cd0V6amFGO0V4RTBqYUUsYXdFbGphYSxFQUFFO0V4RW1qYWY7SUFDRSxjd0VsamFjLEVBQUE7SXhFbWphZDtNd0VqamFFLFlBQVU7TUFDVixZQUFXO01BQ1gsYUFBUTtNQUNSLCtCQUFPO01BQ1AsbUJBQ0Q7TXhFa2phQyxZQUFZO015RTkxYWxCLG9CQUNFO01BR00sUUFBVTtNekU2MWFaLE9BQU8sRUFBRTs7QUFFZjtFQUNFLG1CeUVwMWFDLEVBQUE7O0E5RG9GQztFOERwR0o7SUFjTSxVQUFTLEVBRVosRUFBQTs7QUFHSDtFQUdJO0l6RXMxYUEsVUFBVSxFQUFFLEVBQUU7O0FBRWxCO0VBQ0UsV0FBVyxFQUFFOztBQUVmO0VBQ0Usa0JBQWtCLEVBQUU7O0FBRXRCO0VXaHhhSSxXQUFPLEVBQU07O0FYbXhhakI7RVdueGFJLG9CQUFtQixFQUFBO0VYcXhhckI7SUFDRTtNQUNFLGdCQUFnQixFQUFFLEVBQUU7RXlFMTFhMUI7SUFXSTtNOUR3REEsZ0JBQW1CLEVBQUEsRUFBQTs7QVg0eGF2QjtFQUNFLGdCQUFnQixFQUFFO0UwRWwwYXBCO0kxRW8wYUk7TTBFajBhSixpQkFBQSxFQUFBLEVBQUE7O0ExRW8wYUE7eUNBQ3lDO0FBQ3pDLHNEQUFzRCIsImZpbGUiOiJzdHlsZXMuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuMi40XG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cbi8qIERvY3VtZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICAgICAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAgICAgKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMiAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMyAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDMgKi8gfVxuXG4vKiBTZWN0aW9uc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5hcnRpY2xlLFxuYXNpZGUsXG5mb290ZXIsXG5oZWFkZXIsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7IH1cblxuLyogR3JvdXBpbmcgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmZpZ2NhcHRpb24sXG5maWd1cmUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4OyB9XG5cbi8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gICAgICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gICAgICovXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAxICovXG4gIGhlaWdodDogMDtcbiAgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xubWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyogTGlua3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICAgICAqIDIuIFJlbW92ZSBnYXBzIGluIGxpbmtzIHVuZGVybGluZSBpbiBpT1MgOCsgYW5kIFNhZmFyaSA4Ky5cbiAgICAgKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogMSAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gICAgICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5hOmFjdGl2ZSxcbmE6aG92ZXIge1xuICBvdXRsaW5lLXdpZHRoOiAwOyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICAgICAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gICAgICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMWVtO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICAgICAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAgICAgKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7IH1cblxuLyoqXG4gICAgICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gICAgICogYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgfVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmF1ZGlvLFxudmlkZW8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAgICAgKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBGb3Jtc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAgICAgKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgICAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAgICAgKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gICAgICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gICAgICogICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICovXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDIgKi8gfVxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC8qKlxuICAgICAgICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAgICAgICAqL1xuICAvKipcbiAgICAgICAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAgICAgICAqLyB9XG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDsgfVxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbi8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gICAgICovXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAqL1xuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAgICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICAgICAqL1xuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqL1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbiAgLyogMiAqL1xuICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gICAgICAgKi8gfVxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiwgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAgICAgKi9cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMSAqL1xuICBmb250OiBpbmhlcml0O1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgICAgKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gICAgICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAzICovXG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDEgKi8gfVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKiAyLiBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuICAgICAqL1xucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgICAgKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyogSW50ZXJhY3RpdmVcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSwgYW5kIEZpcmVmb3guXG4gICAgICovXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyB9XG5cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyogU2NyaXB0aW5nXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuY2FudmFzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi8qIEhpZGRlblxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gICAgICovXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZvdW5kYXRpb24tbXEge1xuICBmb250LWZhbWlseTogXCJzbWFsbD0wZW0meHNtYWxsPTMwZW0mbWVkaXVtPTQwZW0meG1lZGl1bT00OGVtJmxhcmdlPTY0ZW0meGxhcmdlPTc1ZW0meHhsYXJnZT05MGVtJnh4eGxhcmdlPTEwMS4yNWVtXCI7IH1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGZvbnQtZmFtaWx5OiBcIkJyYW5kb25Hcm90ZXNxdWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYzsgfVxuXG50ZXh0YXJlYSB7XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogNTBweDtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5zZWxlY3Qge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cblxuYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbiAgcGFkZGluZzogMDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cblxucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLmlzLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbi5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnJvdyB7XG4gIG1heC13aWR0aDogMTAwcmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07IH0gfVxuICAucm93LmV4cGFuZGVkIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW4sIC5yb3cuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnJvdy5pcy1jb2xsYXBzZS1jaGlsZCxcbiAgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW4gPiAucm93LFxuICAucm93LmNvbGxhcHNlID4gLmNvbHVtbnMgPiAucm93IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLmNvbHVtbiwgLmNvbHVtbnMge1xuICBmbGV4OiAxIDEgMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgbWluLXdpZHRoOiBpbml0aWFsOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29sdW1uLCAuY29sdW1ucyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG5cbi5jb2x1bW4ucm93LnJvdywgLnJvdy5yb3cuY29sdW1ucyB7XG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ucm93IC5jb2x1bW4ucm93LnJvdywgLnJvdyAucm93LnJvdy5jb2x1bW5zIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5zbWFsbC0xIHtcbiAgZmxleDogMCAwIDguMzMzMzMlO1xuICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTsgfVxuXG4uc21hbGwtMiB7XG4gIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuXG4uc21hbGwtMyB7XG4gIGZsZXg6IDAgMCAyNSU7XG4gIG1heC13aWR0aDogMjUlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLTQge1xuICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi5zbWFsbC01IHtcbiAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtNiB7XG4gIGZsZXg6IDAgMCA1MCU7XG4gIG1heC13aWR0aDogNTAlOyB9XG5cbi5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLTcge1xuICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi5zbWFsbC04IHtcbiAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtOSB7XG4gIGZsZXg6IDAgMCA3NSU7XG4gIG1heC13aWR0aDogNzUlOyB9XG5cbi5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLTEwIHtcbiAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuXG4uc21hbGwtMTEge1xuICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtMTIge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbi5zbWFsbC1vcmRlci0xIHtcbiAgb3JkZXI6IDE7IH1cblxuLnNtYWxsLW9yZGVyLTIge1xuICBvcmRlcjogMjsgfVxuXG4uc21hbGwtb3JkZXItMyB7XG4gIG9yZGVyOiAzOyB9XG5cbi5zbWFsbC1vcmRlci00IHtcbiAgb3JkZXI6IDQ7IH1cblxuLnNtYWxsLW9yZGVyLTUge1xuICBvcmRlcjogNTsgfVxuXG4uc21hbGwtb3JkZXItNiB7XG4gIG9yZGVyOiA2OyB9XG5cbi5zbWFsbC11cC0xIHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbiwgLnNtYWxsLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC11cC0yIHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC0yID4gLmNvbHVtbiwgLnNtYWxsLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuXG4uc21hbGwtdXAtMyB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtMyA+IC5jb2x1bW4sIC5zbWFsbC11cC0zID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXVwLTQge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTQgPiAuY29sdW1uLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG5cbi5zbWFsbC11cC01IHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTsgfVxuXG4uc21hbGwtdXAtNiB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtNiA+IC5jb2x1bW4sIC5zbWFsbC11cC02ID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLXVwLTcge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTcgPiAuY29sdW1uLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMTQuMjg1NzElO1xuICAgIG1heC13aWR0aDogMTQuMjg1NzElOyB9XG5cbi5zbWFsbC11cC04IHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC04ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDEyLjUlO1xuICAgIG1heC13aWR0aDogMTIuNSU7IH1cblxuLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubWVkaXVtLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5tZWRpdW0tNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5tZWRpdW0tOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAubWVkaXVtLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5tZWRpdW0tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLm1lZGl1bS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubWVkaXVtLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5tZWRpdW0tb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLm1lZGl1bS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfVxuICAubWVkaXVtLXVwLTEge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tdXAtMiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbiwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tdXAtMyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbiwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tdXAtNCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbiwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tdXAtNSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbiwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDIwJTtcbiAgICAgIG1heC13aWR0aDogMjAlOyB9XG4gIC5tZWRpdW0tdXAtNiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC02ID4gLmNvbHVtbiwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtNyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC03ID4gLmNvbHVtbiwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE0LjI4NTcxJTtcbiAgICAgIG1heC13aWR0aDogMTQuMjg1NzElOyB9XG4gIC5tZWRpdW0tdXAtOCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC04ID4gLmNvbHVtbiwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEyLjUlO1xuICAgICAgbWF4LXdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZXhwYW5kIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9IH1cblxuLnJvdy5tZWRpdW0tdW5zdGFjayA+IC5jb2x1bW4sIC5yb3cubWVkaXVtLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gIGZsZXg6IDAgMCAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucm93Lm1lZGl1bS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy5tZWRpdW0tdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAueG1lZGl1bS0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzJTsgfVxuICAueG1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC54bWVkaXVtLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhtZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAueG1lZGl1bS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC54bWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC54bWVkaXVtLTQge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhtZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLnhtZWRpdW0tNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueG1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAueG1lZGl1bS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC54bWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC54bWVkaXVtLTcge1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnhtZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLnhtZWRpdW0tOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueG1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAueG1lZGl1bS05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC54bWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC54bWVkaXVtLTEwIHtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMlOyB9XG4gIC54bWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC54bWVkaXVtLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG4gIC54bWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAueG1lZGl1bS0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC54bWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAueG1lZGl1bS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAueG1lZGl1bS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAueG1lZGl1bS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAueG1lZGl1bS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAueG1lZGl1bS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAueG1lZGl1bS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfVxuICAueG1lZGl1bS11cC0xIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueG1lZGl1bS11cC0xID4gLmNvbHVtbiwgLnhtZWRpdW0tdXAtMSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC54bWVkaXVtLXVwLTIge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC54bWVkaXVtLXVwLTIgPiAuY29sdW1uLCAueG1lZGl1bS11cC0yID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC54bWVkaXVtLXVwLTMge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC54bWVkaXVtLXVwLTMgPiAuY29sdW1uLCAueG1lZGl1bS11cC0zID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bWVkaXVtLXVwLTQge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC54bWVkaXVtLXVwLTQgPiAuY29sdW1uLCAueG1lZGl1bS11cC00ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC54bWVkaXVtLXVwLTUge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC54bWVkaXVtLXVwLTUgPiAuY29sdW1uLCAueG1lZGl1bS11cC01ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDIwJTtcbiAgICAgIG1heC13aWR0aDogMjAlOyB9XG4gIC54bWVkaXVtLXVwLTYge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC54bWVkaXVtLXVwLTYgPiAuY29sdW1uLCAueG1lZGl1bS11cC02ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bWVkaXVtLXVwLTcge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC54bWVkaXVtLXVwLTcgPiAuY29sdW1uLCAueG1lZGl1bS11cC03ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE0LjI4NTcxJTtcbiAgICAgIG1heC13aWR0aDogMTQuMjg1NzElOyB9XG4gIC54bWVkaXVtLXVwLTgge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC54bWVkaXVtLXVwLTggPiAuY29sdW1uLCAueG1lZGl1bS11cC04ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEyLjUlO1xuICAgICAgbWF4LXdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC54bWVkaXVtLWV4cGFuZCB7XG4gICAgZmxleDogMSAxIDBweDsgfSB9XG5cbi5yb3cueG1lZGl1bS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy54bWVkaXVtLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gIGZsZXg6IDAgMCAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucm93LnhtZWRpdW0tdW5zdGFjayA+IC5jb2x1bW4sIC5yb3cueG1lZGl1bS11bnN0YWNrID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnhtZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAueG1lZGl1bS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAueG1lZGl1bS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnhtZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmxhcmdlLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAubGFyZ2UtNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAubGFyZ2UtOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmxhcmdlLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5sYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLmxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5sYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfVxuICAubGFyZ2UtdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTEgPiAuY29sdW1uLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtMiA+IC5jb2x1bW4sIC5sYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5sYXJnZS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtMyA+IC5jb2x1bW4sIC5sYXJnZS11cC0zID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS11cC00IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtNCA+IC5jb2x1bW4sIC5sYXJnZS11cC00ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5sYXJnZS11cC01IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC5sYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDIwJTtcbiAgICAgIG1heC13aWR0aDogMjAlOyB9XG4gIC5sYXJnZS11cC02IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtNiA+IC5jb2x1bW4sIC5sYXJnZS11cC02ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS11cC03IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtNyA+IC5jb2x1bW4sIC5sYXJnZS11cC03ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE0LjI4NTcxJTtcbiAgICAgIG1heC13aWR0aDogMTQuMjg1NzElOyB9XG4gIC5sYXJnZS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtOCA+IC5jb2x1bW4sIC5sYXJnZS11cC04ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEyLjUlO1xuICAgICAgbWF4LXdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1leHBhbmQge1xuICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG4ucm93LmxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93LmxhcmdlLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gIGZsZXg6IDAgMCAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucm93LmxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93LmxhcmdlLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC54bGFyZ2UtMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLnhsYXJnZS01IHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLnhsYXJnZS04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC54bGFyZ2UtMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnhsYXJnZS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAueGxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC54bGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLnhsYXJnZS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAueGxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9XG4gIC54bGFyZ2UtdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnhsYXJnZS11cC0xID4gLmNvbHVtbiwgLnhsYXJnZS11cC0xID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnhsYXJnZS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTIgPiAuY29sdW1uLCAueGxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTMgPiAuY29sdW1uLCAueGxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS11cC00IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTQgPiAuY29sdW1uLCAueGxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMjUlO1xuICAgICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS11cC01IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTUgPiAuY29sdW1uLCAueGxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMjAlO1xuICAgICAgbWF4LXdpZHRoOiAyMCU7IH1cbiAgLnhsYXJnZS11cC02IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTYgPiAuY29sdW1uLCAueGxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS11cC03IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTcgPiAuY29sdW1uLCAueGxhcmdlLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTQuMjg1NzElO1xuICAgICAgbWF4LXdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLnhsYXJnZS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTggPiAuY29sdW1uLCAueGxhcmdlLXVwLTggPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTIuNSU7XG4gICAgICBtYXgtd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1leHBhbmQge1xuICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG4ucm93LnhsYXJnZS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy54bGFyZ2UtdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgZmxleDogMCAwIDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5yb3cueGxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93LnhsYXJnZS11bnN0YWNrID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC54bGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAueHhsYXJnZS0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC54eGxhcmdlLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAueHhsYXJnZS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC54eGxhcmdlLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAueHhsYXJnZS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAueHhsYXJnZS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnh4bGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnh4bGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH1cbiAgLnh4bGFyZ2UtdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAueHhsYXJnZS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC0yID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC0zID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS11cC00IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC00ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS11cC01IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC01ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAueHhsYXJnZS11cC02IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC02ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS11cC03IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC03ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNC4yODU3MSU7XG4gICAgICBtYXgtd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAueHhsYXJnZS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC04ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMi41JTtcbiAgICAgIG1heC13aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1leHBhbmQge1xuICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG4ucm93Lnh4bGFyZ2UtdW5zdGFjayA+IC5jb2x1bW4sIC5yb3cueHhsYXJnZS11bnN0YWNrID4gLmNvbHVtbnMge1xuICBmbGV4OiAwIDAgMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnJvdy54eGxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93Lnh4bGFyZ2UtdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbiwgLnh4bGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnh4bGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC54eGxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAxLjI1ZW0pIHtcbiAgLnh4eGxhcmdlLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54eHhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC54eHhsYXJnZS0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eHhsYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC54eHhsYXJnZS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC54eHhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAueHh4bGFyZ2UtNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHh4bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLnh4eGxhcmdlLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnh4eGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC54eHhsYXJnZS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC54eHhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAueHh4bGFyZ2UtNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueHh4bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLnh4eGxhcmdlLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnh4eGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC54eHhsYXJnZS05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC54eHhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAueHh4bGFyZ2UtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnh4eGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC54eHhsYXJnZS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueHh4bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC54eHhsYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC54eHhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnh4eGxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC54eHhsYXJnZS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAueHh4bGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLnh4eGxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC54eHhsYXJnZS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAueHh4bGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH1cbiAgLnh4eGxhcmdlLXVwLTEge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC54eHhsYXJnZS11cC0xID4gLmNvbHVtbiwgLnh4eGxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAueHh4bGFyZ2UtdXAtMiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnh4eGxhcmdlLXVwLTIgPiAuY29sdW1uLCAueHh4bGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAueHh4bGFyZ2UtdXAtMyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnh4eGxhcmdlLXVwLTMgPiAuY29sdW1uLCAueHh4bGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHh4bGFyZ2UtdXAtNCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnh4eGxhcmdlLXVwLTQgPiAuY29sdW1uLCAueHh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAueHh4bGFyZ2UtdXAtNSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnh4eGxhcmdlLXVwLTUgPiAuY29sdW1uLCAueHh4bGFyZ2UtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAueHh4bGFyZ2UtdXAtNiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnh4eGxhcmdlLXVwLTYgPiAuY29sdW1uLCAueHh4bGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHh4bGFyZ2UtdXAtNyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnh4eGxhcmdlLXVwLTcgPiAuY29sdW1uLCAueHh4bGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNC4yODU3MSU7XG4gICAgICBtYXgtd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAueHh4bGFyZ2UtdXAtOCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnh4eGxhcmdlLXVwLTggPiAuY29sdW1uLCAueHh4bGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMi41JTtcbiAgICAgIG1heC13aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDEuMjVlbSkgYW5kIChtaW4td2lkdGg6IDEwMS4yNWVtKSB7XG4gIC54eHhsYXJnZS1leHBhbmQge1xuICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG4ucm93Lnh4eGxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93Lnh4eGxhcmdlLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gIGZsZXg6IDAgMCAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMS4yNWVtKSB7XG4gICAgLnJvdy54eHhsYXJnZS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy54eHhsYXJnZS11bnN0YWNrID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMS4yNWVtKSB7XG4gIC54eHhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC54eHhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAueHh4bGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC54eHhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG5cbi5zaHJpbmsge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5jb2x1bW4uYWxpZ24tdG9wLCAuYWxpZ24tdG9wLmNvbHVtbnMge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG5cbi5jb2x1bW4uYWxpZ24tYm90dG9tLCAuYWxpZ24tYm90dG9tLmNvbHVtbnMge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuXG4uY29sdW1uLmFsaWduLW1pZGRsZSwgLmFsaWduLW1pZGRsZS5jb2x1bW5zIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyOyB9XG5cbi5jb2x1bW4uYWxpZ24tc3RyZXRjaCwgLmFsaWduLXN0cmV0Y2guY29sdW1ucyB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7IH1cblxuZGl2LFxuZGwsXG5kdCxcbmRkLFxudWwsXG5vbCxcbmxpLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICBsaW5lLWhlaWdodDogMS42O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfSB9XG5cbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc3Ryb25nLFxuYiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDsgfVxuXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICBmb250LWZhbWlseTogJ01pbGxlckRpc3BsYXktTGlnaHQnLCBzYW5zLXNlcmlmO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7IH1cbiAgaDEgc21hbGwsXG4gIGgyIHNtYWxsLFxuICBoMyBzbWFsbCxcbiAgaDQgc21hbGwsXG4gIGg1IHNtYWxsLFxuICBoNiBzbWFsbCB7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgY29sb3I6ICNkNWQ2ZDc7IH1cblxuaDEsIC5oMSB7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICBib2R5IGgxLCBib2R5IC5oMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG5cbmgyIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDsgfVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKDEuNCwgMS44NzVyZW0pO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDIge1xuICBmb250LXNpemU6IDEuNTYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMoMS40LCAxLjU2MjVyZW0pO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDMge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKDEuNCwgMS4yNXJlbSk7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKDEuNCwgMS4xMjVyZW0pO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDUge1xuICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMoMS40LCAxLjA2MjVyZW0pO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDYge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKDEuNCwgMXJlbSk7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDIuODEyNXJlbTsgfVxuICBoMiB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtOyB9XG4gIGgzIHtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9XG4gIGg0IHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9XG4gIGg1IHtcbiAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfVxuICBoNiB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICBoMSB7XG4gICAgZm9udC1zaXplOiA0LjM3NXJlbTsgfVxuICBoMiB7XG4gICAgZm9udC1zaXplOiAycmVtOyB9XG4gIGgzIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTsgfVxuICBoNCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIGg1IHtcbiAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfVxuICBoNiB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9IH1cblxuYSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogI2EzYTNhMztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgYTpob3ZlciwgYTpmb2N1cyB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgYSBpbWcge1xuICAgIGJvcmRlcjogMDsgfVxuXG5ociB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDEuMjVyZW0gYXV0bztcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2Q1ZDZkNztcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxudWwsXG5vbCxcbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xuICBsaW5lLWhlaWdodDogMS42OyB9XG5cbmxpIHtcbiAgZm9udC1zaXplOiBpbmhlcml0OyB9XG5cbnVsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYzsgfVxuXG5vbCB7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbnVsIHVsLCBvbCB1bCwgdWwgb2wsIG9sIG9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIGRsIGR0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAgMCAxLjI1cmVtIDA7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2Q1ZDZkNzsgfVxuICBibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cblxuY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgY29sb3I6ICNhM2EzYTM7IH1cbiAgY2l0ZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4oCUIFwiOyB9XG5cbmFiYnIge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMwMDAwMDA7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBjdXJzb3I6IGhlbHA7IH1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwOyB9XG5cbmNvZGUge1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjMxMjVyZW0gMC4wNjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDVkNmQ3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjRiZmMyO1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxua2JkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjI1cmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiNGJmYzI7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAueG1lZGl1bS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnhtZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnhtZWRpdW0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAueG1lZGl1bS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5sYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5sYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC54bGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnhsYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC54bGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnh4bGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnh4bGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAueHhsYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDEuMjVlbSkge1xuICAueHh4bGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC54eHhsYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAueHh4bGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAueHh4bGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuW3R5cGU9J3RleHQnXSwgW3R5cGU9J3Bhc3N3b3JkJ10sIFt0eXBlPSdkYXRlJ10sIFt0eXBlPSdkYXRldGltZSddLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgW3R5cGU9J21vbnRoJ10sIFt0eXBlPSd3ZWVrJ10sIFt0eXBlPSdlbWFpbCddLCBbdHlwZT0nbnVtYmVyJ10sIFt0eXBlPSdzZWFyY2gnXSwgW3R5cGU9J3RlbCddLCBbdHlwZT0ndGltZSddLCBbdHlwZT0ndXJsJ10sIFt0eXBlPSdjb2xvciddLFxudGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi41cmVtO1xuICBtYXJnaW46IDAgMCAzcHg7XG4gIHBhZGRpbmc6IDAuNXJlbSAxOHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiBub25lO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBbdHlwZT0ndGV4dCddLCBbdHlwZT0ncGFzc3dvcmQnXSwgW3R5cGU9J2RhdGUnXSwgW3R5cGU9J2RhdGV0aW1lJ10sIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCBbdHlwZT0nbW9udGgnXSwgW3R5cGU9J3dlZWsnXSwgW3R5cGU9J2VtYWlsJ10sIFt0eXBlPSdudW1iZXInXSwgW3R5cGU9J3NlYXJjaCddLCBbdHlwZT0ndGVsJ10sIFt0eXBlPSd0aW1lJ10sIFt0eXBlPSd1cmwnXSwgW3R5cGU9J2NvbG9yJ10sXG4gICAgdGV4dGFyZWEge1xuICAgICAgZm9udC1zaXplOiAxN3B4OyB9IH1cbiAgW3R5cGU9J3RleHQnXTpmb2N1cywgW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsIFt0eXBlPSdkYXRlJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cywgW3R5cGU9J21vbnRoJ106Zm9jdXMsIFt0eXBlPSd3ZWVrJ106Zm9jdXMsIFt0eXBlPSdlbWFpbCddOmZvY3VzLCBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsIFt0eXBlPSdzZWFyY2gnXTpmb2N1cywgW3R5cGU9J3RlbCddOmZvY3VzLCBbdHlwZT0ndGltZSddOmZvY3VzLCBbdHlwZT0ndXJsJ106Zm9jdXMsIFt0eXBlPSdjb2xvciddOmZvY3VzLFxuICB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7IH1cblxudGV4dGFyZWEge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgdGV4dGFyZWFbcm93c10ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuXG5pbnB1dDo6cGxhY2Vob2xkZXIsXG50ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2EzYTNhMzsgfVxuXG5pbnB1dDpkaXNhYmxlZCwgaW5wdXRbcmVhZG9ubHldLFxudGV4dGFyZWE6ZGlzYWJsZWQsXG50ZXh0YXJlYVtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjRiZmMyO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cblt0eXBlPSdzdWJtaXQnXSxcblt0eXBlPSdidXR0b24nXSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuaW5wdXRbdHlwZT0nc2VhcmNoJ10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGxldHRlci1zcGFjaW5nOiAuOXB4OyB9XG4gIGxhYmVsIGVtIHtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG4gIGxhYmVsLm1pZGRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBwYWRkaW5nOiAwLjU2MjVyZW0gMDsgfVxuXG5zZWxlY3Qge1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgcGFkZGluZzogMC4zNzVyZW0gMS4zNzVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIG1hcmdpbjogMCAwIDAuOTM3NXJlbTtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4MTYzLCAxNjMsIDE2MyUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAtMXJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDAgXFwwICkge1xuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09XCIpOyB9IH1cbiAgc2VsZWN0OmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjRiZmMyO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHNlbGVjdFttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gIGRpdltjbGFzcyo9J3NtYWxsLWN0cmxzJ10gc2VsZWN0IHtcbiAgICBoZWlnaHQ6IDIuMjVyZW07XG4gICAgcGFkZGluZzogMC41cmVtIDEuNTYyNXJlbSAwLjVyZW0gMC45Mzc1cmVtOyB9XG5cbmJvZHkuaXMtcmV2ZWFsLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbmh0bWwuaXMtcmV2ZWFsLW9wZW4sXG5odG1sLmlzLXJldmVhbC1vcGVuIGJvZHkge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMCAhaW1wb3J0YW50O1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDA1O1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODUpO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7IH1cblxuLnJldmVhbCB7XG4gIG91dGxpbmU6IDA7XG4gIHotaW5kZXg6IDEwMDY7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMS4yNXJlbSAxLjg3NXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgLnJldmVhbCBib2R5IHtcbiAgICBiYWNrZ3JvdW5kOiBncmVlbnllbGxvdyAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6ICM0MWUzZWUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICBtaW4taGVpZ2h0OiAwOyB9IH1cbiAgLnJldmVhbCAuY29sdW1uLCAucmV2ZWFsIC5jb2x1bW5zLFxuICAucmV2ZWFsIC5jb2x1bW5zIHtcbiAgICBtaW4td2lkdGg6IDA7IH1cbiAgLnJldmVhbCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiA1OC4xMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbCAucmV2ZWFsIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgLnJldmVhbC5jb2xsYXBzZSB7XG4gICAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC50aW55IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiA1OC4xMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnJldmVhbC5zbWFsbCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogNTguMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwubGFyZ2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDU4LjEyNXJlbTsgfSB9XG4gIC5yZXZlYWwuZnVsbCB7XG4gICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDI5LjkzNzVlbSkge1xuICAgIC5yZXZlYWwge1xuICAgICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9IH1cbiAgLnJldmVhbC53aXRob3V0LW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG4uYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgYXV0byAxcmVtO1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuODc1cmVtO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtZmFtaWx5OiAnQnJhbmRvbkdyb3Rlc3F1ZScsIHNhbnMtc2VyaWY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICAgICAgcGFkZGluZzogMXJlbSAyLjg3NXJlbTsgfSB9XG4gIC5idXR0b246aG92ZXIsIC5idXR0b246Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMTY1Njc7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJ1dHRvbi50aW55IHtcbiAgICBmb250LXNpemU6IDAuNnJlbTsgfVxuICAuYnV0dG9uLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgLmJ1dHRvbi5sYXJnZSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIC5idXR0b24uZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuYnV0dG9uLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgY29sb3I6IGF1dG87IH1cbiAgICAuYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBhdXRvO1xuICAgICAgY29sb3I6IGF1dG87IH1cbiAgLmJ1dHRvbi5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMTY1Njc7XG4gICAgY29sb3I6IGF1dG87IH1cbiAgICAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogYXV0bztcbiAgICAgIGNvbG9yOiBhdXRvOyB9XG4gIC5idXR0b24uc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgICBjb2xvcjogYXV0bzsgfVxuICAgIC5idXR0b24uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGF1dG87XG4gICAgICBjb2xvcjogYXV0bzsgfVxuICAuYnV0dG9uLndhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gICAgY29sb3I6IGF1dG87IH1cbiAgICAuYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24ud2FybmluZzpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBhdXRvO1xuICAgICAgY29sb3I6IGF1dG87IH1cbiAgLmJ1dHRvbi5hbGVydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgICBjb2xvcjogYXV0bzsgfVxuICAgIC5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogYXV0bztcbiAgICAgIGNvbG9yOiBhdXRvOyB9XG4gIC5idXR0b24uaG9sbG93IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IGJsYWNrO1xuICAgICAgY29sb3I6IGJsYWNrOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwO1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6IGJsYWNrO1xuICAgICAgICBjb2xvcjogYmxhY2s7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2YxNjU2NztcbiAgICAgIGNvbG9yOiAjZjE2NTY3OyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzlkMGUxMDtcbiAgICAgICAgY29sb3I6ICM5ZDBlMTA7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgICAgICAgY29sb3I6ICMxNTc1Mzk7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgICAgICAgY29sb3I6ICM4MDU3MDA7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5hbGVydCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgICAgICAgY29sb3I6ICM2NzI1MWE7IH1cbiAgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnksIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnksIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YxNjU2NztcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3Mge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3MsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZyB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuYWxlcnQsIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLmRyb3Bkb3duOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC40ZW07XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmZmZmIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMWVtOyB9XG4gIC5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgIHRvcDogLTAuMWVtO1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5idXR0b24uYnV0dG9uLXNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxNjU2NztcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5idXR0b24uYnV0dG9uLXNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5idXR0b24tc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uLmJ1dHRvbi10cmFuc3BhcmVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICBwYWRkaW5nOiAwLjY4NzVyZW0gMS44NzVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYnV0dG9uLmJ1dHRvbi10cmFuc3BhcmVudCB7XG4gICAgICAgIHBhZGRpbmc6IDAuOTM3NXJlbSAyLjg3NXJlbTsgfSB9XG4gICAgLmJ1dHRvbi5idXR0b24tdHJhbnNwYXJlbnQ6aG92ZXIsIC5idXR0b24uYnV0dG9uLXRyYW5zcGFyZW50OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJ1dHRvbi5idG4tYmlnIHtcbiAgICAgIG1pbi13aWR0aDogMTQuMDYyNXJlbTtcbiAgICAgIHBhZGRpbmc6IDEuMTI1cmVtIDIuODc1cmVtO1xuICAgICAgbWFyZ2luOiAwIDAuNXJlbSAxLjA2MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmJ1dHRvbi5idG4tbGFyZ2Uge1xuICAgICAgbWluLXdpZHRoOiAxNC4wNjI1cmVtO1xuICAgICAgcGFkZGluZzogMS4xMjVyZW0gMi44NzVyZW07IH0gfVxuICAuYnV0dG9uLmxvYWQge1xuICAgIGhlaWdodDogMy4wNjI1cmVtO1xuICAgIHdpZHRoOiAxMi41cmVtO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxLjg3NXJlbTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgLmJ1dHRvbi5sb2FkIHNwYW4ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMmYyZjI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICBjYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICNmOWY5Zjk7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgdGhlYWQgdHIsXG4gIHRmb290IHRyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuICB0aGVhZCB0aCxcbiAgdGhlYWQgdGQsXG4gIHRmb290IHRoLFxuICB0Zm9vdCB0ZCB7XG4gICAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgdGJvZHkgdGgsXG4gIHRib2R5IHRkIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07IH1cbiAgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjI7IH1cbiAgdGFibGUudW5zdHJpcGVkIHRib2R5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgdGFibGUudW5zdHJpcGVkIHRib2R5IHRyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YyZjJmMjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIHRhYmxlLnN0YWNrIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIHRhYmxlLnN0YWNrIHRyLFxuICB0YWJsZS5zdGFjayB0aCxcbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBib3JkZXItdG9wOiAwOyB9IH1cblxudGFibGUuc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvOyB9XG5cbnRhYmxlLmhvdmVyIHRoZWFkIHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDsgfVxuXG50YWJsZS5ob3ZlciB0Zm9vdCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7IH1cblxudGFibGUuaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmFmYWZhOyB9XG5cbnRhYmxlLmhvdmVyOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7IH1cblxuLnRhYmxlLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cbiAgLnRhYmxlLXNjcm9sbCB0YWJsZSB7XG4gICAgd2lkdGg6IGF1dG87IH1cblxuLmFsaWduLXJpZ2h0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuLmFsaWduLWp1c3RpZnkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cblxuLmFsaWduLXNwYWNlZCB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cbi5hbGlnbi10b3Age1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tc2VsZi10b3Age1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1ib3R0b20ge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cblxuLmFsaWduLXNlbGYtYm90dG9tIHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7IH1cblxuLmFsaWduLW1pZGRsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmFsaWduLXNlbGYtbWlkZGxlIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyOyB9XG5cbi5hbGlnbi1zdHJldGNoIHtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cblxuLmFsaWduLXNlbGYtc3RyZXRjaCB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7IH1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTsgfVxuXG4uc21hbGwtb3JkZXItMiB7XG4gIG9yZGVyOiAyOyB9XG5cbi5zbWFsbC1vcmRlci0zIHtcbiAgb3JkZXI6IDM7IH1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDsgfVxuXG4uc21hbGwtb3JkZXItNSB7XG4gIG9yZGVyOiA1OyB9XG5cbi5zbWFsbC1vcmRlci02IHtcbiAgb3JkZXI6IDY7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5tZWRpdW0tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLm1lZGl1bS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubWVkaXVtLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5tZWRpdW0tb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLm1lZGl1bS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnhtZWRpdW0tb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnhtZWRpdW0tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnhtZWRpdW0tb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLnhtZWRpdW0tb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLnhtZWRpdW0tb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnhtZWRpdW0tb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLmxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5sYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLmxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC54bGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnhsYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAueGxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC54bGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnhsYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnh4bGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnh4bGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDEuMjVlbSkge1xuICAueHh4bGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnh4eGxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC54eHhsYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAueHh4bGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLnh4eGxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC54eHhsYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ21pbGxlcic7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvTWlsbGVyLURpc3BsYXkvTWlsbGVyLURpc3BsYXkuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL01pbGxlci1EaXNwbGF5L01pbGxlci1EaXNwbGF5LmVvdCNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvTWlsbGVyLURpc3BsYXkvTWlsbGVyLURpc3BsYXkud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9NaWxsZXItRGlzcGxheS9NaWxsZXItRGlzcGxheS50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL01pbGxlci1EaXNwbGF5L01pbGxlci1EaXNwbGF5LnN2ZyNNaWxsZXItRGlzcGxheVwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdNaWxsZXJEaXNwbGF5LUxpZ2h0JztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9NaWxsZXJEaXNwbGF5LUxpZ2h0L01pbGxlckRpc3BsYXktTGlnaHQuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL01pbGxlckRpc3BsYXktTGlnaHQvTWlsbGVyRGlzcGxheS1MaWdodC5lb3QjaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL01pbGxlckRpc3BsYXktTGlnaHQvTWlsbGVyRGlzcGxheS1MaWdodC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL01pbGxlckRpc3BsYXktTGlnaHQvTWlsbGVyRGlzcGxheS1MaWdodC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL01pbGxlckRpc3BsYXktTGlnaHQvTWlsbGVyRGlzcGxheS1MaWdodC5zdmcjTWlsbGVyRGlzcGxheS1MaWdodFwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdCcmFuZG9uR3JvdGVzcXVlJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9CcmFuZG9uR3JvdGVzcXVlLVJlZ3VsYXIvQnJhbmRvbkdyb3Rlc3F1ZS1SZWd1bGFyLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9CcmFuZG9uR3JvdGVzcXVlLVJlZ3VsYXIvQnJhbmRvbkdyb3Rlc3F1ZS1SZWd1bGFyLmVvdCNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvQnJhbmRvbkdyb3Rlc3F1ZS1SZWd1bGFyL0JyYW5kb25Hcm90ZXNxdWUtUmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0JyYW5kb25Hcm90ZXNxdWUtUmVndWxhci9CcmFuZG9uR3JvdGVzcXVlLVJlZ3VsYXIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9CcmFuZG9uR3JvdGVzcXVlLVJlZ3VsYXIvQnJhbmRvbkdyb3Rlc3F1ZS1SZWd1bGFyLnN2ZyNCcmFuZG9uR3JvdGVzcXVlLVJlZ3VsYXJcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQnJhbmRvbkdyb3Rlc3F1ZSc7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvQnJhbmRvbkdyb3Rlc3F1ZS1NZWRpdW0vQnJhbmRvbkdyb3Rlc3F1ZS1NZWRpdW0uZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0JyYW5kb25Hcm90ZXNxdWUtTWVkaXVtL0JyYW5kb25Hcm90ZXNxdWUtTWVkaXVtLmVvdCNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvQnJhbmRvbkdyb3Rlc3F1ZS1NZWRpdW0vQnJhbmRvbkdyb3Rlc3F1ZS1NZWRpdW0ud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9CcmFuZG9uR3JvdGVzcXVlLU1lZGl1bS9CcmFuZG9uR3JvdGVzcXVlLU1lZGl1bS50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL0JyYW5kb25Hcm90ZXNxdWUtTWVkaXVtL0JyYW5kb25Hcm90ZXNxdWUtTWVkaXVtLnN2ZyNCcmFuZG9uR3JvdGVzcXVlLU1lZGl1bVwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdCcmFuZG9uR3JvdGVzcXVlJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9CcmFuZG9uR3JvdGVzcXVlLUxpZ2h0L0JyYW5kb25Hcm90ZXNxdWUtTGlnaHQuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0JyYW5kb25Hcm90ZXNxdWUtTGlnaHQvQnJhbmRvbkdyb3Rlc3F1ZS1MaWdodC5lb3QjaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL0JyYW5kb25Hcm90ZXNxdWUtTGlnaHQvQnJhbmRvbkdyb3Rlc3F1ZS1MaWdodC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0JyYW5kb25Hcm90ZXNxdWUtTGlnaHQvQnJhbmRvbkdyb3Rlc3F1ZS1MaWdodC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL0JyYW5kb25Hcm90ZXNxdWUtTGlnaHQvQnJhbmRvbkdyb3Rlc3F1ZS1MaWdodC5zdmcjQnJhbmRvbkdyb3Rlc3F1ZS1MaWdodFwiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdCcmFuZG9uR3JvdGVzcXVlJztcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9CcmFuZG9uR3JvdGVzcXVlLVRoaW4vQnJhbmRvbkdyb3Rlc3F1ZS1UaGluLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9CcmFuZG9uR3JvdGVzcXVlLVRoaW4vQnJhbmRvbkdyb3Rlc3F1ZS1UaGluLmVvdCNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvQnJhbmRvbkdyb3Rlc3F1ZS1UaGluL0JyYW5kb25Hcm90ZXNxdWUtVGhpbi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0JyYW5kb25Hcm90ZXNxdWUtVGhpbi9CcmFuZG9uR3JvdGVzcXVlLVRoaW4udHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9CcmFuZG9uR3JvdGVzcXVlLVRoaW4vQnJhbmRvbkdyb3Rlc3F1ZS1UaGluLnN2ZyNCcmFuZG9uR3JvdGVzcXVlLVRoaW5cIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogMTAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0ZvbnRlbGxvL2ZvbnRlbGxvLmVvdD85NTUyODk1XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL0ZvbnRlbGxvL2ZvbnRlbGxvLmVvdD85NTUyODk1I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9Gb250ZWxsby9mb250ZWxsby53b2ZmMj85NTUyODk1XCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9Gb250ZWxsby9mb250ZWxsby53b2ZmPzk1NTI4OTVcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvRm9udGVsbG8vZm9udGVsbG8udHRmPzk1NTI4OTVcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL0ZvbnRlbGxvL2ZvbnRlbGxvLnN2Zz85NTUyODk1I2ZvbnRlbGxvXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbltjbGFzc149XCJpY29uLVwiXTpiZWZvcmUsIFtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IFwiZm9udGVsbG9cIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBzcGVhazogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IGluaGVyaXQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTsgfVxuXG4uaWNvbi1kb3duLW9wZW4tbWluaTpiZWZvcmUge1xuICBjb250ZW50OiAnXFxlODAwJzsgfVxuXG4vKiAn7qCAJyAqL1xuLmljb24tcmlnaHQtb3Blbi1iaWc6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZTgwMSc7IH1cblxuLyogJ+6ggScgKi9cbi5pY29uLWxlZnQtb3Blbi1iaWc6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZTgwMic7IH1cblxuLyogJ+6ggicgKi9cbi5pY29uLXJpZ2h0LW9wZW4tbWluaTpiZWZvcmUge1xuICBjb250ZW50OiAnXFxlODAzJzsgfVxuXG4vKiAn7qCDJyAqL1xuLmljb24tdXAtb3Blbi1iaWc6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZTgwNCc7IH1cblxuLyogJ+6ghCcgKi9cbi5pY29uLWRvd24tb3Blbi1iaWc6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZTgwNSc7IH1cblxuLyogJ+6ghScgKi9cbi5pY29uLXVwLW9wZW4tbWluaTpiZWZvcmUge1xuICBjb250ZW50OiAnXFxlODA2JzsgfVxuXG4vKiAn7qCGJyAqL1xuLmljb24tbGVmdC1vcGVuLW1pbmk6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZTgwNyc7IH1cblxuLyogJ+6ghycgKi9cbi5pY29uLWNhbmNlbDpiZWZvcmUge1xuICBjb250ZW50OiAnXFxlODA4JzsgfVxuXG4vKiAn7qCIJyAqL1xuLmljb24taGVhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZTgwOSc7IH1cblxuLyogJ+6giScgKi9cbi5pY29uLWRvd24tb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDA0JzsgfVxuXG4vKiAn74CEJyAqL1xuLmljb24tdXAtb3BlbjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDA1JzsgfVxuXG4vKiAn74CFJyAqL1xuLmljb24tdHdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMDk5JzsgfVxuXG4vKiAn74KZJyAqL1xuLmljb24tZmFjZWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjA5YSc7IH1cblxuLyogJ++CmicgKi9cbi5pY29uLWxpbmtlZGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYwZTEnOyB9XG5cbi8qICfvg6EnICovXG4uaWNvbi1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYxNzUnOyB9XG5cbi8qICfvhbUnICovXG4uaWNvbi11cDpiZWZvcmUge1xuICBjb250ZW50OiAnXFxmMTc2JzsgfVxuXG4vKiAn74W2JyAqL1xuLmljb24tcGludGVyZXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYzMTInOyB9XG5cbi8qICfvjJInICovXG4uaWNvbi15b3V0dWJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGYzMTMnOyB9XG5cbi8qICfvjJMnICovXG4uaWNvbi1pbnN0YWdyYW06YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZjMxZSc7IH1cblxuLyogJ++MnicgKi9cbi5pY29uLWFycm93cy1jdzpiZWZvcmUge1xuICBjb250ZW50OiAnXFxlODBhJzsgfVxuXG4vKiAn7qCKJyAqL1xuLmljb24tcGVuY2lsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXGU4MGInOyB9XG5cbi8qICfuoIsnICovXG4uaWNvbi1oZWFydC1lbXB0eTpiZWZvcmUge1xuICBjb250ZW50OiAnXFxlODBjJzsgfVxuXG4vKiAn7qCMJyAqL1xuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uc2xpY2stbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4uc2xpY2stbGlzdDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7IH1cblxuLnNsaWNrLWxpc3QuZHJhZ2dpbmcge1xuICBjdXJzb3I6IG1vdmU7XG4gIC8qIGZhbGxiYWNrIGlmIGdyYWIgY3Vyc29yIGlzIHVuc3VwcG9ydGVkICovXG4gIGN1cnNvcjogZ3JhYjtcbiAgY3Vyc29yOiAtbW96LWdyYWI7XG4gIGN1cnNvcjogLXdlYmtpdC1ncmFiOyB9XG5cbi5zbGljay1saXN0LmRyYWdnaW5nOmFjdGl2ZSB7XG4gIGN1cnNvcjogZ3JhYmJpbmc7XG4gIGN1cnNvcjogLW1vei1ncmFiYmluZztcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nOyB9XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnNsaWNrLXRyYWNrOmJlZm9yZSxcbi5zbGljay10cmFjazphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnJzsgfVxuXG4uc2xpY2stdHJhY2s6YWZ0ZXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4uc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4OyB9XG5cbltkaXI9J3J0bCddIC5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uc2xpY2stc2xpZGUgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG4uc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWcge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXNsaWRlIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uc2xpY2stbGlzdCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogU2xpZGVyICovXG4vKiBBcnJvd3MgKi9cbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQge1xuICBmb250LXNpemU6IDA7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgcGFkZGluZzogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlOyB9XG4gIC5zbGljay1wcmV2LnNsaWNrLWRpc2FibGVkLFxuICAuc2xpY2stbmV4dC5zbGljay1kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuXG4uc2xpY2stcHJldiB7XG4gIGxlZnQ6IDA7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2xpY2stcHJldjpob3ZlcjpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTsgfSB9XG4gIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgY29udGVudDogJ1xcZTgwMic7XG4gICAgZm9udC1mYW1pbHk6ICdmb250ZWxsbyc7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfSB9XG4gIC5zbGljay1wcmV2OmFmdGVyIHtcbiAgICBjb250ZW50OiAn4oCiJztcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbi1sZWZ0OiAycHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuc2xpY2stcHJldjphZnRlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH0gfVxuXG4uc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAwO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNsaWNrLW5leHQ6aG92ZXI6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpOyB9IH1cbiAgLnNsaWNrLW5leHQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICdcXGU4MDEnO1xuICAgIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zbGljay1uZXh0OmFmdGVyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfSB9XG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogJ+KAoic7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDJweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH0gfVxuXG4vKiBEb3RzICovXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuLnNsaWNrLWRvdHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uc2xpY2stZG90cyBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBtYXJnaW46IDAgNXB4O1xuICBwYWRkaW5nOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgZm9udC1zaXplOiAwO1xuICBsaW5lLWhlaWdodDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgb3V0bGluZTogbm9uZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyLFxuLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTsgfVxuXG4uc2xpY2stZG90cyBsaSBidXR0b246aG92ZXI6YmVmb3JlLFxuLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmJlZm9yZSB7XG4gIGZvbnQtc2l6ZTogNnB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGNvbnRlbnQ6ICfigKInO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6IC4yNTtcbiAgY29sb3I6ICMzRDNEM0Q7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbi5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgb3BhY2l0eTogLjc1O1xuICBjb2xvcjogIzNEM0QzRDsgfVxuXG4vKipcbiAqIFN3aXBlciA0LjAuN1xuICogTW9zdCBtb2Rlcm4gbW9iaWxlIHRvdWNoIHNsaWRlciBhbmQgZnJhbWV3b3JrIHdpdGggaGFyZHdhcmUgYWNjZWxlcmF0ZWQgdHJhbnNpdGlvbnNcbiAqIGh0dHA6Ly93d3cuaWRhbmdlcm8udXMvc3dpcGVyL1xuICpcbiAqIENvcHlyaWdodCAyMDE0LTIwMTcgVmxhZGltaXIgS2hhcmxhbXBpZGlcbiAqXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2VcbiAqXG4gKiBSZWxlYXNlZCBvbjogTm92ZW1iZXIgMjgsIDIwMTdcbiAqL1xuLnN3aXBlci1jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICB6LWluZGV4OiAxOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLW5vLWZsZXhib3ggLnN3aXBlci1zbGlkZSB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgLXdlYmtpdC1ib3gtZGlyZWN0aW9uOiBub3JtYWw7XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLnN3aXBlci13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIC13ZWJraXQtdHJhbnNmb3JtO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1hbmRyb2lkIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cblxuLnN3aXBlci1jb250YWluZXItbXVsdGlyb3cgPiAuc3dpcGVyLXdyYXBwZXIge1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZyZWUtbW9kZSA+IC5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtby10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtZmxleC1zaHJpbms6IDA7XG4gIC1tcy1mbGV4LW5lZ2F0aXZlOiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgLXdlYmtpdC10cmFuc2Zvcm07IH1cblxuLnN3aXBlci1pbnZpc2libGUtYmxhbmstc2xpZGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCxcbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZSB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtYm94LWFsaWduOiBzdGFydDtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBoZWlnaHQsIC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBoZWlnaHQsIC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBoZWlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0LCAtd2Via2l0LXRyYW5zZm9ybTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6IDEyMDBweDtcbiAgcGVyc3BlY3RpdmU6IDEyMDBweDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLWN1YmUtc2hhZG93LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHotaW5kZXg6IDEwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgcmlnaHQgdG9wLCBsZWZ0IHRvcCwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byhyZ2JhKDAsIDAsIDAsIDApKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQocmlnaHQsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCByaWdodCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDAsIDAsIDAsIDAuNSksIHJnYmEoMCwgMCwgMCwgMCkpOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBsZWZ0IGJvdHRvbSwgbGVmdCB0b3AsIGZyb20ocmdiYSgwLCAwLCAwLCAwLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChib3R0b20sIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7IH1cblxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbShyZ2JhKDAsIDAsIDAsIDAuNSkpLCB0byhyZ2JhKDAsIDAsIDAsIDApKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAwLjUpLCByZ2JhKDAsIDAsIDAsIDApKTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci13cDgtaG9yaXpvbnRhbCxcbi5zd2lwZXItY29udGFpbmVyLXdwOC1ob3Jpem9udGFsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7IH1cblxuLnN3aXBlci1jb250YWluZXItd3A4LXZlcnRpY2FsLFxuLnN3aXBlci1jb250YWluZXItd3A4LXZlcnRpY2FsID4gLnN3aXBlci13cmFwcGVyIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXg7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXg7IH1cblxuLnN3aXBlci1idXR0b24tbmV4dCxcbi5zd2lwZXItYnV0dG9uLXByZXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogMjdweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBtYXJnaW4tdG9wOiAtMjJweDtcbiAgei1pbmRleDogMTA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAyN3B4IDQ0cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tZGlzYWJsZWQsXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tZGlzYWJsZWQge1xuICBvcGFjaXR5OiAuMzU7XG4gIGN1cnNvcjogYXV0bztcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnN3aXBlci1idXR0b24tcHJldixcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00wJTJDMjJMMjIlMkMwbDIuMSUyQzIuMUw0LjIlMkMyMmwxOS45JTJDMTkuOUwyMiUyQzQ0TDAlMkMyMkwwJTJDMjJMMCUyQzIyeiclMjBmaWxsJTNEJyUyMzAwN2FmZiclMkYlM0UlM0MlMkZzdmclM0VcIik7XG4gIGxlZnQ6IDEwcHg7XG4gIHJpZ2h0OiBhdXRvOyB9XG5cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjMwMDdhZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICByaWdodDogMTBweDtcbiAgbGVmdDogYXV0bzsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24td2hpdGUsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00wJTJDMjJMMjIlMkMwbDIuMSUyQzIuMUw0LjIlMkMyMmwxOS45JTJDMTkuOUwyMiUyQzQ0TDAlMkMyMkwwJTJDMjJMMCUyQzIyeiclMjBmaWxsJTNEJyUyM2ZmZmZmZiclMkYlM0UlM0MlMkZzdmclM0VcIik7IH1cblxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLXdoaXRlLFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjNmZmZmZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpOyB9XG5cbi5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1ibGFjayxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tYmxhY2sge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTAlMkMyMkwyMiUyQzBsMi4xJTJDMi4xTDQuMiUyQzIybDE5LjklMkMxOS45TDIyJTJDNDRMMCUyQzIyTDAlMkMyMkwwJTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDAwMDAwJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTsgfVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LnN3aXBlci1idXR0b24tYmxhY2ssXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWJsYWNrIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00yNyUyQzIyTDI3JTJDMjJMNSUyQzQ0bC0yLjEtMi4xTDIyLjglMkMyMkwyLjklMkMyLjFMNSUyQzBMMjclMkMyMkwyNyUyQzIyeiclMjBmaWxsJTNEJyUyMzAwMDAwMCclMkYlM0UlM0MlMkZzdmclM0VcIik7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLjNzIG9wYWNpdHk7XG4gIC1vLXRyYW5zaXRpb246IC4zcyBvcGFjaXR5O1xuICB0cmFuc2l0aW9uOiAuM3Mgb3BhY2l0eTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAxMDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24uc3dpcGVyLXBhZ2luYXRpb24taGlkZGVuIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMsXG4uc3dpcGVyLXBhZ2luYXRpb24tY3VzdG9tLFxuLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uIHtcbiAgYm90dG9tOiAxMHB4O1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZm9udC1zaXplOiAwOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4zMyk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLXByZXYge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldi1wcmV2IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlLW5leHQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC42Nik7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDAuNjYpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNjYpOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dC1uZXh0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuMzMpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjMzKTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogLjI7IH1cblxuYnV0dG9uLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1jbGlja2FibGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG4gIGJhY2tncm91bmQ6ICMwMDdhZmY7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01MCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01MCUsIDApOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIG1hcmdpbjogNnB4IDA7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHdpZHRoOiA4cHg7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAuMnMgdG9wLCAuMnMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb246IC4ycyB0b3AsIC4ycyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbjogLjJzIHRyYW5zZm9ybSwgLjJzIHRvcDtcbiAgdHJhbnNpdGlvbjogLjJzIHRyYW5zZm9ybSwgLjJzIHRvcDtcbiAgdHJhbnNpdGlvbjogLjJzIHRyYW5zZm9ybSwgLjJzIHRvcCwgLjJzIC13ZWJraXQtdHJhbnNmb3JtOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgbWFyZ2luOiAwIDRweDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIHtcbiAgbGVmdDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLjJzIGxlZnQsIC4ycyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbjogLjJzIGxlZnQsIC4ycyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbjogLjJzIHRyYW5zZm9ybSwgLjJzIGxlZnQ7XG4gIHRyYW5zaXRpb246IC4ycyB0cmFuc2Zvcm0sIC4ycyBsZWZ0O1xuICB0cmFuc2l0aW9uOiAuMnMgdHJhbnNmb3JtLCAuMnMgbGVmdCwgLjJzIC13ZWJraXQtdHJhbnNmb3JtOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwuc3dpcGVyLWNvbnRhaW5lci1ydGwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy1keW5hbWljIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC4ycyByaWdodCwgLjJzIC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uOiAuMnMgcmlnaHQsIC4ycyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbjogLjJzIHRyYW5zZm9ybSwgLjJzIHJpZ2h0O1xuICB0cmFuc2l0aW9uOiAuMnMgdHJhbnNmb3JtLCAuMnMgcmlnaHQ7XG4gIHRyYW5zaXRpb246IC4ycyB0cmFuc2Zvcm0sIC4ycyByaWdodCwgLjJzIC13ZWJraXQtdHJhbnNmb3JtOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICBiYWNrZ3JvdW5kOiAjMDA3YWZmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsID4gLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICB3aWR0aDogNHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24td2hpdGUgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjZmZmOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXdoaXRlIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAjMDAwOyB9XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi1ibGFjayB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yNSk7IH1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLWJsYWNrIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgYmFja2dyb3VuZDogIzAwMDsgfVxuXG4uc3dpcGVyLXNjcm9sbGJhciB7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXNjcm9sbGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMSU7XG4gIGJvdHRvbTogM3B4O1xuICB6LWluZGV4OiA1MDtcbiAgaGVpZ2h0OiA1cHg7XG4gIHdpZHRoOiA5OCU7IH1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWwgPiAuc3dpcGVyLXNjcm9sbGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDNweDtcbiAgdG9wOiAxJTtcbiAgei1pbmRleDogNTA7XG4gIHdpZHRoOiA1cHg7XG4gIGhlaWdodDogOTglOyB9XG5cbi5zd2lwZXItc2Nyb2xsYmFyLWRyYWcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwOyB9XG5cbi5zd2lwZXItc2Nyb2xsYmFyLWN1cnNvci1kcmFnIHtcbiAgY3Vyc29yOiBtb3ZlOyB9XG5cbi5zd2lwZXItem9vbS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uc3dpcGVyLXpvb20tY29udGFpbmVyID4gY2FudmFzLFxuLnN3aXBlci16b29tLWNvbnRhaW5lciA+IGltZyxcbi5zd2lwZXItem9vbS1jb250YWluZXIgPiBzdmcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIC1vLW9iamVjdC1maXQ6IGNvbnRhaW47XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47IH1cblxuLnN3aXBlci1zbGlkZS16b29tZWQge1xuICBjdXJzb3I6IG1vdmU7IH1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IDQycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMXB4O1xuICBtYXJnaW4tdG9wOiAtMjFweDtcbiAgei1pbmRleDogMTA7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgc3RlcHMoMTIsIGVuZCkgaW5maW5pdGU7XG4gIGFuaW1hdGlvbjogc3dpcGVyLXByZWxvYWRlci1zcGluIDFzIHN0ZXBzKDEyLCBlbmQpIGluZmluaXRlOyB9XG5cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXI6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogJyc7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxMjAlMjAxMjAnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHhtbG5zJTNBeGxpbmslM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmsnJTNFJTNDZGVmcyUzRSUzQ2xpbmUlMjBpZCUzRCdsJyUyMHgxJTNEJzYwJyUyMHgyJTNEJzYwJyUyMHkxJTNEJzcnJTIweTIlM0QnMjcnJTIwc3Ryb2tlJTNEJyUyMzZjNmM2YyclMjBzdHJva2Utd2lkdGglM0QnMTEnJTIwc3Ryb2tlLWxpbmVjYXAlM0Qncm91bmQnJTJGJTNFJTNDJTJGZGVmcyUzRSUzQ2clM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg2MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoOTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDEyMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTUwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMzcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxODAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy40NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDIxMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjU2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjQwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNjYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy43NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjg1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzMwJTIwNjAlMkM2MCknJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRVwiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlci13aGl0ZTphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxMjAlMjAxMjAnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHhtbG5zJTNBeGxpbmslM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmsnJTNFJTNDZGVmcyUzRSUzQ2xpbmUlMjBpZCUzRCdsJyUyMHgxJTNEJzYwJyUyMHgyJTNEJzYwJyUyMHkxJTNEJzcnJTIweTIlM0QnMjcnJTIwc3Ryb2tlJTNEJyUyM2ZmZiclMjBzdHJva2Utd2lkdGglM0QnMTEnJTIwc3Ryb2tlLWxpbmVjYXAlM0Qncm91bmQnJTJGJTNFJTNDJTJGZGVmcyUzRSUzQ2clM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg2MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoOTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDEyMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTUwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMzcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxODAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy40NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDIxMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjU2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjQwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNjYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy43NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjg1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzMwJTIwNjAlMkM2MCknJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRVwiKTsgfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3dpcGVyLXByZWxvYWRlci1zcGluIHtcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuXG5Aa2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cblxuLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1ub3RpZmljYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IC0xMDAwOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZhZGUuc3dpcGVyLWNvbnRhaW5lci1mcmVlLW1vZGUgLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtby10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7IH1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCArIC5zd2lwZXItc2xpZGUsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtcHJldiB7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctdG9wIHtcbiAgei1pbmRleDogMDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItY3ViZS1zaGFkb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgb3BhY2l0eTogLjY7XG4gIC13ZWJraXQtZmlsdGVyOiBibHVyKDUwcHgpO1xuICBmaWx0ZXI6IGJsdXIoNTBweCk7XG4gIHotaW5kZXg6IDA7IH1cblxuLnN3aXBlci1jb250YWluZXItZmxpcCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB6LWluZGV4OiAxOyB9XG5cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0bzsgfVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gIHotaW5kZXg6IDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnN3aXBlci1jb250YWluZXItY292ZXJmbG93IC5zd2lwZXItd3JhcHBlciB7XG4gIC1tcy1wZXJzcGVjdGl2ZTogMTIwMHB4OyB9XG5cbi8qIElvbi5SYW5nZVNsaWRlclxuLy8gY3NzIHZlcnNpb24gMi4wLjNcbi8vIMKpIDIwMTMtMjAxNCBEZW5pcyBJbmVzaGluIHwgSW9uRGVuLmNvbVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFJhbmdlU2xpZGVyICovXG4uaXJzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLmlycy1saW5lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5pcnMtbGluZS1sZWZ0LCAuaXJzLWxpbmUtbWlkLCAuaXJzLWxpbmUtcmlnaHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDA7IH1cblxuLmlycy1saW5lLWxlZnQge1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTElOyB9XG5cbi5pcnMtbGluZS1taWQge1xuICBsZWZ0OiA5JTtcbiAgd2lkdGg6IDgyJTsgfVxuXG4uaXJzLWxpbmUtcmlnaHQge1xuICByaWdodDogMDtcbiAgd2lkdGg6IDExJTsgfVxuXG4uaXJzLWJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAwOyB9XG5cbi5pcnMtYmFyLWVkZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7IH1cblxuLmlycy1zaGFkb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAwOyB9XG5cbi5pcnMtaGFuZGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICB6LWluZGV4OiAxOyB9XG5cbi5pcnMtaGFuZGxlLnR5cGVfbGFzdCB7XG4gIHotaW5kZXg6IDI7IH1cblxuLmlycy1taW4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsZWZ0OiAwO1xuICBjdXJzb3I6IGRlZmF1bHQ7IH1cblxuLmlycy1tYXgge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICByaWdodDogMDtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5pcnMtZnJvbSwgLmlycy10bywgLmlycy1zaW5nbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4uaXJzLWdyaWQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjBweDsgfVxuXG4uaXJzLXdpdGgtZ3JpZCAuaXJzLWdyaWQge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uaXJzLWdyaWQtcG9sIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogOHB4O1xuICBiYWNrZ3JvdW5kOiAjMDAwOyB9XG5cbi5pcnMtZ3JpZC1wb2wuc21hbGwge1xuICBoZWlnaHQ6IDRweDsgfVxuXG4uaXJzLWdyaWQtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogOXB4O1xuICBsaW5lLWhlaWdodDogOXB4O1xuICBwYWRkaW5nOiAwIDNweDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLmlycy1kaXNhYmxlLW1hc2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDA7XG4gIGxlZnQ6IC0xJTtcbiAgd2lkdGg6IDEwMiU7XG4gIGhlaWdodDogMTAwJTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDApO1xuICB6LWluZGV4OiAyOyB9XG5cbi5pcnMtZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjQ7IH1cblxuLmx0LWllOSAuaXJzLWRpc2FibGVkIHtcbiAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTQwKTsgfVxuXG4uaXJzLWhpZGRlbi1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xuICB3aWR0aDogMCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAwICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgei1pbmRleDogLTk5OTkgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuXG4uaXJzLWdyaWQtcG9sIHtcbiAgd2lkdGg6IDAuNXJlbTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMzAzMDM7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgdG9wOiAtM3B4OyB9XG4gIC5pcnMtZ3JpZC1wb2wuc21hbGwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLmlycy1ncmlkLXRleHQge1xuICBmb250LXNpemU6IDA7XG4gIGJvdHRvbTogYXV0bztcbiAgdXNlci1zZWxlY3Q6IHRleHQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07IH1cbiAgLmlycy1ncmlkLXRleHQuanMtZ3JpZC10ZXh0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgLmlycy1ncmlkLXRleHQ6bGFzdC1vZi10eXBlIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IC04cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmlycy1ncmlkLXRleHQge1xuICAgICAgbWFyZ2luLXRvcDogMS43NXJlbTsgfSB9XG4gIC5pcnMtZ3JpZC10ZXh0IC52YWx1ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmlycy1ncmlkLXRleHQgLnZhbHVlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5pcnMtZ3JpZC10ZXh0IC52YWx1ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDsgfSB9XG4gIC5pcnMtZ3JpZC10ZXh0IC5sYWJlbFZhbHVlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogI2EzYTNhMztcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5pcnMtZ3JpZC10ZXh0IC5sYWJlbFZhbHVlIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfSB9XG5cbi5pcnMtZ3JpZCB7XG4gIHRvcDogMC43NXJlbTtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDI1cHgpICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICByaWdodDogMCAhaW1wb3J0YW50OyB9XG5cbi5pcnMge1xuICBoZWlnaHQ6IDQuMzc1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuaXJzIHtcbiAgICAgIGhlaWdodDogNS42MjVyZW07IH0gfVxuICAuaXJzIC5pcnMge1xuICAgIG1hcmdpbjogMCAwLjVyZW07IH1cblxuLmlycy1iYXItZWRnZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmlycy1iYXIge1xuICB0b3A6IDAuNzVyZW07XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICBsZWZ0OiAwLjVyZW0gIWltcG9ydGFudDsgfVxuXG4uaXJzLWxpbmUge1xuICB0b3A6IDAuNzVyZW07XG4gIGhlaWdodDogMnB4O1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmVkZjI7IH1cbiAgLmlycy1saW5lID4gc3BhbiB7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4uaXJzLWhhbmRsZSB7XG4gIHRvcDogMXB4O1xuICB3aWR0aDogMS41cmVtO1xuICBoZWlnaHQ6IDEuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NkY2RjZDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmlycy1oYW5kbGU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxcmVtO1xuICAgIGhlaWdodDogMXJlbTtcbiAgICB0b3A6IDRweDtcbiAgICBsZWZ0OiA0cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDMwMzAzOyB9XG5cbi8qXHJcbj09IG1hbGlodSBqcXVlcnkgY3VzdG9tIHNjcm9sbGJhciBwbHVnaW4gPT1cclxuUGx1Z2luIFVSSTogaHR0cDovL21hbm9zLm1hbGlodS5nci9qcXVlcnktY3VzdG9tLWNvbnRlbnQtc2Nyb2xsZXJcclxuKi9cbi8qXHJcbkNPTlRFTlRTOiBcclxuXHQxLiBCQVNJQyBTVFlMRSAtIFBsdWdpbidzIGJhc2ljL2Vzc2VudGlhbCBDU1MgcHJvcGVydGllcyAobm9ybWFsbHksIHNob3VsZCBub3QgYmUgZWRpdGVkKS4gXHJcblx0Mi4gVkVSVElDQUwgU0NST0xMQkFSIC0gUG9zaXRpb25pbmcgYW5kIGRpbWVuc2lvbnMgb2YgdmVydGljYWwgc2Nyb2xsYmFyLiBcclxuXHQzLiBIT1JJWk9OVEFMIFNDUk9MTEJBUiAtIFBvc2l0aW9uaW5nIGFuZCBkaW1lbnNpb25zIG9mIGhvcml6b250YWwgc2Nyb2xsYmFyLlxyXG5cdDQuIFZFUlRJQ0FMIEFORCBIT1JJWk9OVEFMIFNDUk9MTEJBUlMgLSBQb3NpdGlvbmluZyBhbmQgZGltZW5zaW9ucyBvZiAyLWF4aXMgc2Nyb2xsYmFycy4gXHJcblx0NS4gVFJBTlNJVElPTlMgLSBDU1MzIHRyYW5zaXRpb25zIGZvciBob3ZlciBldmVudHMsIGF1dG8tZXhwYW5kZWQgYW5kIGF1dG8taGlkZGVuIHNjcm9sbGJhcnMuIFxyXG5cdDYuIFNDUk9MTEJBUiBDT0xPUlMsIE9QQUNJVFkgQU5EIEJBQ0tHUk9VTkRTIFxyXG5cdFx0Ni4xIFRIRU1FUyAtIFNjcm9sbGJhciBjb2xvcnMsIG9wYWNpdHksIGRpbWVuc2lvbnMsIGJhY2tncm91bmRzIGV0Yy4gdmlhIHJlYWR5LXRvLXVzZSB0aGVtZXMuXHJcbiovXG4vKiBcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbjEuIEJBU0lDIFNUWUxFICBcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiovXG4ubUN1c3RvbVNjcm9sbGJhciB7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBpbmNoLXpvb207XG4gIHRvdWNoLWFjdGlvbjogcGluY2gtem9vbTtcbiAgLyogZGlyZWN0IHBvaW50ZXIgZXZlbnRzIHRvIGpzICovIH1cblxuLm1DdXN0b21TY3JvbGxiYXIubUNTX25vX3Njcm9sbGJhciwgLm1DdXN0b21TY3JvbGxiYXIubUNTX3RvdWNoX2FjdGlvbiB7XG4gIC1tcy10b3VjaC1hY3Rpb246IGF1dG87XG4gIHRvdWNoLWFjdGlvbjogYXV0bzsgfVxuXG4ubUN1c3RvbVNjcm9sbEJveCB7XG4gIC8qIGNvbnRhaW5zIHBsdWdpbidzIG1hcmt1cCAqL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xuICBkaXJlY3Rpb246IGx0cjsgfVxuXG4ubUNTQl9jb250YWluZXIge1xuICAvKiBjb250YWlucyB0aGUgb3JpZ2luYWwgY29udGVudCAqL1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi8qIFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuMi4gVkVSVElDQUwgU0NST0xMQkFSIFxyXG55LWF4aXNcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiovXG4ubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXIge1xuICBtYXJnaW4tcmlnaHQ6IDMwcHg7IH1cblxuLm1DU0JfY29udGFpbmVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW4ge1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLyogbm9uLXZpc2libGUgc2Nyb2xsYmFyICovXG4ubUNTLWRpci1ydGwgPiAubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXIge1xuICAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMzBweDsgfVxuXG4ubUNTLWRpci1ydGwgPiAubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiB7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuLm1DU0Jfc2Nyb2xsVG9vbHMge1xuICAvKiBjb250YWlucyBzY3JvbGxiYXIgbWFya3VwIChkcmFnZ2FibGUgZWxlbWVudCwgZHJhZ2dlciByYWlsLCBidXR0b25zIGV0Yy4pICovXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogYXV0bztcbiAgbGVmdDogYXV0bztcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwOyB9XG5cbi5tQ1NCX291dHNpZGUgKyAubUNTQl9zY3JvbGxUb29scyB7XG4gIHJpZ2h0OiAtMjZweDsgfVxuXG4vKiBzY3JvbGxiYXIgcG9zaXRpb246IG91dHNpZGUgKi9cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX3Njcm9sbFRvb2xzLFxuLm1DUy1kaXItcnRsID4gLm1DU0Jfb3V0c2lkZSArIC5tQ1NCX3Njcm9sbFRvb2xzIHtcbiAgLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwOyB9XG5cbi5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX291dHNpZGUgKyAubUNTQl9zY3JvbGxUb29scyB7XG4gIGxlZnQ6IC0yNnB4OyB9XG5cbi8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAoc2Nyb2xsYmFyIHBvc2l0aW9uOiBvdXRzaWRlKSAqL1xuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlckNvbnRhaW5lciB7XG4gIC8qIGNvbnRhaW5zIHRoZSBkcmFnZ2FibGUgZWxlbWVudCBhbmQgZHJhZ2dlciByYWlsIG1hcmt1cCAqL1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIGEgKyAubUNTQl9kcmFnZ2VyQ29udGFpbmVyIHtcbiAgbWFyZ2luOiAyMHB4IDA7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogMnB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYm9yZGVyLXJhZGl1czogMTZweDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyIHtcbiAgLyogdGhlIGRyYWdnYWJsZSBlbGVtZW50ICovXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNzBweDtcbiAgLyogbWluaW11bSBkcmFnZ2VyIGhlaWdodCAqL1xuICB6LWluZGV4OiAxOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICAvKiB0aGUgZHJhZ2dlciBlbGVtZW50ICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDJweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyIC5tQ1NCX2RyYWdnZXJfYmFyIHtcbiAgd2lkdGg6IDEycHg7XG4gIC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovIH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCArIC5tQ1NCX2RyYWdnZXJSYWlsLFxuLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogOHB4O1xuICAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqLyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMjBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMCBhdXRvO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93biB7XG4gIGJvdHRvbTogMDsgfVxuXG4vKiBcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbjMuIEhPUklaT05UQUwgU0NST0xMQkFSIFxyXG54LWF4aXNcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiovXG4ubUNTQl9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi5tQ1NCX2hvcml6b250YWwubUNTQl9vdXRzaWRlID4gLm1DU0JfY29udGFpbmVyIHtcbiAgbWluLWhlaWdodDogMTAwJTsgfVxuXG4ubUNTQl9ob3Jpem9udGFsID4gLm1DU0JfY29udGFpbmVyLm1DU19ub19zY3JvbGxiYXJfeC5tQ1NfeF9oaWRkZW4ge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi8qIG5vbi12aXNpYmxlIHNjcm9sbGJhciAqL1xuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogMTZweDtcbiAgdG9wOiBhdXRvO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwOyB9XG5cbi5tQ3VzdG9tU2Nyb2xsQm94ICsgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLFxuLm1DdXN0b21TY3JvbGxCb3ggKyAubUNTQl9zY3JvbGxUb29scyArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7XG4gIGJvdHRvbTogLTI2cHg7IH1cblxuLyogc2Nyb2xsYmFyIHBvc2l0aW9uOiBvdXRzaWRlICovXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgYSArIC5tQ1NCX2RyYWdnZXJDb250YWluZXIge1xuICBtYXJnaW46IDAgMjBweDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlclJhaWwge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIG1hcmdpbjogN3B4IDA7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIge1xuICB3aWR0aDogMzBweDtcbiAgLyogbWluaW11bSBkcmFnZ2VyIHdpZHRoICovXG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDRweDtcbiAgbWFyZ2luOiA2cHggYXV0bzsgfVxuXG4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBoZWlnaHQ6IDEycHg7XG4gIC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovXG4gIG1hcmdpbjogMnB4IGF1dG87IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsXG4ubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlsIHtcbiAgaGVpZ2h0OiA4cHg7XG4gIC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovXG4gIG1hcmdpbjogNHB4IDA7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2J1dHRvbkxlZnQsXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfYnV0dG9uUmlnaHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDAgYXV0bztcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25MZWZ0IHtcbiAgbGVmdDogMDsgfVxuXG4ubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgLm1DU0JfYnV0dG9uUmlnaHQge1xuICByaWdodDogMDsgfVxuXG4vKiBcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbjQuIFZFUlRJQ0FMIEFORCBIT1JJWk9OVEFMIFNDUk9MTEJBUlMgXHJcbnl4LWF4aXMgXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4qL1xuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyID4gLm1DU0JfY29udGFpbmVyIHtcbiAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwgPiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsIHtcbiAgYm90dG9tOiAyMHB4OyB9XG5cbi5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwgPiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwge1xuICByaWdodDogMjBweDsgfVxuXG4vKiBub24tdmlzaWJsZSBob3Jpem9udGFsIHNjcm9sbGJhciAqL1xuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbiArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwge1xuICBib3R0b206IDA7IH1cblxuLyogbm9uLXZpc2libGUgdmVydGljYWwgc2Nyb2xsYmFyL1JUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xuLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiArIC5tQ1NCX3Njcm9sbFRvb2xzIH4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLFxuLm1DUy1kaXItcnRsID4gLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIHtcbiAgcmlnaHQ6IDA7IH1cblxuLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXG4ubUNTLWRpci1ydGwgPiAubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwge1xuICBsZWZ0OiAyMHB4OyB9XG5cbi8qIG5vbi12aXNpYmxlIHNjcm9sbGJhci9SVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbi5tQ1MtZGlyLXJ0bCA+IC5tQ3VzdG9tU2Nyb2xsQm94Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW4gKyAubUNTQl9zY3JvbGxUb29scyB+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCB7XG4gIGxlZnQ6IDA7IH1cblxuLm1DUy1kaXItcnRsID4gLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyX3dyYXBwZXIge1xuICAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMzBweDsgfVxuXG4ubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVuID4gLm1DU0JfY29udGFpbmVyIHtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4ubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3gubUNTX3hfaGlkZGVuID4gLm1DU0JfY29udGFpbmVyIHtcbiAgcGFkZGluZy1ib3R0b206IDA7IH1cblxuLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgLyogbm9uLXZpc2libGUgc2Nyb2xsYmFyICovXG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi8qIG5vbi12aXNpYmxlIGhvcml6b250YWwgc2Nyb2xsYmFyICovXG4ubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3gubUNTX3hfaGlkZGVuIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4vKiBcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbjUuIFRSQU5TSVRJT05TICBcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiovXG4ubUNTQl9zY3JvbGxUb29scyxcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXIsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCxcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd24sXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0LFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0OyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyUmFpbCxcbi5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJfYmFyLFxuLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlclJhaWwge1xuICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLW91dCAuMnMsIGhlaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcciBtYXJnaW4tbGVmdCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tcmlnaHQgLjJzIGVhc2Utb3V0IC4ycywgXHIgbWFyZ2luLXRvcCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tYm90dG9tIC4ycyBlYXNlLW91dCAuMnMsXHIgb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLW91dCAuMnMsIGhlaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcciBtYXJnaW4tbGVmdCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tcmlnaHQgLjJzIGVhc2Utb3V0IC4ycywgXHIgbWFyZ2luLXRvcCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tYm90dG9tIC4ycyBlYXNlLW91dCAuMnMsXHIgb3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1vdXQgLjJzLCBoZWlnaHQgLjJzIGVhc2Utb3V0IC4ycywgXHIgbWFyZ2luLWxlZnQgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLXJpZ2h0IC4ycyBlYXNlLW91dCAuMnMsIFxyIG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLFxyIG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogd2lkdGggLjJzIGVhc2Utb3V0IC4ycywgaGVpZ2h0IC4ycyBlYXNlLW91dCAuMnMsIFxyIG1hcmdpbi1sZWZ0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1yaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcciBtYXJnaW4tdG9wIC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1ib3R0b20gLjJzIGVhc2Utb3V0IC4ycyxcciBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7IH1cblxuLypcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbjYuIFNDUk9MTEJBUiBDT0xPUlMsIE9QQUNJVFkgQU5EIEJBQ0tHUk9VTkRTXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4qL1xuLypcclxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblx0Ni4xIFRIRU1FU1xyXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHQqL1xuLyogZGVmYXVsdCB0aGVtZSAoXCJsaWdodFwiKSAqL1xuLm1DU0Jfc2Nyb2xsVG9vbHMge1xuICBvcGFjaXR5OiAwLjc1O1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiOyB9XG5cbi5tQ1MtYXV0b0hpZGUgPiAubUN1c3RvbVNjcm9sbEJveCA+IC5tQ1NCX3Njcm9sbFRvb2xzLFxuLm1DUy1hdXRvSGlkZSA+IC5tQ3VzdG9tU2Nyb2xsQm94IH4gLm1DU0Jfc2Nyb2xsVG9vbHMge1xuICBvcGFjaXR5OiAwO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0wKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MClcIjsgfVxuXG4ubUN1c3RvbVNjcm9sbGJhciA+IC5tQ3VzdG9tU2Nyb2xsQm94ID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19vbkRyYWcsXG4ubUN1c3RvbVNjcm9sbGJhciA+IC5tQ3VzdG9tU2Nyb2xsQm94IH4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19vbkRyYWcsXG4ubUN1c3RvbVNjcm9sbEJveDpob3ZlciA+IC5tQ1NCX3Njcm9sbFRvb2xzLFxuLm1DdXN0b21TY3JvbGxCb3g6aG92ZXIgfiAubUNTQl9zY3JvbGxUb29scyxcbi5tQ1MtYXV0b0hpZGU6aG92ZXIgPiAubUN1c3RvbVNjcm9sbEJveCA+IC5tQ1NCX3Njcm9sbFRvb2xzLFxuLm1DUy1hdXRvSGlkZTpob3ZlciA+IC5tQ3VzdG9tU2Nyb2xsQm94IH4gLm1DU0Jfc2Nyb2xsVG9vbHMge1xuICBvcGFjaXR5OiAxO1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0xMDApXCI7XG4gIC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0xMDApXCI7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlclJhaWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NDApXCI7IH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjazsgfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyOmFjdGl2ZSAubUNTQl9kcmFnZ2VyX2Jhcixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZyAubUNTQl9kcmFnZ2VyX2JhciB7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChtQ1NCX2J1dHRvbnMucG5nKTtcbiAgLyogY3NzIHNwcml0ZXMgKi9cbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgb3BhY2l0eTogMC40O1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAvKlxyXG5cdFx0c3ByaXRlcyBsb2NhdGlvbnNcclxuXHRcdGxpZ2h0OiAwIDAsIC0xNnB4IDAsIC0zMnB4IDAsIC00OHB4IDAsIDAgLTcycHgsIC0xNnB4IC03MnB4LCAtMzJweCAtNzJweFxyXG5cdFx0ZGFyazogLTgwcHggMCwgLTk2cHggMCwgLTExMnB4IDAsIC0xMjhweCAwLCAtODBweCAtNzJweCwgLTk2cHggLTcycHgsIC0xMTJweCAtNzJweFxyXG5cdFx0Ki8gfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMjBweDtcbiAgLypcclxuXHRcdHNwcml0ZXMgbG9jYXRpb25zXHJcblx0XHRsaWdodDogMCAtMjBweCwgLTE2cHggLTIwcHgsIC0zMnB4IC0yMHB4LCAtNDhweCAtMjBweCwgMCAtOTJweCwgLTE2cHggLTkycHgsIC0zMnB4IC05MnB4XHJcblx0XHRkYXJrOiAtODBweCAtMjBweCwgLTk2cHggLTIwcHgsIC0xMTJweCAtMjBweCwgLTEyOHB4IC0yMHB4LCAtODBweCAtOTJweCwgLTk2cHggLTkycHgsIC0xMTIgLTkycHhcclxuXHRcdCovIH1cblxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTQwcHg7XG4gIC8qXHJcblx0XHRzcHJpdGVzIGxvY2F0aW9uc1xyXG5cdFx0bGlnaHQ6IDAgLTQwcHgsIC0yMHB4IC00MHB4LCAtNDBweCAtNDBweCwgLTYwcHggLTQwcHgsIDAgLTExMnB4LCAtMjBweCAtMTEycHgsIC00MHB4IC0xMTJweFxyXG5cdFx0ZGFyazogLTgwcHggLTQwcHgsIC0xMDBweCAtNDBweCwgLTEyMHB4IC00MHB4LCAtMTQwcHggLTQwcHgsIC04MHB4IC0xMTJweCwgLTEwMHB4IC0xMTJweCwgLTEyMHB4IC0xMTJweFxyXG5cdFx0Ki8gfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTU2cHg7XG4gIC8qXHJcblx0XHRzcHJpdGVzIGxvY2F0aW9uc1xyXG5cdFx0bGlnaHQ6IDAgLTU2cHgsIC0yMHB4IC01NnB4LCAtNDBweCAtNTZweCwgLTYwcHggLTU2cHgsIDAgLTEyOHB4LCAtMjBweCAtMTI4cHgsIC00MHB4IC0xMjhweFxyXG5cdFx0ZGFyazogLTgwcHggLTU2cHgsIC0xMDBweCAtNTZweCwgLTEyMHB4IC01NnB4LCAtMTQwcHggLTU2cHgsIC04MHB4IC0xMjhweCwgLTEwMHB4IC0xMjhweCwgLTEyMHB4IC0xMjhweFxyXG5cdFx0Ki8gfVxuXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcDpob3Zlcixcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd246aG92ZXIsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0OmhvdmVyLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQ6aG92ZXIge1xuICBvcGFjaXR5OiAwLjc1O1xuICBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjtcbiAgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiOyB9XG5cbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwOmFjdGl2ZSxcbi5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd246YWN0aXZlLFxuLm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdDphY3RpdmUsXG4ubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodDphY3RpdmUge1xuICBvcGFjaXR5OiAwLjk7XG4gIGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTkwKVwiO1xuICAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9OTApXCI7IH1cblxuLmhlYWRlci1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDU7IH1cbiAgLmhlYWRlci1jb250YWluZXIgYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmlzLXJldmVhbC1vcGVuIC5oZWFkZXItY29udGFpbmVyIHtcbiAgICB6LWluZGV4OiA0OyB9XG5cbi5wYWdlLWhlYWRlciB7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgcGFkZGluZzogMC42MjVyZW0gMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnBhZ2UtaGVhZGVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucGFnZS1oZWFkZXIge1xuICAgICAgcGFkZGluZzogMS4wNjI1cmVtIDA7IH0gfVxuICAucGFnZS1oZWFkZXIuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAgIC5wYWdlLWhlYWRlci5hY3RpdmUgLmxldmVsMC5jYXRlZ29yeS1pdGVtIHtcbiAgICAgICAgb3BhY2l0eTogMTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgICAucGFnZS1oZWFkZXIuYWN0aXZlIC5sZXZlbDAuY2F0ZWdvcnktaXRlbS5vcGVuZWQgfiAqIHtcbiAgICAgICAgb3BhY2l0eTogMDsgfSB9XG4gIC5jdXN0b21lci1hY2NvdW50LWluZGV4IC5wYWdlLWhlYWRlcixcbiAgLmNhdGFsb2ctcHJvZHVjdC12aWV3IC5wYWdlLWhlYWRlcixcbiAgLmNhdGFsb2ctY2F0ZWdvcnktdmlldyAucGFnZS1oZWFkZXIge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLnBhZ2UtaGVhZGVyIC5wYWdlLWhlYWRlci1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnBhZ2UtaGVhZGVyIC5wYWdlLWhlYWRlci1jb250YWluZXIge1xuICAgICAgaGVpZ2h0OiAzLjQzNzVyZW07XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIG1heC13aWR0aDogMTYwMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnBhZ2UtaGVhZGVyIC5za2lwLWxpbmtzIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIHRvcDogY2FsYyg0MHB4IC8gMik7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UtaGVhZGVyIC5za2lwLWxpbmtzIHtcbiAgICAgIHRvcDogY2FsYyg1NHB4IC8gMik7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnBhZ2UtaGVhZGVyIC5za2lwLWxpbmtzIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuICAucGFnZS1oZWFkZXIgLnNraXAtbGlua3MgPiBkaXYsIC5wYWdlLWhlYWRlciAuc2tpcC1saW5rcyA+IGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIG1hcmdpbi1sZWZ0OiA4cHg7IH1cbiAgICAucGFnZS1oZWFkZXIgLnNraXAtbGlua3MgPiBkaXYgaW1nLCAucGFnZS1oZWFkZXIgLnNraXAtbGlua3MgPiBhIGltZyB7XG4gICAgICB3aWR0aDogMTVweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5wYWdlLWhlYWRlciAuc2tpcC1saW5rcyA+IGRpdiwgLnBhZ2UtaGVhZGVyIC5za2lwLWxpbmtzID4gYSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gICAgICAgIC5wYWdlLWhlYWRlciAuc2tpcC1saW5rcyA+IGRpdiBpbWcsIC5wYWdlLWhlYWRlciAuc2tpcC1saW5rcyA+IGEgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTlweDsgfSB9XG4gICAgLnBhZ2UtaGVhZGVyIC5za2lwLWxpbmtzID4gZGl2OmZpcnN0LW9mLXR5cGUsIC5wYWdlLWhlYWRlciAuc2tpcC1saW5rcyA+IGE6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAucGFnZS1oZWFkZXIgLmxvZ28ge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogN3JlbTtcbiAgICBoZWlnaHQ6IDIuNTYyNXJlbTtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYWdlLWhlYWRlciAubG9nbyB7XG4gICAgICAgIHdpZHRoOiA5LjI1cmVtO1xuICAgICAgICBoZWlnaHQ6IDMuMzc1cmVtOyB9IH1cbiAgLnBhZ2UtaGVhZGVyIC5sb2dvLXdyYXBwZXIge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhZ2UtaGVhZGVyIC5sb2dvLXdyYXBwZXIge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5wYWdlLWhlYWRlciAubG9nby13cmFwcGVyIHtcbiAgICAgICAgYWxpZ24tc2VsZjogYXV0bzsgfSB9XG4gIC5wYWdlLWhlYWRlci5ob21lLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGFnZS1oZWFkZXIuaG9tZS1oZWFkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMC45Mzc1cmVtIDAgMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLnBhZ2UtaGVhZGVyLmhvbWUtaGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogMS40Mzc1cmVtIDAgMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhZ2UtaGVhZGVyLmhvbWUtaGVhZGVyLmZpeGVkIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICBsZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIHJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAxLjA2MjVyZW0gMDsgfVxuICAgICAgICAucGFnZS1oZWFkZXIuaG9tZS1oZWFkZXIuZml4ZWQgLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgaGVpZ2h0OiA2LjMxMjVyZW07XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAgICAgICAucGFnZS1oZWFkZXIuaG9tZS1oZWFkZXIuZml4ZWQgLnNraXAtbGlua3Mge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IGF1dG87IH1cbiAgICAgICAgLnBhZ2UtaGVhZGVyLmhvbWUtaGVhZGVyLmZpeGVkIC5sb2dvLXdyYXBwZXIge1xuICAgICAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgICAgIC5wYWdlLWhlYWRlci5ob21lLWhlYWRlci5maXhlZCAubG9nbyB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHdpZHRoOiA5LjI1cmVtO1xuICAgICAgICAgIGhlaWdodDogMy4zNzVyZW07XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIEBzdXBwb3J0cyAoLXdlYmtpdC1tYXJxdWVlLXJlcGV0aXRpb246IGluZmluaXRlKSBhbmQgKG9iamVjdC1maXQ6IGZpbGwpIHtcbiAgICAgIC5wYWdlLWhlYWRlci5ob21lLWhlYWRlci5maXhlZC5hY3RpdmUgLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG4gICAgQG1lZGlhIG5vdCBhbGwgYW5kIChtaW4tcmVzb2x1dGlvbjogMC4wMDFkcGNtKSB7XG4gICAgICBAc3VwcG9ydHMgKC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZSkgYW5kIChub3QgKHN0cm9rZS1jb2xvcjogdHJhbnNwYXJlbnQpKSB7XG4gICAgICAgIC5wYWdlLWhlYWRlci5ob21lLWhlYWRlci5maXhlZC5hY3RpdmUgLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH0gfVxuICAgIEBtZWRpYSBub3QgYWxsIGFuZCAobWluLXJlc29sdXRpb246IDAuMDAxZHBjbSkge1xuICAgICAgQHN1cHBvcnRzICgtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUpIHtcbiAgICAgICAgLnBhZ2UtaGVhZGVyLmhvbWUtaGVhZGVyLmZpeGVkLmFjdGl2ZSAucGFnZS1oZWFkZXItY29udGFpbmVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfSB9XG4gICAgQG1lZGlhIG5vdCBhbGwgYW5kIChtaW4tcmVzb2x1dGlvbjogMC4wMDFkcGNtKSB7XG4gICAgICBAc3VwcG9ydHMgKC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZSkgYW5kIChzdHJva2UtY29sb3I6IHRyYW5zcGFyZW50KSB7XG4gICAgICAgIC5wYWdlLWhlYWRlci5ob21lLWhlYWRlci5maXhlZC5hY3RpdmUgLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH0gfVxuICAgIEBtZWRpYSBub3QgYWxsIGFuZCAobWluLXJlc29sdXRpb246IDAuMDAxZHBjbSkge1xuICAgICAgQHN1cHBvcnRzICgtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUpIGFuZCAoZGlzcGxheTogZmxvdy1yb290KSB7XG4gICAgICAgIC5wYWdlLWhlYWRlci5ob21lLWhlYWRlci5maXhlZC5hY3RpdmUgLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH0gfVxuICAgIEBzdXBwb3J0cyAoLXdlYmtpdC1tYXJxdWVlLXJlcGV0aXRpb246IGluZmluaXRlKSBhbmQgKG9iamVjdC1maXQ6IGZpbGwpIHtcbiAgICAgIC5wYWdlLWhlYWRlci5ob21lLWhlYWRlci5maXhlZC5hY3RpdmUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDgwcHg7IH0gfVxuICAgIEBtZWRpYSBub3QgYWxsIGFuZCAobWluLXJlc29sdXRpb246IDAuMDAxZHBjbSkge1xuICAgICAgQHN1cHBvcnRzICgtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUpIGFuZCAobm90IChzdHJva2UtY29sb3I6IHRyYW5zcGFyZW50KSkge1xuICAgICAgICAucGFnZS1oZWFkZXIuaG9tZS1oZWFkZXIuZml4ZWQuYWN0aXZlIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDgwcHg7IH0gfSB9XG4gICAgQG1lZGlhIG5vdCBhbGwgYW5kIChtaW4tcmVzb2x1dGlvbjogMC4wMDFkcGNtKSB7XG4gICAgICBAc3VwcG9ydHMgKC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZSkge1xuICAgICAgICAucGFnZS1oZWFkZXIuaG9tZS1oZWFkZXIuZml4ZWQuYWN0aXZlIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDgwcHg7IH0gfSB9XG4gICAgQG1lZGlhIG5vdCBhbGwgYW5kIChtaW4tcmVzb2x1dGlvbjogMC4wMDFkcGNtKSB7XG4gICAgICBAc3VwcG9ydHMgKC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZSkgYW5kIChzdHJva2UtY29sb3I6IHRyYW5zcGFyZW50KSB7XG4gICAgICAgIC5wYWdlLWhlYWRlci5ob21lLWhlYWRlci5maXhlZC5hY3RpdmUge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0ODBweDsgfSB9IH1cbiAgICBAbWVkaWEgbm90IGFsbCBhbmQgKG1pbi1yZXNvbHV0aW9uOiAwLjAwMWRwY20pIHtcbiAgICAgIEBzdXBwb3J0cyAoLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lKSBhbmQgKGRpc3BsYXk6IGZsb3ctcm9vdCkge1xuICAgICAgICAucGFnZS1oZWFkZXIuaG9tZS1oZWFkZXIuZml4ZWQuYWN0aXZlIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDgwcHg7IH0gfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhZ2UtaGVhZGVyLmhvbWUtaGVhZGVyIC5uYXZpZ2F0aW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLnBhZ2UtaGVhZGVyLmhvbWUtaGVhZGVyIC5uYXZpZ2F0aW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzVweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhZ2UtaGVhZGVyLmhvbWUtaGVhZGVyIC5wYWdlLWhlYWRlci1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgICAucGFnZS1oZWFkZXIuaG9tZS1oZWFkZXIgLmxvZ28ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB3aWR0aDogN3JlbTtcbiAgICAgIGhlaWdodDogMi41NjI1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYWdlLWhlYWRlci5ob21lLWhlYWRlciAubG9nbyB7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgd2lkdGg6IDkuMjVyZW07XG4gICAgICAgICAgaGVpZ2h0OiAzLjM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5wYWdlLWhlYWRlci5ob21lLWhlYWRlciAubG9nbyB7XG4gICAgICAgICAgd2lkdGg6IDExLjVyZW07XG4gICAgICAgICAgaGVpZ2h0OiA0LjE4NzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgICAucGFnZS1oZWFkZXIuaG9tZS1oZWFkZXIgLmxvZ28ge1xuICAgICAgICAgIHdpZHRoOiAxNC4zNzVyZW07XG4gICAgICAgICAgaGVpZ2h0OiA1LjMxMjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgICAucGFnZS1oZWFkZXIuaG9tZS1oZWFkZXIgLmxvZ28gaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhZ2UtaGVhZGVyLmhvbWUtaGVhZGVyIC5sb2dvLXdyYXBwZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucGFnZS1oZWFkZXIuaG9tZS1oZWFkZXIgLnNraXAtbGlua3Mge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAucGFnZS1oZWFkZXIuaG9tZS1oZWFkZXIgLnNraXAtbGlua3Mge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogY2FsYyg2N3B4IC8gMik7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5wYWdlLWhlYWRlci5ob21lLWhlYWRlciAuc2tpcC1saW5rcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgICAgIHRvcDogY2FsYyg4NHB4IC8gMik7IH0gfVxuICAgIC5wYWdlLWhlYWRlci5ob21lLWhlYWRlciAuY2FydC1saW5rIC5jb3VudCB7XG4gICAgICBib3JkZXI6IDNweCBzb2xpZCAjZmZmZmZmOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYWdlLWhlYWRlci5ob21lLWhlYWRlciAuY2FydC1saW5rIC5jb3VudCB7XG4gICAgICAgICAgYm9yZGVyOiAzcHggc29saWQgI2I0YjdjNTsgfSB9XG4gICAgLnBhZ2UtaGVhZGVyLmhvbWUtaGVhZGVyLmZpeGVkIC5jYXJ0LWxpbmsgLmNvdW50IHtcbiAgICAgIGJvcmRlcjogM3B4IHNvbGlkICNmZmZmZmY7IH1cbiAgICAucGFnZS1oZWFkZXIuaG9tZS1oZWFkZXIuZml4ZWQgLm5hdmlnYXRpb24ge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5wYWdlLWhlYWRlci5ob21lLWhlYWRlci5maXhlZCAuc2tpcC1saW5rcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAucGFnZS1oZWFkZXIgLmNhcnQtbGluayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLnBhZ2UtaGVhZGVyIC5jYXJ0LWxpbmsgLmNvdW50IHtcbiAgICAgIHdpZHRoOiAwLjc1cmVtO1xuICAgICAgaGVpZ2h0OiAwLjc1cmVtO1xuICAgICAgYm9yZGVyOiAzcHggc29saWQgI2ZmZmZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ3LCA5NywgOTksIDAuOSk7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjQzNzVyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogLTAuMjVyZW07XG4gICAgICBmb250LXNpemU6IDA7IH1cbiAgICAucGFnZS1oZWFkZXIgLmNhcnQtbGluay5uby1jb3VudCAuY291bnQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAucGFnZS1oZWFkZXIgLm9wZW4tc3ViLW5hdiB7XG4gICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2UtaGVhZGVyIC5vcGVuLXN1Yi1uYXYge1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtOyB9IH1cbiAgICAucGFnZS1oZWFkZXIgLm9wZW4tc3ViLW5hdi5tb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLnBhZ2UtaGVhZGVyIC5vcGVuLXN1Yi1uYXYubW9yZSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lOyB9IH1cbiAgICAucGFnZS1oZWFkZXIgLm9wZW4tc3ViLW5hdiBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMC4zMTI1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5wYWdlLWhlYWRlciAub3Blbi1zdWItbmF2IHNwYW4ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDAuMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UtaGVhZGVyLmZpeGVkIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIGxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgIHJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmc6IDEuMDYyNXJlbSAwOyB9XG4gICAgICAuY3VzdG9tZXItYWNjb3VudC1pbmRleCAucGFnZS1oZWFkZXIuZml4ZWQsXG4gICAgICAuY2F0YWxvZy1wcm9kdWN0LXZpZXcgLnBhZ2UtaGVhZGVyLmZpeGVkLFxuICAgICAgLmNhdGFsb2ctY2F0ZWdvcnktdmlldyAucGFnZS1oZWFkZXIuZml4ZWQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgICAucGFnZS1oZWFkZXIuZml4ZWQgLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIC5wYWdlLWhlYWRlci5maXhlZCAuc2tpcC1saW5rcyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiBhdXRvOyB9XG4gICAgICAucGFnZS1oZWFkZXIuZml4ZWQgLmNhcnQtbGluayB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAucGFnZS1oZWFkZXIuZml4ZWQgLmNhcnQtbGluayAuY291bnQge1xuICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICNmZmZmZmY7IH0gfVxuICAucGFnZS1oZWFkZXIuaGlkZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wYWdlLWhlYWRlcjpub3QoLmhvbWUtaGVhZGVyKSAuY29sdW1ucyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnBhZ2UtaGVhZGVyOm5vdCguaG9tZS1oZWFkZXIpIC5jb2x1bW5zIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnBhZ2UtaGVhZGVyOm5vdCguaG9tZS1oZWFkZXIpIC5sZXZlbDAuc2hvdyB7XG4gICAgICBib3gtc2hhZG93OiAwIDRweCA3cHggcmdiYSgxNjMsIDE2MywgMTYzLCAwLjUpOyB9IH1cblxuLmhlYWRlci1hY2NvdW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5oZWFkZXItYWNjb3VudC5hY3RpdmUgLmxvZ2luOmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTsgfVxuICAuaGVhZGVyLWFjY291bnQgLmxvZ2luIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuaGVhZGVyLWFjY291bnQgLmxvZ2luOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU4MDAnO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHN1YjtcbiAgICAgIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcztcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7IH1cbiAgICAuaGVhZGVyLWFjY291bnQgLmxvZ2luOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMS4yNXJlbTtcbiAgICAgIGhlaWdodDogMC45Mzc1cmVtO1xuICAgICAgd2lkdGg6IDEuODc1cmVtOyB9XG4gIC5oZWFkZXItYWNjb3VudCAuc2tpcC1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDEwMCUgKyAxNXB4KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtO1xuICAgIHotaW5kZXg6IDE7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEzNXB4O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMCA0cHggN3B4IHJnYmEoMTYzLCAxNjMsIDE2MywgMC41KTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5oZWFkZXItYWNjb3VudCAuc2tpcC1jb250ZW50IHtcbiAgICAgICAgdG9wOiBjYWxjKDEwMCUgKyA3cHgpOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaG9tZS1oZWFkZXIgLmhlYWRlci1hY2NvdW50IC5za2lwLWNvbnRlbnQge1xuICAgICAgICByaWdodDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKTsgfSB9XG4gICAgLmZpeGVkLmhvbWUtaGVhZGVyIC5oZWFkZXItYWNjb3VudCAuc2tpcC1jb250ZW50IHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLmhlYWRlci1hY2NvdW50IC5za2lwLWNvbnRlbnQgdWwge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgLmhlYWRlci1hY2NvdW50IC5za2lwLWNvbnRlbnQgdWwgYSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlOyB9XG4gICAgICAgIC5oZWFkZXItYWNjb3VudCAuc2tpcC1jb250ZW50IHVsIGE6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAjZjE2NTY3OyB9XG5cbi5oZWFkZXItYmFubmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBwYWRkaW5nOiAwOyB9XG4gIC5oZWFkZXItYmFubmVyIHAge1xuICAgIGNvbG9yOiAjYTNhM2EzO1xuICAgIGZvbnQtc2l6ZTogMC41cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMS41cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaGVhZGVyLWJhbm5lciBwIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMi41cHg7IH0gfVxuICAuaGVhZGVyLWJhbm5lciAuaGlkZS1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuaGVhZGVyLWJhbm5lciAuaGlkZS1tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5oZWFkZXItYmFubmVyIC5tb2JpbGUtaGVhZGVyLWJhbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZzogMTVweCA4cHggIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5oZWFkZXItYmFubmVyIC5tb2JpbGUtaGVhZGVyLWJhbm5lciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIC5oZWFkZXItYmFubmVyIC5tb2JpbGUtaGVhZGVyLWJhbm5lciAuc3Vic2NyaXB0aW9uLWZlYXR1cmVzIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgICAgLmhlYWRlci1iYW5uZXIgLm1vYmlsZS1oZWFkZXItYmFubmVyIC5zdWJzY3JpcHRpb24tZmVhdHVyZXMgPiB1bCB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDsgfVxuICAgIC5oZWFkZXItYmFubmVyIC5tb2JpbGUtaGVhZGVyLWJhbm5lciAuc3Vic2NyaXB0aW9uLW5hbWUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5oZWFkZXItYmFubmVyIC5tb2JpbGUtaGVhZGVyLWJhbm5lciAuc3Vic2NyaXB0aW9uLW5hbWUge1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7IH0gfVxuICAgIC5oZWFkZXItYmFubmVyIC5tb2JpbGUtaGVhZGVyLWJhbm5lciAuaDIge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuaGVhZGVyLWJhbm5lciAubW9iaWxlLWhlYWRlci1iYW5uZXIgLmgyIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgIC5oZWFkZXItYmFubmVyIC5tb2JpbGUtaGVhZGVyLWJhbm5lciAuaDQge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmhlYWRlci1iYW5uZXIgLm1vYmlsZS1oZWFkZXItYmFubmVyIC5oNCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICAuaGVhZGVyLWJhbm5lciAubW9iaWxlLWhlYWRlci1iYW5uZXIgLmJ1dHRvbiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuaGVhZGVyLWJhbm5lciAubW9iaWxlLWhlYWRlci1iYW5uZXIgLmJ1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH0gfVxuICAuaGVhZGVyLWJhbm5lciAuc21hbGwtMTIge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLmhlYWRlci1iYW5uZXIuc21hbGwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwIDE1cHggMTVweDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmhlYWRlci1iYW5uZXIuc21hbGwge1xuICAgICAgICBwYWRkaW5nOiAwIDMwcHggMTVweDsgfSB9XG4gICAgLmhlYWRlci1iYW5uZXIuc21hbGwgcCB7XG4gICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLmhlYWRlci1iYW5uZXIuc21hbGwgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH0gfVxuICAgICAgLmhlYWRlci1iYW5uZXIuc21hbGwgcCBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBjb2xvcjogI2YxNjU2NztcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMTRweDtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgLmhlYWRlci1iYW5uZXIuc21hbGwgcCBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gICAgICAgIC5oZWFkZXItYmFubmVyLnNtYWxsIHAgYTpob3ZlciB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5oZWFkZXItYmFubmVyIC5jcm9zcyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTVweDtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmhlYWRlci1iYW5uZXIgLmNyb3NzIHtcbiAgICAgICAgcmlnaHQ6IDE1cHg7IH0gfVxuICAgIC5oZWFkZXItYmFubmVyIC5jcm9zczpiZWZvcmUsIC5oZWFkZXItYmFubmVyIC5jcm9zczphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMTY1Njc7IH1cbiAgICAuaGVhZGVyLWJhbm5lciAuY3Jvc3M6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7IH1cbiAgICAuaGVhZGVyLWJhbm5lciAuY3Jvc3M6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC00NWRlZyk7IH1cbiAgLmhlYWRlci1iYW5uZXIgaW1nIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4jc3ViLW1haW4tbmF2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtMXB4O1xuICByaWdodDogLTFweDtcbiAgcGFkZGluZzogMS4yNXJlbSAwLjYyNXJlbTtcbiAgZGlzcGxheTogbm9uZTtcbiAgdG9wOiAzLjQzNzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICNzdWItbWFpbi1uYXYge1xuICAgICAgdG9wOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICNzdWItbWFpbi1uYXYge1xuICAgICAgcGFkZGluZzogMS40Mzc1cmVtIDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAjc3ViLW1haW4tbmF2IHtcbiAgICAgIHRvcDogNi4zMTI1cmVtO1xuICAgICAgcGFkZGluZzogMS40Mzc1cmVtIDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMS4yNWVtKSB7XG4gICAgI3N1Yi1tYWluLW5hdiB7XG4gICAgICBwYWRkaW5nOiAwLjg3NXJlbSAwLjkzNzVyZW07IH0gfVxuICAuaG9tZS1oZWFkZXIgI3N1Yi1tYWluLW5hdiB7XG4gICAgdG9wOiAzLjQzNzVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaG9tZS1oZWFkZXIgI3N1Yi1tYWluLW5hdiB7XG4gICAgICAgIHRvcDogNS4wNjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuaG9tZS1oZWFkZXIgI3N1Yi1tYWluLW5hdiB7XG4gICAgICAgIHRvcDogNi4zMTI1cmVtOyB9IH1cbiAgLmZpeGVkLmhvbWUtaGVhZGVyICNzdWItbWFpbi1uYXYge1xuICAgIHRvcDogNi4zMTI1cmVtOyB9XG4gICNzdWItbWFpbi1uYXYgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgI3N1Yi1tYWluLW5hdiB1bCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAgICNzdWItbWFpbi1uYXYgdWwgbGkge1xuICAgICAgcGFkZGluZzogMC4zMTI1cmVtIDIuMzEyNXJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgI3N1Yi1tYWluLW5hdiB1bCBsaTpiZWZvcmUge1xuICAgICAgICBsZWZ0OiAtMC4xMjVyZW07XG4gICAgICAgIHJpZ2h0OiBhdXRvOyB9XG4gICAgICAjc3ViLW1haW4tbmF2IHVsIGxpOmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IC0wLjEyNXJlbTtcbiAgICAgICAgbGVmdDogYXV0bzsgfVxuICAgICAgI3N1Yi1tYWluLW5hdiB1bCBsaTpiZWZvcmUsICNzdWItbWFpbi1uYXYgdWwgbGk6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgd2lkdGg6IDAuMjVyZW07XG4gICAgICAgIGhlaWdodDogMC4yNXJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4xMjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgICNzdWItbWFpbi1uYXYgdWwgbGk6YmVmb3JlLCAjc3ViLW1haW4tbmF2IHVsIGxpOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAgICNzdWItbWFpbi1uYXYgdWwgbGkgYSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiAjMDMwMzAzO1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7IH1cblxuLmJ0bi1tZW51IHtcbiAgd2lkdGg6IDIuNXJlbTtcbiAgaGVpZ2h0OiAyLjVyZW07XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDAuNjI1cmVtIDAuNjI1cmVtIDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXRvcDogMC4zMTI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYnRuLW1lbnUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5idG4tbWVudSA+IGRpdiwgLmJ0bi1tZW51ID4gcCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxcmVtO1xuICAgIGhlaWdodDogMC40Mzc1cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5idG4tbWVudSA+IGRpdiBzcGFuLCAuYnRuLW1lbnUgPiBwIHNwYW4ge1xuICAgICAgaGVpZ2h0OiAwLjEyNXJlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMXJlbTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4yNXMsIGJhY2tncm91bmQtY29sb3IgLjI1cztcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyOyB9XG4gICAgICAuYnRuLW1lbnUgPiBkaXYgc3BhbjpudGgtY2hpbGQoMSksIC5idG4tbWVudSA+IHAgc3BhbjpudGgtY2hpbGQoMSkge1xuICAgICAgICB0b3A6IDA7IH1cbiAgICAgIC5idG4tbWVudSA+IGRpdiBzcGFuOm50aC1jaGlsZCgyKSwgLmJ0bi1tZW51ID4gcCBzcGFuOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHRvcDogMC4zMTI1cmVtOyB9XG4gIC5idG4tbWVudS5vcGVuIHNwYW4ge1xuICAgIGxlZnQ6IDAuMTI1cmVtOyB9XG4gICAgLmJ0bi1tZW51Lm9wZW4gc3BhbjpudGgtY2hpbGQoMSkge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgdG9wOiAtMC4xODc1cmVtOyB9XG4gICAgLmJ0bi1tZW51Lm9wZW4gc3BhbjpudGgtY2hpbGQoMikge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgIHRvcDogMC41cmVtOyB9XG5cbi5uYXZpZ2F0aW9uIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMi41cmVtIDAgMC4zMTI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICByaWdodDogLTFweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2U7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgei1pbmRleDogMTAxOyB9XG4gIC5uYXZpZ2F0aW9uOmFmdGVyIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGhlaWdodDogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLm5hdmlnYXRpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIHJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIG1hcmdpbi10b3A6IDdweDtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBvdmVyZmxvdzogYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubmF2aWdhdGlvbiB7XG4gICAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAubmF2aWdhdGlvbiB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ob21lLWhlYWRlciAubmF2aWdhdGlvbiB7XG4gICAgICBsZWZ0OiAtMC42MjVyZW07XG4gICAgICB3aWR0aDogY2FsYygxMDAlICsgMjBweCk7XG4gICAgICByaWdodDogYXV0bzsgfSB9XG4gIC5uYXZpZ2F0aW9uIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5uYXZpZ2F0aW9uID4gdWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubmF2aWdhdGlvbiA+IHVsIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGhlaWdodDogYXV0bzsgfSB9XG4gICAgLm5hdmlnYXRpb24gPiB1bCBsaS5tb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLm5hdmlnYXRpb24gPiB1bCBsaS5tb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7IH0gfVxuICAgIC5uYXZpZ2F0aW9uID4gdWwgPiBsaSB7XG4gICAgICBwYWRkaW5nOiAwLjVyZW0gMS43NXJlbTtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLm5hdmlnYXRpb24gPiB1bCA+IGxpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDAuODc1cmVtO1xuICAgICAgICAgIG1hcmdpbjogOHB4IDZweDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAgIC5uYXZpZ2F0aW9uID4gdWwgPiBsaSB7XG4gICAgICAgICAgcGFkZGluZzogMCAxLjEyNXJlbTtcbiAgICAgICAgICBtYXJnaW46IDEycHg7IH0gfVxuICAgIC5uYXZpZ2F0aW9uID4gdWwgPiBsaS5wYXJlbnQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLm5hdmlnYXRpb24gPiB1bCA+IGxpLnBhcmVudCB7XG4gICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgICAgIC5uYXZpZ2F0aW9uID4gdWwgPiBsaS5wYXJlbnQgPiBhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgICAgICAubmF2aWdhdGlvbiA+IHVsID4gbGkucGFyZW50ID4gYTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJ1xcZTgwMCc7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdmb250ZWxsbyc7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNDVzIGVhc2U7XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMC42ODc1cmVtOyB9XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgICAgLm5hdmlnYXRpb24gPiB1bCA+IGxpLnBhcmVudCA+IGE6YWZ0ZXIge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMC4zMTI1cmVtOyB9IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAgICAgICAubmF2aWdhdGlvbiA+IHVsID4gbGkucGFyZW50ID4gYTphZnRlciB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjU2MjVyZW07IH0gfVxuICAubmF2aWdhdGlvbiBhOmhvdmVyIHtcbiAgICBjb2xvcjogI2YxNjU2NzsgfVxuICAubmF2aWdhdGlvbiAuYnRuLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAxMHB4O1xuICAgIHRvcDogMTBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5uYXZpZ2F0aW9uIC5idG4tbWVudSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAubmF2aWdhdGlvbiAudmlldy1hbGwge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG5cbi5sZXZlbDAgPiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5sZXZlbDAgPiBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7IH0gfVxuXG4ubGV2ZWwwLnN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogNTAlO1xuICBwYWRkaW5nOiAyNXB4IDEwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UsIHRyYW5zZm9ybSAwLjNzIGVhc2UsIHZpc2liaWxpdHkgMC4zcyBlYXNlO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGN1cnNvcjogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgei1pbmRleDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubGV2ZWwwLnN1Ym1lbnUge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBtaW4td2lkdGg6IDcuODEyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAubGV2ZWwwLnN1Ym1lbnUge1xuICAgICAgcGFkZGluZzogMzBweCAxMSU7IH0gfVxuICAuZml4ZWQgLmxldmVsMC5zdWJtZW51IHtcbiAgICBib3gtc2hhZG93OiAwIDRweCA3cHggcmdiYSgxNjMsIDE2MywgMTYzLCAwLjUpOyB9XG5cbi5sZXZlbDAuc2hvdyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmVkZjI7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLmxldmVsMC5zaG93IHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuXG4ubGV2ZWwwLnBhcmVudCB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAubGV2ZWwwLnBhcmVudC5vcGVuZWQgPiBhIHtcbiAgICBjb2xvcjogI2YxNjU2NzsgfVxuICAgIC5sZXZlbDAucGFyZW50Lm9wZW5lZCA+IGE6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7IH1cbiAgLmxldmVsMC5wYXJlbnQ6aG92ZXIgPiBhIHtcbiAgICBjb2xvcjogI2YxNjU2NzsgfVxuXG4ubGV2ZWwwLmNhdGVnb3J5LWl0ZW0ge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5sZXZlbDAuY2F0ZWdvcnktaXRlbS5vcGVuZWQge1xuICAgIG92ZXJmbG93OiB1bnNldDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxldmVsMC5jYXRlZ29yeS1pdGVtLmZpcnN0IC5sZXZlbDEuY2F0ZWdvcnktaXRlbSB7XG4gICAgICBwYWRkaW5nLXRvcDogNTFweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAubGV2ZWwwLmNhdGVnb3J5LWl0ZW0uZmlyc3QgLmxldmVsMS5jYXRlZ29yeS1pdGVtID4gYSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IGNhbGMoMTAwJSAtIDUwcHgpO1xuICAgICAgbGVmdDogMDsgfSB9XG5cbi5sZXZlbDAubWVnYS1tZW51IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC5sZXZlbDAubWVnYS1tZW51IC5sZXZlbDEuY2F0ZWdvcnktaXRlbSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxldmVsMS5zdWJtZW51ID4gbGk6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9IH1cblxuLmxldmVsMS5jYXRlZ29yeS1pdGVtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCAwIDE1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5sZXZlbDEuY2F0ZWdvcnktaXRlbSB7XG4gICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgIHdpZHRoOiBjYWxjKDIwJSAtIDIwcHgpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5sZXZlbDEuY2F0ZWdvcnktaXRlbSB7XG4gICAgICBtYXJnaW46IDAgMTVweDtcbiAgICAgIHdpZHRoOiBjYWxjKDIwJSAtIDMwcHgpOyB9IH1cbiAgLmxldmVsMS5jYXRlZ29yeS1pdGVtID4gYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDIuNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDAwMDA7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuM3MgZWFzZSwgY29sb3IgMC4zcyBlYXNlOyB9XG4gICAgLmxldmVsMS5jYXRlZ29yeS1pdGVtID4gYTpob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6ICNmMTY1Njc7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGV2ZWwxLnR3by1jb2xzIHtcbiAgICBjb2x1bW5zOiAyO1xuICAgIGNvbHVtbi1nYXA6IDQ2cHg7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfSB9XG5cbi5sZXZlbDEgPiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5sZXZlbDEgPiBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogMnB4OyB9IH1cblxuLmxldmVsMiA+IGEge1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG5cbi5sZWZ0LXNpZGUtbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLmxlZnQtc2lkZS1tZW51IHtcbiAgICAgIG1heC13aWR0aDogMjY4cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxlZnQtc2lkZS1tZW51IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfSB9XG4gIC5sZWZ0LXNpZGUtbWVudSAuaW1hZ2UtaG9sZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5sZWZ0LXNpZGUtbWVudSAuaW1hZ2UtaG9sZGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5sZWZ0LXNpZGUtbWVudSAuaW1hZ2UtaG9sZGVyIHtcbiAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICBoZWlnaHQ6IDMwMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7IH0gfVxuICAubGVmdC1zaWRlLW1lbnUgLmxldmVsMS5jYXRlZ29yeS1pdGVtIHtcbiAgICBtYXgtd2lkdGg6IDI2OHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAgIC5sZWZ0LXNpZGUtbWVudSAubGV2ZWwxLmNhdGVnb3J5LWl0ZW0gPiBhIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLnJpZ2h0LXNpZGUtbWVudSB7XG4gICAgbWF4LXdpZHRoOiAyNjhweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJpZ2h0LXNpZGUtbWVudSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIG1heC13aWR0aDogMjAwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yaWdodC1zaWRlLW1lbnUge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5hYm91dC11cy1tZW51LWl0ZW0gLmxldmVsMS5jYXRlZ29yeS1pdGVtIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50cmFpbi13aXRoLXVzLW1lbnUgLnJpZ2h0LXNpZGUtbWVudSB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgbWF4LXdpZHRoOiAyMzBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRyYWluLXdpdGgtdXMtbWVudSAucmlnaHQtc2lkZS1tZW51IHtcbiAgICBtYXJnaW4tbGVmdDogMjhweDtcbiAgICBtYXgtd2lkdGg6IDI4NXB4OyB9XG4gICAgLnRyYWluLXdpdGgtdXMtbWVudSAucmlnaHQtc2lkZS1tZW51IHAge1xuICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgLnRyYWluLXdpdGgtdXMtbWVudSAucmlnaHQtc2lkZS1tZW51IGEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfSB9XG5cbi5mb290ZXItZ2FsbGVyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmVkZjI7IH1cblxuLmZvb3Rlcl9zbGlkZXItc2xpZGVyIHtcbiAgcGFkZGluZzogMi4xODc1cmVtIDAuMzEyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZm9vdGVyX3NsaWRlci1zbGlkZXIge1xuICAgICAgcGFkZGluZzogMy43NXJlbSAzLjEyNXJlbSAzLjc1cmVtOyB9IH1cbiAgLmZvb3Rlcl9zbGlkZXItc2xpZGVyIC5zbGlkZS1jb250ZW50LWJveCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmZvb3Rlcl9zbGlkZXItc2xpZGVyIC5zbGlkZS1jb250ZW50LXRleHQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDgxNXB4O1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5mb290ZXJfc2xpZGVyLXNsaWRlciAuc2xpY2stc2xpZGVyLW5hdiAuc2xpY2stc2xpZGUgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTg1cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZm9vdGVyX3NsaWRlci1zbGlkZXIgLnNsaWNrLXNsaWRlci1uYXYgLnNsaWNrLXNsaWRlIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTg1cHg7IH0gfVxuICAuZm9vdGVyX3NsaWRlci1zbGlkZXIgLnNsaWNrLXNsaWRlID4gZGl2LCAuZm9vdGVyX3NsaWRlci1zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMCAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mb290ZXJfc2xpZGVyLXNsaWRlciAuc2xpY2stc2xpZGUgPiBkaXYsIC5mb290ZXJfc2xpZGVyLXNsaWRlciAuc2xpY2stc2xpZGUgPiBhIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmZvb3Rlcl9zbGlkZXItc2xpZGVyIC5zbGljay1zbGlkZSA+IGRpdiwgLmZvb3Rlcl9zbGlkZXItc2xpZGVyIC5zbGljay1zbGlkZSA+IGEge1xuICAgICAgICBwYWRkaW5nOiAwIDEuNTYyNXJlbTsgfSB9XG4gICAgLmZvb3Rlcl9zbGlkZXItc2xpZGVyIC5zbGljay1zbGlkZSA+IGRpdiAuYXV0aG9yLCAuZm9vdGVyX3NsaWRlci1zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSAuYXV0aG9yIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGNvbG9yOiAjYTNhM2EzO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgbWFyZ2luLXRvcDogMTVweDsgfVxuICAgICAgLmZvb3Rlcl9zbGlkZXItc2xpZGVyIC5zbGljay1zbGlkZSA+IGRpdiAuYXV0aG9yOmJlZm9yZSwgLmZvb3Rlcl9zbGlkZXItc2xpZGVyIC5zbGljay1zbGlkZSA+IGEgLmF1dGhvcjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnLSc7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0b3A6IC0ycHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuICAgIC5mb290ZXJfc2xpZGVyLXNsaWRlciAuc2xpY2stc2xpZGUgPiBkaXYgcCwgLmZvb3Rlcl9zbGlkZXItc2xpZGVyIC5zbGljay1zbGlkZSA+IGEgcCB7XG4gICAgICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5mb290ZXJfc2xpZGVyLXNsaWRlciAuc2xpY2stc2xpZGUgPiBkaXYgcCwgLmZvb3Rlcl9zbGlkZXItc2xpZGVyIC5zbGljay1zbGlkZSA+IGEgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAuZm9vdGVyX3NsaWRlci1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IC0wLjMxMjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZm9vdGVyX3NsaWRlci1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgICAgICBsZWZ0OiAtMS41NjI1cmVtOyB9IH1cbiAgLmZvb3Rlcl9zbGlkZXItc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogLTAuMzEyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5mb290ZXJfc2xpZGVyLXNsaWRlciAuc2xpY2stbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAtMS41NjI1cmVtOyB9IH1cbiAgLmZvb3Rlcl9zbGlkZXItc2xpZGVyIC5zbGljay1kb3RzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGxlZnQ6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZm9vdGVyX3NsaWRlci1zbGlkZXIgLnNsaWNrLWRvdHMge1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIHdpZHRoOiBhdXRvOyB9IH1cbiAgICAuZm9vdGVyX3NsaWRlci1zbGlkZXIgLnNsaWNrLWRvdHMgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmZvb3Rlcl9zbGlkZXItc2xpZGVyIC5zbGljay1kb3RzIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgICAuZm9vdGVyX3NsaWRlci1zbGlkZXIgLnNsaWNrLWRvdHMgbGk6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLmZvb3Rlcl9zbGlkZXItc2xpZGVyIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBjb2xvcjogI2EzYTNhMzsgfVxuICAgICAgLmZvb3Rlcl9zbGlkZXItc2xpZGVyIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmZvb3Rlcl9zbGlkZXItc2xpZGVyIC5zbGljay10cmFjayB7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cblxuLmZvb3RlciB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5mb290ZXIge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cbiAgLmZvb3RlciBoMiwgLmZvb3RlciAuaDIge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgZm9udC1mYW1pbHk6ICdCcmFuZG9uR3JvdGVzcXVlJywgc2Fucy1zZXJpZjtcbiAgICBsZXR0ZXItc3BhY2luZzogMS40cHg7IH1cbiAgICAuZm9vdGVyIGgyIGxhYmVsLCAuZm9vdGVyIC5oMiBsYWJlbCB7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5mb290ZXIgaDIgbGFiZWwsIC5mb290ZXIgLmgyIGxhYmVsIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cbiAgLmZvb3RlciAuZm9vdGVyLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5mb290ZXIgYSB7XG4gICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgICAuZm9vdGVyIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICNhM2EzYTM7IH1cbiAgLmZvb3RlciBwIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7IH1cbiAgLmZvb3RlciAubmV3c2xldHRlci1kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAuZm9vdGVyIC5pbnB1dC1ib3gge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmZvb3RlciAuYnRuLWFycm93OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMTQpOyB9XG5cbi5mb290ZXItaG9sZGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE0KTsgfVxuICAuZm9vdGVyLWhvbGRlcjpsYXN0LW9mLXR5cGUge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb290ZXItaG9sZGVyIHtcbiAgICAgIHBhZGRpbmc6IDEuODc1cmVtIDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuICAuZm9vdGVyLWhvbGRlciAuaXRlbSB7XG4gICAgcGFkZGluZzogMS41NjI1cmVtIDAuOTM3NXJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE0KTsgfVxuICAgIC5mb290ZXItaG9sZGVyIC5pdGVtOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZvb3Rlci1ob2xkZXIgLml0ZW0ge1xuICAgICAgICBwYWRkaW5nOiAwLjkzNzVyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE0KTtcbiAgICAgICAgd2lkdGg6IDMzLjMlOyB9XG4gICAgICAgIC5mb290ZXItaG9sZGVyIC5pdGVtOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuZm9vdGVyLWhvbGRlciAuaXRlbSB7XG4gICAgICAgIHBhZGRpbmc6IDAuOTM3NXJlbSAxLjU2MjVyZW07IH0gfVxuICAgIC5mb290ZXItaG9sZGVyIC5pdGVtLm1pZGRsZSBwIHtcbiAgICAgIG1heC13aWR0aDogMjEuODc1cmVtO1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMXJlbTsgfVxuXG4uY29udGFjdC1ibG9jayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgLmNvbnRhY3QtYmxvY2sgLml0ZW0ge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvbnRhY3QtYmxvY2sgLml0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmNvbnRhY3QtYmxvY2sgLml0ZW0gKyAuaXRlbSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cbiAgLmNvbnRhY3QtYmxvY2sgLml0ZW0tbWFpbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jb250YWN0LWJsb2NrIC5pdGVtLW1haWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDAgNXB4OyB9IH1cbiAgICAuY29udGFjdC1ibG9jayAuaXRlbS1tYWlsIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gICAgLmNvbnRhY3QtYmxvY2sgLml0ZW0tbWFpbCBhIHtcbiAgICAgIGNvbG9yOiAjYTNhM2EzOyB9XG4gICAgICAuY29udGFjdC1ibG9jayAuaXRlbS1tYWlsIGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5lbWFpbHMtaG9sZGVyIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHJpdmFjeS1ibG9jayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHJpdmFjeS1ibG9jayAuZm9vdGVyLW5hdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHJpdmFjeS1ibG9jayAuZm9vdGVyLW5hdiBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnByaXZhY3ktYmxvY2sgLmZvb3Rlci1uYXYgbGkgKyBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH0gfVxuXG4ucHJpdmFjeS1ibG9jayAuZm9vdGVyLW5hdiBhIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG5cbi5wcml2YWN5LWJsb2NrIC5pdGVtIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wcml2YWN5LWJsb2NrIC5pdGVtIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgcGFkZGluZzogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucHJpdmFjeS1ibG9jayAuaXRlbTpmaXJzdC1vZi10eXBlIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnByaXZhY3ktYmxvY2sgLml0ZW06bGFzdC1vZi10eXBlIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnByaXZhY3ktYmxvY2sgLml0ZW0gKyAuaXRlbSB7XG4gICAgICBwYWRkaW5nLXRvcDogMDsgfSB9XG5cbi5ibG9jay1zdWJzY3JpYmUsIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAge1xuICBtYXgtd2lkdGg6IDI4LjEyNXJlbTtcbiAgbWFyZ2luOiAwIGF1dG87IH1cbiAgLmJsb2NrLXN1YnNjcmliZSAuZm9ybS1ncm91cCwgLmJsb2NrLXN1YnNjcmliZS1wb3B1cCAuZm9ybS1ncm91cCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJsb2NrLXN1YnNjcmliZSAuZm9ybS1ncm91cCwgLmJsb2NrLXN1YnNjcmliZS1wb3B1cCAuZm9ybS1ncm91cCB7XG4gICAgICAgIG1heC13aWR0aDogOTAlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG4gIC5ibG9jay1zdWJzY3JpYmUgLmlucHV0LXRleHQsIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmlucHV0LXRleHQge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIGhlaWdodDogMi42MjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogNC4zNzVyZW07XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgbGluZS1oZWlnaHQ6IDIuNjI1cmVtO1xuICAgIGJvcmRlci1jb2xvcjogIzAwMDAwMDsgfVxuICAgIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICAuYmxvY2stc3Vic2NyaWJlIC5pbnB1dC10ZXh0LCAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIC5pbnB1dC10ZXh0IHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5ibG9jay1zdWJzY3JpYmUgLmlucHV0LXRleHQsIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmlucHV0LXRleHQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA3LjVyZW07IH0gfVxuICAgIC5ibG9jay1zdWJzY3JpYmUgLmlucHV0LXRleHQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmlucHV0LXRleHQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4yNXM7IH1cbiAgICAuYmxvY2stc3Vic2NyaWJlIC5pbnB1dC10ZXh0OjotbW96LXBsYWNlaG9sZGVyLCAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIC5pbnB1dC10ZXh0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAuMjVzOyB9XG4gICAgLmJsb2NrLXN1YnNjcmliZSAuaW5wdXQtdGV4dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIsIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmlucHV0LXRleHQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4yNXM7IH1cbiAgLmJsb2NrLXN1YnNjcmliZSAuYnRuLWFycm93LCAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIC5idG4tYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTsgfVxuXG4uZm9sbG93LWxpbmtzIHtcbiAgbWFyZ2luOiAwIC0wLjYyNXJlbSAxLjU2MjVyZW07XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5mb2xsb3ctbGlua3Mge1xuICAgICAgbWFyZ2luOiAwIC0xLjA2MjVyZW0gMi4xODc1cmVtOyB9IH1cbiAgLmZvbGxvdy1saW5rcyBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgbWFyZ2luOiAwIDAuNjI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmZvbGxvdy1saW5rcyBsaSB7XG4gICAgICAgIG1hcmdpbjogMCAxLjA2MjVyZW07IH0gfVxuICAgIC5mb2xsb3ctbGlua3MgbGkgYSB7XG4gICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgIHBhZGRpbmc6IDAgMC4zMTI1cmVtOyB9XG5cbi5mb290ZXItbmF2IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLmZvb3Rlci1uYXYgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTsgfVxuICAuZm9vdGVyLW5hdiBhIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuXG4uc2Nyb2xsLXRvcCB7XG4gIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2Nyb2xsLXRvcCB7XG4gICAgICBib3R0b206IDAuNjI1cmVtOyB9IH1cblxuLmNvcHlyaWdodCBzcGFuIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4uYnJlYWRjcnVtYnMge1xuICBwYWRkaW5nOiAwLjkzNzVyZW0gMDtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuYnJlYWRjcnVtYnMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi44MTI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5icmVhZGNydW1icyB7XG4gICAgICBwYWRkaW5nOiAxLjY4NzVyZW0gMDsgfSB9XG4gIC5icmVhZGNydW1icy53aGl0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmJyZWFkY3J1bWJzLndoaXRlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtOyB9IH1cbiAgLmJyZWFkY3J1bWJzIC5icmVhZGNydW1icy1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4OyB9XG4gIC5icmVhZGNydW1icyB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5icmVhZGNydW1icyB1bCBhIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlOyB9XG4gICAgICAuYnJlYWRjcnVtYnMgdWwgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjYTNhM2EzOyB9XG4gICAgLmJyZWFkY3J1bWJzIHVsIHN0cm9uZyB7XG4gICAgICBjb2xvcjogI2EzYTNhMzsgfVxuICAgIC5icmVhZGNydW1icyB1bCBhLCAuYnJlYWRjcnVtYnMgdWwgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAuYnJlYWRjcnVtYnMgdWwgc3BhbiB7XG4gICAgICBwYWRkaW5nOiAwIDAuMzEyNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLmJyZWFkY3J1bWJzIC5iYWNrLWxpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5icmVhZGNydW1icyAuYmFjay1saW5rOmhvdmVyOmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7IH1cbiAgICAuYnJlYWRjcnVtYnMgLmJhY2stbGluazpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcZTgwMic7XG4gICAgICBmb250LWZhbWlseTogJ2ZvbnRlbGxvJztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuMzc1cmVtO1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZTsgfVxuXG4uY29udGVudC1ib3hlcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gIHBhZGRpbmc6IDIuODEyNXJlbSAwIDEuNTYyNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuY29udGVudC1ib3hlcyB7XG4gICAgICBwYWRkaW5nOiA1LjkzNzVyZW0gMCA0LjM3NXJlbTsgfSB9XG4gIC5jb250ZW50LWJveGVzIC5jb2x1bW5zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5jb250ZW50LWJveGVzIHAge1xuICAgICAgcGFkZGluZzogMCAxLjg3NXJlbTsgfSB9XG4gIC5jb250ZW50LWJveGVzIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuY29udGVudC1ib3hlcyBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuICAuY29udGVudC1ib3hlcyAucGljdHVyZSB7XG4gICAgcGFkZGluZy10b3A6IDQ5LjE4JTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuLmJsb2NrLXN1YnNjcmliZS1wb3B1cCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy90dWxsZS5qcGdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgcGFkZGluZzogMS44NzVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHotaW5kZXg6IDEwMTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIHtcbiAgICAgIG1heC13aWR0aDogNDYuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAge1xuICAgICAgcGFkZGluZzogMS4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIHtcbiAgICAgIGxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgIHJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXgtd2lkdGg6IDU5LjM3NXJlbTsgfSB9XG4gIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmJvcmRlci1ob2xkZXIge1xuICAgIGJvcmRlcjogMXB4IGRhc2hlZCBibGFjaztcbiAgICBwYWRkaW5nOiAxNXB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJsb2NrLXN1YnNjcmliZS1wb3B1cCAuYm9yZGVyLWhvbGRlciB7XG4gICAgICAgIHBhZGRpbmc6IDIuODEyNXJlbSAyLjE4NzVyZW07IH0gfVxuICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAtY29udGVudCB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAtY29udGVudCB7XG4gICAgICAgIG1heC13aWR0aDogMzEuMjVyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG4gIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLnZhbGlkYXRpb24tYWR2aWNlIHtcbiAgICBjb2xvcjogcmVkO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgLmJsb2NrLXN1YnNjcmliZS1wb3B1cCAuZm9ybS1ncm91cCB7XG4gICAgbWF4LXdpZHRoOiAyMS44NzVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMy4xMjVyZW07IH0gfVxuICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIGgyIHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgaDIgbGFiZWwge1xuICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgaDIgbGFiZWwge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIGgyIGxhYmVsIHtcbiAgICAgICAgICBmb250LXNpemU6IDIuMTg3NXJlbTsgfSB9XG4gIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgcCB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBtYXgtd2lkdGg6IDIxLjg3NXJlbTtcbiAgICBtYXJnaW46IDAgYXV0byAxcmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJsb2NrLXN1YnNjcmliZS1wb3B1cCBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgbWF4LXdpZHRoOiAyOC4xMjVyZW07IH0gfVxuICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIC5pbnB1dC10ZXh0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6ICMwMDAwMDA7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgY2FyZXQtY29sb3I6ICMwMDAwMDA7IH1cbiAgICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgICAgLmJsb2NrLXN1YnNjcmliZS1wb3B1cCAuaW5wdXQtdGV4dCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIC5pbnB1dC10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cbiAgICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIC5pbnB1dC10ZXh0OmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzAwMDAwMDtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLmJsb2NrLXN1YnNjcmliZS1wb3B1cCAuaW5wdXQtdGV4dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmlucHV0LXRleHQ6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIC5pbnB1dC10ZXh0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIC5idG4tYXJyb3cge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB3aWR0aDogMTEuMjVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmJ0bi1hcnJvdyB7XG4gICAgICAgIHdpZHRoOiAxNS45Mzc1cmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9IH1cbiAgICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIC5idG4tYXJyb3c6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmJ0bi1hcnJvdyBzcGFuIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cbiAgICAgIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmJ0bi1hcnJvdyBzcGFuOmFmdGVyIHtcbiAgICAgICAgdG9wOiAtMTJweDsgfVxuICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIC5idXR0b24tc2Vjb25kYXJ5IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLnBpbmsge1xuICAgIGNvbG9yOiAjZjE2NTY3O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIC5waW5rIHtcbiAgICAgICAgZm9udC1zaXplOiAzLjEyNXJlbTsgfSB9XG4gIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmxvYWQtYnV0dG9uIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLmJsb2NrLXN1YnNjcmliZS1wb3B1cCAuY3Jvc3Mge1xuICAgIGhlaWdodDogMS4zNzVyZW07XG4gICAgdG9wOiAwLjQzNzVyZW07XG4gICAgcmlnaHQ6IDAuMzEyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmNyb3NzIHtcbiAgICAgICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgICAgIHRvcDogLTIuMTI1cmVtO1xuICAgICAgICByaWdodDogLTIuMTI1cmVtOyB9XG4gICAgICAgIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmNyb3NzID4gc3BhbiB7XG4gICAgICAgICAgd2lkdGg6IDEuNXJlbTsgfVxuICAgICAgICAgIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmNyb3NzID4gc3BhbiBzcGFuIHtcbiAgICAgICAgICAgIHdpZHRoOiAxLjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmNyb3NzIHtcbiAgICAgICAgdG9wOiAtMi41cmVtO1xuICAgICAgICByaWdodDogLTIuNXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxLjg3NXJlbTsgfVxuICAgICAgICAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIC5jcm9zcyA+IHNwYW4ge1xuICAgICAgICAgIHdpZHRoOiAxLjg3NXJlbTsgfVxuICAgICAgICAgIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmNyb3NzID4gc3BhbiBzcGFuIHtcbiAgICAgICAgICAgIHdpZHRoOiAxLjg3NXJlbTsgfSB9XG4gICAgLmJsb2NrLXN1YnNjcmliZS1wb3B1cCAuY3Jvc3MgPiBzcGFuIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxLjM3NXJlbTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAgLmNyb3NzID4gc3BhbiBzcGFuIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMS4zNzVyZW07XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5uZXdzbGV0dGVyLXN1YnNjcmlwdGlvbi5tb2RhbC1wb3B1cCAubW9kYWwtaW5uZXItd3JhcCB7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi5uZXdzbGV0dGVyLXN1YnNjcmlwdGlvbi5tb2RhbC1wb3B1cCAuYWN0aW9uLWNsb3NlIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgei1pbmRleDogNjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLm5ld3NsZXR0ZXItc3Vic2NyaXB0aW9uLm1vZGFsLXBvcHVwIC5hY3Rpb24tY2xvc2Uge1xuICAgICAgdG9wOiAtMzhweDtcbiAgICAgIHJpZ2h0OiAtMzZweDsgfSB9XG5cbi5uZXdzbGV0dGVyLXN1YnNjcmlwdGlvbi5tb2RhbC1wb3B1cCAubW9kYWwtY29udGVudCB7XG4gIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAubmV3c2xldHRlci1zdWJzY3JpcHRpb24ubW9kYWwtcG9wdXAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogNTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH0gfVxuXG4uY2hlY2tib3gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7IH1cbiAgLmNoZWNrYm94ICsgbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTU7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjM3NXJlbTsgfVxuICAgIC5jaGVja2JveCArIGxhYmVsIGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAuY2hlY2tib3ggKyBsYWJlbCBhOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuICAgICAgLmNoZWNrYm94ICsgbGFiZWwgYTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTNhM2EzO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNoZWNrYm94ICsgbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjY4NzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH0gfVxuICAuY2hlY2tib3ggKyBsYWJlbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMC4yNXJlbTtcbiAgICB3aWR0aDogMC45Mzc1cmVtO1xuICAgIGhlaWdodDogMC45Mzc1cmVtO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDsgfVxuICAuY2hlY2tib3g6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjsgfVxuICAuY2hlY2tib3g6ZGlzYWJsZWQgKyBsYWJlbCB7XG4gICAgY29sb3I6ICNkNWQ2ZDc7XG4gICAgY3Vyc29yOiBhdXRvOyB9XG4gIC5jaGVja2JveDpkaXNhYmxlZCArIGxhYmVsOmJlZm9yZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZGRkOyB9XG4gIC5jaGVja2JveDpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDAuMzc1cmVtO1xuICAgIGxlZnQ6IDAuMzEyNXJlbTtcbiAgICB3aWR0aDogMC4xMjVyZW07XG4gICAgaGVpZ2h0OiAwLjU2MjVyZW07XG4gICAgcGFkZGluZzogMC4xMjVyZW07XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXI6IHNvbGlkICMwMDAwMDA7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDFweCAxcHggMDsgfVxuXG4ucmFkaW86Y2hlY2tlZCxcbi5yYWRpbzpub3QoOmNoZWNrZWQpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtOTk5OXB4OyB9XG5cbi5yYWRpbzpjaGVja2VkICsgbGFiZWwsXG4ucmFkaW86bm90KDpjaGVja2VkKSArIGxhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDIuNXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJhZGlvOmNoZWNrZWQgKyBsYWJlbCxcbiAgICAucmFkaW86bm90KDpjaGVja2VkKSArIGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5yYWRpbzpjaGVja2VkICsgbGFiZWwsXG4gICAgLnJhZGlvOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbCB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuXG4ucmFkaW86Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSxcbi5yYWRpbzpub3QoOmNoZWNrZWQpICsgbGFiZWw6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogMS4yNXJlbTtcbiAgaGVpZ2h0OiAxLjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmOyB9XG5cbi5yYWRpbzpjaGVja2VkICsgbGFiZWw6YWZ0ZXIsXG4ucmFkaW86bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHdpZHRoOiAwLjM3NXJlbTtcbiAgaGVpZ2h0OiAwLjM3NXJlbTtcbiAgYmFja2dyb3VuZDogIzAwMDAwMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuNDM3NXJlbTtcbiAgbGVmdDogMC40Mzc1cmVtO1xuICBib3JkZXItcmFkaXVzOiAxMDAlOyB9XG5cbi5yYWRpbzpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5yYWRpbzpjaGVja2VkICsgbGFiZWw6YWZ0ZXIge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5jdXN0b20tc2VsZWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5jdXN0b20tc2VsZWN0IC5zZWxlY3RlZC12YWx1ZSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDIuMzc1cmVtO1xuICAgIG1hcmdpbjogMCAwIDFyZW07XG4gICAgcGFkZGluZzogMCAyLjE4NzVyZW0gMCAxLjEyNXJlbTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgLjI1cyBlYXNlLWluLW91dDtcbiAgICBjb2xvcjogI2EzYTNhMztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy9hcnJvdy1kb3duLnN2Zyk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxOHB4IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE0cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5jdXN0b20tc2VsZWN0LmRpc2FibGVkIC5zZWxlY3RlZC12YWx1ZSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjRiZmMyOyB9XG4gIC5jdXN0b20tc2VsZWN0Lm9wZW5lZCAuc2VsZWN0ZWQtdmFsdWUge1xuICAgIGJvcmRlci1jb2xvcjogIzAwMDAwMDsgfVxuICAuY3VzdG9tLXNlbGVjdC5vcGVuZWQgLnNlbGVjdC1vcHRpb25zIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuY3VzdG9tLXNlbGVjdCAuc2VsZWN0LWxpc3Qge1xuICAgIG1heC1oZWlnaHQ6IDE0LjM3NXJlbTsgfVxuICAuY3VzdG9tLXNlbGVjdCAuc2VsZWN0LW9wdGlvbnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRvcDogMy4wNjI1cmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICB6LWluZGV4OiAxMDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5jdXN0b20tc2VsZWN0IC5zZWxlY3Qtb3B0aW9ucyB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmN1c3RvbS1zZWxlY3QgLnNlbGVjdC1vcHRpb25zIHVsIHtcbiAgICAgICAgICBwYWRkaW5nOiAxLjI1cmVtIDAuNjI1cmVtIDEuMjVyZW0gMS4yNXJlbTsgfSB9XG4gICAgLmN1c3RvbS1zZWxlY3QgLnNlbGVjdC1vcHRpb25zIGxpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgICBjb2xvcjogI2EzYTNhMztcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTsgfVxuICAgICAgLmN1c3RvbS1zZWxlY3QgLnNlbGVjdC1vcHRpb25zIGxpOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jdXN0b20tc2Nyb2xsIHtcbiAgbWluLWhlaWdodDogMDtcbiAgbWluLXdpZHRoOiAwOyB9XG4gIC5jdXN0b20tc2Nyb2xsIC5vdXRlci1jb250YWluZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmN1c3RvbS1zY3JvbGwgLm91dGVyLWNvbnRhaW5lcjpob3ZlciAuY3VzdG9tLXNjcm9sbGJhciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yczsgfVxuICAuY3VzdG9tLXNjcm9sbCAuaW5uZXItY29udGFpbmVyIHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwOyB9XG4gICAgLmN1c3RvbS1zY3JvbGwgLmlubmVyLWNvbnRhaW5lcjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC4yKSAwJSwgcmdiYSgwLCAwLCAwLCAwLjA1KSA2MCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjFzIGVhc2UtaW47XG4gICAgICB3aWxsLWNoYW5nZTogaGVpZ2h0OyB9XG4gICAgLmN1c3RvbS1zY3JvbGwgLmlubmVyLWNvbnRhaW5lci5jb250ZW50LXNjcm9sbGVkOmFmdGVyIHtcbiAgICAgIGhlaWdodDogNXB4O1xuICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuMTVzIGVhc2Utb3V0OyB9XG4gIC5jdXN0b20tc2Nyb2xsLnNjcm9sbC1oYW5kbGUtZHJhZ2dlZCAuaW5uZXItY29udGFpbmVyIHtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAuY3VzdG9tLXNjcm9sbCAuY3VzdG9tLXNjcm9sbGJhciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMC4yNXJlbTtcbiAgICByaWdodDogMC4xODc1cmVtO1xuICAgIHotaW5kZXg6IDE7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzIGVhc2Utb3V0O1xuICAgIHBhZGRpbmc6IDAuMzc1cmVtIDA7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAgIC5jdXN0b20tc2Nyb2xsIC5jdXN0b20tc2Nyb2xsYmFyLmN1c3RvbS1zY3JvbGxiYXItcnRsIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogM3B4OyB9XG4gIC5jdXN0b20tc2Nyb2xsLnNjcm9sbC1oYW5kbGUtZHJhZ2dlZCAuY3VzdG9tLXNjcm9sbGJhciB7XG4gICAgb3BhY2l0eTogMTsgfVxuICAuY3VzdG9tLXNjcm9sbCAuY3VzdG9tLXNjcm9sbC1oYW5kbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0b3A6IDA7IH1cbiAgLmN1c3RvbS1zY3JvbGwgLmlubmVyLWhhbmRsZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxMnB4KTtcbiAgICBtYXJnaW4tdG9wOiA2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07IH1cblxuLmJsb2NrLWFjY291bnQgPiBuYXYsIC5ibG9jay1jYXRlZ29yeSA+IG5hdiB7XG4gIG1hcmdpbjogMCBhdXRvIDEuODc1cmVtO1xuICBtYXgtd2lkdGg6IDMwcmVtOyB9XG5cbi5ibG9jay1hY2NvdW50IHVsLmxldmVsMSwgLmJsb2NrLWNhdGVnb3J5IHVsLmxldmVsMSB7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTBweCk7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5ibG9jay1hY2NvdW50IHVsLmxldmVsMSBsaTpmaXJzdC1jaGlsZCwgLmJsb2NrLWNhdGVnb3J5IHVsLmxldmVsMSBsaTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG4uYmxvY2stYWNjb3VudCB1bC5sZXZlbDIsIC5ibG9jay1jYXRlZ29yeSB1bC5sZXZlbDIge1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDEwcHgpO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICAuYmxvY2stYWNjb3VudCB1bC5sZXZlbDIgbGk6Zmlyc3QtY2hpbGQsIC5ibG9jay1jYXRlZ29yeSB1bC5sZXZlbDIgbGk6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmxvY2stYWNjb3VudCA+IG5hdiwgLmJsb2NrLWNhdGVnb3J5ID4gbmF2IHtcbiAgICBtYXJnaW46IDAgMCAyLjVyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5ibG9jay1hY2NvdW50IHVsLmxldmVsMSwgLmJsb2NrLWNhdGVnb3J5IHVsLmxldmVsMSB7XG4gICAgbWFyZ2luLXRvcDogMXB4OyB9XG4gIC5ibG9jay1hY2NvdW50IHVsLmxldmVsMiwgLmJsb2NrLWNhdGVnb3J5IHVsLmxldmVsMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDFweDsgfVxuICAuYmxvY2stYWNjb3VudCBsaS5wYXJlbnQubGV2ZWwxLnNwaWxsIHVsLmxldmVsMiwgLmJsb2NrLWNhdGVnb3J5IGxpLnBhcmVudC5sZXZlbDEuc3BpbGwgdWwubGV2ZWwyIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFweDsgfVxuICAuYmxvY2stYWNjb3VudCB1bC5sZXZlbDEsIC5ibG9jay1hY2NvdW50IHVsLmxldmVsMiwgLmJsb2NrLWNhdGVnb3J5IHVsLmxldmVsMSwgLmJsb2NrLWNhdGVnb3J5IHVsLmxldmVsMiB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDsgfSB9XG5cbi5jYXRhbG9nLXByb2R1Y3QtdmlldyAuYmxvY2stYWNjb3VudCwgLmNhdGFsb2ctcHJvZHVjdC12aWV3IC5ibG9jay1jYXRlZ29yeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNmY3ZmI7IH1cblxuLmJsb2NrLWFjY291bnQgLml0ZW1zLCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAxcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ibG9jay1hY2NvdW50IC5pdGVtcywgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuICAuYmxvY2stYWNjb3VudCAuaXRlbXMgLml0ZW0sIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiAtMXB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJsb2NrLWFjY291bnQgLml0ZW1zIC5pdGVtLCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIC5pdGVtIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC8gNC4wMDEpOyB9XG4gICAgICAgIC5ibG9jay1hY2NvdW50IC5pdGVtcyAuaXRlbTphZnRlciwgLmJsb2NrLWFjY291bnQgLml0ZW1zIC5pdGVtOmJlZm9yZSwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyAuaXRlbTphZnRlciwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyAuaXRlbTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlOyB9XG4gICAgICAgIC5ibG9jay1hY2NvdW50IC5pdGVtcyAuaXRlbTphZnRlciwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyAuaXRlbTphZnRlciB7XG4gICAgICAgICAgdG9wOiAtMXB4OyB9XG4gICAgICAgIC5ibG9jay1hY2NvdW50IC5pdGVtcyAuaXRlbTpiZWZvcmUsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW06YmVmb3JlIHtcbiAgICAgICAgICBib3R0b206IDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5ibG9jay1hY2NvdW50IC5pdGVtcyAuaXRlbSwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyAuaXRlbSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoMTAwJSAvIDYuMDAxKTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmJsb2NrLWFjY291bnQgLml0ZW1zIC5pdGVtLCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIC5pdGVtIHtcbiAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC8gOC4wMDEpOyB9IH1cbiAgICAudG91Y2ggLmJsb2NrLWFjY291bnQgLml0ZW1zIC5pdGVtLnBhcmVudCA+IHVsLCAudG91Y2ggLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyAuaXRlbS5wYXJlbnQgPiB1bCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAudG91Y2ggLmJsb2NrLWFjY291bnQgLml0ZW1zIC5pdGVtLnBhcmVudC5tZW51LWFjdGl2ZSA+IHVsLCAudG91Y2ggLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyAuaXRlbS5wYXJlbnQubWVudS1hY3RpdmUgPiB1bCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50OyB9XG4gICAgLmJsb2NrLWFjY291bnQgLml0ZW1zIC5pdGVtLmN1cnJlbnQsIC5ibG9jay1hY2NvdW50IC5pdGVtcyAuaXRlbS5hY3RpdmUsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW0uY3VycmVudCwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyAuaXRlbS5hY3RpdmUge1xuICAgICAgei1pbmRleDogMTsgfVxuICAgICAgLmJsb2NrLWFjY291bnQgLml0ZW1zIC5pdGVtLmN1cnJlbnQ6YWZ0ZXIsIC5ibG9jay1hY2NvdW50IC5pdGVtcyAuaXRlbS5jdXJyZW50OmJlZm9yZSwgLmJsb2NrLWFjY291bnQgLml0ZW1zIC5pdGVtLmFjdGl2ZTphZnRlciwgLmJsb2NrLWFjY291bnQgLml0ZW1zIC5pdGVtLmFjdGl2ZTpiZWZvcmUsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW0uY3VycmVudDphZnRlciwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyAuaXRlbS5jdXJyZW50OmJlZm9yZSwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyAuaXRlbS5hY3RpdmU6YWZ0ZXIsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW0uYWN0aXZlOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cbiAgICAgIC5ibG9jay1hY2NvdW50IC5pdGVtcyAuaXRlbS5jdXJyZW50IGEsIC5ibG9jay1hY2NvdW50IC5pdGVtcyAuaXRlbS5jdXJyZW50IHN0cm9uZywgLmJsb2NrLWFjY291bnQgLml0ZW1zIC5pdGVtLmFjdGl2ZSBhLCAuYmxvY2stYWNjb3VudCAuaXRlbXMgLml0ZW0uYWN0aXZlIHN0cm9uZywgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyAuaXRlbS5jdXJyZW50IGEsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW0uY3VycmVudCBzdHJvbmcsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW0uYWN0aXZlIGEsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW0uYWN0aXZlIHN0cm9uZyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwOyB9XG4gICAgICAgIC5ibG9jay1hY2NvdW50IC5pdGVtcyAuaXRlbS5jdXJyZW50IGE6YWZ0ZXIsIC5ibG9jay1hY2NvdW50IC5pdGVtcyAuaXRlbS5jdXJyZW50IGE6YmVmb3JlLCAuYmxvY2stYWNjb3VudCAuaXRlbXMgLml0ZW0uY3VycmVudCBzdHJvbmc6YWZ0ZXIsIC5ibG9jay1hY2NvdW50IC5pdGVtcyAuaXRlbS5jdXJyZW50IHN0cm9uZzpiZWZvcmUsIC5ibG9jay1hY2NvdW50IC5pdGVtcyAuaXRlbS5hY3RpdmUgYTphZnRlciwgLmJsb2NrLWFjY291bnQgLml0ZW1zIC5pdGVtLmFjdGl2ZSBhOmJlZm9yZSwgLmJsb2NrLWFjY291bnQgLml0ZW1zIC5pdGVtLmFjdGl2ZSBzdHJvbmc6YWZ0ZXIsIC5ibG9jay1hY2NvdW50IC5pdGVtcyAuaXRlbS5hY3RpdmUgc3Ryb25nOmJlZm9yZSwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyAuaXRlbS5jdXJyZW50IGE6YWZ0ZXIsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW0uY3VycmVudCBhOmJlZm9yZSwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyAuaXRlbS5jdXJyZW50IHN0cm9uZzphZnRlciwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyAuaXRlbS5jdXJyZW50IHN0cm9uZzpiZWZvcmUsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW0uYWN0aXZlIGE6YWZ0ZXIsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW0uYWN0aXZlIGE6YmVmb3JlLCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIC5pdGVtLmFjdGl2ZSBzdHJvbmc6YWZ0ZXIsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW0uYWN0aXZlIHN0cm9uZzpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cbiAgICAgIC5ibG9jay1hY2NvdW50IC5pdGVtcyAuaXRlbS5jdXJyZW50IHN0cm9uZywgLmJsb2NrLWFjY291bnQgLml0ZW1zIC5pdGVtLmFjdGl2ZSBzdHJvbmcsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW0uY3VycmVudCBzdHJvbmcsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW0uYWN0aXZlIHN0cm9uZyB7XG4gICAgICAgIGJvcmRlcjogMDsgfVxuICAgIC5uby10b3VjaCAuYmxvY2stYWNjb3VudCAuaXRlbXMgLml0ZW06aG92ZXIsIC5uby10b3VjaCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIC5pdGVtOmhvdmVyIHtcbiAgICAgIHotaW5kZXg6IDk7IH1cbiAgICAgIC5uby10b3VjaCAuYmxvY2stYWNjb3VudCAuaXRlbXMgLml0ZW06aG92ZXI6YWZ0ZXIsIC5uby10b3VjaCAuYmxvY2stYWNjb3VudCAuaXRlbXMgLml0ZW06aG92ZXI6YmVmb3JlLCAubm8tdG91Y2ggLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyAuaXRlbTpob3ZlcjphZnRlciwgLm5vLXRvdWNoIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW06aG92ZXI6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuICAgICAgLm5vLXRvdWNoIC5ibG9jay1hY2NvdW50IC5pdGVtcyAuaXRlbTpob3ZlciA+IGEsIC5uby10b3VjaCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIC5pdGVtOmhvdmVyID4gYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwOyB9XG4gICAgICAgIC5uby10b3VjaCAuYmxvY2stYWNjb3VudCAuaXRlbXMgLml0ZW06aG92ZXIgPiBhOmFmdGVyLCAubm8tdG91Y2ggLmJsb2NrLWFjY291bnQgLml0ZW1zIC5pdGVtOmhvdmVyID4gYTpiZWZvcmUsIC5uby10b3VjaCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIC5pdGVtOmhvdmVyID4gYTphZnRlciwgLm5vLXRvdWNoIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgLml0ZW06aG92ZXIgPiBhOmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuICAuYmxvY2stYWNjb3VudCAuaXRlbXMgbGkucGFyZW50LmxldmVsMSwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwxIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYmxvY2stYWNjb3VudCAuaXRlbXMgbGkucGFyZW50LmxldmVsMSA+IHVsLmxldmVsMSwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwxID4gdWwubGV2ZWwxIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmJsb2NrLWFjY291bnQgLml0ZW1zIGxpLnBhcmVudC5sZXZlbDEgPiB1bC5sZXZlbDEsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgbGkucGFyZW50LmxldmVsMSA+IHVsLmxldmVsMSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIC5ibG9jay1hY2NvdW50IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwxIGEuaGFzLWNoaWxkcmVuIHNwYW4sIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgbGkucGFyZW50LmxldmVsMSBhLmhhcy1jaGlsZHJlbiBzcGFuIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbjogMCAwLjYyNXJlbTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZSwgbWFyZ2luLXRvcCAuM3MgZWFzZTsgfVxuICAgICAgLmJsb2NrLWFjY291bnQgLml0ZW1zIGxpLnBhcmVudC5sZXZlbDEgYS5oYXMtY2hpbGRyZW4gc3BhbjphZnRlciwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwxIGEuaGFzLWNoaWxkcmVuIHNwYW46YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxmMDA0JztcbiAgICAgICAgZm9udC1mYW1pbHk6ICdmb250ZWxsbyc7IH1cbiAgICAgIC5ibG9jay1hY2NvdW50IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwxIGEuaGFzLWNoaWxkcmVuIHNwYW4ubGVmdCwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwxIGEuaGFzLWNoaWxkcmVuIHNwYW4ubGVmdCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuYmxvY2stYWNjb3VudCAuaXRlbXMgbGkucGFyZW50LmxldmVsMS5tZW51LWFjdGl2ZSA+IGEgc3BhbiwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwxLm1lbnUtYWN0aXZlID4gYSBzcGFuIHtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYmxvY2stYWNjb3VudCAuaXRlbXMgbGkucGFyZW50LmxldmVsMS5zcGlsbCB1bC5sZXZlbDIsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgbGkucGFyZW50LmxldmVsMS5zcGlsbCB1bC5sZXZlbDIge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogMTAwJTsgfVxuICAgICAgLmJsb2NrLWFjY291bnQgLml0ZW1zIGxpLnBhcmVudC5sZXZlbDEuc3BpbGwgbGkucGFyZW50LmxldmVsMiBzcGFuLCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIGxpLnBhcmVudC5sZXZlbDEuc3BpbGwgbGkucGFyZW50LmxldmVsMiBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICAuYmxvY2stYWNjb3VudCAuaXRlbXMgbGkucGFyZW50LmxldmVsMS5zcGlsbCBsaS5wYXJlbnQubGV2ZWwyIHNwYW4ubGVmdCwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwxLnNwaWxsIGxpLnBhcmVudC5sZXZlbDIgc3Bhbi5sZWZ0IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5ibG9jay1hY2NvdW50IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwyLCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIGxpLnBhcmVudC5sZXZlbDIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5ibG9jay1hY2NvdW50IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwyID4gdWwubGV2ZWwyLCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIGxpLnBhcmVudC5sZXZlbDIgPiB1bC5sZXZlbDIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuYmxvY2stYWNjb3VudCAuaXRlbXMgbGkucGFyZW50LmxldmVsMiA+IHVsLmxldmVsMiwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwyID4gdWwubGV2ZWwyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICAgICAuYmxvY2stYWNjb3VudCAuaXRlbXMgbGkucGFyZW50LmxldmVsMi5tZW51LWFjdGl2ZSA+IGEgc3BhbiwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwyLm1lbnUtYWN0aXZlID4gYSBzcGFuIHtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICAgIG1hcmdpbi10b3A6IC0ycHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50b3VjaCAuYmxvY2stYWNjb3VudCAuaXRlbXMgbGkucGFyZW50LmxldmVsMi5tZW51LWFjdGl2ZSA+IGEgc3BhbiwgLnRvdWNoIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgbGkucGFyZW50LmxldmVsMi5tZW51LWFjdGl2ZSA+IGEgc3BhbiB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlWigwKSAhaW1wb3J0YW50OyB9XG4gICAgICAgIC50b3VjaCAuYmxvY2stYWNjb3VudCAuaXRlbXMgbGkucGFyZW50LmxldmVsMi5tZW51LWFjdGl2ZSA+IGEgc3Bhbi5sZWZ0LCAudG91Y2ggLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwyLm1lbnUtYWN0aXZlID4gYSBzcGFuLmxlZnQge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKSAhaW1wb3J0YW50OyB9IH1cbiAgICAuYmxvY2stYWNjb3VudCAuaXRlbXMgbGkucGFyZW50LmxldmVsMiBhLmhhcy1jaGlsZHJlbiBzcGFuLCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIGxpLnBhcmVudC5sZXZlbDIgYS5oYXMtY2hpbGRyZW4gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW46IDAgMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmJsb2NrLWFjY291bnQgLml0ZW1zIGxpLnBhcmVudC5sZXZlbDIgYS5oYXMtY2hpbGRyZW4gc3BhbiwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwyIGEuaGFzLWNoaWxkcmVuIHNwYW4ge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZykgdHJhbnNsYXRlWigwKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7IH0gfVxuICAgICAgLmJsb2NrLWFjY291bnQgLml0ZW1zIGxpLnBhcmVudC5sZXZlbDIgYS5oYXMtY2hpbGRyZW4gc3BhbjphZnRlciwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwyIGEuaGFzLWNoaWxkcmVuIHNwYW46YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxmMDA0JztcbiAgICAgICAgZm9udC1mYW1pbHk6ICdmb250ZWxsbyc7IH1cbiAgICAgIC5ibG9jay1hY2NvdW50IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwyIGEuaGFzLWNoaWxkcmVuIHNwYW4ubGVmdCwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBsaS5wYXJlbnQubGV2ZWwyIGEuaGFzLWNoaWxkcmVuIHNwYW4ubGVmdCB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAuYmxvY2stYWNjb3VudCAuaXRlbXMgYSwgLmJsb2NrLWFjY291bnQgLml0ZW1zIHN0cm9uZywgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBhLCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIHN0cm9uZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmM2Y2O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MgZWFzZSwgYm9yZGVyIC4zcyBlYXNlLCBjb2xvciAuM3MgZWFzZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjYzsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ibG9jay1hY2NvdW50IC5pdGVtcyBhLCAuYmxvY2stYWNjb3VudCAuaXRlbXMgc3Ryb25nLCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIGEsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgc3Ryb25nIHtcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ibG9jay1hY2NvdW50IC5pdGVtcyBhOmFmdGVyLCAuYmxvY2stYWNjb3VudCAuaXRlbXMgYTpiZWZvcmUsIC5ibG9jay1hY2NvdW50IC5pdGVtcyBzdHJvbmc6YWZ0ZXIsIC5ibG9jay1hY2NvdW50IC5pdGVtcyBzdHJvbmc6YmVmb3JlLCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIGE6YWZ0ZXIsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgYTpiZWZvcmUsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgc3Ryb25nOmFmdGVyLCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIHN0cm9uZzpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0xcHg7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NjYztcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MgZWFzZTsgfVxuICAgICAgLmJsb2NrLWFjY291bnQgLml0ZW1zIGE6YWZ0ZXIsIC5ibG9jay1hY2NvdW50IC5pdGVtcyBzdHJvbmc6YWZ0ZXIsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgYTphZnRlciwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBzdHJvbmc6YWZ0ZXIge1xuICAgICAgICBsZWZ0OiAtMXB4OyB9XG4gICAgICAuYmxvY2stYWNjb3VudCAuaXRlbXMgYTpiZWZvcmUsIC5ibG9jay1hY2NvdW50IC5pdGVtcyBzdHJvbmc6YmVmb3JlLCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIGE6YmVmb3JlLCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIHN0cm9uZzpiZWZvcmUge1xuICAgICAgICByaWdodDogMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmJsb2NrLWFjY291bnQgLml0ZW1zIGEsIC5ibG9jay1hY2NvdW50IC5pdGVtcyBzdHJvbmcsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgYSwgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBzdHJvbmcge1xuICAgICAgICBwYWRkaW5nOiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5ibG9jay1hY2NvdW50IC5pdGVtcyBhLCAuYmxvY2stYWNjb3VudCAuaXRlbXMgc3Ryb25nLCAuYmxvY2stY2F0ZWdvcnkgLml0ZW1zIGEsIC5ibG9jay1jYXRlZ29yeSAuaXRlbXMgc3Ryb25nIHtcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbTsgfSB9XG4gICAgLmJsb2NrLWFjY291bnQgLml0ZW1zIGEgc3Ryb25nLCAuYmxvY2stYWNjb3VudCAuaXRlbXMgc3Ryb25nIHN0cm9uZywgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBhIHN0cm9uZywgLmJsb2NrLWNhdGVnb3J5IC5pdGVtcyBzdHJvbmcgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLnJldmVhbCB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHBhZGRpbmc6IDEuODc1cmVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgICBwYWRkaW5nOiAxLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5yZXZlYWwuZnVsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucmV2ZWFsLmZ1bGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtOyB9IH1cbiAgLnJldmVhbC5mdWxsIC5jbG9zZS1idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucmV2ZWFsLmZ1bGwgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICAgIGhlaWdodDogMS4zNzVyZW07XG4gICAgICAgIHRvcDogMS4wNjI1cmVtO1xuICAgICAgICByaWdodDogMC4zMTI1cmVtOyB9XG4gICAgICAgIC5yZXZlYWwuZnVsbCAuY2xvc2UtYnV0dG9uID4gc3BhbiwgLnJldmVhbC5mdWxsIC5jbG9zZS1idXR0b24gc3BhbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMCAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAucmV2ZWFsLmZ1bGwgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICAgIGhlaWdodDogMS44NzVyZW07IH1cbiAgICAgICAgLnJldmVhbC5mdWxsIC5jbG9zZS1idXR0b24gc3BhbiB7XG4gICAgICAgICAgd2lkdGg6IDEuODc1cmVtOyB9IH1cbiAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWF4LXdpZHRoOiA3OC4xMjVyZW07IH1cbiAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuaXJzLWdyaWQtdGV4dCwgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAuaXJzLWdyaWQtdGV4dCB7XG4gICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgaDMsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgaDMge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi4xODc1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IGgzLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIGgzIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0LjM3NXJlbTsgfSB9XG4gICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCBoMy50aXRsZSwgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCBoMy50aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IGgzLnRpdGxlLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIGgzLnRpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfSB9XG4gICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgLnJvdywgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAucm93IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuMTg3NXJlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAucm93LCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5yb3cge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQuMzc1cmVtOyB9IH1cbiAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5yb3c6bGFzdC1vZi10eXBlLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5yb3c6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC53b3Jrb3V0LWNvbnRlbnQtbW9kYWwsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLndvcmtvdXQtY29udGVudC1tb2RhbCB7XG4gICAgICBwYWRkaW5nOiAyLjE4NzVyZW0gMC42MjVyZW0gMS4yNXJlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAud29ya291dC1jb250ZW50LW1vZGFsLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC53b3Jrb3V0LWNvbnRlbnQtbW9kYWwge1xuICAgICAgICAgIHBhZGRpbmc6IDEuMjVyZW0gMS44NzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAud29ya291dC1jb250ZW50LW1vZGFsLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC53b3Jrb3V0LWNvbnRlbnQtbW9kYWwge1xuICAgICAgICAgIHBhZGRpbmc6IDIuODEyNXJlbSAzLjEyNXJlbSAyLjE4NzVyZW07IH0gfVxuICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAyLjE4NzVyZW0gMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwge1xuICAgICAgICAgIHBhZGRpbmc6IDEuMjVyZW0gMS44NzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAucGxheWxpc3QtY29udGVudC1tb2RhbCwgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAucGxheWxpc3QtY29udGVudC1tb2RhbCB7XG4gICAgICAgICAgcGFkZGluZzogMi44MTI1cmVtIDMuMTI1cmVtOyB9IH1cbiAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuYXR0ci1ob2xkZXIsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmF0dHItaG9sZGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5hdHRyLWhvbGRlciBsYWJlbCwgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAuYXR0ci1ob2xkZXIgbGFiZWwge1xuICAgICAgICBwYWRkaW5nOiAwIDAuNjI1cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuYXR0ci1ob2xkZXIgaW1nLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5hdHRyLWhvbGRlciBpbWcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gICAgICAgIG1heC13aWR0aDogNjBweDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgLmF0dHItaG9sZGVyIGltZywgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAuYXR0ci1ob2xkZXIgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogOTBweDsgfSB9XG4gICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuYXR0ci1ob2xkZXIgaW5wdXRbdHlwZT1yYWRpb10sIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmF0dHItaG9sZGVyIGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgICAgICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgLmF0dHItaG9sZGVyIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBzcGFuLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5hdHRyLWhvbGRlciBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgc3BhbiB7XG4gICAgICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5hdHRyLWhvbGRlciBzcGFuLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5hdHRyLWhvbGRlciBzcGFuIHtcbiAgICAgICAgY29sb3I6ICNhM2EzYTM7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4yNXM7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgLmF0dHItaG9sZGVyIHNwYW4sIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmF0dHItaG9sZGVyIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cbiAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuY3JlYXRlLXdvcmtvdXQsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmNyZWF0ZS13b3Jrb3V0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgLmNyZWF0ZS13b3Jrb3V0LCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5jcmVhdGUtd29ya291dCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuY3JlYXRlLXdvcmtvdXQgaDMsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmNyZWF0ZS13b3Jrb3V0IGgzIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuY3JlYXRlLXdvcmtvdXQgcCwgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAuY3JlYXRlLXdvcmtvdXQgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgY29sb3I6ICNhM2EzYTM7IH1cbiAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5jcmVhdGUtd29ya291dCAuY291bnQsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmNyZWF0ZS13b3Jrb3V0IC5jb3VudCB7XG4gICAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICAgIGhlaWdodDogMi41cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjE2NTY3O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBsaW5lLWhlaWdodDogMi4zNzVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5jcmVhdGUtd29ya291dCAuY291bnQsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmNyZWF0ZS13b3Jrb3V0IC5jb3VudCB7XG4gICAgICAgICAgICB3aWR0aDogMy41cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAzLjVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMy4zNzVyZW07IH0gfVxuICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5idXR0b25zLWdyb3VwLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5idXR0b25zLWdyb3VwIHtcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW0gMC42MjVyZW07XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VkZWVmMTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgLmJ1dHRvbnMtZ3JvdXAgLmJ1dHRvbiwgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAuYnV0dG9ucy1ncm91cCAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5idXR0b25zLWdyb3VwLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5idXR0b25zLWdyb3VwIHtcbiAgICAgICAgICBwYWRkaW5nOiAxLjU2MjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuYnV0dG9ucy1ncm91cCwgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAuYnV0dG9ucy1ncm91cCB7XG4gICAgICAgICAgcGFkZGluZzogMi41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmF0dHItaG9sZGVyIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDYwcHg7IH0gfVxuICAucmV2ZWFsLndvcmtvdXQtdmlkZW8tZ2FsbGVyeSAuYnV0dG9ucy1ncm91cCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJldmVhbC53b3Jrb3V0LXZpZGVvLWdhbGxlcnkuZ2FsbGVyeSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMuMTI1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMy4xMjVyZW0gIWltcG9ydGFudDsgfSB9XG4gIC5yZXZlYWwud29ya291dC12aWRlby1nYWxsZXJ5LmdhbGxlcnkgaWZyYW1lIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA1NXB4KTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yZXZlYWwud29ya291dC12aWRlby1nYWxsZXJ5LmdhbGxlcnkgaWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNDBweCk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJldmVhbC53b3Jrb3V0LXZpZGVvLWdhbGxlcnkuZ2FsbGVyeSAud29ya291dC1wcmV2LXZpZGVvIHtcbiAgICAgIGxlZnQ6IDE1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJldmVhbC53b3Jrb3V0LXZpZGVvLWdhbGxlcnkuZ2FsbGVyeSAud29ya291dC1uZXh0LXZpZGVvIHtcbiAgICAgIHJpZ2h0OiAxNXB4OyB9IH1cbiAgLnJldmVhbC53b3Jrb3V0LXZpZGVvLWdhbGxlcnkuZ2FsbGVyeSAud29ya291dC1wcmV2LXZpZGVvLFxuICAucmV2ZWFsLndvcmtvdXQtdmlkZW8tZ2FsbGVyeS5nYWxsZXJ5IC53b3Jrb3V0LW5leHQtdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHRvcDogYXV0bzsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yZXZlYWwud29ya291dC12aWRlby1nYWxsZXJ5LmdhbGxlcnkgLndvcmtvdXQtcHJldi12aWRlbyxcbiAgICAgIC5yZXZlYWwud29ya291dC12aWRlby1nYWxsZXJ5LmdhbGxlcnkgLndvcmtvdXQtbmV4dC12aWRlbyB7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfSB9XG4gIC5yZXZlYWwud29ya291dC12aWRlby1nYWxsZXJ5LmdhbGxlcnkgLmJ1dHRvbnMtZ3JvdXAge1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5yZXZlYWwuY2FuY2VsLXN1YnNjcmlwdGlvbiBwIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG8gMS41cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIHAge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucmV2ZWFsLmNhbmNlbC1zdWJzY3JpcHRpb24gLmNoZWNrYm94ICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIHRvcDogMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIC5jaGVja2JveCArIGxhYmVsOmFmdGVyIHtcbiAgICAgIHRvcDogMC41cmVtOyB9IH1cbiAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIC5idG4tZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5yZXZlYWwuY2FuY2VsLXN1YnNjcmlwdGlvbiAuYnRuLWdyb3VwIGEge1xuICAgICAgbWFyZ2luOiAwIDhweCAxcmVtOyB9XG4gIC5yZXZlYWwuY2FuY2VsLXN1YnNjcmlwdGlvbiAuY29udHJvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucmV2ZWFsLmNhbmNlbC1zdWJzY3JpcHRpb24gLmFkdmFpY2UtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5yZXZlYWwuY2FuY2VsLXN1YnNjcmlwdGlvbiAjYWR2YWljZS1jb250YWluZXItY2FuY2VsLXN1YnNjcmlwdGlvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIC5mb3JtLWxpc3Qge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIC5yZXZlYWwuY2FuY2VsLXN1YnNjcmlwdGlvbiAuZm9ybS1saXN0IGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5yZXZlYWwuY2FuY2VsLXN1YnNjcmlwdGlvbiAuZm9ybS1saXN0IGxhYmVsIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuICAgIC5yZXZlYWwuY2FuY2VsLXN1YnNjcmlwdGlvbiAuZm9ybS1saXN0IGxpIHtcbiAgICAgIHBhZGRpbmc6IDAuNjI1cmVtIDA7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAgICAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIC5mb3JtLWxpc3QgbGkge1xuICAgICAgICAgIHBhZGRpbmc6IDAuOTM3NXJlbTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9IH1cbiAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IDEwcmVtO1xuICAgIHJlc2l6ZTogdmVydGljYWw7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIHRleHRhcmVhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9IH1cbiAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIC5pbnB1dC1ib3gge1xuICAgIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMi41cmVtOyB9IH1cbiAgLnJldmVhbCAuY2xvc2UtYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogMS4zNzVyZW07XG4gICAgdG9wOiAwLjQzNzVyZW07XG4gICAgcmlnaHQ6IDAuMzEyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yZXZlYWwgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICAgIHJpZ2h0OiAtMS44NzVyZW07XG4gICAgICAgIHRvcDogLTAuMjVyZW07IH1cbiAgICAgICAgLnJldmVhbCAuY2xvc2UtYnV0dG9uID4gc3BhbiwgLnJldmVhbCAuY2xvc2UtYnV0dG9uIHNwYW4ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDsgfSB9XG4gICAgLnJldmVhbCAuY2xvc2UtYnV0dG9uID4gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMS4zNzVyZW07XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAucmV2ZWFsIC5jbG9zZS1idXR0b24gPiBzcGFuIHNwYW4ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxLjM3NXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnJldmVhbCAucGFkLWluZm8ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAyNXZoIDA7IH1cbiAgLnJldmVhbCBpZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDYwcHgpO1xuICAgIG1hcmdpbjogMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnJldmVhbCBpZnJhbWUge1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA0MHB4KTsgfSB9XG5cbi5yZXZlYWwtY29udGVudCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgcGFkZGluZzogMC45Mzc1cmVtIDAuNjI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucmV2ZWFsLWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMy40Mzc1cmVtIDQuNjg3NXJlbTsgfVxuICAgICAgLnJldmVhbC1jb250ZW50Lm1pZGRsZSB7XG4gICAgICAgIHBhZGRpbmc6IDIuMzc1cmVtIDMuNzVyZW07IH0gfVxuICAucmV2ZWFsLWNvbnRlbnQgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgY29sb3I6ICNhM2EzYTM7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucmV2ZWFsLWNvbnRlbnQgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJldmVhbC1vdmVybGF5IHtcbiAgICBwYWRkaW5nOiAwIDIuMTg3NXJlbTsgfSB9XG5cbi5tb2RhbC1wb3B1cCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgei1pbmRleDogOTk5ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44NSk7IH1cbiAgLm1vZGFsLXBvcHVwLl9zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAubW9kYWwtcG9wdXAgLmFjdGlvbi1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIHRvcDogMjBweDtcbiAgICBmb250LXNpemU6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7IH1cbiAgICAubW9kYWwtcG9wdXAgLmFjdGlvbi1jbG9zZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICAgIGhlaWdodDogMTBweDsgfVxuICAgIC5tb2RhbC1wb3B1cCAuYWN0aW9uLWNsb3NlOmJlZm9yZSwgLm1vZGFsLXBvcHVwIC5hY3Rpb24tY2xvc2U6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxNDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjE2NTY3O1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2U7IH1cbiAgICAubW9kYWwtcG9wdXAgLmFjdGlvbi1jbG9zZTpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgICAgbWFyZ2luLXRvcDogLTAuMjVweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjVweDsgfVxuICAgIC5tb2RhbC1wb3B1cCAuYWN0aW9uLWNsb3NlOmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG4gICAgICBtYXJnaW4tbGVmdDogLTQxJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xcHg7IH1cbiAgICAubW9kYWwtcG9wdXAgLmFjdGlvbi1jbG9zZTpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5tb2RhbC1wb3B1cCAuYWN0aW9uLWNsb3NlOmhvdmVyOmJlZm9yZSwgLm1vZGFsLXBvcHVwIC5hY3Rpb24tY2xvc2U6aG92ZXI6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwOyB9XG4gICAgLm1vZGFsLXBvcHVwIC5hY3Rpb24tY2xvc2U6YmVmb3JlLCAubW9kYWwtcG9wdXAgLmFjdGlvbi1jbG9zZTphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7IH1cbiAgICAubW9kYWwtcG9wdXAgLmFjdGlvbi1jbG9zZTpiZWZvcmUge1xuICAgICAgdG9wOiAtMXB4O1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5tb2RhbC1wb3B1cCAubW9kYWwtaW5uZXItd3JhcCB7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBwYWRkaW5nOiAyNXB4IDIwcHg7XG4gICAgYm94LXNoYWRvdzogMCA0cHggN3B4IHJnYmEoMTYzLCAxNjMsIDE2MywgMC41KTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm1vZGFsLXBvcHVwIC5tb2RhbC1pbm5lci13cmFwIHtcbiAgICAgICAgcGFkZGluZzogMjBweCA0MHB4O1xuICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICBtYXgtd2lkdGg6IDc1MHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzMHB4KTsgfSB9XG4gIC5tb2RhbC1wb3B1cC5jYW5jZWwtc3Vic2NyaXB0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODUpICFpbXBvcnRhbnQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubW9kYWwtcG9wdXAuY2FuY2VsLXN1YnNjcmlwdGlvbiAubW9kYWwtaW5uZXItd3JhcCB7XG4gICAgICAgIG1heC13aWR0aDogOTUwcHg7IH0gfVxuICAubW9kYWwtcG9wdXAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cblxuLmNtcy1ob21lIC5tb2RhbC1wb3B1cCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSk7IH1cblxuLnBhZ2luYXRpb24sIC53cC1wYWdlbmF2aSB7XG4gIG1hcmdpbjogMS41NjI1cmVtIGF1dG8gMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnBhZ2luYXRpb24sIC53cC1wYWdlbmF2aSB7XG4gICAgICBtYXJnaW46IDIuNXJlbSBhdXRvIDA7IH0gfVxuICAucGFnaW5hdGlvbi5jdXN0b20sIC53cC1wYWdlbmF2aS5jdXN0b20ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5wYWdpbmF0aW9uLmN1c3RvbSAuYnRuLWZpcnN0LXBhZ2UsIC5wYWdpbmF0aW9uLmN1c3RvbSAuYnRuLWxhc3QtcGFnZSwgLnBhZ2luYXRpb24uY3VzdG9tIC5kaXNhYmxlZCwgLndwLXBhZ2VuYXZpLmN1c3RvbSAuYnRuLWZpcnN0LXBhZ2UsIC53cC1wYWdlbmF2aS5jdXN0b20gLmJ0bi1sYXN0LXBhZ2UsIC53cC1wYWdlbmF2aS5jdXN0b20gLmRpc2FibGVkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucGFnaW5hdGlvbi5jdXN0b20gbGksIC53cC1wYWdlbmF2aS5jdXN0b20gbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgIC5wYWdpbmF0aW9uLmN1c3RvbSAuYnRuLW5leHQtbW9yZSBhOmFmdGVyLCAud3AtcGFnZW5hdmkuY3VzdG9tIC5idG4tbmV4dC1tb3JlIGE6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5wYWdpbmF0aW9uLmN1c3RvbSAuYnRuLXByZXYtcGFnZSBhLCAud3AtcGFnZW5hdmkuY3VzdG9tIC5idG4tcHJldi1wYWdlIGEge1xuICAgICAgZm9udC1zaXplOiAwOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYWdpbmF0aW9uLmN1c3RvbSAuYnRuLXByZXYtcGFnZSBhLCAud3AtcGFnZW5hdmkuY3VzdG9tIC5idG4tcHJldi1wYWdlIGEge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTsgfVxuICAgICAgICAgIC5wYWdpbmF0aW9uLmN1c3RvbSAuYnRuLXByZXYtcGFnZSBhOmhvdmVyOmJlZm9yZSwgLndwLXBhZ2VuYXZpLmN1c3RvbSAuYnRuLXByZXYtcGFnZSBhOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpOyB9IH1cbiAgICAgIC5wYWdpbmF0aW9uLmN1c3RvbSAuYnRuLXByZXYtcGFnZSBhOmJlZm9yZSwgLndwLXBhZ2VuYXZpLmN1c3RvbSAuYnRuLXByZXYtcGFnZSBhOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGU4MDInO1xuICAgICAgICBmb250LWZhbWlseTogJ2ZvbnRlbGxvJztcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAucGFnaW5hdGlvbi5jdXN0b20gLmJ0bi1wcmV2LXBhZ2UgYTpiZWZvcmUsIC53cC1wYWdlbmF2aS5jdXN0b20gLmJ0bi1wcmV2LXBhZ2UgYTpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfSB9XG4gICAgICAucGFnaW5hdGlvbi5jdXN0b20gLmJ0bi1wcmV2LXBhZ2UgYTphZnRlciwgLndwLXBhZ2VuYXZpLmN1c3RvbSAuYnRuLXByZXYtcGFnZSBhOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJ+KAoicgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tbGVmdDogMnB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgICAgdG9wOiAzcHg7XG4gICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLnBhZ2luYXRpb24uY3VzdG9tIC5idG4tcHJldi1wYWdlIGE6YWZ0ZXIsIC53cC1wYWdlbmF2aS5jdXN0b20gLmJ0bi1wcmV2LXBhZ2UgYTphZnRlciB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4OyB9IH1cbiAgICAucGFnaW5hdGlvbi5jdXN0b20gLmJ0bi1uZXh0LXBhZ2UgYSwgLndwLXBhZ2VuYXZpLmN1c3RvbSAuYnRuLW5leHQtcGFnZSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAucGFnaW5hdGlvbi5jdXN0b20gLmJ0bi1uZXh0LXBhZ2UgYSwgLndwLXBhZ2VuYXZpLmN1c3RvbSAuYnRuLW5leHQtcGFnZSBhIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfVxuICAgICAgICAgIC5wYWdpbmF0aW9uLmN1c3RvbSAuYnRuLW5leHQtcGFnZSBhOmhvdmVyOmFmdGVyLCAud3AtcGFnZW5hdmkuY3VzdG9tIC5idG4tbmV4dC1wYWdlIGE6aG92ZXI6YWZ0ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpOyB9IH1cbiAgICAgIC5wYWdpbmF0aW9uLmN1c3RvbSAuYnRuLW5leHQtcGFnZSBhOmFmdGVyLCAud3AtcGFnZW5hdmkuY3VzdG9tIC5idG4tbmV4dC1wYWdlIGE6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxlODAxJyAhaW1wb3J0YW50O1xuICAgICAgICBmb250LWZhbWlseTogJ2ZvbnRlbGxvJztcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50OyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgICAucGFnaW5hdGlvbi5jdXN0b20gLmJ0bi1uZXh0LXBhZ2UgYTphZnRlciwgLndwLXBhZ2VuYXZpLmN1c3RvbSAuYnRuLW5leHQtcGFnZSBhOmFmdGVyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuICAgICAgLnBhZ2luYXRpb24uY3VzdG9tIC5idG4tbmV4dC1wYWdlIGE6YmVmb3JlLCAud3AtcGFnZW5hdmkuY3VzdG9tIC5idG4tbmV4dC1wYWdlIGE6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ+KAoic7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAzcHg7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIC5wYWdpbmF0aW9uLmN1c3RvbSAuYnRuLW5leHQtcGFnZSBhOmJlZm9yZSwgLndwLXBhZ2VuYXZpLmN1c3RvbSAuYnRuLW5leHQtcGFnZSBhOmJlZm9yZSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4OyB9IH1cbiAgLnBhZ2luYXRpb24gYSwgLnBhZ2luYXRpb24gbGkuY3VycmVudCwgLnBhZ2luYXRpb24gc3Bhbi5jdXJyZW50LCAud3AtcGFnZW5hdmkgYSwgLndwLXBhZ2VuYXZpIGxpLmN1cnJlbnQsIC53cC1wYWdlbmF2aSBzcGFuLmN1cnJlbnQge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIHBhZGRpbmc6IDAuMzEyNXJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5wYWdpbmF0aW9uIGEsIC5wYWdpbmF0aW9uIGxpLmN1cnJlbnQsIC5wYWdpbmF0aW9uIHNwYW4uY3VycmVudCwgLndwLXBhZ2VuYXZpIGEsIC53cC1wYWdlbmF2aSBsaS5jdXJyZW50LCAud3AtcGFnZW5hdmkgc3Bhbi5jdXJyZW50IHtcbiAgICAgICAgcGFkZGluZzogMC41NjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAucGFnaW5hdGlvbiBhLCAucGFnaW5hdGlvbiBsaS5jdXJyZW50LCAucGFnaW5hdGlvbiBzcGFuLmN1cnJlbnQsIC53cC1wYWdlbmF2aSBhLCAud3AtcGFnZW5hdmkgbGkuY3VycmVudCwgLndwLXBhZ2VuYXZpIHNwYW4uY3VycmVudCB7XG4gICAgICAgIHBhZGRpbmc6IDAuNjI1cmVtIDAuODEyNXJlbTsgfSB9XG4gIC5wYWdpbmF0aW9uIGEgOmFmdGVyLCAucGFnaW5hdGlvbiBsaS5jdXJyZW50OmFmdGVyLCAucGFnaW5hdGlvbiBzcGFuLmN1cnJlbnQ6YWZ0ZXIsIC53cC1wYWdlbmF2aSBhIDphZnRlciwgLndwLXBhZ2VuYXZpIGxpLmN1cnJlbnQ6YWZ0ZXIsIC53cC1wYWdlbmF2aSBzcGFuLmN1cnJlbnQ6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDNweDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2U7XG4gICAgb3BhY2l0eTogMDsgfVxuICAucGFnaW5hdGlvbiBhOmhvdmVyOmFmdGVyLCAucGFnaW5hdGlvbiBsaS5jdXJyZW50OmFmdGVyLCAucGFnaW5hdGlvbiBsaS5hY3RpdmUgYTphZnRlciwgLnBhZ2luYXRpb24gc3Bhbi5jdXJyZW50OmFmdGVyLCAud3AtcGFnZW5hdmkgYTpob3ZlcjphZnRlciwgLndwLXBhZ2VuYXZpIGxpLmN1cnJlbnQ6YWZ0ZXIsIC53cC1wYWdlbmF2aSBsaS5hY3RpdmUgYTphZnRlciwgLndwLXBhZ2VuYXZpIHNwYW4uY3VycmVudDphZnRlciB7XG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50OyB9XG4gIC5wYWdpbmF0aW9uIG9sLCAud3AtcGFnZW5hdmkgb2wge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIC5wYWdpbmF0aW9uIC5wcmV2aW91cywgLnBhZ2luYXRpb24gLnByZXZpb3VzcG9zdHNsaW5rLCAud3AtcGFnZW5hdmkgLnByZXZpb3VzLCAud3AtcGFnZW5hdmkgLnByZXZpb3VzcG9zdHNsaW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYWdpbmF0aW9uIC5wcmV2aW91cywgLnBhZ2luYXRpb24gLnByZXZpb3VzcG9zdHNsaW5rLCAud3AtcGFnZW5hdmkgLnByZXZpb3VzLCAud3AtcGFnZW5hdmkgLnByZXZpb3VzcG9zdHNsaW5rIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtOyB9XG4gICAgICAgIC5wYWdpbmF0aW9uIC5wcmV2aW91czpob3ZlcjpiZWZvcmUsIC5wYWdpbmF0aW9uIC5wcmV2aW91c3Bvc3RzbGluazpob3ZlcjpiZWZvcmUsIC53cC1wYWdlbmF2aSAucHJldmlvdXM6aG92ZXI6YmVmb3JlLCAud3AtcGFnZW5hdmkgLnByZXZpb3VzcG9zdHNsaW5rOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTsgfSB9XG4gICAgLnBhZ2luYXRpb24gLnByZXZpb3VzOmJlZm9yZSwgLnBhZ2luYXRpb24gLnByZXZpb3VzcG9zdHNsaW5rOmJlZm9yZSwgLndwLXBhZ2VuYXZpIC5wcmV2aW91czpiZWZvcmUsIC53cC1wYWdlbmF2aSAucHJldmlvdXNwb3N0c2xpbms6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU4MDInO1xuICAgICAgZm9udC1mYW1pbHk6ICdmb250ZWxsbyc7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2U7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnBhZ2luYXRpb24gLnByZXZpb3VzOmJlZm9yZSwgLnBhZ2luYXRpb24gLnByZXZpb3VzcG9zdHNsaW5rOmJlZm9yZSwgLndwLXBhZ2VuYXZpIC5wcmV2aW91czpiZWZvcmUsIC53cC1wYWdlbmF2aSAucHJldmlvdXNwb3N0c2xpbms6YmVmb3JlIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuODc1cmVtOyB9IH1cbiAgICAucGFnaW5hdGlvbiAucHJldmlvdXM6YWZ0ZXIsIC5wYWdpbmF0aW9uIC5wcmV2aW91c3Bvc3RzbGluazphZnRlciwgLndwLXBhZ2VuYXZpIC5wcmV2aW91czphZnRlciwgLndwLXBhZ2VuYXZpIC5wcmV2aW91c3Bvc3RzbGluazphZnRlciB7XG4gICAgICBjb250ZW50OiAn4oCiJztcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogMnB4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYWdpbmF0aW9uIC5wcmV2aW91czphZnRlciwgLnBhZ2luYXRpb24gLnByZXZpb3VzcG9zdHNsaW5rOmFmdGVyLCAud3AtcGFnZW5hdmkgLnByZXZpb3VzOmFmdGVyLCAud3AtcGFnZW5hdmkgLnByZXZpb3VzcG9zdHNsaW5rOmFmdGVyIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4OyB9IH1cbiAgLnBhZ2luYXRpb24gLm5leHQsIC5wYWdpbmF0aW9uIC5uZXh0cG9zdHNsaW5rLCAucGFnaW5hdGlvbiAuYnRuLW5leHQtcGFnZSBhLCAud3AtcGFnZW5hdmkgLm5leHQsIC53cC1wYWdlbmF2aSAubmV4dHBvc3RzbGluaywgLndwLXBhZ2VuYXZpIC5idG4tbmV4dC1wYWdlIGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhZ2luYXRpb24gLm5leHQsIC5wYWdpbmF0aW9uIC5uZXh0cG9zdHNsaW5rLCAucGFnaW5hdGlvbiAuYnRuLW5leHQtcGFnZSBhLCAud3AtcGFnZW5hdmkgLm5leHQsIC53cC1wYWdlbmF2aSAubmV4dHBvc3RzbGluaywgLndwLXBhZ2VuYXZpIC5idG4tbmV4dC1wYWdlIGEge1xuICAgICAgICBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfVxuICAgICAgICAucGFnaW5hdGlvbiAubmV4dDpob3ZlcjphZnRlciwgLnBhZ2luYXRpb24gLm5leHRwb3N0c2xpbms6aG92ZXI6YWZ0ZXIsIC5wYWdpbmF0aW9uIC5idG4tbmV4dC1wYWdlIGE6aG92ZXI6YWZ0ZXIsIC53cC1wYWdlbmF2aSAubmV4dDpob3ZlcjphZnRlciwgLndwLXBhZ2VuYXZpIC5uZXh0cG9zdHNsaW5rOmhvdmVyOmFmdGVyLCAud3AtcGFnZW5hdmkgLmJ0bi1uZXh0LXBhZ2UgYTpob3ZlcjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpOyB9IH1cbiAgICAucGFnaW5hdGlvbiAubmV4dDphZnRlciwgLnBhZ2luYXRpb24gLm5leHRwb3N0c2xpbms6YWZ0ZXIsIC5wYWdpbmF0aW9uIC5idG4tbmV4dC1wYWdlIGE6YWZ0ZXIsIC53cC1wYWdlbmF2aSAubmV4dDphZnRlciwgLndwLXBhZ2VuYXZpIC5uZXh0cG9zdHNsaW5rOmFmdGVyLCAud3AtcGFnZW5hdmkgLmJ0bi1uZXh0LXBhZ2UgYTphZnRlciB7XG4gICAgICBjb250ZW50OiAnXFxlODAxJztcbiAgICAgIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYWdpbmF0aW9uIC5uZXh0OmFmdGVyLCAucGFnaW5hdGlvbiAubmV4dHBvc3RzbGluazphZnRlciwgLnBhZ2luYXRpb24gLmJ0bi1uZXh0LXBhZ2UgYTphZnRlciwgLndwLXBhZ2VuYXZpIC5uZXh0OmFmdGVyLCAud3AtcGFnZW5hdmkgLm5leHRwb3N0c2xpbms6YWZ0ZXIsIC53cC1wYWdlbmF2aSAuYnRuLW5leHQtcGFnZSBhOmFmdGVyIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuODc1cmVtOyB9IH1cbiAgICAucGFnaW5hdGlvbiAubmV4dDpiZWZvcmUsIC5wYWdpbmF0aW9uIC5uZXh0cG9zdHNsaW5rOmJlZm9yZSwgLnBhZ2luYXRpb24gLmJ0bi1uZXh0LXBhZ2UgYTpiZWZvcmUsIC53cC1wYWdlbmF2aSAubmV4dDpiZWZvcmUsIC53cC1wYWdlbmF2aSAubmV4dHBvc3RzbGluazpiZWZvcmUsIC53cC1wYWdlbmF2aSAuYnRuLW5leHQtcGFnZSBhOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAn4oCiJztcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAucGFnaW5hdGlvbiAubmV4dDpiZWZvcmUsIC5wYWdpbmF0aW9uIC5uZXh0cG9zdHNsaW5rOmJlZm9yZSwgLnBhZ2luYXRpb24gLmJ0bi1uZXh0LXBhZ2UgYTpiZWZvcmUsIC53cC1wYWdlbmF2aSAubmV4dDpiZWZvcmUsIC53cC1wYWdlbmF2aSAubmV4dHBvc3RzbGluazpiZWZvcmUsIC53cC1wYWdlbmF2aSAuYnRuLW5leHQtcGFnZSBhOmJlZm9yZSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsgfSB9XG4gIC5wYWdpbmF0aW9uIC5wYWdlcy1pdGVtLXByZXZpb3VzLmRpc2FibGVkLCAucGFnaW5hdGlvbiAucGFnZXMtaXRlbS1uZXh0LmRpc2FibGVkLCAud3AtcGFnZW5hdmkgLnBhZ2VzLWl0ZW0tcHJldmlvdXMuZGlzYWJsZWQsIC53cC1wYWdlbmF2aSAucGFnZXMtaXRlbS1uZXh0LmRpc2FibGVkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAucGFnaW5hdGlvbiAucGFnZXMtaXRlbS1wcmV2aW91cy5kaXNhYmxlZDpiZWZvcmUsIC5wYWdpbmF0aW9uIC5wYWdlcy1pdGVtLW5leHQuZGlzYWJsZWQ6YmVmb3JlLCAud3AtcGFnZW5hdmkgLnBhZ2VzLWl0ZW0tcHJldmlvdXMuZGlzYWJsZWQ6YmVmb3JlLCAud3AtcGFnZW5hdmkgLnBhZ2VzLWl0ZW0tbmV4dC5kaXNhYmxlZDpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTsgfVxuXG4ud3AtcGFnZW5hdmkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAud3AtcGFnZW5hdmkgPiBhLCAud3AtcGFnZW5hdmkgc3BhbiB7XG4gICAgcGFkZGluZzogMC41NjI1cmVtICFpbXBvcnRhbnQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAud3AtcGFnZW5hdmkgPiBhLCAud3AtcGFnZW5hdmkgc3BhbiB7XG4gICAgICAgIHBhZGRpbmc6IDAuNjI1cmVtIDAuODEyNXJlbSAhaW1wb3J0YW50OyB9IH1cblxuLnByb2R1Y3RzLWdyaWQge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5wcm9kdWN0cy1ncmlkIC5pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gIC5wcm9kdWN0cy1ncmlkLnNsaWNrLXNsaWRlciB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuLnByb2R1Y3QtaG9sZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5wcm9kdWN0LWhvbGRlciA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5wcm9kdWN0LWhvbGRlci5wcm9kdWN0LXZpZGVvLWhvbGRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnByb2R1Y3QtaG9sZGVyLnByb2R1Y3QtdmlkZW8taG9sZGVyIC5wcm9kdWN0LWltYWdlIHtcbiAgICAgIGhlaWdodDogMTVyZW07XG4gICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgIC5wcm9kdWN0LWhvbGRlci5wcm9kdWN0LXZpZGVvLWhvbGRlciAucHJvZHVjdC1uYW1lLFxuICAgIC5wcm9kdWN0LWhvbGRlci5wcm9kdWN0LXZpZGVvLWhvbGRlciAucHJpY2UtYm94LFxuICAgIC5wcm9kdWN0LWhvbGRlci5wcm9kdWN0LXZpZGVvLWhvbGRlciAuYWN0aW9ucyB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gICAgLnByb2R1Y3QtaG9sZGVyLnByb2R1Y3QtdmlkZW8taG9sZGVyIC5wcm9kdWN0LW5hbWUge1xuICAgICAgZm9udC1mYW1pbHk6ICdCcmFuZG9uR3JvdGVzcXVlJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gICAgICAucHJvZHVjdC1ob2xkZXIucHJvZHVjdC12aWRlby1ob2xkZXIgLnByb2R1Y3QtbmFtZSBhIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnByb2R1Y3QtaG9sZGVyLnByb2R1Y3QtdmlkZW8taG9sZGVyIC5wcm9kdWN0LW5hbWUge1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAgIC5wcm9kdWN0LWhvbGRlci5wcm9kdWN0LXZpZGVvLWhvbGRlciAucHJvZHVjdC1uYW1lIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9IH1cbiAgICAucHJvZHVjdC1ob2xkZXIucHJvZHVjdC12aWRlby1ob2xkZXIgLmJ1dHRvbiB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLnByb2R1Y3QtaG9sZGVyLnByb2R1Y3QtdmlkZW8taG9sZGVyIC5wcmljZS1ib3gge1xuICAgICAgcGFkZGluZzogMC4zMTI1cmVtIDAgMDsgfVxuICAgIC5wcm9kdWN0LWhvbGRlci5wcm9kdWN0LXZpZGVvLWhvbGRlciAuc3BlY2lhbC1wcmljZSwgLnByb2R1Y3QtaG9sZGVyLnByb2R1Y3QtdmlkZW8taG9sZGVyIC5vbGQtcHJpY2UsIC5wcm9kdWN0LWhvbGRlci5wcm9kdWN0LXZpZGVvLWhvbGRlciAucmVndWxhci1wcmljZSwgLnByb2R1Y3QtaG9sZGVyLnByb2R1Y3QtdmlkZW8taG9sZGVyIC5wcmljZSB7XG4gICAgICBmb250LXNpemU6IDAuOTM3NXJlbSAhaW1wb3J0YW50O1xuICAgICAgZm9udC1mYW1pbHk6ICdtaWxsZXInLCBzYW5zLXNlcmlmOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5wcm9kdWN0LWhvbGRlci5wcm9kdWN0LXZpZGVvLWhvbGRlciAuc3BlY2lhbC1wcmljZSwgLnByb2R1Y3QtaG9sZGVyLnByb2R1Y3QtdmlkZW8taG9sZGVyIC5vbGQtcHJpY2UsIC5wcm9kdWN0LWhvbGRlci5wcm9kdWN0LXZpZGVvLWhvbGRlciAucmVndWxhci1wcmljZSwgLnByb2R1Y3QtaG9sZGVyLnByb2R1Y3QtdmlkZW8taG9sZGVyIC5wcmljZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW0gIWltcG9ydGFudDsgfSB9XG4gIC5wcm9kdWN0LWhvbGRlciAucHJvZHVjdC1pbWFnZSB7XG4gICAgd2lkdGg6IDE3LjVyZW07XG4gICAgaGVpZ2h0OiAyMy4xMjVyZW07XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG8gMC4zMTI1cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAgIC5wcm9kdWN0LWhvbGRlciAucHJvZHVjdC1pbWFnZSB7XG4gICAgICAgIHdpZHRoOiAyMi41cmVtO1xuICAgICAgICBoZWlnaHQ6IDMwcmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAucHJvZHVjdC1ob2xkZXIgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTMzJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLnByb2R1Y3QtaG9sZGVyIC5wcm9kdWN0LWNhcHRpb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiA1LjI1cmVtO1xuICAgIGhlaWdodDogMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDMwMzAzO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnByb2R1Y3QtaG9sZGVyIC5wcm9kdWN0LWNhcHRpb24ge1xuICAgICAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfSB9XG4gIC5wcm9kdWN0LWhvbGRlciAucHJvZHVjdC1pbWFnZS1waG90byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC05OTk5JTtcbiAgICB0b3A6IC05OTk5JTsgfVxuXG4ucHJvZHVjdC1pbmZvIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50OyB9XG4gIC5wcm9kdWN0LWluZm8gLnByb2R1Y3QtbmFtZSxcbiAgLnByb2R1Y3QtaW5mbyAucHJpY2UtYm94LFxuICAucHJvZHVjdC1pbmZvIC5hY3Rpb25zIHtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbSAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBmb250LWZhbWlseTogXCJCcmFuZG9uR3JvdGVzcXVlXCIsIHNhbnMtc2VyaWY7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucHJvZHVjdC1pbmZvIC5wcm9kdWN0LW5hbWUsXG4gICAgICAucHJvZHVjdC1pbmZvIC5wcmljZS1ib3gsXG4gICAgICAucHJvZHVjdC1pbmZvIC5hY3Rpb25zIHtcbiAgICAgICAgcGFkZGluZzogMC44MTI1cmVtIDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5wcm9kdWN0LWluZm8gLnByb2R1Y3QtbmFtZSxcbiAgICAgIC5wcm9kdWN0LWluZm8gLnByaWNlLWJveCxcbiAgICAgIC5wcm9kdWN0LWluZm8gLmFjdGlvbnMge1xuICAgICAgICBwYWRkaW5nOiAxLjA2MjVyZW0gMDsgfSB9XG4gICAgLm5ldy1kIC5wcm9kdWN0LWluZm8gLnByb2R1Y3QtbmFtZSwgLm5ldy1kXG4gICAgLnByb2R1Y3QtaW5mbyAucHJpY2UtYm94LCAubmV3LWRcbiAgICAucHJvZHVjdC1pbmZvIC5hY3Rpb25zIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgcGFkZGluZzogMC4zNzVyZW0gMDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAubmV3LWQgLnByb2R1Y3QtaW5mbyAucHJvZHVjdC1uYW1lLCAubmV3LWRcbiAgICAgICAgLnByb2R1Y3QtaW5mbyAucHJpY2UtYm94LCAubmV3LWRcbiAgICAgICAgLnByb2R1Y3QtaW5mbyAuYWN0aW9ucyB7XG4gICAgICAgICAgcGFkZGluZzogMC44MTI1cmVtIDA7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAubmV3LWQgLnByb2R1Y3QtaW5mbyAucHJvZHVjdC1uYW1lLCAubmV3LWRcbiAgICAgICAgLnByb2R1Y3QtaW5mbyAucHJpY2UtYm94LCAubmV3LWRcbiAgICAgICAgLnByb2R1Y3QtaW5mbyAuYWN0aW9ucyB7XG4gICAgICAgICAgcGFkZGluZzogMS4wNjI1cmVtIDA7IH0gfVxuICAucHJvZHVjdC1pbmZvIC5zcGVjaWFsLXByaWNlLCAucHJvZHVjdC1pbmZvIC5vbGQtcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbSAhaW1wb3J0YW50O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1mYW1pbHk6IFwiQnJhbmRvbkdyb3Rlc3F1ZVwiLCBzYW5zLXNlcmlmO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAgIC5wcm9kdWN0LWluZm8gLnNwZWNpYWwtcHJpY2UgLnByaWNlLWxhYmVsLCAucHJvZHVjdC1pbmZvIC5vbGQtcHJpY2UgLnByaWNlLWxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnByb2R1Y3QtaW5mbyAub2xkLXByaWNlIHtcbiAgICBjb2xvcjogI2EzYTNhMztcbiAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjg3NXJlbSAhaW1wb3J0YW50OyB9XG4gIC5wcm9kdWN0LWluZm8gLnByb2R1Y3QtYWN0aW9uIHtcbiAgICBjb2xvcjogI2ZmNjY2NjtcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAucHJvZHVjdC1pbmZvIC5vdXQtb2Ytc3RvY2sge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiAyNXJlbTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAucHJvZHVjdC1pbmZvIC5hY3Rpb25zIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gIC5wcm9kdWN0LWluZm8gLnByb2R1Y3QtbmFtZSB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLnByb2R1Y3QtaW5mbyAucHJvZHVjdC1uYW1lIGEge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgICAgLm5ldy1kIC5wcm9kdWN0LWluZm8gLnByb2R1Y3QtbmFtZSBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4ubmV3LWQgLnByb2R1Y3QtaW1hZ2Uge1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogMTE1JTsgfVxuXG4ud3JhcHBlci1mb3ItYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAud3JhcHBlci1mb3ItYnRuIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm5vLXRvdWNoIC53cmFwcGVyLWZvci1idG46aG92ZXIgLmFjdGlvbnMge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5uby10b3VjaCAuYmVzdHNlbGxlcnMtc2xpZGVyIC53cmFwcGVyLWZvci1idG46aG92ZXIgLmFjdGlvbnMge1xuICAgICAgb3BhY2l0eTogMTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubm8tdG91Y2ggLmJlc3RzZWxsZXJzLXNsaWRlciAud3JhcHBlci1mb3ItYnRuIC5hY3Rpb25zIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubm8tdG91Y2ggLmJlc3RzZWxsZXJzLXNsaWRlciAud3JhcHBlci1mb3ItYnRuIC5hY3Rpb25zIC5wcm9kdWN0LWFjdGlvbiB7XG4gICAgICBjb2xvcjogI2YxNjU2NztcbiAgICAgIHBhZGRpbmc6IDEycHggNXB4O1xuICAgICAgd2lkdGg6IDEzNXB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubm8tdG91Y2ggLmJlc3RzZWxsZXJzLXNsaWRlciAud3JhcHBlci1mb3ItYnRuIC5hY3Rpb25zIC5wcm9kdWN0LWFjdGlvbjpob3ZlciB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJhY2tncm91bmQ6ICNmMTY1Njc7IH0gfVxuICAud3JhcHBlci1mb3ItYnRuIC5hY3Rpb25zIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogN3B4IDVweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMS4xcHg7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLndyYXBwZXItZm9yLWJ0biAuYWN0aW9ucyB7XG4gICAgICAgIHBhZGRpbmc6IDEzcHggNXB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubm8tdG91Y2ggLndyYXBwZXItZm9yLWJ0biAuYWN0aW9ucyB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBlYXNlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7IH0gfVxuICAgIC53cmFwcGVyLWZvci1idG4gLmFjdGlvbnMgc3BhbiB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxLjFweDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuICAgIC53cmFwcGVyLWZvci1idG4gLmFjdGlvbnMgLnByb2R1Y3QtYWN0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGNvbG9yOiB3aGl0ZTsgfVxuXG4uZmVhdHVyZWQtZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLmZlYXR1cmVkLWdyaWQge1xuICAgICAgbWFyZ2luOiAwIC0xMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5mZWF0dXJlZC1ncmlkIHtcbiAgICAgIG1hcmdpbjogMCAtMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVhdHVyZWQtZ3JpZCB7XG4gICAgICBtYXJnaW46IDAgLTMwcHg7IH0gfVxuICAuZmVhdHVyZWQtZ3JpZCAucHJvZHVjdC1ob2xkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCAwIDE1cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgICAuZmVhdHVyZWQtZ3JpZCAucHJvZHVjdC1ob2xkZXIge1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggMTVweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmZlYXR1cmVkLWdyaWQgLnByb2R1Y3QtaG9sZGVyIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gNDBweCk7XG4gICAgICAgIG1hcmdpbjogMCAyMHB4IDI1cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mZWF0dXJlZC1ncmlkIC5wcm9kdWN0LWhvbGRlciB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMzLjMlIC0gNDBweCk7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5mZWF0dXJlZC1ncmlkIC5wcm9kdWN0LWhvbGRlciB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMzLjMlIC0gNjBweCk7XG4gICAgICAgIG1hcmdpbjogMCAzMHB4IDI1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLmZlYXR1cmVkLWdyaWQgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgcGFkZGluZy10b3A6IDEyNSU7IH0gfVxuXG4ucHJvZHVjdC1pbm5lci1zbGlkZXIge1xuICBwYWRkaW5nOiAwIDAuOTM3NXJlbTsgfVxuXG4ucHJvZHVjdC1zbGlkZXItYmxvY2sge1xuICBwYWRkaW5nOiAxLjI1cmVtIDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wcm9kdWN0LXNsaWRlci1ibG9jayB7XG4gICAgICBwYWRkaW5nOiAzLjEyNXJlbSAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5wcm9kdWN0LXNsaWRlci1ibG9jayB7XG4gICAgICBwYWRkaW5nOiA1LjYyNXJlbSAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5jbXMtaG9tZSAucHJvZHVjdC1zbGlkZXItYmxvY2sge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZmVhdHVyZWQtaXRlbXMgLnByb2R1Y3Qtc2xpZGVyLWJsb2NrIHtcbiAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICAucHJvZHVjdC1zbGlkZXItYmxvY2sgLnNsaWRlci10aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5wcm9kdWN0LXNsaWRlci1ibG9jayBoMzpub3QoLmgxKSB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICBmb250LWZhbWlseTogJ0JyYW5kb25Hcm90ZXNxdWUnLCBzYW5zLXNlcmlmO1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5wcm9kdWN0LXNsaWRlci1ibG9jayBoMzpub3QoLmgxKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7IH0gfVxuXG4ucHJvZHVjdC1zbGlkZXIge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5wcm9kdWN0LXNsaWRlciAuc2xpY2stdHJhY2sge1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5wcm9kdWN0LXNsaWRlciAucHJvZHVjdC1ob2xkZXIgLnByb2R1Y3QtaW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nLXRvcDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG4gIC5wcm9kdWN0LXNsaWRlciAuaXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wcm9kdWN0LXNsaWRlciAuaXRlbSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDM5MHB4OyB9IH1cbiAgLnByb2R1Y3Qtc2xpZGVyIC5wcm9kdWN0LXZpZGVvLWhvbGRlciAucHJvZHVjdC1pbWFnZSB7XG4gICAgaGVpZ2h0OiAxNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnByb2R1Y3Qtc2xpZGVyIC5zbGljay1hcnJvdyB7XG4gICAgICB0b3A6IDQwJTsgfSB9XG4gIC5wcm9kdWN0LXNsaWRlciAuc2xpY2stcHJldiB7XG4gICAgbGVmdDogLTEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnByb2R1Y3Qtc2xpZGVyIC5zbGljay1wcmV2IHtcbiAgICAgICAgbGVmdDogLTguMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDEuMjVlbSkge1xuICAgICAgLnByb2R1Y3Qtc2xpZGVyIC5zbGljay1wcmV2IHtcbiAgICAgICAgbGVmdDogLTEyLjVyZW07IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxODAwcHgpIHtcbiAgICAgIC5wcm9kdWN0LXNsaWRlciAuc2xpY2stcHJldiB7XG4gICAgICAgIGxlZnQ6IC0xNS42MjVyZW07IH0gfVxuICAucHJvZHVjdC1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAtMS44NzVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAucHJvZHVjdC1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgICAgICByaWdodDogLTguMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDEuMjVlbSkge1xuICAgICAgLnByb2R1Y3Qtc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IC0xMi41cmVtOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTgwMHB4KSB7XG4gICAgICAucHJvZHVjdC1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgICAgICByaWdodDogLTE1LjYyNXJlbTsgfSB9XG5cbi50aXRsZS1jcmVkaXQge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gIC50aXRsZS1jcmVkaXQgLnRpdGxlLWNyZWRpdC1sYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC50aXRsZS1jcmVkaXQgLnRpdGxlLWNyZWRpdC1sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG5cbi5jdXN0b21lci1jcmVkaXQtZm9ybS1jb2RlIHtcbiAgbWF4LXdpZHRoOiAxOC4xMjVyZW07XG4gIG1hcmdpbjogMS4yNXJlbSAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY3VzdG9tZXItY3JlZGl0LWZvcm0tY29kZSB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfSB9XG4gIC5jdXN0b21lci1jcmVkaXQtZm9ybS1jb2RlIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmN1c3RvbWVyLWNyZWRpdC1mb3JtLWNvZGUgZGwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmN1c3RvbWVyLWNyZWRpdC1mb3JtLWNvZGUgLmlucHV0LWJveCB7XG4gICAgbWFyZ2luLXRvcDogMS4yNXJlbTsgfVxuICAuY3VzdG9tZXItY3JlZGl0LWZvcm0tY29kZSB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jdXN0b21lci1jcmVkaXQtZm9ybS1jb2RlIHVsIGJ1dHRvbiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS42MjVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuNjI1cmVtOyB9IH1cblxuLnBheW1lbnQtZm9ybSAuY3VzdG9tZXJjcmVkaXQgbGFiZWwge1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgY3Vyc29yOiB0ZXh0OyB9XG5cbi5wYXltZW50LWZvcm0gLmN1c3RvbWVyY3JlZGl0IC5jaGVja291dC1jcmVkaXQtdXNlID4gc3BhbjpmaXJzdC1jaGlsZCBzdHJvbmcge1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cblxuLnBheW1lbnQtZm9ybSAuY3VzdG9tZXJjcmVkaXQgLmNoZWNrb3V0LWNyZWRpdC11c2UgLmVkaXQtY3JlZGl0IHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbi5wYXltZW50LWZvcm0gLmN1c3RvbWVyY3JlZGl0IC5jaGVja291dC1jcmVkaXQtdXNlIC5pbnB1dC10ZXh0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjYyAhaW1wb3J0YW50OyB9XG4gIC5wYXltZW50LWZvcm0gLmN1c3RvbWVyY3JlZGl0IC5jaGVja291dC1jcmVkaXQtdXNlIC5pbnB1dC10ZXh0OmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwICFpbXBvcnRhbnQ7IH1cblxuLnBheW1lbnQtZm9ybSAuY3VzdG9tZXJjcmVkaXQgLmNoZWNrb3V0LWNyZWRpdC11c2UgLmNoZWNrb3V0X2NjX2lucHV0X2FsZXJ0IHtcbiAgbWF4LXdpZHRoOiAxOC4xMjVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG5cbi5wYXltZW50LWZvcm0gLmN1c3RvbWVyY3JlZGl0IC5jaGVja291dC1jcmVkaXQtdXNlIC52YWxpZGF0aW9uLWFkdmljZSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGF5bWVudC1mb3JtIC5jdXN0b21lcmNyZWRpdCAuY2hlY2tvdXQtY3JlZGl0LXVzZSBidXR0b24ge1xuICAgIHBhZGRpbmctbGVmdDogMS42MjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMS42MjVyZW07IH0gfVxuXG4uZmFxIHtcbiAgY291bnRlci1yZXNldDogbGk7XG4gIG1hcmdpbi1ib3R0b206IDQuNjg3NXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZhcSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA5LjM3NXJlbTsgfSB9XG4gIC5mYXEgcCB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLmZhcSBwICsgcCB7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtOyB9XG4gIC5mYXEgYSB7XG4gICAgY29sb3I6ICNmMTY1Njc7IH1cblxuLmFjY29yZGlvbi1ib2R5IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uYWNjb3JkaW9uLXRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmZhcS1jYXRlZ29yeSB7XG4gIHBhZGRpbmctbGVmdDogMS42ODc1cmVtO1xuICBjb3VudGVyLWluY3JlbWVudDogbGk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mYXEtY2F0ZWdvcnkge1xuICAgICAgcGFkZGluZy1sZWZ0OiA0LjM3NXJlbTsgfSB9XG4gIC5mYXEtY2F0ZWdvcnkgKyAuZmFxLWNhdGVnb3J5IHtcbiAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfVxuXG4uZmNhdC1uYW1lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IDIuNXJlbTtcbiAgb3BhY2l0eTogLjY7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmNhdC1uYW1lIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW07IH0gfVxuICAuZmNhdC1uYW1lOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5mY2F0LW5hbWUuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5mY2F0LW5hbWU6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgY29udGVudDogY291bnRlcihsaSwgZGVjaW1hbC1sZWFkaW5nLXplcm8pO1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmNhdC1uYW1lOmJlZm9yZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNzBweDsgfSB9XG4gIC5mY2F0LW5hbWU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAwLjMxMjVyZW07XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwLjkzNzVyZW07XG4gICAgdG9wOiAwO1xuICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmNhdC1uYW1lOmFmdGVyIHtcbiAgICAgICAgbGVmdDogMS4yNXJlbTsgfSB9XG4gIC5mY2F0LW5hbWUgLnRpdGxlMSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMS42ODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmNhdC1uYW1lIC50aXRsZTEge1xuICAgICAgICBmb250LXNpemU6IDMuMTI1cmVtOyB9IH1cbiAgLmZjYXQtbmFtZSAudGl0bGUyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmNhdC1uYW1lIC50aXRsZTIge1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuXG4uZmNhdC1jb250ZW50IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tdG9wOiAzNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmNhdC1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMy43NXJlbTsgfSB9XG5cbi5mc3ViLW5hbWUge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvcGFjaXR5OiAuNjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnM7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mc3ViLW5hbWUge1xuICAgICAgZm9udC1zaXplOiAxLjU2MjVyZW07IH0gfVxuICAuZnN1Yi1uYW1lOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5mc3ViLW5hbWUuYWN0aXZlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5mc3ViLW5hbWU6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IDAuNjI1cmVtO1xuICAgIGhlaWdodDogMC42MjVyZW07XG4gICAgYmFja2dyb3VuZDogIzAwMDAwMDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi5mYXEtc3ViY2F0ZWdvcnkgKyAuZmFxLXN1YmNhdGVnb3J5IHtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTsgfVxuXG4uZnN1Yi1jb250ZW50IHtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIG1hcmdpbi10b3A6IDAuODc1cmVtOyB9XG5cbi5pbnRyb2R1Y2luZy1nYWxsZXJ5IHtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5pbnRyb2R1Y2luZy1nYWxsZXJ5IC5jb2x1bW5zLFxuICAuaW50cm9kdWNpbmctZ2FsbGVyeSAuc2xpY2stc2xpZGVyLFxuICAuaW50cm9kdWNpbmctZ2FsbGVyeSAuaW50cm9kdWNpbmdfc2xpZGVyLFxuICAuaW50cm9kdWNpbmctZ2FsbGVyeSAuc2Vjb25kX2ludHJvZHVjaW5nX3NsaWRlcixcbiAgLmludHJvZHVjaW5nLWdhbGxlcnkgLnNsaWNrLXRyYWNrLFxuICAuaW50cm9kdWNpbmctZ2FsbGVyeSAuc2xpY2stbGlzdCxcbiAgLmludHJvZHVjaW5nLWdhbGxlcnkgLnNsaWNrLXNsaWRlID4gZGl2IHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cblxuLnNsaWRlciB7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4uaW50cm9kdWNpbmdfc2xpZGVyLFxuLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIsXG4uaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIHtcbiAgcGFkZGluZzogMi4xODc1cmVtIDAuNjI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5pbnRyb2R1Y2luZ19zbGlkZXIsXG4gICAgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIsXG4gICAgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciB7XG4gICAgICBwYWRkaW5nOiAzLjc1cmVtIDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5pbnRyb2R1Y2luZ19zbGlkZXIsXG4gICAgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIsXG4gICAgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciB7XG4gICAgICBwYWRkaW5nOiAzLjc1cmVtIDEuMjVyZW07IH0gfVxuICAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGlkZS1jb250ZW50LWJveCxcbiAgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWRlLWNvbnRlbnQtYm94LFxuICAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIC5zbGlkZS1jb250ZW50LWJveCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmludHJvZHVjaW5nX3NsaWRlciAuc2xpZGUtY29udGVudC1ib3gsXG4gICAgICAuc2Vjb25kX2ludHJvZHVjaW5nX3NsaWRlciAuc2xpZGUtY29udGVudC1ib3gsXG4gICAgICAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIC5zbGlkZS1jb250ZW50LWJveCB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIHBhZGRpbmc6IDAgMC45Mzc1cmVtOyB9IH1cbiAgICAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGlkZS1jb250ZW50LWJveCAuc3VidGl0bGUsXG4gICAgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWRlLWNvbnRlbnQtYm94IC5zdWJ0aXRsZSxcbiAgICAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIC5zbGlkZS1jb250ZW50LWJveCAuc3VidGl0bGUge1xuICAgICAgY29sb3I6ICMwMzAzMDM7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgIC5pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWRlLWNvbnRlbnQtYm94IGgxLCAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGlkZS1jb250ZW50LWJveCAuaDEsXG4gICAgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWRlLWNvbnRlbnQtYm94IGgxLFxuICAgIC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIC5zbGlkZS1jb250ZW50LWJveCAuaDEsXG4gICAgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpZGUtY29udGVudC1ib3ggaDEsXG4gICAgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpZGUtY29udGVudC1ib3ggLmgxIHtcbiAgICAgIGNvbG9yOiAjMDIwMjAyOyB9XG4gICAgLmludHJvZHVjaW5nX3NsaWRlciAuc2xpZGUtY29udGVudC1ib3ggcCxcbiAgICAuc2Vjb25kX2ludHJvZHVjaW5nX3NsaWRlciAuc2xpZGUtY29udGVudC1ib3ggcCxcbiAgICAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIC5zbGlkZS1jb250ZW50LWJveCBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgICAgY29sb3I6ICMwMTAxMDE7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmludHJvZHVjaW5nX3NsaWRlciAuc2xpZGUtY29udGVudC1ib3ggcCxcbiAgICAgICAgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWRlLWNvbnRlbnQtYm94IHAsXG4gICAgICAgIC5pbnRyb2R1Y2luZ19zdG9yZS1zbGlkZXIgLnNsaWRlLWNvbnRlbnQtYm94IHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9IH1cbiAgICAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGlkZS1jb250ZW50LWJveCAuYnRuLWN1c3RvbSxcbiAgICAuc2Vjb25kX2ludHJvZHVjaW5nX3NsaWRlciAuc2xpZGUtY29udGVudC1ib3ggLmJ0bi1jdXN0b20sXG4gICAgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpZGUtY29udGVudC1ib3ggLmJ0bi1jdXN0b20ge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stc2xpZGUucmV2ZXJzZSAuc2xpZGUtY29udGVudC1ob2xkZXIsIC5pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXNsaWRlLnJldmVyc2UgPiBhLFxuICAuc2Vjb25kX2ludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stc2xpZGUucmV2ZXJzZSAuc2xpZGUtY29udGVudC1ob2xkZXIsXG4gIC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZS5yZXZlcnNlID4gYSxcbiAgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpY2stc2xpZGUucmV2ZXJzZSAuc2xpZGUtY29udGVudC1ob2xkZXIsXG4gIC5pbnRyb2R1Y2luZ19zdG9yZS1zbGlkZXIgLnNsaWNrLXNsaWRlLnJldmVyc2UgPiBhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXNsaWRlLnJldmVyc2UgLnNsaWRlLWNvbnRlbnQtaG9sZGVyLCAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZS5yZXZlcnNlID4gYSxcbiAgICAgIC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZS5yZXZlcnNlIC5zbGlkZS1jb250ZW50LWhvbGRlcixcbiAgICAgIC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZS5yZXZlcnNlID4gYSxcbiAgICAgIC5pbnRyb2R1Y2luZ19zdG9yZS1zbGlkZXIgLnNsaWNrLXNsaWRlLnJldmVyc2UgLnNsaWRlLWNvbnRlbnQtaG9sZGVyLFxuICAgICAgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpY2stc2xpZGUucmV2ZXJzZSA+IGEge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH0gfVxuICAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtY29udGVudC1ob2xkZXIsIC5pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSxcbiAgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXNsaWRlIC5zbGlkZS1jb250ZW50LWhvbGRlcixcbiAgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSxcbiAgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpY2stc2xpZGUgLnNsaWRlLWNvbnRlbnQtaG9sZGVyLFxuICAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIC5zbGljay1zbGlkZSA+IGEge1xuICAgIHBhZGRpbmc6IDAgMC42MjVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stc2xpZGUgLnNsaWRlLWNvbnRlbnQtaG9sZGVyLCAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZSA+IGEsXG4gICAgICAuc2Vjb25kX2ludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stc2xpZGUgLnNsaWRlLWNvbnRlbnQtaG9sZGVyLFxuICAgICAgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSxcbiAgICAgIC5pbnRyb2R1Y2luZ19zdG9yZS1zbGlkZXIgLnNsaWNrLXNsaWRlIC5zbGlkZS1jb250ZW50LWhvbGRlcixcbiAgICAgIC5pbnRyb2R1Y2luZ19zdG9yZS1zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMS41NjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtY29udGVudC1ob2xkZXIsIC5pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSxcbiAgICAgIC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtY29udGVudC1ob2xkZXIsXG4gICAgICAuc2Vjb25kX2ludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stc2xpZGUgPiBhLFxuICAgICAgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpY2stc2xpZGUgLnNsaWRlLWNvbnRlbnQtaG9sZGVyLFxuICAgICAgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpY2stc2xpZGUgPiBhIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9IH1cbiAgICAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtY29udGVudC1ob2xkZXIgaW1nLCAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZSA+IGEgaW1nLFxuICAgIC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtY29udGVudC1ob2xkZXIgaW1nLFxuICAgIC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZSA+IGEgaW1nLFxuICAgIC5pbnRyb2R1Y2luZ19zdG9yZS1zbGlkZXIgLnNsaWNrLXNsaWRlIC5zbGlkZS1jb250ZW50LWhvbGRlciBpbWcsXG4gICAgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpY2stc2xpZGUgPiBhIGltZyB7XG4gICAgICBtYXgtaGVpZ2h0OiAxNS42MjVyZW07XG4gICAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICAgICAgbWF4LXdpZHRoOiA3MCU7XG4gICAgICBmbGV4LXNocmluazogMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZSAuc2xpZGUtY29udGVudC1ob2xkZXIgaW1nLCAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZSA+IGEgaW1nLFxuICAgICAgICAuc2Vjb25kX2ludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stc2xpZGUgLnNsaWRlLWNvbnRlbnQtaG9sZGVyIGltZyxcbiAgICAgICAgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSBpbWcsXG4gICAgICAgIC5pbnRyb2R1Y2luZ19zdG9yZS1zbGlkZXIgLnNsaWNrLXNsaWRlIC5zbGlkZS1jb250ZW50LWhvbGRlciBpbWcsXG4gICAgICAgIC5pbnRyb2R1Y2luZ19zdG9yZS1zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSBpbWcge1xuICAgICAgICAgIG1heC13aWR0aDogMzUlO1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDkwdmg7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgcGFkZGluZzogMCAwLjkzNzVyZW07IH0gfVxuICAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay10cmFjayxcbiAgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXRyYWNrLFxuICAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIC5zbGljay10cmFjayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXByZXYsXG4gIC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1wcmV2LFxuICAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAtMS4yNXJlbTtcbiAgICB0b3A6IDQwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXByZXYsXG4gICAgICAuc2Vjb25kX2ludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stcHJldixcbiAgICAgIC5pbnRyb2R1Y2luZ19zdG9yZS1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgICAgICBsZWZ0OiAtMC42MjVyZW07XG4gICAgICAgIHRvcDogNTAlOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1wcmV2LFxuICAgICAgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXByZXYsXG4gICAgICAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIC5zbGljay1wcmV2IHtcbiAgICAgICAgbGVmdDogMS41NjI1cmVtOyB9IH1cbiAgLmludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stbmV4dCxcbiAgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLW5leHQsXG4gIC5pbnRyb2R1Y2luZ19zdG9yZS1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAtMS4yNXJlbTtcbiAgICB0b3A6IDQwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLW5leHQsXG4gICAgICAuc2Vjb25kX2ludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stbmV4dCxcbiAgICAgIC5pbnRyb2R1Y2luZ19zdG9yZS1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgICAgICByaWdodDogLTAuNjI1cmVtO1xuICAgICAgICB0b3A6IDUwJTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stbmV4dCxcbiAgICAgIC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1uZXh0LFxuICAgICAgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpY2stbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAxLjU2MjVyZW07IH0gfVxuICAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1kb3RzLFxuICAuc2Vjb25kX2ludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stZG90cyxcbiAgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpY2stZG90cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsZWZ0OiAwOyB9XG4gICAgLmludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlLFxuICAgIC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUsXG4gICAgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgY29sb3I6ICNhM2EzYTM7IH1cbiAgICAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlLFxuICAgIC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlLFxuICAgIC5pbnRyb2R1Y2luZ19zdG9yZS1zbGlkZXIgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5wcml2YXRlLXdvcmtvdXQtaW5mby1ob2xkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wcml2YXRlLXdvcmtvdXQtaW5mby1ob2xkZXIge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5wcml2YXRlLXdvcmtvdXQtaW5mby1ob2xkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfSB9XG4gIC5wcml2YXRlLXdvcmtvdXQtaW5mby1ob2xkZXIgLmxlZnQtc2lkZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucHJpdmF0ZS13b3Jrb3V0LWluZm8taG9sZGVyIC5sZWZ0LXNpZGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBwYWRkaW5nOiAxNXB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAucHJpdmF0ZS13b3Jrb3V0LWluZm8taG9sZGVyIC5sZWZ0LXNpZGUge1xuICAgICAgICB3aWR0aDogNDglOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDEuMjVlbSkge1xuICAgICAgLnByaXZhdGUtd29ya291dC1pbmZvLWhvbGRlciAubGVmdC1zaWRlIHtcbiAgICAgICAgd2lkdGg6IDQ2JTsgfSB9XG4gICAgLnByaXZhdGUtd29ya291dC1pbmZvLWhvbGRlciAubGVmdC1zaWRlIC50ZXh0LWhvbGRlciB7XG4gICAgICBtYXgtd2lkdGg6IDM1MHB4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wcml2YXRlLXdvcmtvdXQtaW5mby1ob2xkZXIgLmxlZnQtc2lkZSAudGV4dC1ob2xkZXIge1xuICAgICAgICAgIG1heC13aWR0aDogNTYwcHg7IH0gfVxuICAucHJpdmF0ZS13b3Jrb3V0LWluZm8taG9sZGVyIGgxLCAucHJpdmF0ZS13b3Jrb3V0LWluZm8taG9sZGVyIC5oMSB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wcml2YXRlLXdvcmtvdXQtaW5mby1ob2xkZXIgaDEsIC5wcml2YXRlLXdvcmtvdXQtaW5mby1ob2xkZXIgLmgxIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucHJpdmF0ZS13b3Jrb3V0LWluZm8taG9sZGVyIC5wcml2YXRlX3dvcmtvdXQtc2xpZGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gIC5wcml2YXRlLXdvcmtvdXQtaW5mby1ob2xkZXIgLnJpZ2h0LXNpZGUge1xuICAgIGhlaWdodDogNTAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucHJpdmF0ZS13b3Jrb3V0LWluZm8taG9sZGVyIC5yaWdodC1zaWRlIHtcbiAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmctdG9wOiA1NSU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnByaXZhdGUtd29ya291dC1pbmZvLWhvbGRlciAucmlnaHQtc2lkZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1MCU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMS4yNWVtKSB7XG4gICAgICAucHJpdmF0ZS13b3Jrb3V0LWluZm8taG9sZGVyIC5yaWdodC1zaWRlIHtcbiAgICAgICAgd2lkdGg6IDgydmg7XG4gICAgICAgIHBhZGRpbmctdG9wOiA5MHZoOyB9IH1cbiAgLnByaXZhdGUtd29ya291dC1pbmZvLWhvbGRlciAuZ2VuZXJhbC13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLnByaXZhdGUtd29ya291dC1pbmZvLWhvbGRlciAuZ2VuZXJhbC13cmFwcGVyOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgei1pbmRleDogMjA7IH1cbiAgLnByaXZhdGUtd29ya291dC1pbmZvLWhvbGRlciAuc3dpcGVyLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAucHJpdmF0ZS13b3Jrb3V0LWluZm8taG9sZGVyIC50aW55IHtcbiAgICB6LWluZGV4OiAxNTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiA5MCU7XG4gICAgaGVpZ2h0OiA3NSU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucHJpdmF0ZS13b3Jrb3V0LWluZm8taG9sZGVyIC50aW55IHtcbiAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgaGVpZ2h0OiA4MCU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMS4yNWVtKSB7XG4gICAgICAucHJpdmF0ZS13b3Jrb3V0LWluZm8taG9sZGVyIC50aW55IHtcbiAgICAgICAgd2lkdGg6IDU1JTsgfSB9XG4gICAgLnByaXZhdGUtd29ya291dC1pbmZvLWhvbGRlciAudGlueSAuc3dpcGVyLXNsaWRlIHtcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDsgfVxuICAucHJpdmF0ZS13b3Jrb3V0LWluZm8taG9sZGVyIC5zd2lwZXItc2xpZGUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAucHJpdmF0ZS13b3Jrb3V0LWluZm8taG9sZGVyIC5zd2lwZXItc2xpZGUtcHJldiB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7IH1cbiAgICAucHJpdmF0ZS13b3Jrb3V0LWluZm8taG9sZGVyIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgLnByaXZhdGUtd29ya291dC1pbmZvLWhvbGRlciAuc2xpZGUtaW5uZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IH1cbiAgLnByaXZhdGUtd29ya291dC1pbmZvLWhvbGRlciAuY29weSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMTVweDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDZlbTsgfVxuXG4uYmVzdHNlbGxlcnMtc2xpZGVyIC5zd2lwZXItc2xpZGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0cmFuc2l0aW9uOiBmaWx0ZXIgLjE1cyBlYXNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAzNTBweDsgfVxuXG4uYmVzdHNlbGxlcnMtc2xpZGVyIC5wcm9kdWN0LWhvbGRlciB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5iZXN0c2VsbGVycy1zbGlkZXIgLnN3aXBlci13cmFwcGVyIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxuXG4uYmVzdHNlbGxlcnMtc2xpZGVyIC5uby1zd2lwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuYmVzdHNlbGxlcnMtc2xpZGVyIC5uby1zd2lwZXIge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW46IDAgLTE1cHg7IH0gfVxuICAuYmVzdHNlbGxlcnMtc2xpZGVyIC5uby1zd2lwZXIgLnN3aXBlci1zbGlkZSB7XG4gICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgICAgLmJlc3RzZWxsZXJzLXNsaWRlciAubm8tc3dpcGVyIC5zd2lwZXItc2xpZGUge1xuICAgICAgICBtYXJnaW46IDAgMTVweCAyMHB4O1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAzMHB4KTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmJlc3RzZWxsZXJzLXNsaWRlciAubm8tc3dpcGVyIC5zd2lwZXItc2xpZGUge1xuICAgICAgICB3aWR0aDogY2FsYygzMy4zJSAtIDMwcHgpO1xuICAgICAgICBtYXgtd2lkdGg6IDM5MHB4OyB9IH1cblxuYm9keS5pcy1yZXZlYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICB3aWR0aDogMTAwJTsgfVxuXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAud3JhcC1jcmVhdGUtcGxheWxpc3QsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC53cmFwLWNyZWF0ZS1wbGF5bGlzdCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTsgfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAud3JhcC1jcmVhdGUtcGxheWxpc3QgZGl2LCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAud3JhcC1jcmVhdGUtcGxheWxpc3QgZGl2IHtcbiAgICBwYWRkaW5nOiAxLjU2MjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjNmNjtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2ZmZmZmZjsgfVxuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC53cmFwLWNyZWF0ZS1wbGF5bGlzdCBkaXY6bGFzdC1vZi10eXBlLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAud3JhcC1jcmVhdGUtcGxheWxpc3QgZGl2Omxhc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLndyYXAtY3JlYXRlLXBsYXlsaXN0IGRpdiwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLndyYXAtY3JlYXRlLXBsYXlsaXN0IGRpdiB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICNmZmZmZmY7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgICAgICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLndyYXAtY3JlYXRlLXBsYXlsaXN0IGRpdjpsYXN0LW9mLXR5cGUsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC53cmFwLWNyZWF0ZS1wbGF5bGlzdCBkaXY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7IH0gfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAud3JhcC1jcmVhdGUtcGxheWxpc3QgLmRlc2MsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC53cmFwLWNyZWF0ZS1wbGF5bGlzdCAuZGVzYyB7XG4gICAgcGFkZGluZzogMDsgfVxuXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucHJldmlldy13cmFwLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucHJldmlldy13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgaGVpZ2h0OiAxMy43NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9wbGF5bGlzdC1kZWZhdWx0LWNvdmVyLmpwZ1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnByZXZpZXctd3JhcDpiZWZvcmUsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wcmV2aWV3LXdyYXA6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMywgMywgMywgMC40KTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyBsaW5lYXI7XG4gICAgY29udGVudDogJyc7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wcmV2aWV3LXdyYXAsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wcmV2aWV3LXdyYXAge1xuICAgICAgaGVpZ2h0OiAxNi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucHJldmlldy13cmFwLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucHJldmlldy13cmFwIHtcbiAgICAgIGhlaWdodDogMTVyZW07IH0gfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucHJldmlldy13cmFwLnJhbmRvbSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnByZXZpZXctd3JhcC5yYW5kb20ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9yYW5kb20uanBnXCIpOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wcmV2aWV3LXdyYXAgbGksIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wcmV2aWV3LXdyYXAgbGkge1xuICAgIGFuaW1hdGlvbjogYW5pbUxpc3QgLjVzIGxpbmVhciBmb3J3YXJkczsgfVxuXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiAzLjEyNXJlbTsgfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAud29ya291dC1jb250ZW50LW1vZGFsLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAud29ya291dC1jb250ZW50LW1vZGFsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMi4xODc1cmVtIDAuOTM3NXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYTNhM2EzOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLndvcmtvdXQtY29udGVudC1tb2RhbCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLndvcmtvdXQtY29udGVudC1tb2RhbCB7XG4gICAgICAgIHBhZGRpbmc6IDIuODEyNXJlbSAzLjEyNXJlbSAyLjE4NzVyZW07IH0gfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAuYnV0dG9ucy1ncm91cCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLmJ1dHRvbnMtZ3JvdXAge1xuICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAuYnV0dG9ucy1ncm91cCBzcGFuLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAuYnV0dG9ucy1ncm91cCBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwIDAuNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC5idXR0b25zLWdyb3VwIHNwYW4sIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC5idXR0b25zLWdyb3VwIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC50aXRsZSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnRpdGxlLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH0gfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCBkaXZbY2xhc3MqPSdzdGVwJ10gbGksIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSBsaSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgZGl2W2NsYXNzKj0nc3RlcCddIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgZGl2W2NsYXNzKj0nc3RlcCddIGlucHV0W3R5cGU9J2NoZWNrYm94J10sIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSBpbnB1dFt0eXBlPSdjaGVja2JveCddIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgZGl2W2NsYXNzKj0nc3RlcCddIGlucHV0W3R5cGU9J2NoZWNrYm94J106Y2hlY2tlZCB+IC5wcmV2aWV3LXdyYXA6YmVmb3JlLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCBkaXZbY2xhc3MqPSdzdGVwJ10gaW5wdXRbdHlwZT0nY2hlY2tib3gnXTpjaGVja2VkIH4gLnByZXZpZXctd3JhcDpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSBpbnB1dFt0eXBlPSdjaGVja2JveCddOmNoZWNrZWQgfiAucHJldmlldy13cmFwIC5jaGVjaywgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgZGl2W2NsYXNzKj0nc3RlcCddIGlucHV0W3R5cGU9J2NoZWNrYm94J106Y2hlY2tlZCB+IC5wcmV2aWV3LXdyYXAgLmNoZWNrIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgZGl2W2NsYXNzKj0nc3RlcCddIC5wcmV2aWV3LXdyYXAsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSAucHJldmlldy13cmFwIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBwYWRkaW5nOiAwLjkzNzVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCBkaXZbY2xhc3MqPSdzdGVwJ10gLnByZXZpZXctd3JhcCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgZGl2W2NsYXNzKj0nc3RlcCddIC5wcmV2aWV3LXdyYXAge1xuICAgICAgICBoZWlnaHQ6IDE2LjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCBkaXZbY2xhc3MqPSdzdGVwJ10gLnByZXZpZXctd3JhcCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgZGl2W2NsYXNzKj0nc3RlcCddIC5wcmV2aWV3LXdyYXAge1xuICAgICAgICBoZWlnaHQ6IDE1cmVtOyB9IH1cbiAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCBkaXZbY2xhc3MqPSdzdGVwJ10gLnByZXZpZXctd3JhcC5uZXc6YWZ0ZXIsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSAucHJldmlldy13cmFwLm5ldzphZnRlciB7XG4gICAgICBjb250ZW50OiAnTmV3JztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAzLjc1cmVtO1xuICAgICAgaGVpZ2h0OiAxLjc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjE2NTY3O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgZGl2W2NsYXNzKj0nc3RlcCddIC5wcmV2aWV3LXdyYXAubmV3OmFmdGVyLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCBkaXZbY2xhc3MqPSdzdGVwJ10gLnByZXZpZXctd3JhcC5uZXc6YWZ0ZXIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG4gICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgZGl2W2NsYXNzKj0nc3RlcCddIC5wcmV2aWV3LXdyYXAucGxheTpiZWZvcmUsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSAucHJldmlldy13cmFwLnBsYXk6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pY29ucy9wbGF5LWJ1dHRvbi5zdmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSAuY2hlY2ssXG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSAucmVtb3ZlLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCBkaXZbY2xhc3MqPSdzdGVwJ10gLmNoZWNrLFxuICBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCBkaXZbY2xhc3MqPSdzdGVwJ10gLnJlbW92ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gMjBweCk7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgIHdpZHRoOiAyLjVyZW07XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMTY1Njc7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgbGluZWFyOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSAuY2hlY2ssIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSAuY2hlY2sge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pY29ucy9jaGVjay1zeW1ib2wuc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAzNSU7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSAucmVtb3ZlLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCBkaXZbY2xhc3MqPSdzdGVwJ10gLnJlbW92ZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgZGl2W2NsYXNzKj0nc3RlcCddIC5yZW1vdmU6YmVmb3JlLCBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCBkaXZbY2xhc3MqPSdzdGVwJ10gLnJlbW92ZTphZnRlciwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgZGl2W2NsYXNzKj0nc3RlcCddIC5yZW1vdmU6YmVmb3JlLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCBkaXZbY2xhc3MqPSdzdGVwJ10gLnJlbW92ZTphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHdpZHRoOiAxLjI1cmVtO1xuICAgICAgaGVpZ2h0OiAwLjEyNXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICBjb250ZW50OiAnJzsgfVxuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSAucmVtb3ZlOmJlZm9yZSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgZGl2W2NsYXNzKj0nc3RlcCddIC5yZW1vdmU6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgtNDVkZWcpOyB9XG4gICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgZGl2W2NsYXNzKj0nc3RlcCddIC5yZW1vdmU6YWZ0ZXIsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSAucmVtb3ZlOmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg0NWRlZyk7IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgZGl2W2NsYXNzKj0nc3RlcCddIC5uYW1lLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCBkaXZbY2xhc3MqPSdzdGVwJ10gLm5hbWUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCBkaXZbY2xhc3MqPSdzdGVwJ10gLm5hbWUsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSAubmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSAuaWNvbi1oZWFydCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgZGl2W2NsYXNzKj0nc3RlcCddIC5pY29uLWhlYXJ0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY29sb3I6ICNmMTY1Njc7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgei1pbmRleDogMTsgfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCBkaXZbY2xhc3MqPSdzdGVwJ10gLnJ1bnRpbWUsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSAucnVudGltZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgY29sb3I6ICNhM2EzYTM7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCBkaXZbY2xhc3MqPSdzdGVwJ10gLnJ1bnRpbWUsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIGRpdltjbGFzcyo9J3N0ZXAnXSAucnVudGltZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnNlY29uZC1zdGVwIC5idXR0b25zLWdyb3VwLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAuc2Vjb25kLXN0ZXAgLmJ1dHRvbnMtZ3JvdXAge1xuICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnRoaXJkLXN0ZXAgLndyYXAtcGxheWxpc3QtaW5mbyxcbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnRoaXJkLXN0ZXAgLndyYXAtcGxheWxpc3QtdmlldywgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnRoaXJkLXN0ZXAgLndyYXAtcGxheWxpc3QtaW5mbyxcbiAgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnRoaXJkLXN0ZXAgLndyYXAtcGxheWxpc3QtdmlldyB7XG4gICAgcGFkZGluZzogMC42MjVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2EzYTNhMzsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC50aGlyZC1zdGVwIC53cmFwLXBsYXlsaXN0LWluZm8sXG4gICAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCAud3JhcC1wbGF5bGlzdC12aWV3LCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCAud3JhcC1wbGF5bGlzdC1pbmZvLFxuICAgICAgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnRoaXJkLXN0ZXAgLndyYXAtcGxheWxpc3QtdmlldyB7XG4gICAgICAgIHBhZGRpbmc6IDAuOTM3NXJlbTsgfSB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC50aGlyZC1zdGVwIC53cmFwLXBsYXlsaXN0LWluZm8sIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC50aGlyZC1zdGVwIC53cmFwLXBsYXlsaXN0LWluZm8ge1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCAud3JhcC1wbGF5bGlzdC12aWV3IHVsLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCAud3JhcC1wbGF5bGlzdC12aWV3IHVsIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDI1cHgpO1xuICAgIG1heC1oZWlnaHQ6IDU1dmg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMS4yNXJlbTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMzc1cmVtO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCAud3JhcC1wbGF5bGlzdC12aWV3IHVsLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCAud3JhcC1wbGF5bGlzdC12aWV3IHVsIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCAud3JhcC1wbGF5bGlzdC12aWV3IHVsIGxpLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCAud3JhcC1wbGF5bGlzdC12aWV3IHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gICAgICBtYXJnaW46IDAgMC45Mzc1cmVtIDEuODc1cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCAud3JhcC1wbGF5bGlzdC12aWV3IHVsIGxpLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCAud3JhcC1wbGF5bGlzdC12aWV3IHVsIGxpIHtcbiAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAzMHB4KTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC50aGlyZC1zdGVwIC53cmFwLXBsYXlsaXN0LXZpZXcgdWwgbGksIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC50aGlyZC1zdGVwIC53cmFwLXBsYXlsaXN0LXZpZXcgdWwgbGkge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDMwcHgpOyB9IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnRoaXJkLXN0ZXAgLndyYXAtcGxheWxpc3QtdmlldyAudGl0bGUsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC50aGlyZC1zdGVwIC53cmFwLXBsYXlsaXN0LXZpZXcgLnRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC50aGlyZC1zdGVwIC5wcmV2aWV3LXdyYXAsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC50aGlyZC1zdGVwIC5wcmV2aWV3LXdyYXAge1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCAuc3ViLXRpdGxlLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCAuc3ViLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC50aGlyZC1zdGVwIC5zdWItdGl0bGUsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC50aGlyZC1zdGVwIC5zdWItdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH0gfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCBpbnB1dC5lcnJvcixcbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnRoaXJkLXN0ZXAgdGV4dGFyZWEuZXJyb3IsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC50aGlyZC1zdGVwIGlucHV0LmVycm9yLFxuICBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCB0ZXh0YXJlYS5lcnJvciB7XG4gICAgYm9yZGVyLWNvbG9yOiAjZjE2NTY3OyB9XG4gICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnRoaXJkLXN0ZXAgaW5wdXQuZXJyb3IgKyBsYWJlbCxcbiAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCB0ZXh0YXJlYS5lcnJvciArIGxhYmVsLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCBpbnB1dC5lcnJvciArIGxhYmVsLFxuICAgIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC50aGlyZC1zdGVwIHRleHRhcmVhLmVycm9yICsgbGFiZWwge1xuICAgICAgY29sb3I6ICNmMTY1Njc7IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnRoaXJkLXN0ZXAgLmVycm9yLW1lc3NhZ2UsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC50aGlyZC1zdGVwIC5lcnJvci1tZXNzYWdlIHtcbiAgICBtYXJnaW4tdG9wOiAtMC42MjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCAuZXJyb3ItbWVzc2FnZSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnRoaXJkLXN0ZXAgLmVycm9yLW1lc3NhZ2Uge1xuICAgICAgICBtYXJnaW4tdG9wOiAtMS4yNXJlbTsgfSB9XG4gICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnRoaXJkLXN0ZXAgLmVycm9yLW1lc3NhZ2UuYWN0aXZlLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudGhpcmQtc3RlcCAuZXJyb3ItbWVzc2FnZS5hY3RpdmUge1xuICAgICAgY29sb3I6ICNmMTY1Njc7IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLmVycm9yLW1lc3NhZ2UsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC5lcnJvci1tZXNzYWdlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGxpbmVhcjsgfVxuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC5lcnJvci1tZXNzYWdlLmFjdGl2ZSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLmVycm9yLW1lc3NhZ2UuYWN0aXZlIHtcbiAgICAgIG1hcmdpbjogMC42MjVyZW0gMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC5lcnJvci1tZXNzYWdlLmFjdGl2ZS50b3AsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC5lcnJvci1tZXNzYWdlLmFjdGl2ZS50b3Age1xuICAgICAgICBtYXJnaW46IDA7IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLmJnLXVwbG9hZC1pbWFnZSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLmJnLXVwbG9hZC1pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogMTMuNzVyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMy43NXJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvcGxheWxpc3QtZGVmYXVsdC1jb3Zlci5qcGdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC5iZy11cGxvYWQtaW1hZ2UsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC5iZy11cGxvYWQtaW1hZ2Uge1xuICAgICAgICBtYXgtd2lkdGg6IDE5LjM3NXJlbTsgfSB9XG4gICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLmJnLXVwbG9hZC1pbWFnZSAucHJldmlldy1pbWFnZSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLmJnLXVwbG9hZC1pbWFnZSAucHJldmlldy1pbWFnZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLmJnLXVwbG9hZC1pbWFnZS5yYW5kb20sIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC5iZy11cGxvYWQtaW1hZ2UucmFuZG9tIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9yYW5kb20uanBnXCIpOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC51cGxvYWQtbGFiZWwsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC51cGxvYWQtbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAuMjVzIGxpbmVhcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgdGV4dGFyZWEsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIHRleHRhcmVhIHtcbiAgICBtaW4taGVpZ2h0OiAxMy43NXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIHRleHRhcmVhLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCB0ZXh0YXJlYSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDE4LjVyZW07IH0gfVxuXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAuZHJhZ2luZywgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLmRyYWdpbmcge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB6LWluZGV4OiAxMDA1O1xuICBwb2ludGVyLWV2ZW50czogYXV0byAhaW1wb3J0YW50OyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5kcmFnaW5nIC5wcmV2aWV3LXdyYXAsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5kcmFnaW5nIC5wcmV2aWV3LXdyYXAge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIHBhZGRpbmc6IDAuOTM3NXJlbTsgfVxuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5kcmFnaW5nIC5wcmV2aWV3LXdyYXAubmV3OmFmdGVyLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAuZHJhZ2luZyAucHJldmlldy13cmFwLm5ldzphZnRlciB7XG4gICAgICBjb250ZW50OiAnTmV3JztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAzLjc1cmVtO1xuICAgICAgaGVpZ2h0OiAxLjc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjE2NTY3O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLmRyYWdpbmcgLnByZXZpZXctd3JhcC5uZXc6YWZ0ZXIsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5kcmFnaW5nIC5wcmV2aWV3LXdyYXAubmV3OmFmdGVyIHtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAuZHJhZ2luZyAuaWNvbi1oZWFydCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLmRyYWdpbmcgLmljb24taGVhcnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogI2YxNjU2NztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB6LWluZGV4OiAxOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5kcmFnaW5nIC5uYW1lLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAuZHJhZ2luZyAubmFtZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5kcmFnaW5nIC5uYW1lLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAuZHJhZ2luZyAubmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5kcmFnaW5nIC5ydW50aW1lLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAuZHJhZ2luZyAucnVudGltZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgY29sb3I6ICNhM2EzYTM7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAuZHJhZ2luZyAucnVudGltZSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLmRyYWdpbmcgLnJ1bnRpbWUge1xuICAgICAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfSB9XG5cbmJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtaW5mbyB7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWluZm8gbGksIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC5kb3Q6bnRoLW9mLXR5cGUoMSksIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC5kb3Q6bnRoLW9mLXR5cGUoMSkge1xuICAgIGFuaW1hdGlvbjogYW5pbURvdHMgMXMgbGluZWFyIGluZmluaXRlOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC5kb3Q6bnRoLW9mLXR5cGUoMiksIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC5kb3Q6bnRoLW9mLXR5cGUoMikge1xuICAgIGFuaW1hdGlvbjogYW5pbURvdHMgMXMgLjJzIGxpbmVhciBpbmZpbml0ZTsgfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtaW5mbyAuZG90Om50aC1vZi10eXBlKDMpLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtaW5mbyAuZG90Om50aC1vZi10eXBlKDMpIHtcbiAgICBhbmltYXRpb246IGFuaW1Eb3RzIDFzIC40cyBsaW5lYXIgaW5maW5pdGU7IH1cblxuQGtleWZyYW1lcyBhbmltRG90cyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtaW5mbyAucHJldmlldy13cmFwOmJlZm9yZSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWluZm8gLnByZXZpZXctd3JhcDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pY29ucy9wbGF5LWJ1dHRvbi5zdmdcIik7IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWluZm8gLmVkaXQsXG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC5kZWxldGUsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC5lZGl0LFxuICBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtaW5mbyAuZGVsZXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDAuOTM3NXJlbTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjI1cyBsaW5lYXI7XG4gICAgei1pbmRleDogMjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTsgfVxuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC5lZGl0OmhvdmVyLFxuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC5kZWxldGU6aG92ZXIsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC5lZGl0OmhvdmVyLFxuICAgIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC5kZWxldGU6aG92ZXIge1xuICAgICAgY29sb3I6ICNmMTY1Njc7IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWluZm8gLmVkaXQsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC5lZGl0IHtcbiAgICByaWdodDogLTUwJTsgfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtaW5mbyAuZGVsZXRlLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtaW5mbyAuZGVsZXRlIHtcbiAgICBsZWZ0OiAtNTAlOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC5uYW1lLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtaW5mbyAubmFtZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC5uYW1lLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtaW5mbyAubmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC52YWxpZGF0aW9uLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtaW5mbyAudmFsaWRhdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBjb2xvcjogI2YxNjU2NzsgfVxuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC52YWxpZGF0aW9uLmFjdGl2ZSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWluZm8gLnZhbGlkYXRpb24uYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmJvZHkudG91Y2ggLm15LXBsYXlsaXN0ICN2aWRlb0dhbGxlcnksIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0ICN2aWRlb0dhbGxlcnkge1xuICBwYWRkaW5nOiAxLjI1cmVtIDMuMTI1cmVtOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0ICN2aWRlb0dhbGxlcnkgLnNsaWNrLXByZXYsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0ICN2aWRlb0dhbGxlcnkgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IC0yLjVyZW07IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgI3ZpZGVvR2FsbGVyeSAuc2xpY2stbmV4dCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgI3ZpZGVvR2FsbGVyeSAuc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IC0yLjVyZW07IH1cblxuYm9keS50b3VjaCAubXktcGxheWxpc3QgLnJhbmdlLXNsaWRlciAuaXJzLWdyaWQtdGV4dDpudGgtb2YtdHlwZSgxbisyKSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnJhbmdlLXNsaWRlciAuaXJzLWdyaWQtdGV4dDpudGgtb2YtdHlwZSgxbisyKSB7XG4gIG1hcmdpbjogMC45Mzc1cmVtIDAgMCAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucmFuZ2Utc2xpZGVyIC5pcnMtZ3JpZC10ZXh0Om50aC1vZi10eXBlKDFuKzIpLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucmFuZ2Utc2xpZGVyIC5pcnMtZ3JpZC10ZXh0Om50aC1vZi10eXBlKDFuKzIpIHtcbiAgICAgIG1hcmdpbjogMS43NXJlbSAwIDAgIWltcG9ydGFudDsgfSB9XG5cbmJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5yYW5nZS1zbGlkZXIgLmlycy1ncmlkLXRleHQ6Zmlyc3Qtb2YtdHlwZSwgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnJhbmdlLXNsaWRlciAuaXJzLWdyaWQtdGV4dDpsYXN0LW9mLXR5cGUsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5yYW5nZS1zbGlkZXIgLmlycy1ncmlkLXRleHQ6Zmlyc3Qtb2YtdHlwZSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnJhbmdlLXNsaWRlciAuaXJzLWdyaWQtdGV4dDpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tdG9wOiAwLjkzNzVyZW0gIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucmFuZ2Utc2xpZGVyIC5pcnMtZ3JpZC10ZXh0OmZpcnN0LW9mLXR5cGUsIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5yYW5nZS1zbGlkZXIgLmlycy1ncmlkLXRleHQ6bGFzdC1vZi10eXBlLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucmFuZ2Utc2xpZGVyIC5pcnMtZ3JpZC10ZXh0OmZpcnN0LW9mLXR5cGUsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5yYW5nZS1zbGlkZXIgLmlycy1ncmlkLXRleHQ6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuNzVyZW0gIWltcG9ydGFudDsgfSB9XG5cbmJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5jdXN0b20tb3ZlcmxheSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLmN1c3RvbS1vdmVybGF5IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9sb2FkZXIuc3ZnKTtcbiAgb3BhY2l0eTogMTsgfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAuY3VzdG9tLW92ZXJsYXkuaW5uZXIsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5jdXN0b20tb3ZlcmxheS5pbm5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5jdXN0b20tb3ZlcmxheS5vcGFjaXR5LCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAuY3VzdG9tLW92ZXJsYXkub3BhY2l0eSB7XG4gICAgb3BhY2l0eTogLjU7IH1cblxuYm9keS50b3VjaCAubXktcGxheWxpc3QgLmZhdm9yaXRlLW92ZXJsYXktaG9sZGVyLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAuZmF2b3JpdGUtb3ZlcmxheS1ob2xkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuYm9keS50b3VjaCAubXktcGxheWxpc3QgLnByZWxvYWRlciAubXItdG9wLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucHJlbG9hZGVyIC5tci10b3Age1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtOyB9XG5cbmJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC12aWV3LWhlYWRlciwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LXZpZXctaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LXZpZXctaGVhZGVyLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3Qtdmlldy1oZWFkZXIge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC12aWV3LWhlYWRlciAuc2hvcnQtaW5mbywgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LXZpZXctaGVhZGVyIC5zaG9ydC1pbmZvIHtcbiAgICAgIHdpZHRoOiA4MCU7IH0gfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3Qtdmlldy1oZWFkZXIgLmJ1dHRvbiwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LXZpZXctaGVhZGVyIC5idXR0b24ge1xuICAgIG1hcmdpbjogMCBhdXRvIDAgMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC12aWV3LWhlYWRlciAuYnV0dG9uLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3Qtdmlldy1oZWFkZXIgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gICAgICAgIHdpZHRoOiAyMCU7IH0gfVxuXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtaW5mby1zdGVwIC5yb3csIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvLXN0ZXAgLnJvdyB7XG4gIG1heC13aWR0aDogODglO1xuICBtYXJnaW46IGF1dG87IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvLXN0ZXAgLnJvdywgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWluZm8tc3RlcCAucm93IHtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG5cbmJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIHtcbiAgdG9wOiAxLjU2MjVyZW0gIWltcG9ydGFudDtcbiAgYm90dG9tOiAxLjU2MjVyZW0gIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyOiAwO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41cyBsaW5lYXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIHtcbiAgICAgIHRvcDogMy4xMjVyZW0gIWltcG9ydGFudDtcbiAgICAgIGJvdHRvbTogMy4xMjVyZW0gIWltcG9ydGFudDsgfSB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAubW9kYWwtaW5mbywgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5tb2RhbC1pbmZvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDUwcHgpO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKHdpZHRoOiAzNzVweCkgYW5kIChtaW4taGVpZ2h0OiA2MDBweCkgYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAubW9kYWwtaW5mbywgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5tb2RhbC1pbmZvIHtcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDEwMHB4KTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5tb2RhbC1pbmZvLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLm1vZGFsLWluZm8ge1xuICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTAwcHgpOyB9IH1cbiAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLm1vZGFsLWluZm8ubm8tb3ZlcmxheSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5tb2RhbC1pbmZvLm5vLW92ZXJsYXkge1xuICAgICAgb3ZlcmZsb3cteTogaGlkZGVuOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuaGVhZGVyLWluZm8sIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuaGVhZGVyLWluZm8ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5zdGVwLFxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLmJhY2ssXG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuYWRkLXZpZGVvLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnN0ZXAsXG4gIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuYmFjayxcbiAgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5hZGQtdmlkZW8ge1xuICAgIHBhZGRpbmc6IDAuMzEyNXJlbSAwLjkzNzVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxNjU2NztcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMjVzIGxpbmVhcjsgfVxuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuc3RlcDpob3ZlcixcbiAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLmJhY2s6aG92ZXIsXG4gICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5hZGQtdmlkZW86aG92ZXIsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuc3RlcDpob3ZlcixcbiAgICBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLmJhY2s6aG92ZXIsXG4gICAgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5hZGQtdmlkZW86aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLmJhY2ssIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuYmFjayB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5zdGVwLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnN0ZXAge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5zdGVwLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnN0ZXAge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuc3RlcC5oaWRlLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnN0ZXAuaGlkZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAud3JhcC1pbm5lci1idXR0b25zLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLndyYXAtaW5uZXItYnV0dG9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5yZS1yYW5kb20sXG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuc2VsZWN0LWFsbCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5yZS1yYW5kb20sXG4gIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuc2VsZWN0LWFsbCB7XG4gICAgcGFkZGluZzogMCAwLjkzNzVyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGNvbG9yOiAjYTNhM2EzO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAuMjVzOyB9XG4gICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5yZS1yYW5kb206aG92ZXIsXG4gICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5zZWxlY3QtYWxsOmhvdmVyLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnJlLXJhbmRvbTpob3ZlcixcbiAgICBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnNlbGVjdC1hbGw6aG92ZXIge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAucmUtcmFuZG9tOmhvdmVyIGVtOmFmdGVyLFxuICAgICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5zZWxlY3QtYWxsOmhvdmVyIGVtOmFmdGVyLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnJlLXJhbmRvbTpob3ZlciBlbTphZnRlcixcbiAgICAgIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuc2VsZWN0LWFsbDpob3ZlciBlbTphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnJlLXJhbmRvbSxcbiAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuc2VsZWN0LWFsbCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5yZS1yYW5kb20sXG4gICAgICBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnNlbGVjdC1hbGwge1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAucmUtcmFuZG9tIGVtLFxuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuc2VsZWN0LWFsbCBlbSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5yZS1yYW5kb20gZW0sXG4gICAgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5zZWxlY3QtYWxsIGVtIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5yZS1yYW5kb20gZW06YWZ0ZXIsXG4gICAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnNlbGVjdC1hbGwgZW06YWZ0ZXIsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAucmUtcmFuZG9tIGVtOmFmdGVyLFxuICAgICAgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5zZWxlY3QtYWxsIGVtOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBib3R0b206IC0ycHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyBlYXNlOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAucmUtcmFuZG9tIC5pY29uLWFycm93cy1jdywgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5yZS1yYW5kb20gLmljb24tYXJyb3dzLWN3IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTsgfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnJlLXJhbmRvbSBlbSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5yZS1yYW5kb20gZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAucmUtcmFuZG9tIGVtOmFmdGVyLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnJlLXJhbmRvbSBlbTphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm90dG9tOiAtMnB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgZWFzZTsgfVxuICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnNjcm9sbFRvQm90dG9tLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnNjcm9sbFRvQm90dG9tIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEuMjVyZW07XG4gICAgYm90dG9tOiA2LjI1cmVtO1xuICAgIHdpZHRoOiAxLjI1cmVtO1xuICAgIGhlaWdodDogMS4yNXJlbTtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgICAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5zY3JvbGxUb0JvdHRvbSwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5zY3JvbGxUb0JvdHRvbSB7XG4gICAgICAgIGJvdHRvbTogMy43NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKHdpZHRoOiAzNzVweCkgYW5kIChtaW4taGVpZ2h0OiA2MDBweCkgYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuc2Nyb2xsVG9Cb3R0b20sIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuc2Nyb2xsVG9Cb3R0b20ge1xuICAgICAgICBib3R0b206IDkuMzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnNjcm9sbFRvQm90dG9tLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnNjcm9sbFRvQm90dG9tIHtcbiAgICAgICAgcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgICBib3R0b206IDAuNjI1cmVtOyB9IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5hZGQtdmlkZW8sIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1tb2RhbCAuYWRkLXZpZGVvIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBtYXJnaW46IDAgMCAxNXB4IGF1dG87XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cyBsaW5lYXI7IH1cbiAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLmFkZC12aWRlbzpob3ZlciwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LW1vZGFsIC5hZGQtdmlkZW86aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAuZmlyc3Qtc3RlcCAuYXR0ci1ob2xkZXIsIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5maXJzdC1zdGVwIC5hdHRyLWhvbGRlciB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgYm9keS50b3VjaCAubXktcGxheWxpc3QgLmZpcnN0LXN0ZXAgLmF0dHItaG9sZGVyIHNwYW4sIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5maXJzdC1zdGVwIC5hdHRyLWhvbGRlciBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5maXJzdC1zdGVwIC5hdHRyLWhvbGRlciBzcGFuLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAuZmlyc3Qtc3RlcCAuYXR0ci1ob2xkZXIgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAuZmlyc3Qtc3RlcCBsYWJlbCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLmZpcnN0LXN0ZXAgbGFiZWwge1xuICB3aWR0aDogMzMlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAuZmlyc3Qtc3RlcCBsYWJlbCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLmZpcnN0LXN0ZXAgbGFiZWwge1xuICAgICAgd2lkdGg6IDI1JTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAuZmlyc3Qtc3RlcCBsYWJlbCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLmZpcnN0LXN0ZXAgbGFiZWwge1xuICAgICAgd2lkdGg6IDIwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAuZmlyc3Qtc3RlcCBsYWJlbCwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLmZpcnN0LXN0ZXAgbGFiZWwge1xuICAgICAgd2lkdGg6IDE2LjYlOyB9IH1cblxuYm9keS50b3VjaCAubXktcGxheWxpc3QgI3NlY29uZFN0ZXBGb3JtLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAjc2Vjb25kU3RlcEZvcm0ge1xuICBtYXgtd2lkdGg6IDg4JTtcbiAgbWFyZ2luOiBhdXRvOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAjc2Vjb25kU3RlcEZvcm0sIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0ICNzZWNvbmRTdGVwRm9ybSB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAubm90LWZvdW5kLXRpdGxlLCBib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAubm90LWZvdW5kLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAuZHJhZ2dhYmxlLWl0ZW0sIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5kcmFnZ2FibGUtaXRlbSB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5Aa2V5ZnJhbWVzIGFuaW1MaXN0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbmJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5sb2FkaW5nLW1hc2ssIGJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5sb2FkaW5nLW1hc2sge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmOyB9XG4gIGJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5sb2FkaW5nLW1hc2sgLmxvYWRlciwgYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLmxvYWRpbmctbWFzayAubG9hZGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbmJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1pbmZvIC5wcmV2aWV3LXdyYXA6YmVmb3JlIHtcbiAgb3BhY2l0eTogMTsgfVxuXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtaW5mbyAucHJldmlldy13cmFwIC5lZGl0IHtcbiAgcmlnaHQ6IDA7IH1cblxuYm9keS50b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWluZm8gLnByZXZpZXctd3JhcCAuZGVsZXRlIHtcbiAgbGVmdDogMDsgfVxuXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtaW5mby1zdGVwIC5wcmV2aWV3LXdyYXAucGxheTpiZWZvcmUge1xuICBvcGFjaXR5OiAxOyB9XG5cbmJvZHkudG91Y2ggLm15LXBsYXlsaXN0IC50aGlyZC1zdGVwIC5wcmV2aWV3LXdyYXA6YmVmb3JlIHtcbiAgb3BhY2l0eTogMTsgfVxuXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3Qtdmlldy1oZWFkZXIgLmJ1dHRvbi5idXR0b24tc2Vjb25kYXJ5OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxNjU2NzsgfVxuXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCBkaXZbY2xhc3MqPSdzdGVwJ10gLnJlbW92ZSB7XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDsgfVxuXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCBkaXZbY2xhc3MqPSdzdGVwJ10gLmJ1dHRvbnMtZ3JvdXAgLmJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLmJhY2s6aG92ZXIsXG5ib2R5LnRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtbW9kYWwgLnN0ZXA6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjE2NTY3OyB9XG5cbmJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wcmV2aWV3LXdyYXA6aG92ZXI6YmVmb3JlIHtcbiAgb3BhY2l0eTogMTsgfVxuXG5ib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucHJldmlldy13cmFwOmhvdmVyIC5jaGVjayxcbmJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wcmV2aWV3LXdyYXA6aG92ZXIgLnJlbW92ZSB7XG4gIG9wYWNpdHk6IDE7IH1cblxuYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnByZXZpZXctd3JhcDpob3ZlciAuZWRpdCB7XG4gIHJpZ2h0OiAwOyB9XG5cbmJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wcmV2aWV3LXdyYXA6aG92ZXIgLmRlbGV0ZSB7XG4gIGxlZnQ6IDA7IH1cblxuYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnByZXZpZXctd3JhcDpob3ZlcjpiZWZvcmUge1xuICBvcGFjaXR5OiAxOyB9XG5cbmJvZHkubm8tdG91Y2ggLm15LXBsYXlsaXN0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIC5wcmV2aWV3LXdyYXA6aG92ZXIgLmNoZWNrLFxuYm9keS5uby10b3VjaCAubXktcGxheWxpc3QgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwgLnByZXZpZXctd3JhcDpob3ZlciAucmVtb3ZlIHtcbiAgb3BhY2l0eTogMTsgfVxuXG5ib2R5Lm5vLXRvdWNoIC5teS1wbGF5bGlzdCAucGxheWxpc3QtY29udGVudC1tb2RhbCAudXBsb2FkLWxhYmVsOmhvdmVyIHtcbiAgY29sb3I6ICNmMTY1Njc7IH1cblxuLmF1dGhlbnRpY2F0aW9uLXBvcHVwLWN1c3RvbWVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmF1dGhlbnRpY2F0aW9uLXBvcHVwLWN1c3RvbWVyIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmF1dGhlbnRpY2F0aW9uLXBvcHVwLWN1c3RvbWVyID4gLmJsb2NrIHtcbiAgICAgIHBhZGRpbmc6IDAgMTVweDsgfSB9XG5cbi5jbXMtaG9tZSAubWFpbi1jb250YWluZXIge1xuICBwYWRkaW5nLXRvcDogMTgwcHg7IH1cblxuLmNtcy1ob21lIC5wYWdlLm1lc3NhZ2VzIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY21zLWhvbWUgLndyYXBwZXIge1xuICBtYXgtd2lkdGg6IDkwcmVtO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5jbXMtaG9tZSAuZmVhdHVyZWQtaXRlbXMge1xuICAgIHBhZGRpbmc6IDMuMTI1cmVtIDAuOTM3NXJlbTsgfSB9XG5cbi5jbXMtaG9tZSAuYm9vay1jbGFzcyAuaG9sZGVyIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43NSk7IH1cbiAgLmNtcy1ob21lIC5ib29rLWNsYXNzIC5ob2xkZXIgLmJ0bi1jdXN0b20ge1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpOyB9XG4gICAgLmNtcy1ob21lIC5ib29rLWNsYXNzIC5ob2xkZXIgLmJ0bi1jdXN0b206YWZ0ZXIsIC5jbXMtaG9tZSAuYm9vay1jbGFzcyAuaG9sZGVyIC5idG4tY3VzdG9tOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpOyB9XG4gICAgLmNtcy1ob21lIC5ib29rLWNsYXNzIC5ob2xkZXIgLmJ0bi1jdXN0b206aG92ZXIge1xuICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43NSk7IH1cbiAgICAuY21zLWhvbWUgLmJvb2stY2xhc3MgLmhvbGRlciAuYnRuLWN1c3RvbSBzcGFuOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43NSk7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEzMTVweCkge1xuICAuY21zLWhvbWUgLm1haW4tY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogMTYwcHg7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gIC5jbXMtaG9tZSAubWFpbi1jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAxNDBweDsgfSB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDgwcHgpIHtcbiAgLmNtcy1ob21lIC5tYWluLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDBweDsgfSB9XG5cbi5ob21lLXBhZ2UgLnBhZ2UubWVzc2FnZXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuLmhvbWUtcGFnZSAucGFuZWwge1xuICBtaW4taGVpZ2h0OiBjYWxjKDcydmggLSAxMHB4KTtcbiAgcGFkZGluZzogMC45Mzc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IH1cbiAgLmhvbWUtcGFnZSAucGFuZWw6Zmlyc3QtY2hpbGQge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDc1JSBjZW50ZXI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaG9tZS1wYWdlIC5wYW5lbDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IH0gfVxuICAuaG9tZS1wYWdlIC5wYW5lbC5jdXN0b20td29ya291dCB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMjUlIGNlbnRlcjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ob21lLXBhZ2UgLnBhbmVsLmN1c3RvbS13b3Jrb3V0IHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfSB9XG4gIC5ob21lLXBhZ2UgLnBhbmVsLmJvb2staG9sZGVyIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmhvbWUtcGFnZSAucGFuZWwuYm9vay1ob2xkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9IH1cbiAgLmhvbWUtcGFnZSAucGFuZWwuaW50cm9kdWNpbmctZ2FsbGVyeSB7XG4gICAgaGVpZ2h0OiA2NXZoO1xuICAgIHBhZGRpbmc6IDAgMS44NzVyZW07XG4gICAgbWluLWhlaWdodDogMzQuMzc1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgICAudG91Y2ggLmhvbWUtcGFnZSAucGFuZWwuaW50cm9kdWNpbmctZ2FsbGVyeSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAudG91Y2ggLmhvbWUtcGFnZSAucGFuZWwuaW50cm9kdWNpbmctZ2FsbGVyeSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDsgfSB9XG4gIC5ob21lLXBhZ2UgLnBhbmVsLmludHJvLXNlY3Rpb24ge1xuICAgIG1pbi1oZWlnaHQ6IDQ1LjYyNXJlbTtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAxODBweCk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ob21lLXBhZ2UgLnBhbmVsIC5pbnRyb2R1Y2luZ19zbGlkZXIsIC5ob21lLXBhZ2UgLnBhbmVsIC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIHtcbiAgICAgIHBhZGRpbmc6IDEuODc1cmVtIDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5ob21lLXBhZ2UgLnBhbmVsIC5pbnRyb2R1Y2luZ19zbGlkZXIsIC5ob21lLXBhZ2UgLnBhbmVsIC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIHtcbiAgICAgIHBhZGRpbmc6IDIuNXJlbSAxLjI1cmVtOyB9IH1cbiAgLmhvbWUtcGFnZSAucGFuZWwgLnNsaWNrLXNsaWRlci5iYWNrZ3JvdW5kIHtcbiAgICBwYWRkaW5nOiAwIDEuODc1cmVtOyB9XG4gICAgLmhvbWUtcGFnZSAucGFuZWwgLnNsaWNrLXNsaWRlci5iYWNrZ3JvdW5kIC5zbGljay1zbGlkZXItaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfVxuICAuaG9tZS1wYWdlIC5wYW5lbCAuc2xpY2stc2xpZGVyIC5mdWxsLXdpZHRoIC5zbGlkZXItYmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB9XG4gIC50b3VjaCAuaG9tZS1wYWdlIC5wYW5lbCB7XG4gICAgbWluLWhlaWdodDogMjEuODc1cmVtO1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDMuMTI1cmVtIDAuOTM3NXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50b3VjaCAuaG9tZS1wYWdlIC5wYW5lbCB7XG4gICAgICAgIHBhZGRpbmc6IDQuNjg3NXJlbSAwLjkzNzVyZW07IH1cbiAgICAgICAgLnRvdWNoIC5ob21lLXBhZ2UgLnBhbmVsLmludHJvZHVjaW5nLWdhbGxlcnkge1xuICAgICAgICAgIHBhZGRpbmc6IDQuNjg3NXJlbSAyLjgxMjVyZW07IH0gfVxuICAgIC50b3VjaCAuaG9tZS1wYWdlIC5wYW5lbCAuaW50cm9kdWNpbmdfc2xpZGVyLCAudG91Y2ggLmhvbWUtcGFnZSAucGFuZWwgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgICAgIC50b3VjaCAuaG9tZS1wYWdlIC5wYW5lbCAuaW50cm9kdWNpbmdfc2xpZGVyLCAudG91Y2ggLmhvbWUtcGFnZSAucGFuZWwgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgICAudG91Y2ggLmhvbWUtcGFnZSAucGFuZWwgLnNsaWNrLXNsaWRlci5iYWNrZ3JvdW5kIC5zbGlkZXItYmcsXG4gICAgLnRvdWNoIC5ob21lLXBhZ2UgLnBhbmVsIC5zbGljay1zbGlkZXIgLmZ1bGwtd2lkdGggLnNsaWRlci1iZyB7XG4gICAgICBoZWlnaHQ6IDM1dmg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gICAgICAgIC50b3VjaCAuaG9tZS1wYWdlIC5wYW5lbCAuc2xpY2stc2xpZGVyLmJhY2tncm91bmQgLnNsaWRlci1iZyxcbiAgICAgICAgLnRvdWNoIC5ob21lLXBhZ2UgLnBhbmVsIC5zbGljay1zbGlkZXIgLmZ1bGwtd2lkdGggLnNsaWRlci1iZyB7XG4gICAgICAgICAgaGVpZ2h0OiA2MHZoOyB9IH1cbiAgICAudG91Y2ggLmhvbWUtcGFnZSAucGFuZWwgLnByb2R1Y3Qtc2xpZGVyLWJsb2NrIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgICAgIC50b3VjaCAuaG9tZS1wYWdlIC5wYW5lbCAucHJvZHVjdC1zbGlkZXItYmxvY2sgLml0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLnRvdWNoIC5ob21lLXBhZ2UgLnBhbmVsIC5yb3cge1xuICAgICAgbWluLWhlaWdodDogMXB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnRvdWNoIC5ob21lLXBhZ2UgLnBhbmVsOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNi4yNXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDE1LjYyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnRvdWNoIC5ob21lLXBhZ2UgLnBhbmVsOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogOS4zNzVyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAxOC43NXJlbTsgfSB9XG4gIC5ob21lLXBhZ2UgLnBhbmVsLmFsaWduLXJpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmhvbWUtcGFnZSAucGFuZWwuYWxpZ24tcmlnaHQgLnJvdyB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgICAuaG9tZS1wYWdlIC5wYW5lbCB7XG4gICAgICBoZWlnaHQ6IDcydmg7IH1cbiAgICAgIC5ob21lLXBhZ2UgLnBhbmVsLmludHJvLXNlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nOiA2LjI1cmVtIDAuOTM3NXJlbTsgfVxuICAgICAgLmhvbWUtcGFnZSAucGFuZWwuZmVhdHVyZWQtaXRlbXMge1xuICAgICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhvbWUtcGFnZSAucGFuZWwge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDYuMzEyNXJlbSAwLjkzNzVyZW07IH1cbiAgICAgIC5ob21lLXBhZ2UgLnBhbmVsOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTEuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmhvbWUtcGFnZSAucGFuZWwge1xuICAgICAgbWluLWhlaWdodDogMzQuMzc1cmVtO1xuICAgICAgaGVpZ2h0OiA3MnZoOyB9XG4gICAgICAuaG9tZS1wYWdlIC5wYW5lbDpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEyLjVyZW07IH1cbiAgICAgIC5ob21lLXBhZ2UgLnBhbmVsLmZlYXR1cmVkLWl0ZW1zIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5ob21lLXBhZ2UgLnBhbmVsOmZpcnN0LW9mLXR5cGUge1xuICAgICAgcGFkZGluZy10b3A6IDE1LjYyNXJlbTsgfSB9XG4gIC5ob21lLXBhZ2UgLnBhbmVsIC5yb3cge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5ob21lLXBhZ2UgLnBhbmVsIHAge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbWF4LXdpZHRoOiAzNy41cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICBtYXJnaW46IDAgYXV0byAxcmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmhvbWUtcGFnZSAucGFuZWwgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuaG9tZS1wYWdlIC5wYW5lbCBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cbiAgLmhvbWUtcGFnZSAucGFuZWwgaDEsIC5ob21lLXBhZ2UgLnBhbmVsIC5oMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAxLjI1ZW0pIHtcbiAgICAgIC5ob21lLXBhZ2UgLnBhbmVsIGgxLCAuaG9tZS1wYWdlIC5wYW5lbCAuaDEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG5cbi5ob21lLXBhZ2UgLmhvbGRlciB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uaG9tZS1wYWdlIC5ib29rLWhvbGRlciAuaG9sZGVyIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogNDEuODc1cmVtO1xuICBwYWRkaW5nOiA0LjA2MjVyZW0gMDtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43NSk7IH1cbiAgLmhvbWUtcGFnZSAuYm9vay1ob2xkZXIgLmhvbGRlciAuYnRuLWN1c3RvbSB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43NSk7IH1cbiAgICAuaG9tZS1wYWdlIC5ib29rLWhvbGRlciAuaG9sZGVyIC5idG4tY3VzdG9tOmFmdGVyLCAuaG9tZS1wYWdlIC5ib29rLWhvbGRlciAuaG9sZGVyIC5idG4tY3VzdG9tOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpOyB9XG4gICAgLmhvbWUtcGFnZSAuYm9vay1ob2xkZXIgLmhvbGRlciAuYnRuLWN1c3RvbTpob3ZlciB7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTsgfVxuICAgIC5ob21lLXBhZ2UgLmJvb2staG9sZGVyIC5ob2xkZXIgLmJ0bi1jdXN0b20gc3BhbjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpOyB9XG5cbi5ob21lLXBhZ2UgLmJvb2staG9sZGVyIC5yb3cge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLmhvbWUtcGFnZSAuY3VzdG9tLXdvcmtvdXQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5ob21lLXBhZ2UgLmN1c3RvbS13b3Jrb3V0IC5ob2xkZXIge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTsgfVxuICAuaG9tZS1wYWdlIC5jdXN0b20td29ya291dCAuaG9sZGVyIC5idG4tY3VzdG9tIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjc1KTsgfVxuICAgIC5ob21lLXBhZ2UgLmN1c3RvbS13b3Jrb3V0IC5ob2xkZXIgLmJ0bi1jdXN0b206YWZ0ZXIsIC5ob21lLXBhZ2UgLmN1c3RvbS13b3Jrb3V0IC5ob2xkZXIgLmJ0bi1jdXN0b206YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43NSk7IH1cbiAgICAuaG9tZS1wYWdlIC5jdXN0b20td29ya291dCAuaG9sZGVyIC5idG4tY3VzdG9tOmhvdmVyIHtcbiAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpOyB9XG4gICAgLmhvbWUtcGFnZSAuY3VzdG9tLXdvcmtvdXQgLmhvbGRlciAuYnRuLWN1c3RvbSBzcGFuOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43NSk7IH1cblxuLnJldmVhbCB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHBhZGRpbmc6IDEuODc1cmVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgICBwYWRkaW5nOiAxLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5yZXZlYWwuZnVsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucmV2ZWFsLmZ1bGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtOyB9IH1cbiAgLnJldmVhbC5mdWxsIC5jbG9zZS1idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucmV2ZWFsLmZ1bGwgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICAgIGhlaWdodDogMS4zNzVyZW07XG4gICAgICAgIHRvcDogMS4wNjI1cmVtO1xuICAgICAgICByaWdodDogMC4zMTI1cmVtOyB9XG4gICAgICAgIC5yZXZlYWwuZnVsbCAuY2xvc2UtYnV0dG9uID4gc3BhbiwgLnJldmVhbC5mdWxsIC5jbG9zZS1idXR0b24gc3BhbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMCAhaW1wb3J0YW50OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAucmV2ZWFsLmZ1bGwgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICAgIGhlaWdodDogMS44NzVyZW07IH1cbiAgICAgICAgLnJldmVhbC5mdWxsIC5jbG9zZS1idXR0b24gc3BhbiB7XG4gICAgICAgICAgd2lkdGg6IDEuODc1cmVtOyB9IH1cbiAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWF4LXdpZHRoOiA3OC4xMjVyZW07IH1cbiAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuaXJzLWdyaWQtdGV4dCwgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAuaXJzLWdyaWQtdGV4dCB7XG4gICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4gICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgaDMsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgaDMge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi4xODc1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IGgzLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIGgzIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0LjM3NXJlbTsgfSB9XG4gICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCBoMy50aXRsZSwgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCBoMy50aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IGgzLnRpdGxlLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIGgzLnRpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfSB9XG4gICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgLnJvdywgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAucm93IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuMTg3NXJlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAucm93LCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5yb3cge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQuMzc1cmVtOyB9IH1cbiAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5yb3c6bGFzdC1vZi10eXBlLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5yb3c6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC53b3Jrb3V0LWNvbnRlbnQtbW9kYWwsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLndvcmtvdXQtY29udGVudC1tb2RhbCB7XG4gICAgICBwYWRkaW5nOiAyLjE4NzVyZW0gMC42MjVyZW0gMS4yNXJlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAud29ya291dC1jb250ZW50LW1vZGFsLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC53b3Jrb3V0LWNvbnRlbnQtbW9kYWwge1xuICAgICAgICAgIHBhZGRpbmc6IDEuMjVyZW0gMS44NzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAud29ya291dC1jb250ZW50LW1vZGFsLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC53b3Jrb3V0LWNvbnRlbnQtbW9kYWwge1xuICAgICAgICAgIHBhZGRpbmc6IDIuODEyNXJlbSAzLjEyNXJlbSAyLjE4NzVyZW07IH0gfVxuICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5wbGF5bGlzdC1jb250ZW50LW1vZGFsLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5wbGF5bGlzdC1jb250ZW50LW1vZGFsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAyLjE4NzVyZW0gMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwge1xuICAgICAgICAgIHBhZGRpbmc6IDEuMjVyZW0gMS44NzVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAucGxheWxpc3QtY29udGVudC1tb2RhbCwgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAucGxheWxpc3QtY29udGVudC1tb2RhbCB7XG4gICAgICAgICAgcGFkZGluZzogMi44MTI1cmVtIDMuMTI1cmVtOyB9IH1cbiAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuYXR0ci1ob2xkZXIsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmF0dHItaG9sZGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5hdHRyLWhvbGRlciBsYWJlbCwgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAuYXR0ci1ob2xkZXIgbGFiZWwge1xuICAgICAgICBwYWRkaW5nOiAwIDAuNjI1cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuYXR0ci1ob2xkZXIgaW1nLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5hdHRyLWhvbGRlciBpbWcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gICAgICAgIG1heC13aWR0aDogNjBweDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgLmF0dHItaG9sZGVyIGltZywgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAuYXR0ci1ob2xkZXIgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogOTBweDsgfSB9XG4gICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuYXR0ci1ob2xkZXIgaW5wdXRbdHlwZT1yYWRpb10sIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmF0dHItaG9sZGVyIGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgICAgICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgLmF0dHItaG9sZGVyIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQgKyBzcGFuLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5hdHRyLWhvbGRlciBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkICsgc3BhbiB7XG4gICAgICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5hdHRyLWhvbGRlciBzcGFuLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5hdHRyLWhvbGRlciBzcGFuIHtcbiAgICAgICAgY29sb3I6ICNhM2EzYTM7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4yNXM7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgLmF0dHItaG9sZGVyIHNwYW4sIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmF0dHItaG9sZGVyIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cbiAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuY3JlYXRlLXdvcmtvdXQsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmNyZWF0ZS13b3Jrb3V0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgLmNyZWF0ZS13b3Jrb3V0LCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5jcmVhdGUtd29ya291dCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuY3JlYXRlLXdvcmtvdXQgaDMsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmNyZWF0ZS13b3Jrb3V0IGgzIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuY3JlYXRlLXdvcmtvdXQgcCwgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAuY3JlYXRlLXdvcmtvdXQgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgY29sb3I6ICNhM2EzYTM7IH1cbiAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5jcmVhdGUtd29ya291dCAuY291bnQsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmNyZWF0ZS13b3Jrb3V0IC5jb3VudCB7XG4gICAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICAgIGhlaWdodDogMi41cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjE2NTY3O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBsaW5lLWhlaWdodDogMi4zNzVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5jcmVhdGUtd29ya291dCAuY291bnQsIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmNyZWF0ZS13b3Jrb3V0IC5jb3VudCB7XG4gICAgICAgICAgICB3aWR0aDogMy41cmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAzLjVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMy4zNzVyZW07IH0gfVxuICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5idXR0b25zLWdyb3VwLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5idXR0b25zLWdyb3VwIHtcbiAgICAgIHBhZGRpbmc6IDEuMjVyZW0gMC42MjVyZW07XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VkZWVmMTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgLnJldmVhbC5jcmVhdGUtY3VzdG9tLXdvcmtvdXQgLmJ1dHRvbnMtZ3JvdXAgLmJ1dHRvbiwgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAuYnV0dG9ucy1ncm91cCAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5yZXZlYWwuY3JlYXRlLWN1c3RvbS13b3Jrb3V0IC5idXR0b25zLWdyb3VwLCAucmV2ZWFsLnBsYXlsaXN0LW1vZGFsIC5idXR0b25zLWdyb3VwIHtcbiAgICAgICAgICBwYWRkaW5nOiAxLjU2MjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAucmV2ZWFsLmNyZWF0ZS1jdXN0b20td29ya291dCAuYnV0dG9ucy1ncm91cCwgLnJldmVhbC5wbGF5bGlzdC1tb2RhbCAuYnV0dG9ucy1ncm91cCB7XG4gICAgICAgICAgcGFkZGluZzogMi41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5yZXZlYWwucGxheWxpc3QtbW9kYWwgLmF0dHItaG9sZGVyIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDYwcHg7IH0gfVxuICAucmV2ZWFsLndvcmtvdXQtdmlkZW8tZ2FsbGVyeSAuYnV0dG9ucy1ncm91cCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJldmVhbC53b3Jrb3V0LXZpZGVvLWdhbGxlcnkuZ2FsbGVyeSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMuMTI1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMy4xMjVyZW0gIWltcG9ydGFudDsgfSB9XG4gIC5yZXZlYWwud29ya291dC12aWRlby1nYWxsZXJ5LmdhbGxlcnkgaWZyYW1lIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA1NXB4KTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yZXZlYWwud29ya291dC12aWRlby1nYWxsZXJ5LmdhbGxlcnkgaWZyYW1lIHtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNDBweCk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJldmVhbC53b3Jrb3V0LXZpZGVvLWdhbGxlcnkuZ2FsbGVyeSAud29ya291dC1wcmV2LXZpZGVvIHtcbiAgICAgIGxlZnQ6IDE1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJldmVhbC53b3Jrb3V0LXZpZGVvLWdhbGxlcnkuZ2FsbGVyeSAud29ya291dC1uZXh0LXZpZGVvIHtcbiAgICAgIHJpZ2h0OiAxNXB4OyB9IH1cbiAgLnJldmVhbC53b3Jrb3V0LXZpZGVvLWdhbGxlcnkuZ2FsbGVyeSAud29ya291dC1wcmV2LXZpZGVvLFxuICAucmV2ZWFsLndvcmtvdXQtdmlkZW8tZ2FsbGVyeS5nYWxsZXJ5IC53b3Jrb3V0LW5leHQtdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHRvcDogYXV0bzsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yZXZlYWwud29ya291dC12aWRlby1nYWxsZXJ5LmdhbGxlcnkgLndvcmtvdXQtcHJldi12aWRlbyxcbiAgICAgIC5yZXZlYWwud29ya291dC12aWRlby1nYWxsZXJ5LmdhbGxlcnkgLndvcmtvdXQtbmV4dC12aWRlbyB7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfSB9XG4gIC5yZXZlYWwud29ya291dC12aWRlby1nYWxsZXJ5LmdhbGxlcnkgLmJ1dHRvbnMtZ3JvdXAge1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5yZXZlYWwuY2FuY2VsLXN1YnNjcmlwdGlvbiBwIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG8gMS41cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIHAge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucmV2ZWFsLmNhbmNlbC1zdWJzY3JpcHRpb24gLmNoZWNrYm94ICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIHRvcDogMC4zNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIC5jaGVja2JveCArIGxhYmVsOmFmdGVyIHtcbiAgICAgIHRvcDogMC41cmVtOyB9IH1cbiAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIC5idG4tZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5yZXZlYWwuY2FuY2VsLXN1YnNjcmlwdGlvbiAuYnRuLWdyb3VwIGEge1xuICAgICAgbWFyZ2luOiAwIDhweCAxcmVtOyB9XG4gIC5yZXZlYWwuY2FuY2VsLXN1YnNjcmlwdGlvbiAuY29udHJvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucmV2ZWFsLmNhbmNlbC1zdWJzY3JpcHRpb24gLmFkdmFpY2UtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5yZXZlYWwuY2FuY2VsLXN1YnNjcmlwdGlvbiAjYWR2YWljZS1jb250YWluZXItY2FuY2VsLXN1YnNjcmlwdGlvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIC5mb3JtLWxpc3Qge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIC5yZXZlYWwuY2FuY2VsLXN1YnNjcmlwdGlvbiAuZm9ybS1saXN0IGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5yZXZlYWwuY2FuY2VsLXN1YnNjcmlwdGlvbiAuZm9ybS1saXN0IGxhYmVsIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuICAgIC5yZXZlYWwuY2FuY2VsLXN1YnNjcmlwdGlvbiAuZm9ybS1saXN0IGxpIHtcbiAgICAgIHBhZGRpbmc6IDAuNjI1cmVtIDA7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAgICAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIC5mb3JtLWxpc3QgbGkge1xuICAgICAgICAgIHBhZGRpbmc6IDAuOTM3NXJlbTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDQ5JTtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9IH1cbiAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IDEwcmVtO1xuICAgIHJlc2l6ZTogdmVydGljYWw7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIHRleHRhcmVhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9IH1cbiAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIC5pbnB1dC1ib3gge1xuICAgIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnJldmVhbC5jYW5jZWwtc3Vic2NyaXB0aW9uIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMi41cmVtOyB9IH1cbiAgLnJldmVhbCAuY2xvc2UtYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogMS4zNzVyZW07XG4gICAgdG9wOiAwLjQzNzVyZW07XG4gICAgcmlnaHQ6IDAuMzEyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yZXZlYWwgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICAgIHJpZ2h0OiAtMS44NzVyZW07XG4gICAgICAgIHRvcDogLTAuMjVyZW07IH1cbiAgICAgICAgLnJldmVhbCAuY2xvc2UtYnV0dG9uID4gc3BhbiwgLnJldmVhbCAuY2xvc2UtYnV0dG9uIHNwYW4ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDsgfSB9XG4gICAgLnJldmVhbCAuY2xvc2UtYnV0dG9uID4gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMS4zNzVyZW07XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAucmV2ZWFsIC5jbG9zZS1idXR0b24gPiBzcGFuIHNwYW4ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxLjM3NXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnJldmVhbCAucGFkLWluZm8ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAyNXZoIDA7IH1cbiAgLnJldmVhbCBpZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDYwcHgpO1xuICAgIG1hcmdpbjogMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnJldmVhbCBpZnJhbWUge1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggLSA0MHB4KTsgfSB9XG5cbi5yZXZlYWwtY29udGVudCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgcGFkZGluZzogMC45Mzc1cmVtIDAuNjI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucmV2ZWFsLWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMy40Mzc1cmVtIDQuNjg3NXJlbTsgfVxuICAgICAgLnJldmVhbC1jb250ZW50Lm1pZGRsZSB7XG4gICAgICAgIHBhZGRpbmc6IDIuMzc1cmVtIDMuNzVyZW07IH0gfVxuICAucmV2ZWFsLWNvbnRlbnQgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgY29sb3I6ICNhM2EzYTM7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucmV2ZWFsLWNvbnRlbnQgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJldmVhbC1vdmVybGF5IHtcbiAgICBwYWRkaW5nOiAwIDIuMTg3NXJlbTsgfSB9XG5cbi5tb2RhbC1wb3B1cCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgei1pbmRleDogOTk5ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC44NSk7IH1cbiAgLm1vZGFsLXBvcHVwLl9zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAubW9kYWwtcG9wdXAgLmFjdGlvbi1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIHRvcDogMjBweDtcbiAgICBmb250LXNpemU6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7IH1cbiAgICAubW9kYWwtcG9wdXAgLmFjdGlvbi1jbG9zZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICAgIGhlaWdodDogMTBweDsgfVxuICAgIC5tb2RhbC1wb3B1cCAuYWN0aW9uLWNsb3NlOmJlZm9yZSwgLm1vZGFsLXBvcHVwIC5hY3Rpb24tY2xvc2U6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxNDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjE2NTY3O1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2U7IH1cbiAgICAubW9kYWwtcG9wdXAgLmFjdGlvbi1jbG9zZTpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgICAgbWFyZ2luLXRvcDogLTAuMjVweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjVweDsgfVxuICAgIC5tb2RhbC1wb3B1cCAuYWN0aW9uLWNsb3NlOmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG4gICAgICBtYXJnaW4tbGVmdDogLTQxJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xcHg7IH1cbiAgICAubW9kYWwtcG9wdXAgLmFjdGlvbi1jbG9zZTpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5tb2RhbC1wb3B1cCAuYWN0aW9uLWNsb3NlOmhvdmVyOmJlZm9yZSwgLm1vZGFsLXBvcHVwIC5hY3Rpb24tY2xvc2U6aG92ZXI6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwOyB9XG4gICAgLm1vZGFsLXBvcHVwIC5hY3Rpb24tY2xvc2U6YmVmb3JlLCAubW9kYWwtcG9wdXAgLmFjdGlvbi1jbG9zZTphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7IH1cbiAgICAubW9kYWwtcG9wdXAgLmFjdGlvbi1jbG9zZTpiZWZvcmUge1xuICAgICAgdG9wOiAtMXB4O1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIC5tb2RhbC1wb3B1cCAubW9kYWwtaW5uZXItd3JhcCB7XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBwYWRkaW5nOiAyNXB4IDIwcHg7XG4gICAgYm94LXNoYWRvdzogMCA0cHggN3B4IHJnYmEoMTYzLCAxNjMsIDE2MywgMC41KTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm1vZGFsLXBvcHVwIC5tb2RhbC1pbm5lci13cmFwIHtcbiAgICAgICAgcGFkZGluZzogMjBweCA0MHB4O1xuICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICBtYXgtd2lkdGg6IDc1MHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAzMHB4KTsgfSB9XG4gIC5tb2RhbC1wb3B1cC5jYW5jZWwtc3Vic2NyaXB0aW9uIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuODUpICFpbXBvcnRhbnQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubW9kYWwtcG9wdXAuY2FuY2VsLXN1YnNjcmlwdGlvbiAubW9kYWwtaW5uZXItd3JhcCB7XG4gICAgICAgIG1heC13aWR0aDogOTUwcHg7IH0gfVxuICAubW9kYWwtcG9wdXAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cblxuLmNtcy1ob21lIC5tb2RhbC1wb3B1cCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSk7IH1cblxuLmJ0bi1hcnJvdyB7XG4gIGhlaWdodDogMi42MjVyZW07XG4gIHdpZHRoOiA0LjEyNXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2QyZDNkMztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBib3JkZXIgLjNzIGVhc2U7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5idG4tYXJyb3cge1xuICAgICAgd2lkdGg6IDcuMTI1cmVtOyB9IH1cbiAgLmJ0bi1hcnJvdzpob3ZlciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDsgfVxuICAuYnRuLWFycm93IHNwYW4ge1xuICAgIHdpZHRoOiAxLjY4NzVyZW07XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiBhdXRvOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmJ0bi1hcnJvdyBzcGFuIHtcbiAgICAgICAgd2lkdGg6IDMuNDM3NXJlbTsgfSB9XG4gICAgLmJ0bi1hcnJvdyBzcGFuOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU4MDMnO1xuICAgICAgZm9udC1mYW1pbHk6ICdmb250ZWxsbyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogLTFweDtcbiAgICAgIHRvcDogLThweDtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cbiAgLmJ0bi1hcnJvdy5vbiB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEuODc1cmVtO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgICAuYnRuLWFycm93Lm9uIHNwYW4ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4uYnRuLWN1c3RvbSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuYnRuLWN1c3RvbS5ibGFjayB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuYnRuLWN1c3RvbS5ibGFjazpob3ZlciwgLmJ0bi1jdXN0b20uYmxhY2s6Zm9jdXMge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuYnRuLWN1c3RvbS5ibGFjazpiZWZvcmUsIC5idG4tY3VzdG9tLmJsYWNrOmFmdGVyLCAuYnRuLWN1c3RvbS5ibGFjayBzcGFuOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5idG4tY3VzdG9tIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH0gfVxuICAubm8tdG91Y2ggLmJ0bi1jdXN0b20uYmxhY2sge1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLm5vLXRvdWNoIC5idG4tY3VzdG9tLmJsYWNrOmhvdmVyLCAubm8tdG91Y2ggLmJ0bi1jdXN0b20uYmxhY2s6Zm9jdXMge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLm5vLXRvdWNoIC5idG4tY3VzdG9tOmhvdmVyLCAubm8tdG91Y2ggLmJ0bi1jdXN0b206Zm9jdXMge1xuICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7IH1cbiAgICAubm8tdG91Y2ggLmJ0bi1jdXN0b206aG92ZXI6YmVmb3JlLCAubm8tdG91Y2ggLmJ0bi1jdXN0b206aG92ZXI6YWZ0ZXIsIC5uby10b3VjaCAuYnRuLWN1c3RvbTpmb2N1czpiZWZvcmUsIC5uby10b3VjaCAuYnRuLWN1c3RvbTpmb2N1czphZnRlciB7XG4gICAgICBvcGFjaXR5OiAxOyB9XG4gICAgLm5vLXRvdWNoIC5idG4tY3VzdG9tOmhvdmVyIHNwYW46YWZ0ZXIsIC5uby10b3VjaCAuYnRuLWN1c3RvbTpmb2N1cyBzcGFuOmFmdGVyIHtcbiAgICAgIG9wYWNpdHk6IDA7IH1cbiAgLmJ0bi1jdXN0b206YmVmb3JlIHtcbiAgICBsZWZ0OiAwOyB9XG4gIC5idG4tY3VzdG9tOmFmdGVyIHtcbiAgICByaWdodDogMDsgfVxuICAuYnRuLWN1c3RvbTpiZWZvcmUsIC5idG4tY3VzdG9tOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDRweDtcbiAgICB3aWR0aDogNHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgZWFzZTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC5idG4tY3VzdG9tIHNwYW4ge1xuICAgIHBhZGRpbmc6IDEuMDYyNXJlbSAxLjMxMjVyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmJ0bi1jdXN0b20gc3BhbjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogNHB4O1xuICAgICAgd2lkdGg6IDRweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMnB4O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgZWFzZTsgfVxuXG4ucmVhZC1tb3JlIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucmVhZC1tb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9IH1cbiAgLnJlYWQtbW9yZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICfigKInO1xuICAgIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTsgfVxuXG4udW5kZXJsaW5lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC51bmRlcmxpbmU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogLTJweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTNhM2EzO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2U7IH1cbiAgLnVuZGVybGluZTpob3ZlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuXG4qIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOyB9XG5cbi5hbGlnbmxlZnQge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDEuNWVtOyB9XG5cbi53ZWJzZWN1cml0eS10YWJsZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1pbi13aWR0aDogdW5zZXQ7XG4gIHdpZHRoOiAxNC4yNXJlbTtcbiAgYm9yZGVyLWNvbGxhcHNlOiB1bnNldDsgfVxuICAud2Vic2VjdXJpdHktdGFibGUgdGQ6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmc6IDAuMzEyNXJlbSAxLjI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgICAud2Vic2VjdXJpdHktdGFibGUgdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nOiAwLjMxMjVyZW0gMC44MTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAgIC53ZWJzZWN1cml0eS10YWJsZSB0ZDpmaXJzdC1jaGlsZCBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDMuNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAgICAgLndlYnNlY3VyaXR5LXRhYmxlIHRkOmZpcnN0LWNoaWxkIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogNi4yNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgICAud2Vic2VjdXJpdHktdGFibGUgdGQ6Zmlyc3QtY2hpbGQgYSB7XG4gICAgICAgIGZvbnQ6IGJvbGQgNXB4IHZlcmRhbmEsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICAgICAud2Vic2VjdXJpdHktdGFibGUgdGQ6Zmlyc3QtY2hpbGQgYSB7XG4gICAgICAgIGZvbnQ6IGJvbGQgOHB4IHZlcmRhbmEsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuMTg3NXJlbSAhaW1wb3J0YW50OyB9IH1cblxuLmFsaWducmlnaHQge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDEuNWVtOyB9XG5cbi5hbGlnbmNlbnRlciB7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG5odG1sLCBib2R5IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwOyB9XG5cbmJvZHkge1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nOiAwIDAuNjI1cmVtO1xuICBtaW4td2lkdGg6IDIwcmVtO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBpbmhlcml0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBib2R5IHtcbiAgICAgIHBhZGRpbmc6IDAgMC45Mzc1cmVtOyB9IH1cbiAgYm9keS5jbXMtbm8tcm91dGUge1xuICAgIHBhZGRpbmc6IDA7IH1cblxuaDEsIC5oMSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZvbnQtc2l6ZTogMzBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgaDEsIC5oMSB7XG4gICAgICBmb250LXNpemU6IDQ1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgaDEsIC5oMSB7XG4gICAgICBmb250LXNpemU6IDcwcHg7IH0gfVxuXG4uY29sMi1yaWdodC1sYXlvdXQge1xuICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLnBhZ2Utd3JhcCwgLndyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjsgfVxuXG5ib2R5Om5vdCguY21zLWhvbWUpIC5tYWluLWNvbnRhaW5lciB7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgMC4zcyBlYXNlO1xuICBwYWRkaW5nLXRvcDogNi41cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIGJvZHk6bm90KC5jbXMtaG9tZSkgLm1haW4tY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA2Ljc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIGJvZHk6bm90KC5jbXMtaG9tZSkgLm1haW4tY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA5LjQzNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgYm9keTpub3QoLmNtcy1ob21lKSAubWFpbi1jb250YWluZXIge1xuICAgICAgcGFkZGluZy10b3A6IDExLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBib2R5Om5vdCguY21zLWhvbWUpIC5tYWluLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogOS45Mzc1cmVtOyB9IH1cblxudWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLm5vdGUtbXNnIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgcGFkZGluZzogMCAwLjYyNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAubm90ZS1tc2cge1xuICAgICAgcGFkZGluZzogMCAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLm5vdGUtbXNnIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG5cbi5wYWdlLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAyLjE4NzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5wYWdlLXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5wYWdlLXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDUuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5wYWdlLXRpdGxlLnBhZ2UtdGl0bGUtbWlkZGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuMzc1cmVtOyB9IH1cbiAgLnBhZ2UtdGl0bGUgaDEsIC5wYWdlLXRpdGxlIC5oMSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBtYXJnaW46IDA7IH1cbiAgLnBhZ2UtdGl0bGUgc3BhbiB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDsgfVxuXG4uY3VzdG9tLWxpc3Qge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMXJlbTsgfVxuICAuY3VzdG9tLWxpc3QgbGk6YmVmb3JlIHtcbiAgICBjb250ZW50OiAn4oCiJztcbiAgICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jdXN0b20tbGlzdCB7XG4gICAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfSB9XG5cbi5wYXlwYWwtZXhwcmVzcy1yZXZpZXctY3VzdG9tIC5sZWdlbmQge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG5cbi5wYXlwYWwtZXhwcmVzcy1yZXZpZXctY3VzdG9tIC5ib3gtdGl0bGUsIC5wYXlwYWwtZXhwcmVzcy1yZXZpZXctY3VzdG9tIC5ib3gtY29udGVudCB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cblxuYSB7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4yNXM7IH1cblxuYWRkcmVzcyB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmlucHV0W3R5cGU9dGV4dF06Oi1tcy1jbGVhciB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5pbnB1dDo6LXdlYmtpdC1jb250YWN0cy1hdXRvLWZpbGwtYnV0dG9uIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwOyB9XG5cbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGwsXG50ZXh0YXJlYTotd2Via2l0LWF1dG9maWxsLFxuc2VsZWN0Oi13ZWJraXQtYXV0b2ZpbGwge1xuICBib3gtc2hhZG93OiAwIDAgMCAxMDAwcHggd2hpdGUgaW5zZXQgIWltcG9ydGFudDsgfVxuXG5pbnB1dCwgc2VsZWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMC4xODc1cmVtOyB9XG5cbi5yZXF1aXJlZCA+IC5sYWJlbCwgLl9yZXF1aXJlZCA+IC5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAucmVxdWlyZWQgPiAubGFiZWw6YWZ0ZXIsIC5fcmVxdWlyZWQgPiAubGFiZWw6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcqJztcbiAgICBtYXJnaW4tbGVmdDogNXB4OyB9XG5cbi5pbnB1dC1ib3gge1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5pbnB1dC1ib3gge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuXG4udmFsaWRhdGlvbi1hZHZpY2Uge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogI2YxNjU2NzsgfVxuXG5ibG9ja3F1b3RlIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBmb250LWZhbWlseTogJ21pbGxlcicsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIGJsb2NrcXVvdGUge1xuICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTsgfSB9XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIHNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9IH1cblxuLmxhcmdlLXBhZGRpbmcge1xuICBwYWRkaW5nOiAyLjE4NzVyZW0gMCAxLjg3NXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmxhcmdlLXBhZGRpbmcge1xuICAgICAgcGFkZGluZzogNC4zNzVyZW0gMCAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5sYXJnZS1wYWRkaW5nIHtcbiAgICAgIHBhZGRpbmc6IDYuMjVyZW0gMCA1LjMxMjVyZW07IH0gfVxuXG4ubWlkZGxlLXBhZGRpbmcge1xuICBwYWRkaW5nOiAxLjI1cmVtIDAgMS44NzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5taWRkbGUtcGFkZGluZyB7XG4gICAgICBwYWRkaW5nOiAyLjVyZW0gMCAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5taWRkbGUtcGFkZGluZyB7XG4gICAgICBwYWRkaW5nOiAzLjEyNXJlbSAwIDUuMzEyNXJlbTsgfSB9XG5cbi5sYXJnZS1tYXJnaW4ge1xuICBtYXJnaW4tYm90dG9tOiAyLjE4NzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5sYXJnZS1tYXJnaW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmxhcmdlLW1hcmdpbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2LjI1cmVtOyB9IH1cblxuLm1pZGRsZS1tYXJnaW4ge1xuICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5taWRkbGUtbWFyZ2luIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5taWRkbGUtbWFyZ2luIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNjg3NXJlbTsgfSB9XG5cbi5zbWFsbC1tYiB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cblxuLm1pZGRsZS1tYiB7XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfVxuXG4ubm8tZGlzcGxheSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4ubm8tdmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5lbWFpbC1oaW50IHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGNvbG9yOiByZ2JhKDIsIDIsIDIsIDAuNSk7XG4gIG1hcmdpbi10b3A6IC0xcmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZW1haWwtaGludCB7XG4gICAgICBtYXJnaW4tdG9wOiAtMS41cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW07IH0gfVxuXG4ud2l0aC1wYWRkaW5nIHtcbiAgcGFkZGluZzogMCAwLjkzNzVyZW07XG4gIG1heC13aWR0aDogMTguMTI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAud2l0aC1wYWRkaW5nIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG5cblt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG5bdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLm1lc3NhZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07IH1cbiAgLm1lc3NhZ2Uuc3VjY2VzcyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjsgfVxuICAubWVzc2FnZS5lcnJvciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNzsgfVxuICAubWVzc2FnZS5ub3RpY2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMjY3MDM7IH1cblxuLm1lc3NhZ2VzLXdyYXBwZXIsIC5jaGVja291dC1jYXJ0LWluZGV4IC5wYWdlLm1lc3NhZ2VzIHtcbiAgcGFkZGluZzogMXJlbSAxMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLndoaXRlLWxvYWRlciB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogM3JlbTtcbiAgei1pbmRleDogMjAwO1xuICBwYWRkaW5nOiAzLjEyNXJlbSAxLjI1cmVtO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubG9hZGluZyB7XG4gIHBhZGRpbmc6IDMuMTI1cmVtIDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZnVsbC13aWR0aCAuaW5wdXQtdGV4dCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH0gfVxuXG4ub3ZlcmZsb3cge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5saW1pdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1zaHJpbms6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5saW1pdGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5saW1pdGVyIHNlbGVjdCB7XG4gICAgICAgIHdpZHRoOiAxOC4xMjVyZW07IH0gfVxuICAubGltaXRlciBsYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07IH1cbiAgLmxpbWl0ZXIgc2VsZWN0IHtcbiAgICBtYXgtd2lkdGg6IDE4LjEyNXJlbTsgfVxuXG4ucHJpbnQtd3JhcHBlciB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnByaW50LXdyYXBwZXIge1xuICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW07IH0gfVxuICAucHJpbnQtd3JhcHBlcjpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5wcmludC13cmFwcGVyOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuODEyNXJlbTsgfSB9XG4gIC5wcmludC13cmFwcGVyIGltZyB7XG4gICAgd2lkdGg6IDEuMDYyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTsgfVxuICAucHJpbnQtd3JhcHBlciAucHJpbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uc3ViLXRpdGxlLnVuZGVybGluZWQge1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zdWItdGl0bGUudW5kZXJsaW5lZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG5cbmlucHV0W3R5cGU9ZmlsZV0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uY3VzdG9tLW92ZXJsYXksIC5wbGVhc2Utd2FpdCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBvcGFjaXR5OiAuNTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAzcmVtO1xuICB6LWluZGV4OiAyMDA7IH1cblxuI3Jldmlldy1wbGVhc2Utd2FpdCB7XG4gIGZvbnQtc2l6ZTogMDsgfVxuICAjcmV2aWV3LXBsZWFzZS13YWl0IGltZyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4jZGV0YWlscy1yZWxvYWQge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4uY3VzdG9tLW92ZXJsYXkge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIC5jdXN0b20tb3ZlcmxheS52aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4ud2hpdGUtYmcge1xuICBoZWlnaHQ6IDAuNjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC53aGl0ZS1iZyB7XG4gICAgICBoZWlnaHQ6IDAuOTM3NXJlbTsgfSB9XG5cbi5zbGljay1zbGlkZXIge1xuICBtYXJnaW46IDA7IH1cblxuLnNsaWNrLXNsaWRlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzO1xuICBvdXRsaW5lOiBub25lOyB9XG4gIC5zbGljay1zbGlkZSBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLnNsaWNrLXNsaWRlci1uYXYge1xuICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuc2xpY2stc2xpZGVyLW5hdiB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4OyB9IH1cbiAgLnNsaWNrLXNsaWRlci1uYXYgLnNsaWNrLXNsaWRlIHtcbiAgICBvcGFjaXR5OiAuNTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuc2xpY2stc2xpZGVyLW5hdiAuc2xpY2stc2xpZGUuaXMtYWN0aXZlIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAuc2xpY2stc2xpZGVyLW5hdiAuc2xpY2stc2xpZGUgaW1nIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAuc2xpY2stc2xpZGVyLW5hdiAuaW1hZ2UtaG9sZGVyIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBoZWlnaHQ6IDYwcHg7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAgIC5zbGljay1zbGlkZXItbmF2IC5pbWFnZS1ob2xkZXIge1xuICAgICAgICBoZWlnaHQ6IDgwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5zbGljay1zbGlkZXItbmF2IC5pbWFnZS1ob2xkZXIge1xuICAgICAgICBoZWlnaHQ6IDEyNXB4O1xuICAgICAgICBwYWRkaW5nOiAwIDI1cHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQge1xuICBpbWcsIC5kZXNjcmlwdGlvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50OyB9IH1cblxudGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgbWluLXdpZHRoOiA0My43NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgdGFibGUgaDQge1xuICAgIGZvbnQtZmFtaWx5OiAnQnJhbmRvbkdyb3Rlc3F1ZScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4OyB9XG4gIHRhYmxlIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOyB9XG4gIHRhYmxlIHRib2R5IHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VkZWVmMTsgfVxuICB0YWJsZSB0Zm9vdCBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgdGFibGUgdGZvb3QgdHIgdGQge1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDEuMTI1cmVtIDA7IH1cbiAgICB0YWJsZSB0Zm9vdCB0ciB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbHVtbi1zcGFuOiAxOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIHRhYmxlIHRmb290IHRyIHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgdGFibGUgdGZvb3QgdHIgdGQge1xuICAgICAgICBwYWRkaW5nOiAwLjYyNXJlbSAxLjc1cmVtIDA7IH0gfVxuICB0YWJsZSB0aCB7XG4gICAgcGFkZGluZzogMC42MjVyZW0gMS4yNXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgdGFibGUgdGgge1xuICAgICAgICBwYWRkaW5nOiAwLjkzNzVyZW0gMi4zMTI1cmVtOyB9IH1cbiAgICB0YWJsZSB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIHRhYmxlIHRkIHtcbiAgICBwYWRkaW5nOiAxLjU2MjVyZW0gMS4xMjVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIHRhYmxlIHRkIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gICAgICAgIHBhZGRpbmc6IDIuMzc1cmVtIDEuNzVyZW07IH1cbiAgICAgICAgdGFibGUgdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG4gICAgdGFibGUgdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9XG4gICAgICB0YWJsZSB0ZDpmaXJzdC1jaGlsZCBpbWcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNjg3NXJlbTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgdGFibGUgdGQ6Zmlyc3QtY2hpbGQgaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMS41NjI1cmVtOyB9IH1cbiAgICAgIHRhYmxlIHRkOmZpcnN0LWNoaWxkIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgdGFibGUgdGQ6Zmlyc3QtY2hpbGQgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDE4NXB4KTsgfSB9XG4gICAgICAgIHRhYmxlIHRkOmZpcnN0LWNoaWxkIC5kZXNjcmlwdGlvbiBzcGFuLCB0YWJsZSB0ZDpmaXJzdC1jaGlsZCAuZGVzY3JpcHRpb24gcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgICAgICAgY29sb3I6ICNhM2EzYTM7IH1cbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgICB0YWJsZSB0ZDpmaXJzdC1jaGlsZCAuZGVzY3JpcHRpb24gc3BhbiwgdGFibGUgdGQ6Zmlyc3QtY2hpbGQgLmRlc2NyaXB0aW9uIHAge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfSB9XG4gIHRhYmxlI215LW9yZGVycy10YWJsZSAubnVtYmVyIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICB0YWJsZSNteS1vcmRlcnMtdGFibGUgdGJvZHkgdGQ6Zmlyc3QtY2hpbGQsIHRhYmxlLm15LXRhYmxlIHRib2R5IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiA0MCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgdGFibGUjbXktc2hpcG1lbnQtdGFibGUtMSB0Ym9keSB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICB3aWR0aDogNzAlOyB9IH1cblxuLmZvci10Zm9vdCB7XG4gIG1pbi13aWR0aDogMXB4OyB9XG4gIC5mb3ItdGZvb3QgdHIge1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAuZm9yLXRmb290IHRoIHtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuZm9yLXRmb290IHRkIHtcbiAgICBwYWRkaW5nOiAwLjYyNXJlbSAwO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgICAuZm9yLXRmb290IHRkOmxhc3QtY2hpbGQge1xuICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW07IH1cbiAgICAuZm9yLXRmb290IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgcGFkZGluZy1yaWdodDogMy4xMjVyZW07XG4gICAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuZm9yLXRmb290IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuICAuZm9yLXRmb290IHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIGJvcmRlcjogMDsgfVxuXG4uc2Nyb2xsYWJsZSB7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cbiAgLnNjcm9sbGFibGUud2l0aC1wZCB7XG4gICAgcGFkZGluZzogMCAwIDAuOTM3NXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zY3JvbGxhYmxlLndpdGgtcGQge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMC45Mzc1cmVtOyB9IH1cblxuLmNvbDItcmlnaHQtbGF5b3V0IC5tYWluIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luLWJvdHRvbTogMi4xODc1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuY29sMi1yaWdodC1sYXlvdXQgLm1haW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmNvbDItcmlnaHQtbGF5b3V0IC5tYWluIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDUuNjI1cmVtOyB9IH1cblxuLmNvbDItcmlnaHQtbGF5b3V0IC5jb2wtbWFpbiwgLmNvbDItcmlnaHQtbGF5b3V0IC5jb2wtcmlnaHQge1xuICBwYWRkaW5nOiAwIDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29sMi1yaWdodC1sYXlvdXQgLmNvbC1tYWluLCAuY29sMi1yaWdodC1sYXlvdXQgLmNvbC1yaWdodCB7XG4gICAgICBwYWRkaW5nOiAwIDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbDItcmlnaHQtbGF5b3V0IC5jb2wtbWFpbiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb2wyLXJpZ2h0LWxheW91dCAuY29sLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4jYXctbG4tZmlsdGVycy1jb250YWluZXIgZGQgb2wuY3VzdG9tLWZpbHRlcmVkLWxpc3QgbGksXG4jYXctbG4tZmlsdGVycy1jb250YWluZXIgZGQgb2wuZmlsdGVyLXR5cGUgbGkge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxICFpbXBvcnRhbnQ7IH1cblxuZGl2Lm1hZ2UtZXJyb3IsIC5maWVsZC1lcnJvciB7XG4gIGNvbG9yOiByZWQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4ubm8tYnVsbGV0cyB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuXG4uY3VzdG9tLXRhYmxlIHRoZWFkLCAuY3VzdG9tLXRhYmxlIHRib2R5LCAuY3VzdG9tLXRhYmxlIHRmb290IHtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIGJvcmRlci1yaWdodDogMDsgfVxuXG4uY3VzdG9tLXRhYmxlIC5pdGVtcy1xdHkgLml0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG5bdi1jbG9ha10ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi52dWUtbW9kYWwge1xuICAvKlxuICAgKiBUaGUgZm9sbG93aW5nIHN0eWxlcyBhcmUgYXV0by1hcHBsaWVkIHRvIGVsZW1lbnRzIHdpdGhcbiAgICogdHJhbnNpdGlvbj1cIm1vZGFsXCIgd2hlbiB0aGVpciB2aXNpYmlsaXR5IGlzIHRvZ2dsZWRcbiAgICogYnkgVnVlLmpzLlxuICAgKlxuICAgKiBZb3UgY2FuIGVhc2lseSBwbGF5IHdpdGggdGhlIG1vZGFsIHRyYW5zaXRpb24gYnkgZWRpdGluZ1xuICAgKiB0aGVzZSBzdHlsZXMuXG4gICAqLyB9XG4gIC52dWUtbW9kYWwgLm1vZGFsLW1hc2sge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA5OTk4O1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7IH1cbiAgLnZ1ZS1tb2RhbCAubW9kYWwtd3JhcHBlciB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC52dWUtbW9kYWwgLm1vZGFsLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDMwMHB4O1xuICAgIG1hcmdpbjogMHB4IGF1dG87XG4gICAgcGFkZGluZzogMjBweCAzMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMzMpO1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgZm9udC1mYW1pbHk6IEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7IH1cbiAgLnZ1ZS1tb2RhbCAubW9kYWwtaGVhZGVyIGgzIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGNvbG9yOiAjNDJiOTgzOyB9XG4gIC52dWUtbW9kYWwgLm1vZGFsLWJvZHkge1xuICAgIG1hcmdpbjogMjBweCAwOyB9XG4gIC52dWUtbW9kYWwgLm1vZGFsLWRlZmF1bHQtYnV0dG9uIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLnZ1ZS1tb2RhbCAubW9kYWwtZW50ZXIge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLnZ1ZS1tb2RhbCAubW9kYWwtbGVhdmUtYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC52dWUtbW9kYWwgLm1vZGFsLWVudGVyIC5tb2RhbC1jb250YWluZXIsXG4gIC52dWUtbW9kYWwgLm1vZGFsLWxlYXZlLWFjdGl2ZSAubW9kYWwtY29udGFpbmVyIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7IH1cblxuLmZsb2F0LWNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi5saW5rLXByaW50IHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmxpbmstcHJpbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi44MTI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saW5rLXByaW50IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9IH1cbiAgLmxpbmstcHJpbnQgaW1nIHtcbiAgICB3aWR0aDogMS4wNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtOyB9XG5cbi8qKlxuICogM0QgU2VjdXJlIENvbnRhaW5lclxuICovXG4jYnJhaW50cmVlLXRocmVlLWQtbW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgd2lkdGg6IDEwMHZ3O1xuICB6LWluZGV4OiAxMDAwMDA7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuI2JyYWludHJlZS10aHJlZS1kLW1vZGFsIC5idC1tb2RhbC1mcmFtZSB7XG4gIGhlaWdodDogNDIwcHg7XG4gIHdpZHRoOiA0NDBweDtcbiAgbWFyZ2luOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICB6LWluZGV4OiAyO1xuICBib3JkZXItcmFkaXVzOiA2cHg7IH1cblxuI2JyYWludHJlZS10aHJlZS1kLW1vZGFsIC5idC1tb2RhbC1ib2R5IHtcbiAgaGVpZ2h0OiAzODBweDtcbiAgbWFyZ2luOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgbGlnaHRncmF5OyB9XG5cbiNicmFpbnRyZWUtdGhyZWUtZC1tb2RhbCAuYnQtbWFzayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgb3BhY2l0eTogMC43NTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjUwcHgpIHtcbiAgI2JyYWludHJlZS10aHJlZS1kLW1vZGFsIC5idC1tb2RhbC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4vKipcbiAqIEFwcGxlIFBheSBidXR0b25cbiAqL1xuLmJyYWludHJlZS1hcHBsZXBheS1jb250YWluZXItcHJvZHVjdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAuYnJhaW50cmVlLWFwcGxlcGF5LWNvbnRhaW5lci1wcm9kdWN0IC5icmFpbnRyZWUtYXBwbGUtcGF5LWJ1dHRvbiB7XG4gICAgcGFkZGluZzogMTBweCAwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5icmFpbnRyZWUtYXBwbGVwYXktY29udGFpbmVyLXByb2R1Y3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmJyYWludHJlZS1hcHBsZXBheS1jb250YWluZXItcHJvZHVjdCAuYnJhaW50cmVlLWFwcGxlLXBheS1idXR0b24ge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uYnJhaW50cmVlLWFwcGxlLXBheS1idXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDIwMHB4O1xuICBtaW4taGVpZ2h0OiA0MHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgcGFkZGluZzogMnB4O1xuICBtYXJnaW46IDIwcHggYXV0bztcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMTVzO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9hcHBsZS1wYXkucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfVxuXG4vKipcbiAqIFBQIENyZWRpdCBDYWxjdWxhdG9yXG4gKi9cbi5wcGNyZWRpdC1zdW1tYXJ5IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjMDA5Q0RFLCAjMDAzMDg3KTtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAxMHB4IDBweDsgfVxuXG4ucHBjcmVkaXRjYWxjLWNvbnRhaW5lciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWRlZGU7XG4gIGJhY2tncm91bmQ6ICNGRkY7IH1cblxuLnBwY3JlZGl0Y2FsYy1oZWFkZXIge1xuICBiYWNrZ3JvdW5kOiAjRkZGO1xuICBwYWRkaW5nOiAxNXB4OyB9XG5cbi5wcGNyZWRpdGNhbGMtbGVnYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2RlZGVkZTtcbiAgcGFkZGluZzogMTVweDtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIGxpbmUtaGVpZ2h0OiAycmVtOyB9XG5cbi5wcGNyZWRpdGNhbGMtaW5zdGFsbWVudHMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjREVERURFO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0RFREVERTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTsgfVxuXG4ucHBjcmVkaXRjYWxjLWluc3RhbG1lbnRzIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLnBwY3JlZGl0Y2FsYy1pbnN0YWxtZW50cy10ZXJtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLnBwY3JlZGl0Y2FsYy1pbnN0YWxtZW50cy10ZXJtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzAwOUNERTtcbiAgY29sb3I6ICNGRkY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4ucHBjcmVkaXRjYWxjLWluc3RhbG1lbnRzLXRlcm0uYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzAwMzA4NztcbiAgY29sb3I6ICNGRkY7IH1cblxuLnBwY3JlZGl0Y2FsYy1pbnN0YWxtZW50LXN1bW1hcnkge1xuICBwYWRkaW5nOiAxNXB4OyB9XG5cbi5wcGNyZWRpdGNhbGMtaW5zdGFsbWVudC1zdW1tYXJ5IGRsIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5wcGNyZWRpdGNhbGMtaW5zdGFsbWVudC1zdW1tYXJ5IGR0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNTAlOyB9XG5cbi5wcGNyZWRpdGNhbGMtaW5zdGFsbWVudC1zdW1tYXJ5IGRkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICogQ0MgRk9STVxuICovXG4jYnJhaW50cmVlX2V4cGlyYXRpb25EYXRlIHtcbiAgd2lkdGg6IDkwcHg7IH1cblxuLyoqXG4gKiBHb29nbGUgUGF5XG4gKi9cbmJ1dHRvbi5icmFpbnRyZWUtZ29vZ2xlcGF5LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBib3JkZXI6IDBweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3gtc2hhZG93OiByZ2JhKDYwLCA2NCwgNjcsIDAuMykgMHB4IDFweCAxcHggMHB4LCByZ2JhKDYwLCA2NCwgNjcsIDAuMTUpIDBweCAxcHggM3B4IDFweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBoZWlnaHQ6IDQwcHg7XG4gIG1pbi1oZWlnaHQ6IDQwcHg7XG4gIHBhZGRpbmc6IDExcHggMjRweDsgfVxuXG5idXR0b24uYnJhaW50cmVlLWdvb2dsZXBheS1idXR0b24uYmxhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBwYWRkaW5nOiAxMnB4IDI0cHggMTBweDsgfVxuXG5idXR0b24uYnJhaW50cmVlLWdvb2dsZXBheS1idXR0b24ud2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbmJ1dHRvbi5icmFpbnRyZWUtZ29vZ2xlcGF5LWJ1dHRvbi5zaG9ydCB7XG4gIG1pbi13aWR0aDogOTBweDtcbiAgd2lkdGg6IDE2MHB4OyB9XG5cbmJ1dHRvbi5icmFpbnRyZWUtZ29vZ2xlcGF5LWJ1dHRvbi5ibGFjay5zaG9ydCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChodHRwczovL3d3dy5nc3RhdGljLmNvbS9pbnN0YW50YnV5L3N2Zy9kYXJrX2dwYXkuc3ZnKTsgfVxuXG5idXR0b24uYnJhaW50cmVlLWdvb2dsZXBheS1idXR0b24ud2hpdGUuc2hvcnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW5zdGFudGJ1eS9zdmcvbGlnaHRfZ3BheS5zdmcpOyB9XG5cbmJ1dHRvbi5icmFpbnRyZWUtZ29vZ2xlcGF5LWJ1dHRvbi5ibGFjazphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWY2MzY4OyB9XG5cbmJ1dHRvbi5icmFpbnRyZWUtZ29vZ2xlcGF5LWJ1dHRvbi5ibGFjazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYzQwNDM7IH1cblxuYnV0dG9uLmJyYWludHJlZS1nb29nbGVwYXktYnV0dG9uLndoaXRlOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuYnV0dG9uLmJyYWludHJlZS1nb29nbGVwYXktYnV0dG9uLndoaXRlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogI2U4ZThlOCAwIDFweCAxcHggMCwgI2U4ZThlOCAwIDFweCAzcHg7IH1cblxuYnV0dG9uLmJyYWludHJlZS1nb29nbGVwYXktYnV0dG9uLndoaXRlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjhmODsgfVxuXG5idXR0b24uYnJhaW50cmVlLWdvb2dsZXBheS1idXR0b24ubG9uZyB7XG4gIG1pbi13aWR0aDogMTUycHg7XG4gIHdpZHRoOiAyNDBweDsgfVxuXG5idXR0b24uYnJhaW50cmVlLWdvb2dsZXBheS1idXR0b24ud2hpdGUubG9uZyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChodHRwczovL3d3dy5nc3RhdGljLmNvbS9pbnN0YW50YnV5L3N2Zy9saWdodC9lbi5zdmcpOyB9XG5cbmJ1dHRvbi5icmFpbnRyZWUtZ29vZ2xlcGF5LWJ1dHRvbi5ibGFjay5sb25nIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2luc3RhbnRidXkvc3ZnL2RhcmsvZW4uc3ZnKTsgfVxuXG4uZ29vZ2xlcGF5LW1pbmljYXJ0LWxvZ28ge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnBheW1lbnQtbWV0aG9kLWJyYWludHJlZSAuaG9zdGVkLWNvbnRyb2wge1xuICBwYWRkaW5nOiA4cHggMTVweDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cblxuI2JyYWludHJlZV9jY19udW1iZXIge1xuICBwYWRkaW5nLWxlZnQ6IDY4cHg7IH1cblxuLnBheW1lbnQtbWV0aG9kLWJyYWludHJlZSAuY3Z2IC5maWVsZC10b29sdGlwIHtcbiAgbGVmdDogMTByZW07XG4gIHRvcDogMTBweDsgfVxuXG4uY2hlY2tvdXQtcGF5bWVudC1tZXRob2QgLmNyZWRpdC1jYXJkLXR5cGVzLmJyYWludHJlZS1jcmVkaXQtY2FyZC10eXBlcyBpbWcge1xuICB3aWR0aDogMzBweDtcbiAgLXdlYmtpdC1maWx0ZXI6IG5vbmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbm9uZTsgfVxuXG4uYnJhaW50cmVlLWNhcmQtY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uYnJhaW50cmVlLWNyZWRpdC1jYXJkLXNlbGVjdGVkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgbGVmdDogMTBweDsgfVxuXG4uYnJhaW50cmVlLXBheXBhbC1sb2dvLm9uZWNsaWNrLWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbiNwYXltZW50X2Zvcm1fYnJhaW50cmVlX2FjaF9kaXJlY3RfZGViaXQgLmZpZWxkID4gLmZpZWxkcyAuZmllbGQgLmxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4jcGF5bWVudF9mb3JtX2JyYWludHJlZV9hY2hfZGlyZWN0X2RlYml0IC5maWVsZCA+IC5maWVsZHMgLmZpZWxkLnJlcXVpcmVkID4gLmxhYmVsOmFmdGVyIHtcbiAgY29udGVudDogJyonO1xuICBjb2xvcjogI2UwMmIyNztcbiAgZm9udC1zaXplOiAxOHB4O1xuICBtYXJnaW46IDAgMCAwIDVweDsgfVxuXG4jcGF5bWVudF9mb3JtX2JyYWludHJlZV9hY2hfZGlyZWN0X2RlYml0IC5maWVsZCA+IC5maWVsZHMgLmZpZWxkIC5jb250cm9sIHtcbiAgbWFyZ2luOiAxMHB4IDEwcHggMCAwOyB9XG4gICNwYXltZW50X2Zvcm1fYnJhaW50cmVlX2FjaF9kaXJlY3RfZGViaXQgLmZpZWxkID4gLmZpZWxkcyAuZmllbGQgLmNvbnRyb2wgaW5wdXRbdHlwZT1cInRleHRcIl06OnBsYWNlaG9sZGVyLCAjcGF5bWVudF9mb3JtX2JyYWludHJlZV9hY2hfZGlyZWN0X2RlYml0IC5maWVsZCA+IC5maWVsZHMgLmZpZWxkIC5jb250cm9sIGlucHV0W3R5cGU9XCJudW1iZXJcIl06OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogbGlnaHRncmV5OyB9XG5cbiNwYXltZW50LW1ldGhvZC1icmFpbnRyZWUtY2MtdmF1bHQgLmZpZWxkLnJlcXVpcmVkIC5sYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgI3BheW1lbnQtbWV0aG9kLWJyYWludHJlZS1jYy12YXVsdCAuZmllbGQucmVxdWlyZWQgLmxhYmVsOmFmdGVyIHtcbiAgICBjb250ZW50OiAnKic7XG4gICAgY29sb3I6ICNlMDJiMjc7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIG1hcmdpbjogMCAwIDAgNXB4OyB9XG5cbiNwYXltZW50LW1ldGhvZC1icmFpbnRyZWUtY2MtdmF1bHQgLmZpZWxkIC5ob3N0ZWQtY29udHJvbCB7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMmMyYzI7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIHBhZGRpbmc6IDAgOXB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDVyZW07IH1cbiAgI3BheW1lbnQtbWV0aG9kLWJyYWludHJlZS1jYy12YXVsdCAuZmllbGQgLmhvc3RlZC1jb250cm9sLmJyYWludHJlZS1ob3N0ZWQtZmllbGRzLWludmFsaWQ6bm90KC5icmFpbnRyZWUtaG9zdGVkLWZpZWxkcy1mb2N1c2VkKSB+IC5ob3N0ZWQtZXJyb3Ige1xuICAgIGhlaWdodDogYXV0bztcbiAgICBvcGFjaXR5OiAxOyB9XG5cbiNwYXltZW50LW1ldGhvZC1icmFpbnRyZWUtY2MtdmF1bHQgLmZpZWxkIC5ob3N0ZWQtZXJyb3Ige1xuICBjbGVhcjogYm90aDtcbiAgY29sb3I6ICNlMDJiMjc7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tdG9wOiA3cHg7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmxpdmVfc3RyZWFtLWluZGV4LWluZGV4IC5wYWdlLXRpdGxlLXdyYXBwZXIgaDEsIC5saXZlX3N0cmVhbS1pbmRleC1pbmRleCAucGFnZS10aXRsZS13cmFwcGVyIC5oMSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uYWNjb3JkaW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDIuMTg3NXJlbTtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmFjY29yZGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuYWNjb3JkaW9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYuMjVyZW07IH0gfVxuICAuYWNjb3JkaW9uID4gbGkge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgICAuYWNjb3JkaW9uID4gbGkgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAwLjkzNzVyZW0gMS4yNXJlbSAwLjkzNzVyZW0gMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC5hY2NvcmRpb24gPiBsaSAuYWNjb3JkaW9uLXRpdGxlLmlzLWFjdGl2ZTphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5hY2NvcmRpb24gPiBsaSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgICBwYWRkaW5nOiAxLjg3NXJlbSAxLjI1cmVtIDEuODc1cmVtIDA7IH0gfVxuICAgICAgLmFjY29yZGlvbiA+IGxpIC5hY2NvcmRpb24tdGl0bGU6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnXFxlODA1JztcbiAgICAgICAgZm9udC1mYW1pbHk6ICdmb250ZWxsbyc7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZTsgfVxuICAgICAgLmFjY29yZGlvbiA+IGxpIC5hY2NvcmRpb24tdGl0bGUgaDIge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG4gICAgLmFjY29yZGlvbiA+IGxpIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgcGFkZGluZy1yaWdodDogMC4zMTI1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5hY2NvcmRpb24gPiBsaSAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG4gICAgICAuYWNjb3JkaW9uID4gbGkgLmFjY29yZGlvbi1jb250ZW50IHVsLCAuYWNjb3JkaW9uID4gbGkgLmFjY29yZGlvbi1jb250ZW50ID4gYSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICAgICAgLmFjY29yZGlvbiA+IGxpIC5hY2NvcmRpb24tY29udGVudCAqIHtcbiAgICAgICAgY29sb3I6ICNhM2EzYTM7IH1cblxuLmRlc2NyLWhvbGRlciB7XG4gIG1hcmdpbi1ib3R0b206IDIuMTg3NXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmRlc2NyLWhvbGRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5kZXNjci1ob2xkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXJlbTsgfSB9XG4gIC5kZXNjci1ob2xkZXIgaDEsIC5kZXNjci1ob2xkZXIgLmgxLCAuZGVzY3ItaG9sZGVyIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICAuZGVzY3ItaG9sZGVyIGFkZHJlc3Mge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuXG4udHJhaW5pbmctYmxvY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmM2Y2O1xuICBwYWRkaW5nOiAxLjU2MjVyZW0gMC45Mzc1cmVtO1xuICBtYXJnaW46IDEuODc1cmVtIGF1dG8gMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRyYWluaW5nLWJsb2NrIHtcbiAgICAgIG1hcmdpbjogMy43NXJlbSBhdXRvIDEuMjVyZW07XG4gICAgICBwYWRkaW5nOiAzLjEyNXJlbTsgfSB9XG4gIC50cmFpbmluZy1ibG9jayAuaG9sZGVyIHtcbiAgICBtYXgtd2lkdGg6IDMxLjI1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC50cmFpbmluZy1ibG9jayBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC50cmFpbmluZy1ibG9jayBoMzphZnRlciB7XG4gICAgICBjb250ZW50OiAn4oCiJztcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBib3R0b206IC0xLjM1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0ycHg7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAudHJhaW5pbmctYmxvY2sgLmJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC50cmFpbmluZy1ibG9jayBwIGEge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC50cmFpbmluZy1ibG9jayBwOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnRlcm1zLWNvbmRpdGlvbnMgaDEsIC50ZXJtcy1jb25kaXRpb25zIC5oMSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG5cbi50ZXJtcy1jb25kaXRpb25zIHAge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIGNvbG9yOiAjYTNhM2EzOyB9XG5cbi50cmFpbmluZy1kZXNjciBwIHtcbiAgbWF4LXdpZHRoOiAzMi41cmVtO1xuICBtYXJnaW46IDAgYXV0byAxLjVyZW07IH1cbiAgLnRyYWluaW5nLWRlc2NyIHAgYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLnRyYWluaW5nLXBpY3R1cmUge1xuICBtYXJnaW46IDEuODc1cmVtIGF1dG8gMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRyYWluaW5nLXBpY3R1cmUge1xuICAgICAgbWFyZ2luOiAzLjc1cmVtIGF1dG8gMS4yNXJlbTsgfSB9XG5cbi5wYWdlLWVycm9yLWhvbGRlciB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDc1JSBjZW50ZXI7XG4gIGhlaWdodDogMTAwdmg7XG4gIG1pbi1oZWlnaHQ6IDM1LjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuOTM3NXJlbTsgfVxuICAucGFnZS1lcnJvci1ob2xkZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMTYsIDIyMiwgMjM4LCAwLjYpOyB9XG4gIC5wYWdlLWVycm9yLWhvbGRlciAuZXJyb3Itd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgbWF4LXdpZHRoOiAxNy41cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5wYWdlLWVycm9yLWhvbGRlciAuZXJyb3Itd3JhcCA+IGRpdiB7XG4gICAgICBmb250LXNpemU6IDMuNzVyZW07XG4gICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucGFnZS1lcnJvci1ob2xkZXIgLmVycm9yLXdyYXAgPiBkaXYge1xuICAgICAgICAgIGZvbnQtc2l6ZTogNXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5wYWdlLWVycm9yLWhvbGRlciAuZXJyb3Itd3JhcCA+IGRpdiB7XG4gICAgICAgICAgZm9udC1zaXplOiA2Ljg3NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAgIC5wYWdlLWVycm9yLWhvbGRlciAuZXJyb3Itd3JhcCA+IGRpdiB7XG4gICAgICAgICAgZm9udC1zaXplOiA4Ljc1cmVtOyB9IH1cbiAgICAucGFnZS1lcnJvci1ob2xkZXIgLmVycm9yLXdyYXAgcCB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAyLjNweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucGFnZS1lcnJvci1ob2xkZXIgLmVycm9yLXdyYXAgcCB7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDMuM3B4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UtZXJyb3ItaG9sZGVyIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IH0gfVxuXG4uc2NoZWR1bGUtYmxvY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW46IDMwcHggMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnNjaGVkdWxlLWJsb2NrIHtcbiAgICAgIG1hcmdpbjogNTBweCAwIDA7IH0gfVxuICAuc2NoZWR1bGUtYmxvY2sgLnRleHQtaG9sZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAzNTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5zY2hlZHVsZS1ibG9jayAudGV4dC1ob2xkZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEyOXB4OyB9IH1cbiAgICAuc2NoZWR1bGUtYmxvY2sgLnRleHQtaG9sZGVyIC5iZy1ob2xkZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgdG9wOiAtNXB4O1xuICAgICAgcmlnaHQ6IC0zNSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLnNjaGVkdWxlLWJsb2NrIC50ZXh0LWhvbGRlciAuYmctaG9sZGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5zY2hlZHVsZS1ibG9jayAudGV4dC1ob2xkZXIgLmJnLWhvbGRlciB7XG4gICAgICAgICAgdG9wOiAtMTBweDtcbiAgICAgICAgICByaWdodDogLTYwJTtcbiAgICAgICAgICBoZWlnaHQ6IDExMCU7IH0gfVxuICAgICAgLnNjaGVkdWxlLWJsb2NrIC50ZXh0LWhvbGRlciAuYmctaG9sZGVyIGltZyB7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IGF1dG87IH1cbiAgLnNjaGVkdWxlLWJsb2NrIC50aXRsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDMycHg7XG4gICAgY29sb3I6ICM4MDgxODU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5zY2hlZHVsZS1ibG9jayAudGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDQycHg7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiA0cHg7IH0gfVxuICAuc2NoZWR1bGUtYmxvY2sgLnllYXIge1xuICAgIGNvbG9yOiAjZTkxZTI1O1xuICAgIGxldHRlci1zcGFjaW5nOiAxNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMjJweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5zY2hlZHVsZS1ibG9jayAueWVhciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDIwcHg7IH0gfVxuICAuc2NoZWR1bGUtYmxvY2sgLmxpbmstaG9sZGVyIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgLnNjaGVkdWxlLWJsb2NrIC5saW5rLWhvbGRlciBhIHtcbiAgICAgIGNvbG9yOiAjNDk0OTQ5OyB9XG4gIC5zY2hlZHVsZS1ibG9jayAuc2NoZWR1bGUtaG9sZGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnNjaGVkdWxlLWJsb2NrIC5zY2hlZHVsZS1ob2xkZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5zY2hlZHVsZS1ibG9jayAuc2NoZWR1bGUtaG9sZGVyIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cbiAgLnNjaGVkdWxlLWJsb2NrIC5zY2hlZHVsZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzliOWI5YztcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIHBhZGRpbmc6IDEwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuc2NoZWR1bGUtYmxvY2sgLnNjaGVkdWxlIHtcbiAgICAgICAgYm9yZGVyOiAwOyB9IH1cbiAgICAuc2NoZWR1bGUtYmxvY2sgLnNjaGVkdWxlID4gKiB7XG4gICAgICBwYWRkaW5nOiA1cHggMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAuc2NoZWR1bGUtYmxvY2sgLnNjaGVkdWxlID4gKiB7XG4gICAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuc2NoZWR1bGUtYmxvY2sgLnNjaGVkdWxlID4gKiB7XG4gICAgICAgICAgaGVpZ2h0OiA4MHB4OyB9IH1cbiAgLnNjaGVkdWxlLWJsb2NrIC5kYXkge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5zY2hlZHVsZS1ibG9jayAuZGF5IHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzMuMyUgLSAyMHB4KTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzliOWI5YztcbiAgICAgICAgbWFyZ2luOiAwIDEwcHggMjBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnNjaGVkdWxlLWJsb2NrIC5kYXkge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzliOWI5YztcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuc2NoZWR1bGUtYmxvY2sgLmRheSArIC5kYXkge1xuICAgICAgICBib3JkZXItbGVmdDogMDsgfSB9XG4gICAgLnNjaGVkdWxlLWJsb2NrIC5kYXk6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnNjaGVkdWxlLWJsb2NrIC53ZWVrLWRheSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOWI5YjljO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgY29sb3I6ICM4NDgzODc7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuc2NoZWR1bGUtYmxvY2sgLndlZWstZGF5IHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzliOWI5YzsgfSB9XG4gIC5zY2hlZHVsZS1ibG9jayAuY291cnNlLW5hbWUge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5zY2hlZHVsZS1ibG9jayAuY291cnNlLW5hbWUge1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICBtYXgtd2lkdGg6IDE1NnB4OyB9IH1cblxuLmFib3V0X3NsaWRlciAuc2xpY2stZG90cyB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4uYWJvdXRfc2xpZGVyIC5zbGljay1hcnJvdyB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAtMi4xODc1cmVtO1xuICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5hYm91dF9zbGlkZXIgLnNsaWNrLWFycm93IHtcbiAgICAgIGJvdHRvbTogLTIuODEyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuYWJvdXRfc2xpZGVyIC5zbGljay1hcnJvdyB7XG4gICAgICBib3R0b206IC0zLjc1cmVtOyB9IH1cblxuLmFib3V0X3NsaWRlciAuc2xpY2stcHJldiB7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gNDBweCk7IH1cblxuLmFib3V0X3NsaWRlciAuc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiBjYWxjKDUwJSAtIDQwcHgpOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBkaXYsIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBkaXYgLmlubmVyLCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGEgLmlubmVyIHtcbiAgICBtYXgtd2lkdGg6IDI4LjQzNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBkaXYgLmlubmVyLCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGEgLmlubmVyIHtcbiAgICBtYXJnaW4tbGVmdDogMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gZGl2IC5pbm5lciwgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBhIC5pbm5lciB7XG4gICAgbWFyZ2luLWxlZnQ6IDVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gZGl2IC5pbm5lciwgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBhIC5pbm5lciB7XG4gICAgbWFyZ2luLWxlZnQ6IDcuNXJlbTsgfSB9XG5cbi5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlLnJldmVyc2UgPiBkaXYsIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlLnJldmVyc2UgPiBhIHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUucmV2ZXJzZSA+IGRpdiA+IGRpdiwgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUucmV2ZXJzZSA+IGEgPiBkaXYge1xuICAgICAgbWFyZ2luOiAwIDAuOTM3NXJlbSAwIDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUucmV2ZXJzZSA+IGRpdiA+IGRpdiwgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUucmV2ZXJzZSA+IGEgPiBkaXYge1xuICAgICAgbWFyZ2luOiAwIDEuODc1cmVtIDAgMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZS5yZXZlcnNlID4gZGl2ID4gZGl2LCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZS5yZXZlcnNlID4gYSA+IGRpdiB7XG4gICAgICBtYXJnaW46IDAgMS44NzVyZW0gMCAwOyB9IH1cblxuLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSBpbWcge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbi5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gZGl2LCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGEge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGRpdiA+IGRpdiwgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBhID4gZGl2IHtcbiAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgbWFyZ2luOiAwIDAgMCAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBkaXYgPiBkaXYsIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSA+IGRpdiB7XG4gICAgICBtYXJnaW46IDAgMCAwIDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gZGl2ID4gZGl2LCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGEgPiBkaXYge1xuICAgICAgbWFyZ2luOiAwIDAgMCA0LjM3NXJlbTsgfSB9XG4gIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gZGl2IGltZywgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBhIGltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gZGl2IHVsLCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGRpdiBwLCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGRpdiBibG9ja3F1b3RlLCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGRpdiBzdHJvbmcsIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gZGl2IHNtYWxsLCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGRpdiBlbSwgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBhIHVsLCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGEgcCwgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBhIGJsb2NrcXVvdGUsIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSBzdHJvbmcsIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSBzbWFsbCwgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBhIGVtIHtcbiAgICAgIG1heC13aWR0aDogMjguNDM3NXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBkaXYgdWwsIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gZGl2IHAsIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gZGl2IGJsb2NrcXVvdGUsIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gZGl2IHN0cm9uZywgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBkaXYgc21hbGwsIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gZGl2IGVtLCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGEgdWwsIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSBwLCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGEgYmxvY2txdW90ZSwgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBhIHN0cm9uZywgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBhIHNtYWxsLCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGEgZW0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gZGl2IHVsLCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGRpdiBwLCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGRpdiBibG9ja3F1b3RlLCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGRpdiBzdHJvbmcsIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gZGl2IHNtYWxsLCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGRpdiBlbSwgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBhIHVsLCAuYWJvdXRfc2xpZGVyIC5zbGljay1zbGlkZSA+IGEgcCwgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBhIGJsb2NrcXVvdGUsIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSBzdHJvbmcsIC5hYm91dF9zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSBzbWFsbCwgLmFib3V0X3NsaWRlciAuc2xpY2stc2xpZGUgPiBhIGVtIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1LjYyNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAuYWJvdXQtbGlzdC5hYm91dC1nYWxsZXJ5IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMy4xMjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmFib3V0LWxpc3QgLmludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stcHJldiwgLmFib3V0LWxpc3QgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IC0xMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5hYm91dC1saXN0IC5pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLW5leHQsIC5hYm91dC1saXN0IC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogLTEwcHg7IH0gfVxuXG4uYWJvdXQtbGlzdCAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay10cmFjaywgLmFib3V0LWxpc3QgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXRyYWNrIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmFib3V0LWxpc3QgLmludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stdHJhY2sgLnNsaWNrLXNsaWRlIHAsIC5hYm91dC1saXN0IC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay10cmFjayAuc2xpY2stc2xpZGUgcCB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuXG4uYWJvdXQtbGlzdCAuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYzZjY7XG4gIHBhZGRpbmc6IDIuMTg3NXJlbSAwO1xuICBtYXJnaW4tYm90dG9tOiAyLjE4NzVyZW07IH1cbiAgLmFib3V0LWxpc3QgLml0ZW06bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5hYm91dC1saXN0IC5pdGVtIGltZyB7XG4gICAgbWFyZ2luOiAwIGF1dG8gMC45Mzc1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmFib3V0LWxpc3QgLml0ZW0gaW1nIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5hYm91dC1saXN0IC5pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDQuMzc1cmVtIDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5hYm91dC1saXN0IC5pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDYuMjVyZW0gMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDcuNXJlbTsgfSB9XG4gIC5hYm91dC1saXN0IC5pdGVtLm1pZGRsZSAuaXRlbS1ob2xkZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuYWJvdXQtbGlzdCAuaXRlbS5taWRkbGUgLml0ZW0taG9sZGVyIC5pbm5lciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmFib3V0LWxpc3QgLml0ZW0ubWlkZGxlIC5pdGVtLWhvbGRlciAuaW5uZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmFib3V0LWxpc3QgLml0ZW0ubWlkZGxlIC5pdGVtLWhvbGRlciAuaW5uZXIge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5hYm91dC1saXN0IC5pdGVtLm1pZGRsZSAuaXRlbS1ob2xkZXIgLmlubmVyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA3LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmFib3V0LWxpc3QgLml0ZW0ucmV2ZXJzZSAucGljdHVyZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hYm91dC1saXN0IC5pdGVtLnJldmVyc2UgLnBpY3R1cmUge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5hYm91dC1saXN0IC5pdGVtLnJldmVyc2UgLnBpY3R1cmUge1xuICAgICAgbWFyZ2luLWxlZnQ6IDMuNzVyZW07IH0gfVxuICAuYWJvdXQtbGlzdCAuaXRlbS5yZXZlcnNlIC5pdGVtLWhvbGRlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmFib3V0LWxpc3QgLml0ZW0ucmV2ZXJzZSAuaXRlbS1ob2xkZXIgLmlubmVyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5hYm91dC1saXN0IC5pdGVtLnJldmVyc2UgLml0ZW0taG9sZGVyIC5pbm5lciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS44NzVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxLjg3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmFib3V0LWxpc3QgLml0ZW0ucmV2ZXJzZSAuaXRlbS1ob2xkZXIgLmlubmVyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmFib3V0LWxpc3QgLml0ZW0ucmV2ZXJzZSAuaXRlbS1ob2xkZXIgLmlubmVyIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA3LjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA3LjVyZW07IH0gfVxuXG4uYWJvdXQtbGlzdCAucGljdHVyZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmFib3V0LWxpc3QgLnBpY3R1cmUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIHRleHQtYWxpZ246IGluaGVyaXQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFib3V0LWxpc3QgLnBpY3R1cmUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYWJvdXQtbGlzdCAucGljdHVyZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDMuNzVyZW07IH0gfVxuICAuYWJvdXQtbGlzdCAucGljdHVyZSBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMCBhdXRvIDAuOTM3NXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5hYm91dC1saXN0IC5waWN0dXJlIGEge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAuYWJvdXQtbGlzdCAucGljdHVyZSBhIGltZyB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAuYWJvdXQtbGlzdCAucGljdHVyZSBhOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpOyB9XG4gICAgLmFib3V0LWxpc3QgLnBpY3R1cmUgYTpob3ZlciAucGxheS1idG4gLmljb24ge1xuICAgICAgZmlsbDogI2ZmZmZmZjsgfVxuICAgIC5hYm91dC1saXN0IC5waWN0dXJlIGEgLnBsYXktYnRuIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgd2lkdGg6IDQuNjg3NXJlbTtcbiAgICAgIGhlaWdodDogNC42ODc1cmVtOyB9XG4gICAgICAuYWJvdXQtbGlzdCAucGljdHVyZSBhIC5wbGF5LWJ0biBzdmcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICAuYWJvdXQtbGlzdCAucGljdHVyZSBhIC5wbGF5LWJ0biAuaWNvbiB7XG4gICAgICAgIGZpbGw6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiAgICAgICAgdHJhbnNpdGlvbjogZmlsbCAuM3MgZWFzZTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuYWJvdXQtbGlzdCAucGljdHVyZSBhIC5wbGF5LWJ0biB7XG4gICAgICAgICAgd2lkdGg6IDdyZW07XG4gICAgICAgICAgaGVpZ2h0OiA3cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYWJvdXQtbGlzdCAuaXRlbS1ob2xkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5hYm91dC1saXN0IC5pdGVtLWhvbGRlciAuaW5uZXIge1xuICAgIG1heC13aWR0aDogMjguNDM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYWJvdXQtbGlzdCAuaXRlbS1ob2xkZXIgLmlubmVyIHtcbiAgICBtYXJnaW4tbGVmdDogMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5hYm91dC1saXN0IC5pdGVtLWhvbGRlciAuaW5uZXIge1xuICAgIG1hcmdpbi1sZWZ0OiA1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuYWJvdXQtbGlzdCAuaXRlbS1ob2xkZXIgLmlubmVyIHtcbiAgICBtYXJnaW4tbGVmdDogNy41cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYWJvdXQtbGlzdCBwIHtcbiAgICBsaW5lLWhlaWdodDogMS44NzVyZW07IH0gfVxuXG4uYWJvdXQtbGlzdCB1bCB7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDJyZW0gMCAxcmVtOyB9XG4gIC5hYm91dC1saXN0IHVsIGxpOmJlZm9yZSB7XG4gICAgY29udGVudDogJ+KAoic7XG4gICAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYWJvdXQtbGlzdCB1bCB7XG4gICAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfSB9XG5cbi5hYm91dC1saXN0IC5oMSwgLmFib3V0LWxpc3QgaDEge1xuICBjb2xvcjogcmdiYSgxNjMsIDE2MywgMTYzLCAwLjMpO1xuICBmb250LXNpemU6IDEuODc1cmVtO1xuICBmb250LWZhbWlseTogJ21pbGxlcicsIHNhbnMtc2VyaWY7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hYm91dC1saXN0IC5oMSwgLmFib3V0LWxpc3QgaDEge1xuICAgICAgZm9udC1zaXplOiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYWJvdXQtbGlzdCAuaDEsIC5hYm91dC1saXN0IGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmFib3V0LWxpc3QgLmgxLCAuYWJvdXQtbGlzdCBoMSB7XG4gICAgICBmb250LXNpemU6IDYuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAxLjI1ZW0pIHtcbiAgICAuYWJvdXQtbGlzdCAuaDEsIC5hYm91dC1saXN0IGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogOS4zNzVyZW07IH0gfVxuXG4ubW9yZS1hYm91dCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBtYXJnaW46IDAuOTM3NXJlbSBhdXRvO1xuICBkaXNwbGF5OiB0YWJsZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm1vcmUtYWJvdXQge1xuICAgICAgbWFyZ2luOiAxLjg3NXJlbSBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5tb3JlLWFib3V0IHtcbiAgICAgIG1hcmdpbjogMi42MjVyZW0gYXV0bzsgfSB9XG5cbi5jb250YWN0cy1ob2xkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb250YWN0cy1ob2xkZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNCk7XG4gICAgICBwYWRkaW5nOiAxLjg3NXJlbSAwOyB9IH1cbiAgLmNvbnRhY3RzLWhvbGRlcjpsYXN0LW9mLXR5cGUge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuY29udGFjdHMtaG9sZGVyOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQuMDYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGFjdHMtaG9sZGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfSB9XG4gIC5jb250YWN0cy1ob2xkZXIgaDIge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBmb250LWZhbWlseTogJ0JyYW5kb25Hcm90ZXNxdWUnLCBzYW5zLXNlcmlmOyB9XG4gICAgLmNvbnRhY3RzLWhvbGRlciBoMiBsYWJlbCB7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gIC5jb250YWN0cy1ob2xkZXIgLml0ZW0ge1xuICAgIHBhZGRpbmc6IDAuOTM3NXJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjE0KTtcbiAgICBjb2xvcjogI2EzYTNhMzsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jb250YWN0cy1ob2xkZXIgLml0ZW0ge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xNCk7XG4gICAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAgICAgLmNvbnRhY3RzLWhvbGRlciAuaXRlbTpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmNvbnRhY3RzLWhvbGRlciAuaXRlbSB7XG4gICAgICAgIHBhZGRpbmc6IDEuNTYyNXJlbSAzLjEyNXJlbTsgfSB9XG5cbi5jb250YWN0cy1mb3JtIHtcbiAgbWFyZ2luLWJvdHRvbTogMi4xODc1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuY29udGFjdHMtZm9ybSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuY29udGFjdHMtZm9ybSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1LjkzNzVyZW07IH0gfVxuICAuY29udGFjdHMtZm9ybSBoMiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGZvbnQtZmFtaWx5OiAnQnJhbmRvbkdyb3Rlc3F1ZScsIHNhbnMtc2VyaWY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmNvbnRhY3RzLWZvcm0gaDI6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ+KAoic7XG4gICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgYm90dG9tOiAtMS4zNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMnB4O1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuY29udGFjdHMtZm9ybSBoMiBsYWJlbCB7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gIC5jb250YWN0cy1mb3JtIHAge1xuICAgIG1heC13aWR0aDogMzguMTI1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvIDEuNTYyNXJlbTsgfVxuICAuY29udGFjdHMtZm9ybSB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAuY29udGFjdHMtZm9ybSAud2lkZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5jb250YWN0cy1mb3JtIC53aWRlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi4zMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb250YWN0cy1mb3JtIC5maWVsZHMge1xuICAgICAgbWFyZ2luOiAwIC0wLjkzNzVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTZweDsgfSB9XG4gIC5jb250YWN0cy1mb3JtIC5maWVsZHMgLmZpZWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY29udGFjdHMtZm9ybSAuZmllbGRzIC5maWVsZCB7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDAuOTM3NXJlbTtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuY29udGFjdHMtZm9ybSAuZmllbGRzIC5maWVsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQuNjg3NXJlbTsgfSB9XG4gIC5jb250YWN0cy1mb3JtIHRleHRhcmVhIHtcbiAgICBwYWRkaW5nOiAxLjI1cmVtIDA7IH1cbiAgLmNvbnRhY3RzLWZvcm0gaW5wdXQge1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuICAuY29udGFjdHMtZm9ybSBpbnB1dCwgLmNvbnRhY3RzLWZvcm0gdGV4dGFyZWEge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICAgIC5jb250YWN0cy1mb3JtIGlucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLCAuY29udGFjdHMtZm9ybSB0ZXh0YXJlYTo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogI2EzYTNhMztcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4yNXM7IH1cbiAgICAuY29udGFjdHMtZm9ybSBpbnB1dDo6LW1vei1wbGFjZWhvbGRlciwgLmNvbnRhY3RzLWZvcm0gdGV4dGFyZWE6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICNhM2EzYTM7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAuMjVzOyB9XG4gICAgLmNvbnRhY3RzLWZvcm0gaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyLCAuY29udGFjdHMtZm9ybSB0ZXh0YXJlYTotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICNhM2EzYTM7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4yNXM7IH1cbiAgLmNvbnRhY3RzLWZvcm0gaW5wdXQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwMDAwO1xuICAgIGhlaWdodDogMy42MjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY29udGFjdHMtZm9ybSBpbnB1dCB7XG4gICAgICAgIGhlaWdodDogMy43NXJlbTsgfSB9XG4gICAgLmNvbnRhY3RzLWZvcm0gaW5wdXQ6Zm9jdXMge1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDAwMDA7IH1cbiAgLmNvbnRhY3RzLWZvcm0gdGV4dGFyZWEge1xuICAgIGhlaWdodDogMTMuMTI1cmVtO1xuICAgIHJlc2l6ZTogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzAwMDAwMDsgfVxuXG4uY2F0YWxvZy1jYXRlZ29yeS12aWV3LmNhdGVnb3J5cGF0aC1zdG9yZSAubWFpbi1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhdGFsb2ctY2F0ZWdvcnktdmlldy5jYXRlZ29yeXBhdGgtc3RvcmUgLmludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stc2xpZGU6Zmlyc3QtY2hpbGQsIC5jYXRhbG9nLWNhdGVnb3J5LXZpZXcuY2F0ZWdvcnlwYXRoLXN0b3JlIC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZTpmaXJzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDk1JSBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jYXRhbG9nLWNhdGVnb3J5LXZpZXcuY2F0ZWdvcnlwYXRoLXN0b3JlIC5pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXNsaWRlOmZpcnN0LWNoaWxkLCAuY2F0YWxvZy1jYXRlZ29yeS12aWV3LmNhdGVnb3J5cGF0aC1zdG9yZSAuc2Vjb25kX2ludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stc2xpZGU6Zmlyc3QtY2hpbGQge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjsgfSB9XG5cbi5jYXRhbG9nLWNhdGVnb3J5LXZpZXcuY2F0ZWdvcnlwYXRoLXN0b3JlIC5pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXNsaWRlOmxhc3QtY2hpbGQsIC5jYXRhbG9nLWNhdGVnb3J5LXZpZXcuY2F0ZWdvcnlwYXRoLXN0b3JlIC5zZWNvbmRfaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZTpsYXN0LWNoaWxkIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNSUgY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2F0YWxvZy1jYXRlZ29yeS12aWV3LmNhdGVnb3J5cGF0aC1zdG9yZSAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1zbGlkZTpsYXN0LWNoaWxkLCAuY2F0YWxvZy1jYXRlZ29yeS12aWV3LmNhdGVnb3J5cGF0aC1zdG9yZSAuc2Vjb25kX2ludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stc2xpZGU6bGFzdC1jaGlsZCB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9IH1cblxuLmNhdGVnb3J5cGF0aC1zdG9yZSAucGFnZS10aXRsZS13cmFwcGVyIHtcbiAgZm9udC1zaXplOiAwO1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLmNhdGVnb3J5cGF0aC1zdG9yZSAucGFnZS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMDtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5jYXRlZ29yeXBhdGgtc3RvcmUgLm1haW4tY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5jYXRlZ29yeXBhdGgtc3RvcmUgLmludHJvZHVjaW5nX3NsaWRlciwgLmNhdGVnb3J5cGF0aC1zdG9yZSAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIHtcbiAgcGFkZGluZzogMDsgfVxuICAuY2F0ZWdvcnlwYXRoLXN0b3JlIC5pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWRlci1iZywgLmNhdGVnb3J5cGF0aC1zdG9yZSAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIC5zbGlkZXItYmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiA1O1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA3NSUgY2VudGVyOyB9XG4gICAgLmNhdGVnb3J5cGF0aC1zdG9yZSAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGlkZXItYmcucmV2ZXJzZSwgLmNhdGVnb3J5cGF0aC1zdG9yZSAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIC5zbGlkZXItYmcucmV2ZXJzZSB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAyNSUgY2VudGVyOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNhdGVnb3J5cGF0aC1zdG9yZSAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGlkZXItYmcsIC5jYXRlZ29yeXBhdGgtc3RvcmUgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpZGVyLWJnIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlciAhaW1wb3J0YW50OyB9IH1cbiAgLmNhdGVnb3J5cGF0aC1zdG9yZSAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGlkZS1jb250ZW50LWhvbGRlciwgLmNhdGVnb3J5cGF0aC1zdG9yZSAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIC5zbGlkZS1jb250ZW50LWhvbGRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIHBhZGRpbmc6IDEuODc1cmVtIDIuNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jYXRlZ29yeXBhdGgtc3RvcmUgLmludHJvZHVjaW5nX3NsaWRlciAuc2xpZGUtY29udGVudC1ob2xkZXIsIC5jYXRlZ29yeXBhdGgtc3RvcmUgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpZGUtY29udGVudC1ob2xkZXIge1xuICAgICAgICBwYWRkaW5nOiAxLjg3NXJlbSA0LjM3NXJlbTtcbiAgICAgICAgaGVpZ2h0OiA0MHJlbTtcbiAgICAgICAgbWluLWhlaWdodDogNDByZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5jYXRlZ29yeXBhdGgtc3RvcmUgLmludHJvZHVjaW5nX3NsaWRlciAuc2xpZGUtY29udGVudC1ob2xkZXIsIC5jYXRlZ29yeXBhdGgtc3RvcmUgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpZGUtY29udGVudC1ob2xkZXIge1xuICAgICAgICBoZWlnaHQ6IDUzLjc1cmVtO1xuICAgICAgICBtaW4taGVpZ2h0OiA1My43NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmNhdGVnb3J5cGF0aC1zdG9yZSAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGlkZS1jb250ZW50LWhvbGRlciwgLmNhdGVnb3J5cGF0aC1zdG9yZSAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIC5zbGlkZS1jb250ZW50LWhvbGRlciB7XG4gICAgICAgIHBhZGRpbmc6IDEuODc1cmVtIDYuMjVyZW07IH0gfVxuICAuY2F0ZWdvcnlwYXRoLXN0b3JlIC5pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLWFycm93LCAuY2F0ZWdvcnlwYXRoLXN0b3JlIC5pbnRyb2R1Y2luZ19zdG9yZS1zbGlkZXIgLnNsaWNrLWFycm93IHtcbiAgICB0b3A6IGNhbGMoNTAlIC0gMTVweCk7IH1cbiAgLmNhdGVnb3J5cGF0aC1zdG9yZSAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1wcmV2LCAuY2F0ZWdvcnlwYXRoLXN0b3JlIC5pbnRyb2R1Y2luZ19zdG9yZS1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDAuMzEyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jYXRlZ29yeXBhdGgtc3RvcmUgLmludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stcHJldiwgLmNhdGVnb3J5cGF0aC1zdG9yZSAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIC5zbGljay1wcmV2IHtcbiAgICAgICAgbGVmdDogMS41NjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuY2F0ZWdvcnlwYXRoLXN0b3JlIC5pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLXByZXYsIC5jYXRlZ29yeXBhdGgtc3RvcmUgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpY2stcHJldiB7XG4gICAgICAgIGxlZnQ6IDQuMzc1cmVtOyB9IH1cbiAgLmNhdGVnb3J5cGF0aC1zdG9yZSAuaW50cm9kdWNpbmdfc2xpZGVyIC5zbGljay1uZXh0LCAuY2F0ZWdvcnlwYXRoLXN0b3JlIC5pbnRyb2R1Y2luZ19zdG9yZS1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAwLjMxMjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY2F0ZWdvcnlwYXRoLXN0b3JlIC5pbnRyb2R1Y2luZ19zbGlkZXIgLnNsaWNrLW5leHQsIC5jYXRlZ29yeXBhdGgtc3RvcmUgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciAuc2xpY2stbmV4dCB7XG4gICAgICAgIHJpZ2h0OiAxLjU2MjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5jYXRlZ29yeXBhdGgtc3RvcmUgLmludHJvZHVjaW5nX3NsaWRlciAuc2xpY2stbmV4dCwgLmNhdGVnb3J5cGF0aC1zdG9yZSAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IDQuMzc1cmVtOyB9IH1cbiAgLmNhdGVnb3J5cGF0aC1zdG9yZSAuaW50cm9kdWNpbmdfc2xpZGVyIHAsIC5jYXRlZ29yeXBhdGgtc3RvcmUgLmludHJvZHVjaW5nX3N0b3JlLXNsaWRlciBwIHtcbiAgICBtYXgtd2lkdGg6IDM3LjVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG8gMXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjVweDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jYXRlZ29yeXBhdGgtc3RvcmUgLnNsaWNrLWRvdHMge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxNXB4O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jYXRlZ29yeXBhdGgtc3RvcmUgLnNsaWNrLWRvdHMgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMTBweCAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2F0ZWdvcnlwYXRoLXN0b3JlIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyLXdpZHRoOiA0cHg7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2F0ZWdvcnlwYXRoLXN0b3JlIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlci13aWR0aDogOHB4IDVweCAwIDVweDtcbiAgICBib3JkZXItY29sb3I6ICMwMDAwMDAgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH0gfVxuXG4uY2F0YWxvZy1jYXRlZ29yeS12aWV3IC5zb3J0ZXIsIC5jYXRhbG9nLWNhdGVnb3J5LXZpZXcgLmNvdW50LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNhdGFsb2ctY2F0ZWdvcnktdmlldyAubWFpbi1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLmNhdGFsb2ctY2F0ZWdvcnktdmlldyBtYWluIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uY2F0YWxvZy1jYXRlZ29yeS12aWV3IC5jb2wtbGVmdCB7XG4gIG1heC13aWR0aDogMTguNzVyZW07XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY2F0YWxvZy1jYXRlZ29yeS12aWV3IC5jb2wtbGVmdCB7XG4gICAgICB3aWR0aDogMjYlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtaW4td2lkdGg6IDE3LjVyZW07XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNhdGFsb2ctY2F0ZWdvcnktdmlldyAuY29sLWxlZnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuY2F0YWxvZy1jYXRlZ29yeS12aWV3IC5jb2wtbGVmdCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG4gICAgICB3aWR0aDogMjMuNSU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jYXRhbG9nLWNhdGVnb3J5LXZpZXcgLmNvbDItbGVmdC1sYXlvdXQgLmNvbC5tYWluIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH0gfVxuXG4uY2F0YWxvZy1jYXRlZ29yeS12aWV3IC5jb2wubWFpbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5jYXRhbG9nLWNhdGVnb3J5LXZpZXcgLmNvbC5tYWluIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IH0gfVxuXG4uY2F0YWxvZy1jYXRlZ29yeS12aWV3IC5wYWdpbmF0aW9uIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY2F0YWxvZy1jYXRlZ29yeS12aWV3IC5jb2wtbGVmdCB7XG4gIHBhZGRpbmc6IDAgMC42MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jYXRhbG9nLWNhdGVnb3J5LXZpZXcgLmNvbC1sZWZ0IHtcbiAgICAgIHBhZGRpbmc6IDAgMC45Mzc1cmVtOyB9IH1cblxuLmNhdGFsb2ctY2F0ZWdvcnktdmlldyBoNCB7XG4gIGZvbnQtZmFtaWx5OiAnQnJhbmRvbkdyb3Rlc3F1ZScsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbi1ib3R0b206IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi5jYXRhbG9nLWNhdGVnb3J5LXZpZXcgLmNvbHMge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4uY2F0YWxvZy1jYXRlZ29yeS12aWV3IC5sb2FkaW5nLW1hc2sge1xuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgei1pbmRleDogOTk5O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7IH1cbiAgLmNhdGFsb2ctY2F0ZWdvcnktdmlldyAubG9hZGluZy1tYXNrIC5sb2FkZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH1cbiAgLmNhdGFsb2ctY2F0ZWdvcnktdmlldyAubG9hZGluZy1tYXNrIGltZyB7XG4gICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50OyB9XG5cbi5ibG9jay1sYXllcmVkLW5hdiAuYXctbG4tY2xlYXItYWxsIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgcGFkZGluZzogMDtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmJsb2NrLWxheWVyZWQtbmF2IC5hdy1sbi1jbGVhci1hbGwgYSB7XG4gICAgaGVpZ2h0OiAyLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwIDAuNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlOyB9XG4gICAgLmJsb2NrLWxheWVyZWQtbmF2IC5hdy1sbi1jbGVhci1hbGwgYTpob3ZlciwgLmJsb2NrLWxheWVyZWQtbmF2IC5hdy1sbi1jbGVhci1hbGwgYTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJsb2NrLWxheWVyZWQtbmF2IC5hdy1sbi1jbGVhci1hbGwgYSB7XG4gICAgICAgIGhlaWdodDogMy41cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMy42MjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfSB9XG5cbi5vcHRpb24tYmxvY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmM2Y2O1xuICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5vcHRpb24tYmxvY2sge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9IH1cbiAgLm9wdGlvbi1ibG9jay5hY3RpdmUgLmZpbHRlci1vcHRpb25zLXRpdGxlIHNwYW46YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfVxuICAub3B0aW9uLWJsb2NrIC5maWx0ZXItb3B0aW9ucy10aXRsZSB7XG4gICAgcGFkZGluZzogMS4wNjI1cmVtIDEuMDYyNXJlbSAwLjgxMjVyZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5vcHRpb24tYmxvY2sgLmZpbHRlci1vcHRpb25zLXRpdGxlIHtcbiAgICAgICAgcGFkZGluZzogMS42ODc1cmVtIDEuNjg3NXJlbSAxLjQzNzVyZW07IH0gfVxuICAgIC5vcHRpb24tYmxvY2sgLmZpbHRlci1vcHRpb25zLXRpdGxlIHNwYW4ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5vcHRpb24tYmxvY2sgLmZpbHRlci1vcHRpb25zLXRpdGxlIHNwYW4ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLm9wdGlvbi1ibG9jayAuZmlsdGVyLW9wdGlvbnMtdGl0bGUgc3BhbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cbiAgICAgIC5vcHRpb24tYmxvY2sgLmZpbHRlci1vcHRpb25zLXRpdGxlIHNwYW46YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlOyB9XG4gICAgICAub3B0aW9uLWJsb2NrIC5maWx0ZXItb3B0aW9ucy10aXRsZSBzcGFuOmJlZm9yZSwgLm9wdGlvbi1ibG9jayAuZmlsdGVyLW9wdGlvbnMtdGl0bGUgc3BhbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IGNhbGMoNTAlIC0gMXB4KTtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOyB9XG4gIC5vcHRpb24tYmxvY2sgLmZpbHRlci1vcHRpb25zLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDAuODEyNXJlbSAxLjA2MjVyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5vcHRpb24tYmxvY2sgLmZpbHRlci1vcHRpb25zLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAxLjQzNzVyZW0gMS42ODc1cmVtOyB9IH1cbiAgLm9wdGlvbi1ibG9jayBvbCwgLm9wdGlvbi1ibG9jayB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5vcHRpb24tYmxvY2sgb2wgbGksIC5vcHRpb24tYmxvY2sgdWwgbGkge1xuICAgICAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAub3B0aW9uLWJsb2NrIG9sIGxpLCAub3B0aW9uLWJsb2NrIHVsIGxpIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfSB9XG4gIC5vcHRpb24tYmxvY2sgLmNhdGVnb3JpZXMgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5vcHRpb24tYmxvY2sgLmNhdGVnb3JpZXMgbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuICAub3B0aW9uLWJsb2NrIC5jYXRlZ29yaWVzIC5jYXQtbmFtZTpiZWZvcmUge1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsgfVxuICAub3B0aW9uLWJsb2NrIC5jdXN0b20tZmlsdGVyZWQtbGlzdCAuaXRlbSwgLm9wdGlvbi1ibG9jayAuY3VzdG9tLWZpbHRlcmVkLWxpc3QgbGFiZWwsIC5vcHRpb24tYmxvY2sgLmZpbHRlci10eXBlIC5pdGVtLCAub3B0aW9uLWJsb2NrIC5maWx0ZXItdHlwZSBsYWJlbCwgLm9wdGlvbi1ibG9jayAuY2F0ZWdvcmllcy1zY3JvbGwgLml0ZW0sIC5vcHRpb24tYmxvY2sgLmNhdGVnb3JpZXMtc2Nyb2xsIGxhYmVsIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgIC5vcHRpb24tYmxvY2sgLmN1c3RvbS1maWx0ZXJlZC1saXN0IC5pdGVtLnNob3ctbW9yZSwgLm9wdGlvbi1ibG9jayAuY3VzdG9tLWZpbHRlcmVkLWxpc3QgbGFiZWwuc2hvdy1tb3JlLCAub3B0aW9uLWJsb2NrIC5maWx0ZXItdHlwZSAuaXRlbS5zaG93LW1vcmUsIC5vcHRpb24tYmxvY2sgLmZpbHRlci10eXBlIGxhYmVsLnNob3ctbW9yZSwgLm9wdGlvbi1ibG9jayAuY2F0ZWdvcmllcy1zY3JvbGwgLml0ZW0uc2hvdy1tb3JlLCAub3B0aW9uLWJsb2NrIC5jYXRlZ29yaWVzLXNjcm9sbCBsYWJlbC5zaG93LW1vcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAub3B0aW9uLWJsb2NrIC5jdXN0b20tZmlsdGVyZWQtbGlzdCAuY2F0LW5hbWUsIC5vcHRpb24tYmxvY2sgLmZpbHRlci10eXBlIC5jYXQtbmFtZSwgLm9wdGlvbi1ibG9jayAuY2F0ZWdvcmllcy1zY3JvbGwgLmNhdC1uYW1lIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbSAhaW1wb3J0YW50OyB9XG4gICAgLm9wdGlvbi1ibG9jayAuY3VzdG9tLWZpbHRlcmVkLWxpc3QgLmNhdC1uYW1lOmJlZm9yZSwgLm9wdGlvbi1ibG9jayAuZmlsdGVyLXR5cGUgLmNhdC1uYW1lOmJlZm9yZSwgLm9wdGlvbi1ibG9jayAuY2F0ZWdvcmllcy1zY3JvbGwgLmNhdC1uYW1lOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAn4oCiJztcbiAgICAgIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlOyB9XG4gIC5vcHRpb24tYmxvY2sgLmN1c3RvbS1maWx0ZXJlZC1saXN0IHNwYW4sIC5vcHRpb24tYmxvY2sgLmN1c3RvbS1maWx0ZXJlZC1saXN0IGEsIC5vcHRpb24tYmxvY2sgLmZpbHRlci10eXBlIHNwYW4sIC5vcHRpb24tYmxvY2sgLmZpbHRlci10eXBlIGEsIC5vcHRpb24tYmxvY2sgLmNhdGVnb3JpZXMtc2Nyb2xsIHNwYW4sIC5vcHRpb24tYmxvY2sgLmNhdGVnb3JpZXMtc2Nyb2xsIGEge1xuICAgIGNvbG9yOiAjYTNhM2EzO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIC4zcyBlYXNlOyB9XG4gIC5vcHRpb24tYmxvY2sgLmN1c3RvbS1maWx0ZXJlZC1saXN0IGxpLCAub3B0aW9uLWJsb2NrIC5maWx0ZXItdHlwZSBsaSwgLm9wdGlvbi1ibG9jayAuY2F0ZWdvcmllcy1zY3JvbGwgbGkge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gICAgLm9wdGlvbi1ibG9jayAuY3VzdG9tLWZpbHRlcmVkLWxpc3QgbGk6aG92ZXIgYSwgLm9wdGlvbi1ibG9jayAuY3VzdG9tLWZpbHRlcmVkLWxpc3QgbGk6aG92ZXIgc3BhbiwgLm9wdGlvbi1ibG9jayAuY3VzdG9tLWZpbHRlcmVkLWxpc3QgbGk6Zm9jdXMgYSwgLm9wdGlvbi1ibG9jayAuY3VzdG9tLWZpbHRlcmVkLWxpc3QgbGk6Zm9jdXMgc3BhbiwgLm9wdGlvbi1ibG9jayAuZmlsdGVyLXR5cGUgbGk6aG92ZXIgYSwgLm9wdGlvbi1ibG9jayAuZmlsdGVyLXR5cGUgbGk6aG92ZXIgc3BhbiwgLm9wdGlvbi1ibG9jayAuZmlsdGVyLXR5cGUgbGk6Zm9jdXMgYSwgLm9wdGlvbi1ibG9jayAuZmlsdGVyLXR5cGUgbGk6Zm9jdXMgc3BhbiwgLm9wdGlvbi1ibG9jayAuY2F0ZWdvcmllcy1zY3JvbGwgbGk6aG92ZXIgYSwgLm9wdGlvbi1ibG9jayAuY2F0ZWdvcmllcy1zY3JvbGwgbGk6aG92ZXIgc3BhbiwgLm9wdGlvbi1ibG9jayAuY2F0ZWdvcmllcy1zY3JvbGwgbGk6Zm9jdXMgYSwgLm9wdGlvbi1ibG9jayAuY2F0ZWdvcmllcy1zY3JvbGwgbGk6Zm9jdXMgc3BhbiB7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgICAgLm9wdGlvbi1ibG9jayAuY3VzdG9tLWZpbHRlcmVkLWxpc3QgbGk6aG92ZXIgYTpiZWZvcmUsIC5vcHRpb24tYmxvY2sgLmN1c3RvbS1maWx0ZXJlZC1saXN0IGxpOmhvdmVyIHNwYW46YmVmb3JlLCAub3B0aW9uLWJsb2NrIC5jdXN0b20tZmlsdGVyZWQtbGlzdCBsaTpmb2N1cyBhOmJlZm9yZSwgLm9wdGlvbi1ibG9jayAuY3VzdG9tLWZpbHRlcmVkLWxpc3QgbGk6Zm9jdXMgc3BhbjpiZWZvcmUsIC5vcHRpb24tYmxvY2sgLmZpbHRlci10eXBlIGxpOmhvdmVyIGE6YmVmb3JlLCAub3B0aW9uLWJsb2NrIC5maWx0ZXItdHlwZSBsaTpob3ZlciBzcGFuOmJlZm9yZSwgLm9wdGlvbi1ibG9jayAuZmlsdGVyLXR5cGUgbGk6Zm9jdXMgYTpiZWZvcmUsIC5vcHRpb24tYmxvY2sgLmZpbHRlci10eXBlIGxpOmZvY3VzIHNwYW46YmVmb3JlLCAub3B0aW9uLWJsb2NrIC5jYXRlZ29yaWVzLXNjcm9sbCBsaTpob3ZlciBhOmJlZm9yZSwgLm9wdGlvbi1ibG9jayAuY2F0ZWdvcmllcy1zY3JvbGwgbGk6aG92ZXIgc3BhbjpiZWZvcmUsIC5vcHRpb24tYmxvY2sgLmNhdGVnb3JpZXMtc2Nyb2xsIGxpOmZvY3VzIGE6YmVmb3JlLCAub3B0aW9uLWJsb2NrIC5jYXRlZ29yaWVzLXNjcm9sbCBsaTpmb2N1cyBzcGFuOmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgLm9wdGlvbi1ibG9jayAuY3VzdG9tLWZpbHRlcmVkLWxpc3QgbGFiZWwgPiBkaXYsIC5vcHRpb24tYmxvY2sgLmZpbHRlci10eXBlIGxhYmVsID4gZGl2LCAub3B0aW9uLWJsb2NrIC5jYXRlZ29yaWVzLXNjcm9sbCBsYWJlbCA+IGRpdiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgfVxuICAub3B0aW9uLWJsb2NrIC5jdXN0b20tZmlsdGVyZWQtbGlzdCBpbnB1dCwgLm9wdGlvbi1ibG9jayAuZmlsdGVyLXR5cGUgaW5wdXQsIC5vcHRpb24tYmxvY2sgLmNhdGVnb3JpZXMtc2Nyb2xsIGlucHV0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAub3B0aW9uLWJsb2NrIC5jdXN0b20tZmlsdGVyZWQtbGlzdCBpbnB1dFtjaGVja2VkXSArIGRpdiBhLCAub3B0aW9uLWJsb2NrIC5jdXN0b20tZmlsdGVyZWQtbGlzdCBpbnB1dFtjaGVja2VkXSArIGRpdiBzcGFuLCAub3B0aW9uLWJsb2NrIC5maWx0ZXItdHlwZSBpbnB1dFtjaGVja2VkXSArIGRpdiBhLCAub3B0aW9uLWJsb2NrIC5maWx0ZXItdHlwZSBpbnB1dFtjaGVja2VkXSArIGRpdiBzcGFuLCAub3B0aW9uLWJsb2NrIC5jYXRlZ29yaWVzLXNjcm9sbCBpbnB1dFtjaGVja2VkXSArIGRpdiBhLCAub3B0aW9uLWJsb2NrIC5jYXRlZ29yaWVzLXNjcm9sbCBpbnB1dFtjaGVja2VkXSArIGRpdiBzcGFuIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgICAub3B0aW9uLWJsb2NrIC5jdXN0b20tZmlsdGVyZWQtbGlzdCBpbnB1dFtjaGVja2VkXSArIGRpdiBhOmJlZm9yZSwgLm9wdGlvbi1ibG9jayAuY3VzdG9tLWZpbHRlcmVkLWxpc3QgaW5wdXRbY2hlY2tlZF0gKyBkaXYgc3BhbjpiZWZvcmUsIC5vcHRpb24tYmxvY2sgLmZpbHRlci10eXBlIGlucHV0W2NoZWNrZWRdICsgZGl2IGE6YmVmb3JlLCAub3B0aW9uLWJsb2NrIC5maWx0ZXItdHlwZSBpbnB1dFtjaGVja2VkXSArIGRpdiBzcGFuOmJlZm9yZSwgLm9wdGlvbi1ibG9jayAuY2F0ZWdvcmllcy1zY3JvbGwgaW5wdXRbY2hlY2tlZF0gKyBkaXYgYTpiZWZvcmUsIC5vcHRpb24tYmxvY2sgLmNhdGVnb3JpZXMtc2Nyb2xsIGlucHV0W2NoZWNrZWRdICsgZGl2IHNwYW46YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuICAub3B0aW9uLWJsb2NrIC51aS1zbGlkZXItaGFuZGxlIHtcbiAgICB3aWR0aDogOHB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIHRvcDogLTNweDtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5vcHRpb24tYmxvY2sgLnVpLXNsaWRlci1oYW5kbGU6Zm9jdXMge1xuICAgICAgY3Vyc29yOiBncmFiOyB9XG4gIC5vcHRpb24tYmxvY2sgLnVpLXNsaWRlci1yYW5nZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIC5vcHRpb24tYmxvY2sgLnVpLXNsaWRlci1ob3Jpem9udGFsIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgaGVpZ2h0OiAycHg7IH1cbiAgLm9wdGlvbi1ibG9jayAuYXctbG4tc2xpZGVyLWJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMi44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDNyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMCAwLjYyNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MgZWFzZTsgfVxuICAgIC5vcHRpb24tYmxvY2sgLmF3LWxuLXNsaWRlci1idXR0b246aG92ZXIsIC5vcHRpb24tYmxvY2sgLmF3LWxuLXNsaWRlci1idXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5vcHRpb24tYmxvY2sgLmF3LWxuLXNsaWRlci1idXR0b24ge1xuICAgICAgICBoZWlnaHQ6IDMuNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMuNjI1cmVtOyB9IH1cblxuLmF3LWxuLXNsaWRlci1maWx0ZXItaW5mbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLXRvcDogMC45Mzc1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG5cbi5zd2F0Y2gtYXR0cmlidXRlLmNvbG9yIC5zd2F0Y2gtYXR0cmlidXRlLW9wdGlvbnMge1xuICBtYXJnaW46IDAgLTdweDsgfVxuXG4uc3dhdGNoLWF0dHJpYnV0ZS5jb2xvciAuc3dhdGNoLW9wdGlvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAyNnB4O1xuICBoZWlnaHQ6IDI2cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNmMmYzZjY7XG4gIHBhZGRpbmc6IDZweDtcbiAgbWFyZ2luOiAwIDdweCA1cHg7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cbiAgLnN3YXRjaC1hdHRyaWJ1dGUuY29sb3IgLnN3YXRjaC1vcHRpb246aG92ZXIge1xuICAgIG91dGxpbmU6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgLnN3YXRjaC1hdHRyaWJ1dGUuY29sb3IgLnN3YXRjaC1vcHRpb246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2NoZWNrLXN5bWJvbC5zdmcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDQ0JTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2U7IH1cbiAgLnN3YXRjaC1hdHRyaWJ1dGUuY29sb3IgLnN3YXRjaC1vcHRpb24uYWN0aXZlIHtcbiAgICBvdXRsaW5lOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgLnN3YXRjaC1hdHRyaWJ1dGUuY29sb3IgLnN3YXRjaC1vcHRpb24uYWN0aXZlOmFmdGVyIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cblxuLnN3YXRjaC1hdHRyaWJ1dGUuY29sb3IgaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwOyB9XG5cbi5zd2F0Y2gtYXR0cmlidXRlLnNpemUgLnN3YXRjaC1hdHRyaWJ1dGUtb3B0aW9ucyB7XG4gIG1hcmdpbjogMCAtMTFweDsgfVxuXG4uc3dhdGNoLWF0dHJpYnV0ZS5zaXplIC5zd2F0Y2gtb3B0aW9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAyLjVyZW07XG4gIGhlaWdodDogMi41cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMCAxMXB4IDVweDtcbiAgbGluZS1oZWlnaHQ6IDIuMzc1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDsgfVxuICAuc3dhdGNoLWF0dHJpYnV0ZS5zaXplIC5zd2F0Y2gtb3B0aW9uLmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZDogIzAwMDAwMDsgfVxuICAuc3dhdGNoLWF0dHJpYnV0ZS5zaXplIC5zd2F0Y2gtb3B0aW9uOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwOyB9XG5cbi5zd2F0Y2gtYXR0cmlidXRlIC5zd2F0Y2gtb3B0aW9uLmRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5hdy1sbi1maWx0ZXItb3B0aW9ucy1yYW5nZSAuYXctbG4tZmlsdGVyLW9wdGlvbnMtcmFuZ2Utc2xpZGVyLXdyYXBwZXIge1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG5cbi5hdy1sbi1maWx0ZXItb3B0aW9ucy1yYW5nZSAuYXctbG4tZmlsdGVyLW9wdGlvbnMtcmFuZ2Utc2xpZGVyLXdyYXBwZXItbGVmdCxcbi5hdy1sbi1maWx0ZXItb3B0aW9ucy1yYW5nZSAuYXctbG4tZmlsdGVyLW9wdGlvbnMtcmFuZ2Utc2xpZGVyLXdyYXBwZXItcmlnaHQge1xuICBiYWNrZ3JvdW5kOiBub25lOyB9XG5cbi5hdy1sbi1maWx0ZXItb3B0aW9ucy1yYW5nZSAuYXctbG4tZmlsdGVyLW9wdGlvbnMtcmFuZ2Utc2xpZGVyLW1pbixcbi5hdy1sbi1maWx0ZXItb3B0aW9ucy1yYW5nZSAuYXctbG4tZmlsdGVyLW9wdGlvbnMtcmFuZ2Utc2xpZGVyLW1heCB7XG4gIHdpZHRoOiA4cHg7XG4gIGhlaWdodDogOHB4O1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG1hcmdpbi10b3A6IC0zcHg7IH1cblxuLmF3LWxuLWZpbHRlci1vcHRpb25zLXJhbmdlIC5hdy1sbi1maWx0ZXItb3B0aW9ucy1yYW5nZS1zbGlkZXItYWN0aXZlIHtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6ICMwMDAwMDA7IH1cblxuLmF3LWxuLWZpbHRlci1vcHRpb25zLWZyb210byB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gIC5hdy1sbi1maWx0ZXItb3B0aW9ucy1mcm9tdG8gLmZpZWxkc2V0IHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuICAuYXctbG4tZmlsdGVyLW9wdGlvbnMtZnJvbXRvIC5mb3JtLWNvbnRyb2wge1xuICAgIHdpZHRoOiAyLjQzNzVyZW07XG4gICAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gICAgcGFkZGluZzogMC4zMTI1cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDA7IH1cbiAgLmF3LWxuLWZpbHRlci1vcHRpb25zLWZyb210byBzcGFuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07IH1cbiAgLmF3LWxuLWZpbHRlci1vcHRpb25zLWZyb210byAubWludXMge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbTtcbiAgICBtYXJnaW46IDA7IH1cbiAgLmF3LWxuLWZpbHRlci1vcHRpb25zLWZyb210byAuYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmc6IC43NXJlbSAxLjg3NXJlbSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogLjkzNzVyZW0gIWltcG9ydGFudDsgfVxuXG4ubGF5ZXJlZC1zZWxlY3RlZC1maWx0ZXJzLWJsb2NrIC5zZWxlY3RlZC1pdGVtcy1saXN0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgbWFyZ2luOiAwIC01cHg7IH1cblxuLmxheWVyZWQtc2VsZWN0ZWQtZmlsdGVycy1ibG9jayAuc2VsZWN0ZWQtaXRlbSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICNhM2EzYTM7XG4gIGJhY2tncm91bmQ6ICNmMmYzZjY7XG4gIG1hcmdpbjogMCA1cHggMTBweDtcbiAgcGFkZGluZzogM3B4IDIwcHggM3B4IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubGF5ZXJlZC1zZWxlY3RlZC1maWx0ZXJzLWJsb2NrIC5zZWxlY3RlZC1pdGVtIC5hY3Rpb24tY2xvc2Uge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDVweDtcbiAgICB3aWR0aDogMTBweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7IH1cbiAgICAubGF5ZXJlZC1zZWxlY3RlZC1maWx0ZXJzLWJsb2NrIC5zZWxlY3RlZC1pdGVtIC5hY3Rpb24tY2xvc2U6YmVmb3JlLCAubGF5ZXJlZC1zZWxlY3RlZC1maWx0ZXJzLWJsb2NrIC5zZWxlY3RlZC1pdGVtIC5hY3Rpb24tY2xvc2U6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwOyB9XG4gICAgLmxheWVyZWQtc2VsZWN0ZWQtZmlsdGVycy1ibG9jayAuc2VsZWN0ZWQtaXRlbSAuYWN0aW9uLWNsb3NlOmJlZm9yZSB7XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG4gICAgLmxheWVyZWQtc2VsZWN0ZWQtZmlsdGVycy1ibG9jayAuc2VsZWN0ZWQtaXRlbSAuYWN0aW9uLWNsb3NlOmFmdGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cblxuLnByb2R1Y3QtaW5mby1tYWluIHtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wcm9kdWN0LWluZm8tbWFpbiB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNzBweDsgfSB9XG5cbi5jYXRhbG9nLXByb2R1Y3QtdmlldyAucHJvZHVjdC1jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmNhdGFsb2ctcHJvZHVjdC12aWV3IC5icmVhZGNydW1icywgLmNhdGFsb2ctcHJvZHVjdC12aWV3IC5wcm9kdWN0LWluZm8tbWFpbiwgLmNhdGFsb2ctcHJvZHVjdC12aWV3IC5tZXNzYWdlcyB7XG4gIGJhY2tncm91bmQ6ICNmNmY3ZmI7IH1cblxuLmNhdGFsb2ctcHJvZHVjdC12aWV3IC5wcm9kdWN0LWluZm8tbWFpbiB7XG4gIHBhZGRpbmctdG9wOiAyNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuY2F0YWxvZy1wcm9kdWN0LXZpZXcgLnByb2R1Y3QtaW5mby1tYWluIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0NXB4OyB9IH1cblxuLmNhdGFsb2ctcHJvZHVjdC12aWV3IC5icmVhZGNydW1icyB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5jYXRhbG9nLXByb2R1Y3QtdmlldyAucm93LnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9IH1cblxuLnByb2R1Y3QtaW5mby1ib3ggLnBhZ2UtdGl0bGUge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBmb250LXNpemU6IDEuNTYyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnByb2R1Y3QtaW5mby1ib3ggLnBhZ2UtdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5wcm9kdWN0LWluZm8tYm94IC5wYWdlLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTsgfSB9XG5cbi5wcm9kdWN0LWluZm8tYm94IC5wcmljZS1sYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLnByb2R1Y3QtaW5mby1ib3ggLnByb2R1Y3QtaW5mby1wcmljZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICdtaWxsZXInLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogMzAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuXG4ucHJvZHVjdC1pbmZvLWJveCAuc3BlY2lhbC1wcmljZSwgLnByb2R1Y3QtaW5mby1ib3ggLm5vcm1hbC1wcmljZSwgLnByb2R1Y3QtaW5mby1ib3ggLnByaWNlIHtcbiAgZm9udC1zaXplOiAxLjVyZW07IH1cblxuLnByb2R1Y3QtaW5mby1ib3ggLm9sZC1wcmljZSB7XG4gIGNvbG9yOiAjYTNhM2EzO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtOyB9XG5cbi5wcm9kdWN0LWluZm8tYm94IC5zaG9ydC1kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cblxuLnByb2R1Y3QtaW5mby1ib3ggLmJveC10b2NhcnQgLmJ1dHRvbiB7XG4gIGhlaWdodDogMi44NzVyZW07XG4gIHdpZHRoOiAxODBweDtcbiAgcGFkZGluZzogMTZweDsgfVxuXG4ucHJvZHVjdC1pbmZvLWJveCAub3ZlcnZpZXcge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi5wYWdlLXByb2R1Y3QtY29uZmlndXJhYmxlIC5wcm9kdWN0LWluZm8tYm94IC5vbGQtcHJpY2Uge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbi5ib3gtdG9jYXJ0LCAuYWRkLXRvLWNhcnQtd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDEuNTYyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmJveC10b2NhcnQsIC5hZGQtdG8tY2FydC13cmFwcGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cblxuLnByb2R1Y3QuaW5mby5kZXRhaWxlZCAuaXRlbXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cblxuLnByb2R1Y3QuaW5mby5kZXRhaWxlZCAudGl0bGUge1xuICBvcmRlcjogMTtcbiAgbWFyZ2luOiAwIDE1cHggMjBweCAwOyB9XG4gIC5wcm9kdWN0LmluZm8uZGV0YWlsZWQgLnRpdGxlLmFjdGl2ZSBhIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgLnByb2R1Y3QuaW5mby5kZXRhaWxlZCAudGl0bGUuYWN0aXZlIGE6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuICAucHJvZHVjdC5pbmZvLmRldGFpbGVkIC50aXRsZSBhIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICNhM2EzYTM7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2U7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLnByb2R1Y3QuaW5mby5kZXRhaWxlZCAudGl0bGUgYTphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnByb2R1Y3QuaW5mby5kZXRhaWxlZCAudGl0bGUgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9IH1cbiAgICAucHJvZHVjdC5pbmZvLmRldGFpbGVkIC50aXRsZSBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgICAucHJvZHVjdC5pbmZvLmRldGFpbGVkIC50aXRsZSBhOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuXG4ucHJvZHVjdC5pbmZvLmRldGFpbGVkIC5jb250ZW50IHtcbiAgb3JkZXI6IDI7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5zd2F0Y2gtb3B0IC5zd2F0Y2gtYXR0cmlidXRlIHtcbiAgcGFkZGluZzogMC45Mzc1cmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDMsIDMsIDMsIDAuMik7XG4gIGZvbnQtc2l6ZTogMTdweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC45cHg7XG4gIGNvbG9yOiAjMDAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc3dhdGNoLW9wdCAuc3dhdGNoLWF0dHJpYnV0ZSB7XG4gICAgICBwYWRkaW5nOiAxLjg3NXJlbSAwOyB9IH1cblxuLnN3YXRjaC1vcHQgLnN3YXRjaC1hdHRyaWJ1dGUtbGFiZWw6YWZ0ZXIge1xuICBjb250ZW50OiAnOic7IH1cblxuLnN3YXRjaC1vcHQgLnN3YXRjaC1hdHRyaWJ1dGUtc2VsZWN0ZWQtb3B0aW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDVweDsgfVxuXG4uc3dhdGNoLW9wdCAuc3dhdGNoLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7IH1cblxuLnN3YXRjaC1vcHQgLnN3YXRjaC1hdHRyaWJ1dGUtb3B0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luOiAwIC03cHggMDsgfVxuXG4uc3dhdGNoLW9wdCAuc3dhdGNoLW9wdGlvbiB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuc3dhdGNoLW9wdCAuc3dhdGNoLW9wdGlvbi5kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogLjQ7IH1cbiAgLnN3YXRjaC1vcHQgLnN3YXRjaC1vcHRpb24udGV4dCB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMi4zNzVyZW07XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICBtYXJnaW46IDAgN3B4IDVweDsgfVxuICAgIC5zd2F0Y2gtb3B0IC5zd2F0Y2gtb3B0aW9uLnRleHQuc2VsZWN0ZWQge1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOyB9XG4gICAgLnN3YXRjaC1vcHQgLnN3YXRjaC1vcHRpb24udGV4dDpob3Zlcjpub3QoLmRpc2FibGVkKSB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cblxuLnN3YXRjaC1vcHQgLmNvbG9yIC5zd2F0Y2gtb3B0aW9uIHtcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMzJweDtcbiAgYm9yZGVyLXdpZHRoOiAxcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDNweDtcbiAgbWFyZ2luOiAwIDdweCA1cHg7IH1cbiAgLnN3YXRjaC1vcHQgLmNvbG9yIC5zd2F0Y2gtb3B0aW9uLnNlbGVjdGVkIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuICAuc3dhdGNoLW9wdCAuY29sb3IgLnN3YXRjaC1vcHRpb246aG92ZXI6bm90KC5kaXNhYmxlZCkge1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG5cbi5zd2F0Y2gtb3B0IC5zd2F0Y2gtaW5uZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7IH1cblxuLmN1c3RvbS1jb3VudGVyIHtcbiAgaGVpZ2h0OiAyLjg3NXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLmN1c3RvbS1jb3VudGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH0gfVxuICAuY3VzdG9tLWNvdW50ZXIgaW5wdXQge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBwYWRkaW5nOiAwIDIuOTM3NXJlbTtcbiAgICBtYXgtd2lkdGg6IDE4MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAuY3VzdG9tLWNvdW50ZXIgaW5wdXQ6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmN1c3RvbS1jb3VudGVyIC5idG4tY291bnQge1xuICAgIGhlaWdodDogMi43NXJlbTtcbiAgICB3aWR0aDogMi43NXJlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5jdXN0b20tY291bnRlciAuYnRuLWNvdW50W2Rpc2FibGVkXSB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgY29sb3I6ICNhM2EzYTM7IH1cbiAgICAuY3VzdG9tLWNvdW50ZXIgLmJ0bi1jb3VudC5taW51cyB7XG4gICAgICBsZWZ0OiAwOyB9XG4gICAgLmN1c3RvbS1jb3VudGVyIC5idG4tY291bnQucGx1cyB7XG4gICAgICByaWdodDogMDsgfVxuXG4ucHJvZHVjdC1vcHRpb25zLWJvdHRvbSwgLmFkZC10by1jYXJ0LXdyYXBwZXIge1xuICBtYXJnaW4tdG9wOiAxLjU2MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5wcm9kdWN0LW9wdGlvbnMtYm90dG9tLCAuYWRkLXRvLWNhcnQtd3JhcHBlciB7XG4gICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTsgfSB9XG5cbi5xdHktd3JhcHBlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgbWFyZ2luLXJpZ2h0OiAxLjU2MjVyZW07IH1cbiAgLnF0eS13cmFwcGVyIC5hdmFpbGFiaWxpdHkge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAgIC5xdHktd3JhcHBlciAuYXZhaWxhYmlsaXR5IHNwYW4ge1xuICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAucXR5LXdyYXBwZXIgLmF2YWlsYWJpbGl0eSAubGFiZWwge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4uYWRkLXRvLWNhcnQtYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAuYWRkLXRvLWNhcnQtYnV0dG9ucyAuYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy10b3A6IDAuOTA2MjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuOTA2MjVyZW07IH1cblxuLnByb2R1Y3QtaW1nLWJveCAubG9hZGluZy1tYXNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuXG4ucHJvZHVjdC1pbWctYm94IC5wcm9kdWN0Lm1lZGlhIHtcbiAgbWF4LWhlaWdodDogNzAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ucHJvZHVjdC1pbWctYm94IC5tYWluLXByb2R1Y3Qtc2xpZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvIDEuNTYyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnByb2R1Y3QtaW1nLWJveCAubWFpbi1wcm9kdWN0LXNsaWRlciB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH0gfVxuICAucHJvZHVjdC1pbWctYm94IC5tYWluLXByb2R1Y3Qtc2xpZGVyIC5pdGVtIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZSwgdmlzaWJpbGl0eSAwLjNzIGVhc2U7IH1cbiAgICAucHJvZHVjdC1pbWctYm94IC5tYWluLXByb2R1Y3Qtc2xpZGVyIC5pdGVtLnNsaWNrLWN1cnJlbnQsIC5wcm9kdWN0LWltZy1ib3ggLm1haW4tcHJvZHVjdC1zbGlkZXIgLml0ZW0uc2xpY2stYWN0aXZlIHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICBvcGFjaXR5OiAxOyB9XG5cbi5wcm9kdWN0LWltZy1ib3ggLnByb2R1Y3QtaW1hZ2VzIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnByb2R1Y3QtaW1nLWJveCAucHJvZHVjdC1pbWFnZXMge1xuICAgICAgd2lkdGg6IDc1JTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucHJvZHVjdC1pbWctYm94IC5wcm9kdWN0LWltYWdlcyAuc2xpY2stbGlzdCB7XG4gICAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDsgfSB9XG4gIC5wcm9kdWN0LWltZy1ib3ggLnByb2R1Y3QtaW1hZ2VzIC5pdGVtIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAucHJvZHVjdC1pbWctYm94IC5wcm9kdWN0LWltYWdlcyAuaXRlbSBkaXYge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ucHJvZHVjdC1pbWctYm94IC5wcm9kdWN0LWltYWdlLXRodW1icyB7XG4gIHBhZGRpbmc6IDAgMi41cmVtO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnByb2R1Y3QtaW1nLWJveCAucHJvZHVjdC1pbWFnZS10aHVtYnMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IDIuNXJlbSAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMjBweCk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnByb2R1Y3QtaW1nLWJveCAucHJvZHVjdC1pbWFnZS10aHVtYnMge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzLjYyNXJlbTtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDU4cHgpOyB9IH1cbiAgLnByb2R1Y3QtaW1nLWJveCAucHJvZHVjdC1pbWFnZS10aHVtYnMgLml0ZW0ge1xuICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnByb2R1Y3QtaW1nLWJveCAucHJvZHVjdC1pbWFnZS10aHVtYnMgLml0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5wcm9kdWN0LWltZy1ib3ggLnByb2R1Y3QtaW1hZ2UtdGh1bWJzIC5pdGVtIHtcbiAgICAgICAgcGFkZGluZzogMC42ODc1cmVtIDA7IH0gfVxuICAgIC5wcm9kdWN0LWltZy1ib3ggLnByb2R1Y3QtaW1hZ2UtdGh1bWJzIC5pdGVtIGRpdiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIC5wcm9kdWN0LWltZy1ib3ggLnByb2R1Y3QtaW1hZ2UtdGh1bWJzIC5pdGVtIGRpdiBkaXYge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAucHJvZHVjdC1pbWctYm94IC5wcm9kdWN0LWltYWdlLXRodW1icyAuc2xpY2stdHJhY2sge1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucHJvZHVjdC1pbWctYm94IC5wcm9kdWN0LWltYWdlLXRodW1icyAuc2xpY2stcHJldiB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0b3A6IDAuNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wcm9kdWN0LWltZy1ib3ggLnByb2R1Y3QtaW1hZ2UtdGh1bWJzIC5zbGljay1uZXh0IHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiAwLjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTsgfSB9XG5cbi52aWRlby1hdHRyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMS4yNXJlbSAwIDEuNTYyNXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnZpZGVvLWF0dHIge1xuICAgICAgcGFkZGluZzogMS44NzVyZW0gMCAyLjE4NzVyZW07IH0gfVxuICAudmlkZW8tYXR0ciA+IGRpdiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC52aWRlby1hdHRyID4gZGl2IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cbiAgLnZpZGVvLWF0dHIgc3BhbiB7XG4gICAgY29sb3I6ICNhM2EzYTM7IH1cbiAgICAudmlkZW8tYXR0ciBzcGFuLmF0dHItbGFiZWwge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLnZpZGVvLWF0dHIgc3Bhbi5hdHRyLWxhYmVsIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuNTYyNXJlbTsgfSB9XG5cbi5wcm9kdWN0LW9wdGlvbnMtYm90dG9tLCAuYWRkLXRvLWNhcnQtd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDEuNTYyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnByb2R1Y3Qtb3B0aW9ucy1ib3R0b20sIC5hZGQtdG8tY2FydC13cmFwcGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cblxuLnByb2R1Y3RzLXJlbGF0ZWQgLnByb2R1Y3QtaG9sZGVyIC5wcm9kdWN0LWltYWdlIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9XG5cbi5mZWF0dXJlZC1pdGVtcyAucHJvZHVjdC1zbGlkZXIgLnByb2R1Y3QtaG9sZGVyIC5wcm9kdWN0LWltYWdlIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9XG5cbi5pcy1yZXZlYWwtb3BlbiAjRGlnaUNlcnRDbGlja0lEXy1BdWFybTZPIHtcbiAgei1pbmRleDogMzsgfVxuXG4ucHJvZHVjdC1jdXN0b20td29ya291dC1wYWdlIC5icmVhZGNydW1icyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5wcm9kdWN0LWN1c3RvbS13b3Jrb3V0LXBhZ2UgLmJyZWFkY3J1bWJzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuODEyNXJlbTsgfSB9XG5cbi5wcm9kdWN0LWN1c3RvbS13b3Jrb3V0LXBhZ2UgLnByb2R1Y3QtY29udGVudCB7XG4gIG1hcmdpbjogMDsgfVxuXG4ucHJvZHVjdC1jdXN0b20td29ya291dC1wYWdlIC5wcm9kdWN0LWluZm8tbWFpbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nLXRvcDogMDsgfVxuXG4ucHJvZHVjdC1jdXN0b20td29ya291dC1wYWdlIC5wcm9kdWN0LWluZm8tYm94IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcmRlcjogMjtcbiAgbWFyZ2luLXRvcDogMjBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnByb2R1Y3QtY3VzdG9tLXdvcmtvdXQtcGFnZSAucHJvZHVjdC1pbmZvLWJveCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5wcm9kdWN0LWN1c3RvbS13b3Jrb3V0LXBhZ2UgLnByb2R1Y3QtaW5mby1ib3gge1xuICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7IH0gfVxuXG4ucHJvZHVjdC1jdXN0b20td29ya291dC1wYWdlIC5wYWdlLXRpdGxlLXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTsgfVxuXG4ucHJvZHVjdC1jdXN0b20td29ya291dC1wYWdlIC5wYWdlLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucHJvZHVjdC1jdXN0b20td29ya291dC1wYWdlIC5wYWdlLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjdweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucHJvZHVjdC1jdXN0b20td29ya291dC1wYWdlIC5wYWdlLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNDNweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucHJvZHVjdC1jdXN0b20td29ya291dC1wYWdlIC5wYWdlLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNTNweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAucHJvZHVjdC1jdXN0b20td29ya291dC1wYWdlIC5wYWdlLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNTdweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnByb2R1Y3QtY3VzdG9tLXdvcmtvdXQtcGFnZSAub3ZlcnZpZXcge1xuICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnByb2R1Y3QtY3VzdG9tLXdvcmtvdXQtcGFnZSAub3ZlcnZpZXcge1xuICAgIGZvbnQtc2l6ZTogMTlweDtcbiAgICBtYXgtd2lkdGg6IDQwMHB4OyB9IH1cblxuLnByb2R1Y3QtY3VzdG9tLXdvcmtvdXQtcGFnZSAuYm94LXRvY2FydCB7XG4gIG1hcmdpbjogMDsgfVxuXG4ucHJvZHVjdC1jdXN0b20td29ya291dC1wYWdlIC5wcmljZS1ib3gge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLnByb2R1Y3QtY3VzdG9tLXdvcmtvdXQtcGFnZSAucHJvZHVjdC1pbWctYm94IHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcmRlcjogMTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnByb2R1Y3QtY3VzdG9tLXdvcmtvdXQtcGFnZSAucHJvZHVjdC1pbWctYm94IHtcbiAgICAgIG9yZGVyOiAyO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cblxuLnByb2R1Y3QtY3VzdG9tLXdvcmtvdXQtcGFnZSAucHJvZHVjdC5hdHRyaWJ1dGUub3ZlcnZpZXcge1xuICBtYXJnaW46IDAgYXV0byA0MHB4OyB9XG5cbi5jdXN0b20tam9pbiB7XG4gIGJhY2tncm91bmQ6ICNmY2I2OWU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMjBweCAzNXB4OyB9XG4gIC5jdXN0b20tam9pbiAuYnRuLWN1c3RvbSB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuY3VzdG9tLWpvaW4gLmJ0bi1jdXN0b206YWZ0ZXIsIC5jdXN0b20tam9pbiAuYnRuLWN1c3RvbTpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuICAgIC5jdXN0b20tam9pbiAuYnRuLWN1c3RvbTpob3ZlciB7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5jdXN0b20tam9pbiAuYnRuLWN1c3RvbSBzcGFuOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jdXN0b20tam9pbiB7XG4gICAgICBwYWRkaW5nOiAyMHB4IDQ1cHg7IH0gfVxuICAuY3VzdG9tLWpvaW4gLmJ0bi1jdXN0b20ge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IDEycHg7IH1cbiAgLmN1c3RvbS1qb2luIC5wcmljaW5nLWV4cGxhbmF0aW9uIHtcbiAgICBmb250LWZhbWlseTogJ21pbGxlcicsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuXG4uY3VzdG9tLXdvcmtvdXQtZGVzY3JpcHRpb24ge1xuICBiYWNrZ3JvdW5kOiAjRjNGNEY4O1xuICBwYWRkaW5nOiAxNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY3VzdG9tLXdvcmtvdXQtZGVzY3JpcHRpb24ge1xuICAgICAgcGFkZGluZzogMzBweCAxNXB4O1xuICAgICAgZmxleDogbm9uZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuY3VzdG9tLXdvcmtvdXQtZGVzY3JpcHRpb24ge1xuICAgICAgcGFkZGluZzogNTBweCAzMHB4OyB9IH1cbiAgLmN1c3RvbS13b3Jrb3V0LWRlc2NyaXB0aW9uIHVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY3VzdG9tLXdvcmtvdXQtZGVzY3JpcHRpb24gdWwge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfSB9XG4gICAgLmN1c3RvbS13b3Jrb3V0LWRlc2NyaXB0aW9uIHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAgICAgLmN1c3RvbS13b3Jrb3V0LWRlc2NyaXB0aW9uIHVsIGxpIHtcbiAgICAgICAgICBtYXJnaW46IDAgMTBweCAyMHB4OyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmN1c3RvbS13b3Jrb3V0LWRlc2NyaXB0aW9uIHVsIGxpIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAyNXB4OyB9XG4gICAgICAgICAgLmN1c3RvbS13b3Jrb3V0LWRlc2NyaXB0aW9uIHVsIGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5jdXN0b20td29ya291dC1kZXNjcmlwdGlvbiAuaW1hZ2UtaG9sZGVyIHtcbiAgICB3aWR0aDogMzVweDtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY3VzdG9tLXdvcmtvdXQtZGVzY3JpcHRpb24gLmltYWdlLWhvbGRlciB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7IH0gfVxuICAgIC5jdXN0b20td29ya291dC1kZXNjcmlwdGlvbiAuaW1hZ2UtaG9sZGVyIGltZyB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY3VzdG9tLXdvcmtvdXQtaG9sZGVyIC5uby1yZXN1bHRzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cblxuLmN1c3RvbS13b3Jrb3V0LWhvbGRlciAubm8tcmVzdWx0cyBhIHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5jdXN0b20td29ya291dC1ob2xkZXIgLm5vLXJlc3VsdHMgYSB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuICAuY3VzdG9tLXdvcmtvdXQtaG9sZGVyIC5uby1yZXN1bHRzIGE6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTsgfVxuICAuY3VzdG9tLXdvcmtvdXQtaG9sZGVyIC5uby1yZXN1bHRzIGEgZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7IH1cbiAgICAuY3VzdG9tLXdvcmtvdXQtaG9sZGVyIC5uby1yZXN1bHRzIGEgZW06YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAtMnB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2U7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgb3BhY2l0eTogMDsgfVxuICAubm8tdG91Y2ggLmN1c3RvbS13b3Jrb3V0LWhvbGRlciAubm8tcmVzdWx0cyBhOmhvdmVyIGVtOmFmdGVyIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIC5jdXN0b20td29ya291dC1ob2xkZXIgLm5vLXJlc3VsdHMgYSBzcGFuIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTsgfVxuXG4uY3VzdG9tLXdvcmtvdXQtaG9sZGVyIC50YWItaG9sZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAuY3VzdG9tLXdvcmtvdXQtaG9sZGVyIC50YWItaG9sZGVyLmN1cnJlbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5jdXN0b20td29ya291dC1ob2xkZXIgLmJvdHRvbS1saW5lIHtcbiAgcGFkZGluZy1ib3R0b206IDEuNTYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VkZWVmMTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmN1c3RvbS13b3Jrb3V0LWhvbGRlciAuYm90dG9tLWxpbmUge1xuICAgICAgcGFkZGluZy1ib3R0b206IDIuODEyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuODEyNXJlbTsgfSB9XG5cbi5jdXN0b20td29ya291dC1ob2xkZXIgLnRhYnMtaGVhZGVyIC5lZGl0IHtcbiAgbWFyZ2luLXRvcDogMC42MjVyZW07IH1cbiAgLmN1c3RvbS13b3Jrb3V0LWhvbGRlciAudGFicy1oZWFkZXIgLmVkaXQgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmN1c3RvbS13b3Jrb3V0LWhvbGRlciAudGFicy1oZWFkZXIgLmVkaXQgYTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07IH1cbiAgICAuY3VzdG9tLXdvcmtvdXQtaG9sZGVyIC50YWJzLWhlYWRlciAuZWRpdCBhIGVtIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuICAgICAgLmN1c3RvbS13b3Jrb3V0LWhvbGRlciAudGFicy1oZWFkZXIgLmVkaXQgYSBlbTphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAtMnB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgICBvcGFjaXR5OiAwOyB9XG4gICAgLm5vLXRvdWNoIC5jdXN0b20td29ya291dC1ob2xkZXIgLnRhYnMtaGVhZGVyIC5lZGl0IGE6aG92ZXIgZW06YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAgIC5jdXN0b20td29ya291dC1ob2xkZXIgLnRhYnMtaGVhZGVyIC5lZGl0IGEgc3BhbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jdXN0b20td29ya291dC1ob2xkZXIgLnRhYnMtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmN1c3RvbS13b3Jrb3V0LWhvbGRlciAudGFicy1oZWFkZXIgLmVkaXQge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfVxuICAgIC5jdXN0b20td29ya291dC1ob2xkZXIgLnRhYnMtaGVhZGVyIC5lZGl0IGEge1xuICAgICAgZmxleC1zaHJpbms6IDA7IH0gfVxuXG4uY3VzdG9tLXdvcmtvdXQtaG9sZGVyIC50YWJzLWhlYWRlciAuY2hhbmdlLXZhcmlhdGlvbi1zZWxlY3Qge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY3VzdG9tLXdvcmtvdXQtaG9sZGVyIC50YWJzLWhlYWRlciAuY2hhbmdlLXZhcmlhdGlvbi1zZWxlY3Qge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMjVweDsgfSB9XG5cbi5jdXN0b20td29ya291dC1ob2xkZXIgYSB7XG4gIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogLjVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmN1c3RvbS13b3Jrb3V0LWhvbGRlciBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG5cbi5jdXN0b20td29ya291dC1ob2xkZXIgLnRhYnMgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgbWFyZ2luOiAwLjMxMjVyZW0gMC44NzVyZW0gMC4zMTI1cmVtIDA7IH1cbiAgLmN1c3RvbS13b3Jrb3V0LWhvbGRlciAudGFicyBhLmN1cnJlbnQge1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY3VzdG9tLXdvcmtvdXQtaG9sZGVyIC50YWJzIGEge1xuICAgICAgbWFyZ2luOiAwLjMxMjVyZW0gMS43NXJlbSAwLjMxMjVyZW0gMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuY3VzdG9tLXdvcmtvdXQtaG9sZGVyIC50YWJzIGEge1xuICAgICAgbWFyZ2luOiAwLjMxMjVyZW0gMi43NXJlbSAwLjMxMjVyZW0gMDsgfSB9XG5cbi5jdXN0b20td29ya291dC1ob2xkZXIgLnZpZGVvLXRpdGxlIGgyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmN1c3RvbS13b3Jrb3V0LWhvbGRlciAudmlkZW8tdGl0bGUgaDIge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjU2MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmN1c3RvbS13b3Jrb3V0LWhvbGRlciAudmlkZW8tdGl0bGUgaDIge1xuICAgICAgZm9udC1zaXplOiAyLjVyZW07IH0gfVxuXG4uY3VzdG9tLXdvcmtvdXQtaG9sZGVyIC52aWRlby10aXRsZSBzcGFuIHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgY29sb3I6ICNhM2EzYTM7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5jdXN0b20td29ya291dC1ob2xkZXIgLnZpZGVvLXRpdGxlIHNwYW4ge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG5cbi5jdXN0b20td29ya291dC1ob2xkZXIgLnZpZGVvLXByZXZpZXcge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuY3VzdG9tLXdvcmtvdXQtaG9sZGVyIC52aWRlby1wcmV2aWV3IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cbiAgLmN1c3RvbS13b3Jrb3V0LWhvbGRlciAudmlkZW8tcHJldmlldyAuYnV0dG9uIHtcbiAgICBtYXJnaW46IDAuOTM3NXJlbSAwIDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgICAuY3VzdG9tLXdvcmtvdXQtaG9sZGVyIC52aWRlby1wcmV2aWV3IC5idXR0b24ge1xuICAgICAgICBtYXJnaW46IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmN1c3RvbS13b3Jrb3V0LWhvbGRlciAudmlkZW8tcHJldmlldyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgICAgLmN1c3RvbS13b3Jrb3V0LWhvbGRlciAudmlkZW8tcHJldmlldyAuYnV0dG9uIHtcbiAgICAgICAgbWluLXdpZHRoOiAxMy43NXJlbTsgfSB9XG5cbi53b3Jrb3V0LWxpc3QgLmNvbHVtbnMge1xuICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC53b3Jrb3V0LWxpc3QgLmNvbHVtbnMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi44MTI1cmVtOyB9IH1cblxuLmN3LXNsaWRlci1zbGlkZXIge1xuICBtYXJnaW4tdG9wOiA1MHB4O1xuICBwYWRkaW5nOiAwIDE1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmN3LXNsaWRlci1zbGlkZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuY3ctc2xpZGVyLXNsaWRlciB7XG4gICAgICBtYXJnaW4tdG9wOiA5MHB4OyB9IH1cbiAgLmN3LXNsaWRlci1zbGlkZXIgLnNsaWNrLXNsaWRlIHtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICAgIHBhZGRpbmc6IDAgNDBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5jdy1zbGlkZXItc2xpZGVyIC5zbGljay1zbGlkZSB7XG4gICAgICAgIGhlaWdodDogMTY1cHg7XG4gICAgICAgIHBhZGRpbmc6IDAgODBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmN3LXNsaWRlci1zbGlkZXIgLnNsaWNrLXNsaWRlIHtcbiAgICAgICAgcGFkZGluZzogMCAxNDBweDsgfSB9XG4gIC5jdy1zbGlkZXItc2xpZGVyIC5zbGlkZXItYmcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbiNjdXN0b21Xb3Jrb3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICNjdXN0b21Xb3Jrb3V0IC5sb2FkaW5nLW1hc2sge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgI2N1c3RvbVdvcmtvdXQgLnJldmVhbCAubG9hZGluZy1tYXNrIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIHotaW5kZXg6IDM7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICNjdXN0b21Xb3Jrb3V0IC5yZXZlYWwuZnVsbCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7IH0gfVxuICAjY3VzdG9tV29ya291dCAuaGlkZGVuLXdyYXAge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgI2N1c3RvbVdvcmtvdXQuc2hvdyAuaGlkZGVuLXdyYXAge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbiN2aWRlb0dhbGxlcnkgLnNsaWNrLW5leHQge1xuICByaWdodDogLTMwcHg7IH1cblxuI3ZpZGVvR2FsbGVyeSAuc2xpY2stcHJldiB7XG4gIGxlZnQ6IC0zMHB4OyB9XG5cbi5jdXN0b20td29ya291dC1wcmV2aWV3IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjNmNjtcbiAgbWFyZ2luOiAwIDAgMC45Mzc1cmVtO1xuICBwYWRkaW5nOiAwLjkzNzVyZW0gMC42MjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmN1c3RvbS13b3Jrb3V0LXByZXZpZXcge1xuICAgICAgcGFkZGluZzogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmN1c3RvbS13b3Jrb3V0LXByZXZpZXcge1xuICAgICAgcGFkZGluZzogMy40Mzc1cmVtIDMuMTI1cmVtIDMuNzVyZW07XG4gICAgICBtYXJnaW46IDAgMS42MjVyZW0gMC45Mzc1cmVtOyB9IH1cbiAgLmN1c3RvbS13b3Jrb3V0LXByZXZpZXcgaDMge1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgbWFyZ2luOiAwIGF1dG8gMS4yNXJlbTtcbiAgICBtYXgtd2lkdGg6IDU4LjEyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5jdXN0b20td29ya291dC1wcmV2aWV3IGgzIHtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMi4xODc1cmVtOyB9IH1cbiAgLmN1c3RvbS13b3Jrb3V0LXByZXZpZXcgcCB7XG4gICAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gICAgbWF4LXdpZHRoOiA1OC4xMjVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG8gMS4yNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5jdXN0b20td29ya291dC1wcmV2aWV3IHAge1xuICAgICAgICBtYXJnaW46IDAgYXV0byAxLjg3NXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cbiAgLmN1c3RvbS13b3Jrb3V0LXByZXZpZXcgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ud29ya291dC1jdXN0b20taW5kZXggLnBhZ2UtdGl0bGUtd3JhcHBlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmJsb2NrLWxheWVyZWQtbmF2IGgzIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1mYW1pbHk6ICdCcmFuZG9uR3JvdGVzcXVlJywgc2Fucy1zZXJpZjtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cblxuLmJsb2NrLWxheWVyZWQtbmF2ICNuYXJyb3ctYnktbGlzdDIgb2wsIC5ibG9jay1sYXllcmVkLW5hdiAjbmFycm93LWJ5LWxpc3QyIHVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ibG9jay1sYXllcmVkLW5hdiAjbmFycm93LWJ5LWxpc3QyIG9sLCAuYmxvY2stbGF5ZXJlZC1uYXYgI25hcnJvdy1ieS1saXN0MiB1bCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzLjc1cmVtOyB9IH1cblxuLmJsb2NrLWxheWVyZWQtbmF2IG9sLCAuYmxvY2stbGF5ZXJlZC1uYXYgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5ibG9jay1sYXllcmVkLW5hdiBvbCBsaSwgLmJsb2NrLWxheWVyZWQtbmF2IHVsIGxpIHtcbiAgICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ibG9jay1sYXllcmVkLW5hdiBvbCBsaSwgLmJsb2NrLWxheWVyZWQtbmF2IHVsIGxpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG5cbi5ibG9jay1sYXllcmVkLW5hdiAubUN1c3RvbVNjcm9sbGJhciAuc2hvdy1tb3JlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uYWJvdXQtdmlkZW9zIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtOyB9XG4gIC5hYm91dC12aWRlb3MgLmluZm8tYmxvY2sge1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYzZjY7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmFib3V0LXZpZGVvcyAuaW5mby1ibG9jayB7XG4gICAgICAgIHBhZGRpbmc6IDEuMjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMS4yNWVtKSB7XG4gICAgICAuYWJvdXQtdmlkZW9zIC5pbmZvLWJsb2NrIHtcbiAgICAgICAgcGFkZGluZzogMi43NXJlbSAzcmVtIDIuNzVyZW0gMS44NzVyZW07IH0gfVxuICAgIC5hYm91dC12aWRlb3MgLmluZm8tYmxvY2s6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuYWJvdXQtdmlkZW9zIC5pbmZvLWJsb2NrOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMi44MTI1cmVtOyB9IH1cbiAgLmFib3V0LXZpZGVvcyAudGl0bGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgIC5hYm91dC12aWRlb3MgLnRpdGxlIGg0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG4gIC5hYm91dC12aWRlb3MgcCB7XG4gICAgZm9udC1zaXplOiAwLjkzNzVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuYWJvdXQtdmlkZW9zIHAge1xuICAgICAgICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4OyB9IH1cblxuLmpvaW4td29ya291dCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYzZjY7XG4gIHBhZGRpbmc6IDAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuam9pbi13b3Jrb3V0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcGFkZGluZzogMS4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuam9pbi13b3Jrb3V0IHtcbiAgICAgIHBhZGRpbmc6IDIuMTI1cmVtIDIuNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuMzc1cmVtOyB9IH1cbiAgLmpvaW4td29ya291dCAuYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZmxleC1zaHJpbms6IDA7IH1cbiAgLmpvaW4td29ya291dCBwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmpvaW4td29ya291dCBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmpvaW4td29ya291dCBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cblxuLnZpZGVvLWltYWdlcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cbiAgLnZpZGVvLWltYWdlcyAuaXRlbSB7XG4gICAgcGFkZGluZy10b3A6IDU2LjMlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiAxNS42MjVyZW07IH1cbiAgICAudmlkZW8taW1hZ2VzIC5pdGVtIGEge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDAuNjI1cmVtO1xuICAgICAgei1pbmRleDogMTsgfVxuICAgIC52aWRlby1pbWFnZXMgLml0ZW0gLnBsYXktYnRuIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAjZmZmZmZmO1xuICAgICAgd2lkdGg6IDEyNXB4O1xuICAgICAgaGVpZ2h0OiAxMjVweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGZvbnQtc2l6ZTogMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAudmlkZW8taW1hZ2VzIC5pdGVtIC5wbGF5LWJ0biB7XG4gICAgICAgICAgd2lkdGg6IDE3NXB4O1xuICAgICAgICAgIGhlaWdodDogMTc1cHg7IH0gfVxuICAgIC52aWRlby1pbWFnZXMgLml0ZW0gLnByZXZpZXctYmcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyOyB9XG4gICAgLnZpZGVvLWltYWdlcyAuaXRlbSBpZnJhbWUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4uY2hlY2tvdXQtY2FydC1pbmRleCB0Ym9keSB7XG4gIGJvcmRlcjogbm9uZTsgfVxuXG4uY2hlY2tvdXQtY2FydC1pbmRleCAjYmxvY2stc2hpcHBpbmcge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmNoZWNrb3V0LWNhcnQtaW5kZXggLmhlYWRlci1iYW5uZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5jYXJ0LXRhYmxlIHtcbiAgbWluLXdpZHRoOiA1Ni4yNXJlbTsgfVxuXG4jc2hvcHBpbmctY2FydC10b3RhbHMtdGFibGUsIC5jYXJ0LXRvdGFscy10YWJsZSB7XG4gIG1pbi13aWR0aDogMXB4OyB9XG4gICNzaG9wcGluZy1jYXJ0LXRvdGFscy10YWJsZSBzcGFuLnByaWNlLCAuY2FydC10b3RhbHMtdGFibGUgc3Bhbi5wcmljZSB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAjc2hvcHBpbmctY2FydC10b3RhbHMtdGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pLCAuY2FydC10b3RhbHMtdGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0OyB9XG5cbi5wcm9kdWN0LWNhcnQtaW1hZ2UgLnByb2R1Y3QtY2FydC1kZXNjciwgLmRlc2NyaXB0aW9uIC5wcm9kdWN0LWNhcnQtZGVzY3Ige1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLnByb2R1Y3QtY2FydC1pbWFnZSAucHJvZHVjdC1jYXJ0LWRlc2NyIC5wcm9kdWN0LW5hbWUgYSwgLmRlc2NyaXB0aW9uIC5wcm9kdWN0LWNhcnQtZGVzY3IgLnByb2R1Y3QtbmFtZSBhIHtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuXG4ucHJvZHVjdC1jYXJ0LWltYWdlIC5pdGVtLW9wdGlvbnMsIC5kZXNjcmlwdGlvbiAuaXRlbS1vcHRpb25zIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07IH1cbiAgLnByb2R1Y3QtY2FydC1pbWFnZSAuaXRlbS1vcHRpb25zIGRsLCAuZGVzY3JpcHRpb24gLml0ZW0tb3B0aW9ucyBkbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAucHJvZHVjdC1jYXJ0LWltYWdlIC5pdGVtLW9wdGlvbnMgZHQsIC5kZXNjcmlwdGlvbiAuaXRlbS1vcHRpb25zIGR0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luOiAwLjM3NXJlbSAwLjYyNXJlbSAwIDA7IH1cbiAgLnByb2R1Y3QtY2FydC1pbWFnZSAuaXRlbS1vcHRpb25zIGRkLCAuZGVzY3JpcHRpb24gLml0ZW0tb3B0aW9ucyBkZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLnByb2R1Y3QtY2FydC1pbWFnZSAucHJvZHVjdC1pbWFnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDE2NXB4O1xuICBoZWlnaHQ6IDE2NXB4O1xuICBtYXJnaW46IDAgMTVweCA1cHggMDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IH1cblxuLnByb2R1Y3QtY2FydC1pbWFnZSBpbWcge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLmNhcnQtdG90YWxzLXdyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07IH1cbiAgLmNhcnQtdG90YWxzLXdyYXBwZXIgdGhlYWQsIC5jYXJ0LXRvdGFscy13cmFwcGVyIHRib2R5LCAuY2FydC10b3RhbHMtd3JhcHBlciB0Zm9vdCB7XG4gICAgYm9yZGVyOiAwOyB9XG4gIC5jYXJ0LXRvdGFscy13cmFwcGVyIHRyIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuICAuY2FydC10b3RhbHMtd3JhcHBlciB0ZCwgLmNhcnQtdG90YWxzLXdyYXBwZXIgdGgge1xuICAgIHBhZGRpbmc6IDAuNjI1cmVtIDA7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDsgfVxuICAgIC5jYXJ0LXRvdGFscy13cmFwcGVyIHRkOmxhc3QtY2hpbGQsIC5jYXJ0LXRvdGFscy13cmFwcGVyIHRoOmxhc3QtY2hpbGQge1xuICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW07IH1cbiAgICAuY2FydC10b3RhbHMtd3JhcHBlciB0ZDpmaXJzdC1jaGlsZCwgLmNhcnQtdG90YWxzLXdyYXBwZXIgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzLjEyNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5jYXJ0LXRvdGFscy13cmFwcGVyIHRkOmZpcnN0LWNoaWxkLCAuY2FydC10b3RhbHMtd3JhcHBlciB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cbiAgICAuY2FydC10b3RhbHMtd3JhcHBlciB0ZCBzdHJvbmcsIC5jYXJ0LXRvdGFscy13cmFwcGVyIHRoIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gIC5jYXJ0LXRvdGFscy13cmFwcGVyIC5jaGVja291dC10eXBlcyB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5jYXJ0LXRvdGFscy13cmFwcGVyIC5jaGVja291dC10eXBlcyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuODc1cmVtO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9IH1cbiAgICAuY2FydC10b3RhbHMtd3JhcHBlciAuY2hlY2tvdXQtdHlwZXMgLnBheXBhbCB7XG4gICAgICBsaW5lLWhlaWdodDogMDsgfVxuICAgICAgLmNhcnQtdG90YWxzLXdyYXBwZXIgLmNoZWNrb3V0LXR5cGVzIC5wYXlwYWwgaW5wdXQge1xuICAgICAgICBtYXJnaW46IDA7IH1cbiAgICAgIC5jYXJ0LXRvdGFscy13cmFwcGVyIC5jaGVja291dC10eXBlcyAucGF5cGFsIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5jYXJ0LXRvdGFscy13cmFwcGVyIC5jaGVja291dC10eXBlcyAucGF5cGFsICsgLnBheXBhbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgICAuY2FydC10b3RhbHMtd3JhcHBlciAuY2hlY2tvdXQtdHlwZXMgYnV0dG9uIHtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgIC5jYXJ0LXRvdGFscy13cmFwcGVyIC5jaGVja291dC10eXBlcyBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAuY2FydC10b3RhbHMtd3JhcHBlciAuY2hlY2tvdXQtdHlwZXMgLml0ZW0gKyAuaXRlbSB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5jYXJ0LXRvdGFscy13cmFwcGVyIC5jaGVja291dC10eXBlcyAuaXRlbSArIC5pdGVtIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9IH1cbiAgICAuY2FydC10b3RhbHMtd3JhcHBlciAuY2hlY2tvdXQtdHlwZXMgLmNoZWNrb3V0LXR5cGVzLWluZm8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuY2FydC10b3RhbHMtd3JhcHBlciAuY2hlY2tvdXQtdHlwZXMgLmNoZWNrb3V0LXR5cGVzLWluZm8ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMi41cmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAgICAgLmNhcnQtdG90YWxzLXdyYXBwZXIgLmNoZWNrb3V0LXR5cGVzIC5jaGVja291dC10eXBlcy1pbmZvIGltZyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMS4xODc1cmVtOyB9XG4gICAgICAuY2FydC10b3RhbHMtd3JhcHBlciAuY2hlY2tvdXQtdHlwZXMgLmNoZWNrb3V0LXR5cGVzLWluZm8gcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuODc1cmVtO1xuICAgICAgICBjb2xvcjogI2EzYTNhMztcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gIC5jYXJ0LXRvdGFscy13cmFwcGVyIC5tZXRob2QtY2hlY2tvdXQtY2FydC1tZXRob2RzLW11bHRpc2hpcHBpbmcge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuY2FydC10b3RhbHMtd3JhcHBlciBidXR0b24uYnJhaW50cmVlLWdvb2dsZXBheS1idXR0b24ubG9uZyB7XG4gICAgbWF4LXdpZHRoOiAxNzRweDsgfVxuXG4ucHJvZHVjdC1jYXJ0LXJlbW92ZSAuYWN0aW9ucy10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4ucHJvZHVjdC1jYXJ0LWFjdGlvbnMgLmN1c3RvbS1jb3VudGVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7IH1cblxuLmRpc2NvdW50LWZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogMTguMTI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZGlzY291bnQtZm9ybSB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfSB9XG4gIC5jaGVja291dC1pbmRleC1pbmRleCAuZGlzY291bnQtZm9ybSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmRpc2NvdW50LWZvcm0gLmZpZWxkLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZGlzY291bnQtZm9ybSBpbnB1dCB7XG4gICAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAxLjU2MjVyZW0gMC4xODc1cmVtIDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNhM2EzYTM7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDsgfVxuICAgIC5kaXNjb3VudC1mb3JtIGlucHV0OmZvY3VzIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwMDAwOyB9XG4gICAgLmRpc2NvdW50LWZvcm0gaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICNhM2EzYTM7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjI1czsgfVxuICAgIC5kaXNjb3VudC1mb3JtIGlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAjYTNhM2EzO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4yNXM7IH1cbiAgICAuZGlzY291bnQtZm9ybSBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICNhM2EzYTM7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAuMjVzOyB9XG4gIC5kaXNjb3VudC1mb3JtIGJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNS42MjVyZW07XG4gICAgcGFkZGluZzogMCAwLjkzNzVyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gICAgY29sb3I6ICNhM2EzYTM7XG4gICAgaGVpZ2h0OiAyLjVyZW07IH1cbiAgICAuZGlzY291bnQtZm9ybSBidXR0b24uYXBwbHktY291cG9uIHNwYW4gc3BhbjpiZWZvcmUge1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jYXJ0LWZvb3Rlci1hY3Rpb25zIHtcbiAgICBtYXJnaW46IDAgLTAuNjI1cmVtIDEuODc1cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH0gfVxuXG4uY2FydC1mb290ZXItYWN0aW9ucyAuYWN0aW9uIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgfVxuICAuY2FydC1mb290ZXItYWN0aW9ucyAuYWN0aW9uOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuY2FydC1mb290ZXItYWN0aW9ucyAuYWN0aW9uOmhvdmVyOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOyB9XG5cbi5jYXJ0LWZvb3Rlci1hY3Rpb25zIC5maWVsZC13cmFwcGVyIC5hY3Rpb24ge1xuICBjb2xvcjogI2ZmZmZmZjsgfVxuXG4uY2FydC1mb290ZXItYWN0aW9ucyAuaXRlbSB7XG4gIHBhZGRpbmc6IDAuNDM3NXJlbSAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY2FydC1mb290ZXItYWN0aW9ucyAuaXRlbSB7XG4gICAgICBwYWRkaW5nOiAwLjkzNzVyZW0gMS41NjI1cmVtOyB9IH1cbiAgLmNhcnQtZm9vdGVyLWFjdGlvbnMgLml0ZW0udXBkYXRlLWNhcnQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLnNob3BwaW5nLXN1cHBvcnQge1xuICBtYXgtd2lkdGg6IDI2Ljg3NXJlbTsgfVxuICAuc2hvcHBpbmctc3VwcG9ydCB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgIC5zaG9wcGluZy1zdXBwb3J0IHVsIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMS41NjI1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5zaG9wcGluZy1zdXBwb3J0IHVsIGxpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjE4NzVyZW07XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzLjQzNzVyZW07IH0gfVxuICAgICAgLnNob3BwaW5nLXN1cHBvcnQgdWwgbGkgYSB7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7IH1cbiAgLnNob3BwaW5nLXN1cHBvcnQgaDQge1xuICAgIGZvbnQtZmFtaWx5OiAnQnJhbmRvbkdyb3Rlc3F1ZScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgLnNob3BwaW5nLXN1cHBvcnQgcCB7XG4gICAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gICAgY29sb3I6ICNhM2EzYTM7IH1cbiAgICAuc2hvcHBpbmctc3VwcG9ydCBwIGEge1xuICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogM3B4O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hY2NvdW50LWxvZ2luIC5jb2x1bW5zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG5cbi5mb3JtLWxpc3QsIC5maWVsZHNldCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgLmZvcm0tbGlzdCBhLCAuZmllbGRzZXQgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgLmZvcm0tbGlzdCAuY29udHJvbCwgLmZpZWxkc2V0IC5jb250cm9sIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiAyMS4yNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZm9ybS1saXN0IC5jb250cm9sLCAuZmllbGRzZXQgLmNvbnRyb2wge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gIC5mb3JtLWxpc3QgLmRpdi5tYWdlLWVycm9yLCAuZm9ybS1saXN0IC5maWVsZC1lcnJvciwgLmZpZWxkc2V0IC5kaXYubWFnZS1lcnJvciwgLmZpZWxkc2V0IC5maWVsZC1lcnJvciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwOyB9XG4gIC5mb3JtLWxpc3QgI3Bhc3N3b3JkLXN0cmVuZ3RoLW1ldGVyLWNvbnRhaW5lciwgLmZpZWxkc2V0ICNwYXNzd29yZC1zdHJlbmd0aC1tZXRlci1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuZm9ybS1saXN0ICNwYXNzd29yZC1zdHJlbmd0aC1tZXRlci1jb250YWluZXIucGFzc3dvcmQtd2VhaywgLmZpZWxkc2V0ICNwYXNzd29yZC1zdHJlbmd0aC1tZXRlci1jb250YWluZXIucGFzc3dvcmQtd2VhayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiByZWQ7IH1cbiAgICAuZm9ybS1saXN0ICNwYXNzd29yZC1zdHJlbmd0aC1tZXRlci1jb250YWluZXIucGFzc3dvcmQtbWVkaXVtLCAuZmllbGRzZXQgI3Bhc3N3b3JkLXN0cmVuZ3RoLW1ldGVyLWNvbnRhaW5lci5wYXNzd29yZC1tZWRpdW0ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogI2ZmYWUwMDsgfVxuICAgIC5mb3JtLWxpc3QgI3Bhc3N3b3JkLXN0cmVuZ3RoLW1ldGVyLWNvbnRhaW5lci5wYXNzd29yZC1zdHJvbmcsIC5mb3JtLWxpc3QgI3Bhc3N3b3JkLXN0cmVuZ3RoLW1ldGVyLWNvbnRhaW5lci5wYXNzd29yZC12ZXJ5LXN0cm9uZywgLmZpZWxkc2V0ICNwYXNzd29yZC1zdHJlbmd0aC1tZXRlci1jb250YWluZXIucGFzc3dvcmQtc3Ryb25nLCAuZmllbGRzZXQgI3Bhc3N3b3JkLXN0cmVuZ3RoLW1ldGVyLWNvbnRhaW5lci5wYXNzd29yZC12ZXJ5LXN0cm9uZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAjM2FkYjc2OyB9XG5cbi5jaGVja291dCB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jaGVja291dCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5jaGVja291dCA+IC5yb3cge1xuICAgICAgcGFkZGluZzogMCAzcmVtOyB9IH1cbiAgLmNoZWNrb3V0IC5wYXltZW50LW1ldGhvZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDM1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gICAgLmNoZWNrb3V0IC5wYXltZW50LW1ldGhvZC5fYWN0aXZlIC5wYXltZW50LW1ldGhvZC10aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgLmNoZWNrb3V0IC5wYXltZW50LW1ldGhvZC5fYWN0aXZlIC5wYXltZW50LW1ldGhvZC1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5jaGVja291dC1vbmVwYWdlLXN1Y2Nlc3MgLnJlY2VpdmUtb3JkZXItdGl0bGUgLnN1Yi10aXRsZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXdlaWdodDogNDAwOyB9XG5cbi5jaGVja291dC1zdWNjZXNzIC5yZWNlaXZlLW9yZGVyLWluZm8gPiAqIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cblxuLmNoZWNrb3V0LWNvbnRhaW5lciBoMyB7XG4gIGZvbnQtZmFtaWx5OiAnQnJhbmRvbkdyb3Rlc3F1ZScsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG5cbi5jaGVja291dC1jb250YWluZXIgLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmNoZWNrb3V0LWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmNoZWNrb3V0LWhlYWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1LjYyNXJlbTsgfSB9XG4gIC5jaGVja291dC1oZWFkZXIgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuY2hlY2tvdXQtaGVhZGVyIHVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG4gICAgLmNoZWNrb3V0LWhlYWRlciB1bCBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLmNoZWNrb3V0LWhlYWRlciB1bCBsaSB7XG4gICAgICAgICAgcGFkZGluZzogMCAwLjYyNXJlbTsgfSB9XG4gICAgICAuY2hlY2tvdXQtaGVhZGVyIHVsIGxpLmFjdGl2ZSBkaXYge1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAjZjE2NTY3O1xuICAgICAgICBjb2xvcjogI2YxNjU2NztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gICAgICAuY2hlY2tvdXQtaGVhZGVyIHVsIGxpLmNvbXBsZXRlIGRpdiB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmMTY1Njc7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMTY1Njc7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2NoZWNrLXN5bWJvbC5zdmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI4JTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgLmNoZWNrb3V0LWhlYWRlciB1bCBsaS5jb21wbGV0ZSBkaXYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzNCU7IH0gfVxuICAgIC5jaGVja291dC1oZWFkZXIgdWwgYSB7XG4gICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5jaGVja291dC1oZWFkZXIgdWwgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIC5jaGVja291dC1oZWFkZXIgdWwgZGl2IHtcbiAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuODc1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuMzc1cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgLmNoZWNrb3V0LWhlYWRlciB1bCBkaXYge1xuICAgICAgICAgIHdpZHRoOiAzLjc1cmVtO1xuICAgICAgICAgIGhlaWdodDogMy43NXJlbTtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0byAxLjI1cmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzLjYyNXJlbTsgfSB9XG4gICAgLmNoZWNrb3V0LWhlYWRlciB1bCBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuY2hlY2tvdXQtaGVhZGVyIHVsIHNwYW4ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG5cbi5jaGVja291dFN0ZXBzIHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXgtd2lkdGg6IDQzLjc1cmVtOyB9XG4gIGJvZHkucmV2aWV3IC5jaGVja291dFN0ZXBzIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICBib2R5LnJldmlldyAuY2hlY2tvdXRTdGVwcyAub3JkZXItcmV2aWV3LWRldGFpbHMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gIGJvZHkucGF5bWVudCAuY2hlY2tvdXRTdGVwcyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgYm9keS5wYXltZW50IC5jaGVja291dFN0ZXBzIC5wYXltZW50LWluZm8ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuICAgIGJvZHkucGF5bWVudCAuY2hlY2tvdXRTdGVwcyAucGF5bWVudC1mb3JtIHtcbiAgICAgIG1heC13aWR0aDogMzguNzVyZW07XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICBib2R5LnBheW1lbnQgLmNoZWNrb3V0U3RlcHMgLnBheW1lbnQtZm9ybSB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIHdpZHRoOiA1MC43NSU7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMS44NzVyZW07IH0gfVxuXG4uZm9ybS1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAuZm9ybS1saXN0IHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDsgfVxuXG4ucmVtZW1iZXItbWUtcG9wdXAge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5jaGVja291dC1mb3JtIC5jb2wtMSB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cblxuLmNoZWNrb3V0LWZvcm0gLmZvcm0tbGlzdCB7XG4gIG1hcmdpbjogMCAwIDEuNTYyNXJlbTtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAuY2hlY2tvdXQtZm9ybSAuZm9ybS1saXN0IC5maWVsZHMge1xuICAgIG1hcmdpbjogMCAtMC45Mzc1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAtNnB4OyB9XG4gIC5jaGVja291dC1mb3JtIC5mb3JtLWxpc3QgLmZpZWxkIHtcbiAgICBwYWRkaW5nOiAwIDAuOTM3NXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5jaGVja291dC1mb3JtIC5mb3JtLWxpc3QgLmZpZWxkIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICB3aWR0aDogNTAlOyB9IH1cbiAgLmNoZWNrb3V0LWZvcm0gLmZvcm0tbGlzdCBpbnB1dC5pbnB1dC10ZXh0LCAuY2hlY2tvdXQtZm9ybSAuZm9ybS1saXN0IHNlbGVjdDpub3QoLmFkZHJlc3Mtc2VsZWN0KSB7XG4gICAgbWF4LXdpZHRoOiAxOC4xMjVyZW07IH1cblxuLmNoZWNrb3V0LWZvcm0gLmNvbnRyb2wge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG5cbi5jaGVja291dC1mb3JtIC5jb250cm9sLXJhZGlvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXJnaW4tcmlnaHQ6IDEuODc1cmVtO1xuICBtYXJnaW4tdG9wOiAwLjMxMjVyZW07IH1cblxuLmN1c3RvbWVyLWxvZ2luIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAuY3VzdG9tZXItbG9naW4gdWwge1xuICAgIGNvbG9yOiAjYTNhM2EzO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLmN1c3RvbWVyLWxvZ2luIHVsIGxpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5jdXN0b21lci1sb2dpbiB1bCBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cbiAgICAuY3VzdG9tZXItbG9naW4gdWwgbGk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMTQnO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTsgfVxuXG4uc2hpcHBpbmctYWRkcmVzcy1pdGVtcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luOiAwIC0xMnB4OyB9XG4gIC5zaGlwcGluZy1hZGRyZXNzLWl0ZW1zIC5zaGlwcGluZy1hZGRyZXNzLWl0ZW0ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgcGFkZGluZzogMjBweCAzMHB4O1xuICAgIG1hcmdpbjogMCAxMnB4IDIwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI0cHgpOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnNoaXBwaW5nLWFkZHJlc3MtaXRlbXMgLnNoaXBwaW5nLWFkZHJlc3MtaXRlbSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDI0cHgpOyB9IH1cbiAgLnNoaXBwaW5nLWFkZHJlc3MtaXRlbXMgLmJ1dHRvbiB7XG4gICAgbWFyZ2luOiAxNXB4IDAgMDsgfVxuXG4uYmVuZWZpdHMuY3VzdG9tLWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4OyB9XG5cbi5zcC1tZXRob2RzIHtcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgLnNwLW1ldGhvZHMuc3AtcGF5Z2F0ZSBkZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuc3AtbWV0aG9kcy5zcC1wYXlnYXRlIGR0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gIC5zcC1tZXRob2RzIGRkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgLnNwLW1ldGhvZHMgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuLnBheW1lbnQtaW5mby1ob2xkZXIgbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuXG4ucGF5bWVudC1pbmZvLWhvbGRlciB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luOiAwOyB9XG4gIC5wYXltZW50LWluZm8taG9sZGVyIHVsIGxpIHtcbiAgICBtYXJnaW46IDAgMC45Mzc1cmVtIDEuMDYyNXJlbSAwOyB9XG5cbi5wYXltZW50LWluZm8taG9sZGVyIC5jaGVja291dC10eXBlcy1pbmZvIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgLnBheW1lbnQtaW5mby1ob2xkZXIgLmNoZWNrb3V0LXR5cGVzLWluZm8gaW1nIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMTg3NXJlbTsgfVxuICAucGF5bWVudC1pbmZvLWhvbGRlciAuY2hlY2tvdXQtdHlwZXMtaW5mbyBwIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDAuODc1cmVtO1xuICAgIGNvbG9yOiAjYTNhM2EzO1xuICAgIG1hcmdpbjogMDsgfVxuXG4jY2hlY2tvdXQtcmV2aWV3LXRhYmxlLXdyYXBwZXIge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG5cbi5jaGVja291dC10b3RhbHMge1xuICBwYWRkaW5nOiAwLjMxMjVyZW0gMCAxLjI1cmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VkZWVmMTtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmNoZWNrb3V0LXRvdGFscyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH0gfVxuICAuY2hlY2tvdXQtdG90YWxzIHRhYmxlIHtcbiAgICBtaW4td2lkdGg6IDFweDsgfVxuXG4ucmVjZWl2ZS1vcmRlci1pbmZvIGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ucmVjZWl2ZS1vcmRlci1pbmZvIHAge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbiAgbWF4LXdpZHRoOiAyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnJlY2VpdmUtb3JkZXItaW5mbyBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9IH1cblxuLnJlY2VpdmUtb3JkZXItaW5mbyBzcGFuIHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5yZWNlaXZlLW9yZGVyLWluZm8gc3BhbiB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuXG4ucmVjZWl2ZS1vcmRlci1pbmZvIGEge1xuICBtYXJnaW4tYm90dG9tOiAyLjE4NzVyZW07XG4gIG1hcmdpbi10b3A6IDEuMzc1cmVtOyB9XG5cbi5yZWNlaXZlLW9yZGVyLWluZm8gLnJlY2VpdmUtb3JkZXItdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07IH1cblxuLnJlY2VpdmUtb3JkZXItaW5mbyAubGluay1wcmludCB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbiNjaGVja291dC1yZXZpZXctc3VibWl0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAjY2hlY2tvdXQtcmV2aWV3LXN1Ym1pdCAuYnV0dG9ucy1zZXQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjA2MjVyZW07IH1cbiAgICAjY2hlY2tvdXQtcmV2aWV3LXN1Ym1pdCAuYnV0dG9ucy1zZXQgLmJ1dHRvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICNjaGVja291dC1yZXZpZXctc3VibWl0IC5wb2xpY3ktYWdyZWVtZW50cyB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgI2NoZWNrb3V0LXJldmlldy1zdWJtaXQgLmNoZWNrb3V0LWFncmVlbWVudHMge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjA2MjVyZW07IH1cbiAgICAjY2hlY2tvdXQtcmV2aWV3LXN1Ym1pdCAuY2hlY2tvdXQtYWdyZWVtZW50cyAuYWdyZWVtZW50LWNvbnRlbnQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICNjaGVja291dC1yZXZpZXctc3VibWl0IC5jaGVja291dC1hZ3JlZW1lbnRzIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cblxuI3BheW1lbnRfZm9ybV9hdXRob3JpemVuZXRfY2ltIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuXG4uY2hlY2tvdXQtaW5kZXgtaW5kZXggLmxvYWRpbmctbWFzayB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICB6LWluZGV4OiA5OTk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuICAuY2hlY2tvdXQtaW5kZXgtaW5kZXggLmxvYWRpbmctbWFzayAubG9hZGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gIC5jaGVja291dC1pbmRleC1pbmRleCAubG9hZGluZy1tYXNrIGltZyB7XG4gICAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50OyB9XG5cbi5jaGVja291dC1pbmRleC1pbmRleCAuaGVhZGVyLWJhbm5lciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm9wYy13cmFwcGVyIHVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmN1c3RvbS1hZGRyZXNzLWZvcm0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luOiAwIC0xMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY3VzdG9tLWFkZHJlc3MtZm9ybSA+IC5maWVsZCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwYWRkaW5nOiAwIDEwcHg7IH0gfVxuXG4uY3VzdG9tLWFkZHJlc3MtZm9ybSBsZWdlbmQubGFiZWwge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5jdXN0b20tYWRkcmVzcy1mb3JtIC5maWVsZC10b29sdGlwIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY3VzdG9tLWFkZHJlc3MtZm9ybSAud2lkZS1maWVsZCB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY3VzdG9tLWFkZHJlc3MtZm9ybSAud2lkZS1maWVsZCB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7IH0gfVxuXG4uYWRkaXRpb25hbC1hZGRyZXNzLWluZm8ge1xuICBtYXJnaW4tYm90dG9tOiAxMnB4OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnN0ZXAtY29udGVudCAuZm9ybS1sb2dpbiB7XG4gICAgbWFyZ2luOiAwIC0xMHB4OyB9IH1cblxuLnN0ZXAtY29udGVudCAuZm9ybS1sb2dpbiAuZmllbGQsIC5zdGVwLWNvbnRlbnQgLmZvcm0tbG9naW4gLmFjdGlvbnMtdG9vbGJhciB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuc3RlcC1jb250ZW50IC5mb3JtLWxvZ2luIC5maWVsZCwgLnN0ZXAtY29udGVudCAuZm9ybS1sb2dpbiAuYWN0aW9ucy10b29sYmFyIHtcbiAgICAgIHBhZGRpbmc6IDAgMTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnN0ZXAtY29udGVudCAuZm9ybS1sb2dpbiAuY29udHJvbCB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH0gfVxuXG4uc3RlcC1jb250ZW50IC5ub3RlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbiNjdXN0b21lci1lbWFpbC1maWVsZHNldCAuY3VzdG9tLWFkZHJlc3MtZm9ybSB7XG4gIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgI2N1c3RvbWVyLWVtYWlsLWZpZWxkc2V0IC5jdXN0b20tYWRkcmVzcy1mb3JtIC5maWVsZCB7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cblxuLnRhYmxlLWNoZWNrb3V0LXNoaXBwaW5nLW1ldGhvZCBsYWJlbCB7XG4gIGhlaWdodDogMTZweDsgfVxuXG4udGFibGUtY2hlY2tvdXQtc2hpcHBpbmctbWV0aG9kIHRyIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbiNjaGVja291dC1zaGlwcGluZy1tZXRob2QtbG9hZCB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi5uZXctYWRkcmVzcy1wb3B1cCB7XG4gIG1hcmdpbi10b3A6IDEwcHg7IH1cblxuLmNoZWNrb3V0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLm9wYy1lc3RpbWF0ZWQtd3JhcHBlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm9wYy1ibG9jay1zdW1tYXJ5IGxhYmVsLCAub3BjLWJsb2NrLXN1bW1hcnkgLnRvZ2dsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4ub3BjLWJsb2NrLXN1bW1hcnkgZHQsIC5vcGMtYmxvY2stc3VtbWFyeSBkZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ub3BjLWJsb2NrLXN1bW1hcnkgdGFibGUge1xuICBtaW4td2lkdGg6IHVuc2V0O1xuICBtYXJnaW4tYm90dG9tOiAyNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAub3BjLWJsb2NrLXN1bW1hcnkgdGFibGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfSB9XG4gIC5vcGMtYmxvY2stc3VtbWFyeSB0YWJsZSB0ciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjNmNjsgfVxuICAgIC5vcGMtYmxvY2stc3VtbWFyeSB0YWJsZSB0cjpsYXN0LW9mLXR5cGUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDsgfVxuICAub3BjLWJsb2NrLXN1bW1hcnkgdGFibGUgdGgsIC5vcGMtYmxvY2stc3VtbWFyeSB0YWJsZSB0ZCB7XG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5vcGMtYmxvY2stc3VtbWFyeSBjYXB0aW9uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uaXRlbXMtaW4tY2FydCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYzZjY7XG4gIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLml0ZW1zLWluLWNhcnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9IH1cbiAgLml0ZW1zLWluLWNhcnQgPiAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLml0ZW1zLWluLWNhcnQgPiAuYWNjb3JkaW9uLXRpdGxlLmlzLWFjdGl2ZSBsYWJlbDpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH1cbiAgICAuaXRlbXMtaW4tY2FydCA+IC5hY2NvcmRpb24tdGl0bGUgbGFiZWwge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEycHg7IH1cbiAgICAgIC5pdGVtcy1pbi1jYXJ0ID4gLmFjY29yZGlvbi10aXRsZSBsYWJlbDpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2U7IH1cbiAgICAgIC5pdGVtcy1pbi1jYXJ0ID4gLmFjY29yZGlvbi10aXRsZSBsYWJlbDpiZWZvcmUsIC5pdGVtcy1pbi1jYXJ0ID4gLmFjY29yZGlvbi10aXRsZSBsYWJlbDphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IGNhbGMoNTAlIC0gMXB4KTtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOyB9XG4gIC5pdGVtcy1pbi1jYXJ0ID4gLmFjY29yZGlvbi1ib2R5IHtcbiAgICBwYWRkaW5nOiAwLjgxMjVyZW0gMS4wNjI1cmVtO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuaXRlbXMtaW4tY2FydCA+IC5hY2NvcmRpb24tYm9keSB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMTBweDsgfSB9XG4gIC5pdGVtcy1pbi1jYXJ0IC5wcm9kdWN0LWl0ZW0gKyAucHJvZHVjdC1pdGVtIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cbiAgLml0ZW1zLWluLWNhcnQgLnByb2R1Y3QtaXRlbSA+IC5wcm9kdWN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG4gIC5pdGVtcy1pbi1jYXJ0IC5wcm9kdWN0LWl0ZW0tZGV0YWlscyB7XG4gICAgcGFkZGluZy1sZWZ0OiA4cHg7IH1cbiAgLml0ZW1zLWluLWNhcnQgLm9wdGlvbnMgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLm9wYy1wYXltZW50IC5zdGVwLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuXG4ub3BjLXBheW1lbnQgLmJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnBheW1lbnQtbWV0aG9kLXRpdGxlIGltZyB7XG4gIGhlaWdodDogMjBweDtcbiAgd2lkdGg6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDIwcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gIHBhZGRpbmctcmlnaHQ6IDVweDsgfVxuXG4ucGF5bWVudC1tZXRob2QtY29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5wYXltZW50LW1ldGhvZC1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfSB9XG5cbi5maWVsZC1zZWxlY3QtYmlsbGluZyB7XG4gIHBhZGRpbmctdG9wOiAxNXB4OyB9XG4gIC5maWVsZC1zZWxlY3QtYmlsbGluZyAuY29udHJvbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG5cbi5iaWxsaW5nLWFkZHJlc3Mtc2FtZS1hcy1zaGlwcGluZy1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cblxuLmFjdGlvbi1oZWxwLWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG5cbi5vcGMtYmxvY2stc2hpcHBpbmctaW5mb3JtYXRpb24gW2NsYXNzXj1cInNoaXAtXCJdIHtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm9wYy1ibG9jay1zaGlwcGluZy1pbmZvcm1hdGlvbiBbY2xhc3NePVwic2hpcC1cIl0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfSB9XG4gIC5vcGMtYmxvY2stc2hpcHBpbmctaW5mb3JtYXRpb24gW2NsYXNzXj1cInNoaXAtXCJdIC5zaGlwcGluZy1pbmZvcm1hdGlvbi10aXRsZSB7XG4gICAgYmFja2dyb3VuZDogI2YyZjNmNjtcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIC5vcGMtYmxvY2stc2hpcHBpbmctaW5mb3JtYXRpb24gW2NsYXNzXj1cInNoaXAtXCJdIC5zaGlwcGluZy1pbmZvcm1hdGlvbi10aXRsZSBidXR0b24ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZm9udC1mYW1pbHk6IFwiQnJhbmRvbkdyb3Rlc3F1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBjb2xvcjogI2EzYTNhMztcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2U7IH1cbiAgICAgIC5vcGMtYmxvY2stc2hpcHBpbmctaW5mb3JtYXRpb24gW2NsYXNzXj1cInNoaXAtXCJdIC5zaGlwcGluZy1pbmZvcm1hdGlvbi10aXRsZSBidXR0b246aG92ZXIge1xuICAgICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAub3BjLWJsb2NrLXNoaXBwaW5nLWluZm9ybWF0aW9uIFtjbGFzc149XCJzaGlwLVwiXSAuc2hpcHBpbmctaW5mb3JtYXRpb24tY29udGVudCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuXG4uYmlsbGluZy1hZGRyZXNzLWRldGFpbHMge1xuICBmb250LXNpemU6IDE0cHg7IH1cbiAgLmJpbGxpbmctYWRkcmVzcy1kZXRhaWxzIGJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDVweCAwO1xuICAgIGNvbG9yOiAjYTNhM2EzO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZTsgfVxuICAgIC5iaWxsaW5nLWFkZHJlc3MtZGV0YWlscyBidXR0b246aG92ZXIge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLmNyZWRpdC1jYXJkLXR5cGVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uYXV0aG9yaXplLWNpbSAuZmllbGQuZGF0ZSwgLmF1dGhvcml6ZS1jaW0gLmZpZWxkLmN2diB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMnB4KTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuXG4uYXV0aG9yaXplLWNpbSAucGF5bWVudC1tZXRob2QtY29udGVudCB7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuXG4uY2hlY2tvdXQtYmlsbGluZy1hZGRyZXNzIC5hY3Rpb25zLXRvb2xiYXIge1xuICBtYXJnaW4tdG9wOiAxNXB4OyB9XG5cbi5jaGVja291dC1hZ3JlZW1lbnRzLWJsb2NrIHtcbiAgbWFyZ2luOiAyMHB4IDA7IH1cbiAgLmNoZWNrb3V0LWFncmVlbWVudHMtYmxvY2sgLmNoZWNrYm94ICsgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMTVweDsgfVxuXG4ub3JkZXItcmV2aWV3LWZvcm0tY29udGFpbmVyIC5jaGVja291dC1hZ3JlZW1lbnQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLnN0b3JlLWNyZWRpdC1hZGQge1xuICBtYXJnaW4tdG9wOiAzNXB4OyB9XG4gIC5zdG9yZS1jcmVkaXQtYWRkIC5wYXltZW50LW9wdGlvbi10aXRsZSB7XG4gICAgYmFja2dyb3VuZDogI2YyZjNmNjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5zdG9yZS1jcmVkaXQtYWRkIC5wYXltZW50LW9wdGlvbi10aXRsZTpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2U7IH1cbiAgICAuc3RvcmUtY3JlZGl0LWFkZCAucGF5bWVudC1vcHRpb24tdGl0bGU6YmVmb3JlLCAuc3RvcmUtY3JlZGl0LWFkZCAucGF5bWVudC1vcHRpb24tdGl0bGU6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMjBweDtcbiAgICAgIHRvcDogY2FsYyg1MCUgLSAxcHgpO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cbiAgLnN0b3JlLWNyZWRpdC1hZGQuX2FjdGl2ZSAucGF5bWVudC1vcHRpb24tdGl0bGU6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfVxuICAuc3RvcmUtY3JlZGl0LWFkZCAucGF5bWVudC1vcHRpb24tY29udGVudCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfVxuXG4uYWNjb3VudCBoMSwgLmFjY291bnQgLmgxIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuXG4uYWNjb3VudCAuZm9ybS1saXN0IC5maWVsZHMge1xuICBtYXJnaW46IDAgLTAuOTM3NXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC02cHg7IH1cblxuLmFjY291bnQgLmZvcm0tbGlzdCAuZmllbGQge1xuICBwYWRkaW5nOiAwIDAuOTM3NXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hY2NvdW50IC5mb3JtLWxpc3QgLmZpZWxkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cblxuLmFjY291bnQgLmZvcm0tbGlzdCBpbnB1dC5pbnB1dC10ZXh0LCAuYWNjb3VudCAuZm9ybS1saXN0IHNlbGVjdCB7XG4gIG1heC13aWR0aDogMTguMTI1cmVtOyB9XG5cbi5hY2NvdW50IC5jb250cm9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuXG4uYWNjb3VudCBoMyB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtZmFtaWx5OiAnQnJhbmRvbkdyb3Rlc3F1ZScsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLmFjY291bnQgLnVpLXRvb2x0aXAge1xuICB6LWluZGV4OiA4MDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7IH1cblxuLmFjY291bnQgLnRyYWNraW5nLXRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4uYWNjb3VudCAub3JkZXItdHJhY2tpbmcge1xuICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5hY2NvdW50IC5vcmRlci10cmFja2luZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjgxMjVyZW07IH0gfVxuXG4uY291bnQtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgbWFyZ2luOiAyMHB4IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZGFzaGJvYXJkIC50aXRsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuXG4uZGFzaGJvYXJkIC53ZWxjb21lLW1zZyB7XG4gIG1heC13aWR0aDogNTMuMTI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07IH1cbiAgLmRhc2hib2FyZCAud2VsY29tZS1tc2cgcCB7XG4gICAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gICAgY29sb3I6ICNhM2EzYTM7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZGFzaGJvYXJkIC53ZWxjb21lLW1zZyBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cblxuLmRhc2hib2FyZCAuYm94LXJlY2VudCAuYm94LWhlYWQge1xuICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5kYXNoYm9hcmQgLmJveC1yZWNlbnQgLmJveC1oZWFkIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7IH0gfVxuICAuZGFzaGJvYXJkIC5ib3gtcmVjZW50IC5ib3gtaGVhZCBhLnVuZGVybGluZSB7XG4gICAgZm9udC1zaXplOiAxLjA2MjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZGFzaGJvYXJkIC5ib3gtcmVjZW50IC5ib3gtaGVhZCBhLnVuZGVybGluZSB7XG4gICAgICAgIG1hcmdpbjogMCAzLjEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmRhc2hib2FyZCAuYm94LXJlY2VudCAuYm94LWhlYWQgYS51bmRlcmxpbmUge1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuXG4uZGFzaGJvYXJkIC5ibG9jay10aXRsZSBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDIuMTg3NXJlbTsgfVxuXG4uZGFzaGJvYXJkIC50b3AgLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5kYXNoYm9hcmQgLmJvdHRvbSAuY291bnQtY29udGFpbmVyIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uYWNjb3VudC1pbmZvIHtcbiAgbWFyZ2luOiAwIC0wLjA2MjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hY2NvdW50LWluZm8ge1xuICAgICAgZGlzcGxheTogZmxleDsgfSB9XG4gIC5hY2NvdW50LWluZm8gLmJveCB7XG4gICAgbWFyZ2luOiAwIDAuMDYyNXJlbSAxLjU2MjVyZW07XG4gICAgcGFkZGluZzogMC45Mzc1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYzZjY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmFjY291bnQtaW5mbyAuYm94IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB3aWR0aDogNTAlOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuYWNjb3VudC1pbmZvIC5ib3gge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIHBhZGRpbmc6IDEuODc1cmVtO1xuICAgICAgICBtYXJnaW46IDAgMC4wNjI1cmVtIDIuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmFjY291bnQtaW5mbyAuYm94LmJveC1zdWJzY3JpcHRpb24ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNTVweDsgfSB9XG4gICAgLmFjY291bnQtaW5mbyAuYm94IHNwYW4sIC5hY2NvdW50LWluZm8gLmJveCBhLCAuYWNjb3VudC1pbmZvIC5ib3ggcCB7XG4gICAgICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuYWNjb3VudC1pbmZvIC5ib3ggc3BhbiwgLmFjY291bnQtaW5mbyAuYm94IGEsIC5hY2NvdW50LWluZm8gLmJveCBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuICAgIC5hY2NvdW50LWluZm8gLmJveCBwIHtcbiAgICAgIGNvbG9yOiAjYTNhM2EzOyB9XG4gICAgLmFjY291bnQtaW5mbyAuYm94IHNwYW4sIC5hY2NvdW50LWluZm8gLmJveCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5hY2NvdW50LWluZm8gLnVuZGVybGluZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMS44NzVyZW07XG4gICAgICBib3R0b206IDIuNjg3NXJlbTsgfSB9XG4gIC5hY2NvdW50LWluZm8gLnN1YnNjcmliZSAuaW5mbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIC5hY2NvdW50LWluZm8gLnByb2ZpbGUgLnBpY3R1cmUge1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfVxuICAgIC5hY2NvdW50LWluZm8gLnByb2ZpbGUgLnBpY3R1cmUgKyBkaXYge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOyB9XG4gICAgICAuYWNjb3VudC1pbmZvIC5wcm9maWxlIC5waWN0dXJlICsgZGl2IHAge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hY2NvdW50LWluZm8gLnByb2ZpbGUgLnBpY3R1cmUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5hY2NvdW50LWluZm8gLnByb2ZpbGUgLmluZm8ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuICAuYWNjb3VudC1pbmZvIC5pbmZvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuYWNjb3VudC1pbmZvIC5pbmZvIHtcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgLmFjY291bnQtaW5mbyAuaWNvbi1ob2xkZXIge1xuICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogMi4zMTI1cmVtO1xuICAgIGhlaWdodDogMi4zMTI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDEuMjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2EzYTNhMztcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogNDUlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmFjY291bnQtaW5mbyAuaWNvbi1ob2xkZXI6YmVmb3JlLCAuYWNjb3VudC1pbmZvIC5pY29uLWhvbGRlcjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbjogLTFweCAwIDAgLTdweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5hY2NvdW50LWluZm8gLmljb24taG9sZGVyOmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG4gICAgLmFjY291bnQtaW5mbyAuaWNvbi1ob2xkZXI6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG4gICAgLmFjY291bnQtaW5mbyAuaWNvbi1ob2xkZXIuc3Vic2NyaWJlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjE2NTY3O1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy9jaGVjay1zeW1ib2wuc3ZnKTsgfVxuICAgICAgLmFjY291bnQtaW5mbyAuaWNvbi1ob2xkZXIuc3Vic2NyaWJlZDpiZWZvcmUsIC5hY2NvdW50LWluZm8gLmljb24taG9sZGVyLnN1YnNjcmliZWQ6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5hY2NvdW50LWluZm8gLnBpY3R1cmUge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiA1cmVtO1xuICAgIGhlaWdodDogNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAyLjVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIHBhZGRpbmc6IDAuMzc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTsgfVxuICAgIC5hY2NvdW50LWluZm8gLnBpY3R1cmUgZGl2IHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBib3JkZXItcmFkaXVzOiAyLjVyZW07IH1cblxuLmFjY291bnQtcGhvdG8ge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gIC5hY2NvdW50LXBob3RvIC5waWN0dXJlLCAuYWNjb3VudC1waG90byAuZGVsZXRlLWltYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmFjY291bnQtcGhvdG8gLnBpY3R1cmUge1xuICAgIHdpZHRoOiA1cmVtO1xuICAgIGhlaWdodDogNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAyLjVyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIHBhZGRpbmc6IDAuMzc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTsgfVxuICAgIC5hY2NvdW50LXBob3RvIC5waWN0dXJlIGRpdiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgYm9yZGVyLXJhZGl1czogMi41cmVtOyB9XG4gIC5hY2NvdW50LXBob3RvIC5idXR0b24ge1xuICAgIG1heC13aWR0aDogMTVyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgfVxuXG4uYWNjb3VudC1nYWxsZXJ5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luOiAwIC0wLjA2MjVyZW07IH1cbiAgLmFjY291bnQtZ2FsbGVyeSBoMyB7XG4gICAgZm9udC1mYW1pbHk6ICdCcmFuZG9uR3JvdGVzcXVlJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG4gIC5hY2NvdW50LWdhbGxlcnkgcCB7XG4gICAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gICAgY29sb3I6ICNhM2EzYTM7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuYWNjb3VudC1nYWxsZXJ5IHAge1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9IH1cbiAgLmFjY291bnQtZ2FsbGVyeSAucGljdHVyZSB7XG4gICAgcGFkZGluZy10b3A6IDU3LjQ3JTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07IH1cbiAgLmFjY291bnQtZ2FsbGVyeSAuaXRlbSB7XG4gICAgbWFyZ2luOiAwIDAgMi4xODc1cmVtO1xuICAgIHBhZGRpbmc6IDAgMC4wNjI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmFjY291bnQtZ2FsbGVyeSAuaXRlbSB7XG4gICAgICAgIG1hcmdpbjogMCAwIDQuMzc1cmVtOyB9IH1cbiAgLmFjY291bnQtZ2FsbGVyeSAuaW5mbyB7XG4gICAgcGFkZGluZzogMCAxLjE4NzVyZW07IH1cbiAgLmFjY291bnQtZ2FsbGVyeSAuYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgbWluLXdpZHRoOiAxNXJlbTsgfVxuXG4uYWNjb3VudC1pbmZvcm1hdGlvbiwgLmVkaXQtYWRkcmVzcyB7XG4gIG1heC13aWR0aDogMzguNzVyZW07IH1cbiAgLmFjY291bnQtaW5mb3JtYXRpb24gLmNoYW5nZS1oaWRkZW4sIC5lZGl0LWFkZHJlc3MgLmNoYW5nZS1oaWRkZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXRvcDogMS41NjI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmFjY291bnQtaW5mb3JtYXRpb24gLmNoYW5nZS1oaWRkZW4sIC5lZGl0LWFkZHJlc3MgLmNoYW5nZS1oaWRkZW4ge1xuICAgICAgICBwYWRkaW5nLXRvcDogMi41cmVtOyB9IH1cbiAgICAuYWNjb3VudC1pbmZvcm1hdGlvbiAuY2hhbmdlLWhpZGRlbjpiZWZvcmUsIC5lZGl0LWFkZHJlc3MgLmNoYW5nZS1oaWRkZW46YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAzMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZWYxOyB9XG4gIC5hY2NvdW50LWluZm9ybWF0aW9uIC5idXR0b24sIC5lZGl0LWFkZHJlc3MgLmJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5hY2NvdW50LWluZm9ybWF0aW9uIC5hZGRpdGlvbmFsLWFkZHJlc3MtaW5mbywgLmVkaXQtYWRkcmVzcyAuYWRkaXRpb25hbC1hZGRyZXNzLWluZm8ge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07IH1cbiAgICAuYWNjb3VudC1pbmZvcm1hdGlvbiAuYWRkaXRpb25hbC1hZGRyZXNzLWluZm86bGFzdC1vZi10eXBlLCAuZWRpdC1hZGRyZXNzIC5hZGRpdGlvbmFsLWFkZHJlc3MtaW5mbzpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cblxuLmFkZHJlc3Nlcy1saXN0IC5idXR0b25zLXNldCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmFkZHJlc3Nlcy1saXN0IC5idXR0b25zLXNldCAuYnV0dG9uIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLmFkZHJlc3Nlcy1saXN0IG9sIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwOyB9XG5cbi5hZGRyZXNzZXMtbGlzdCAuZW1wdHkgcCB7XG4gIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYWRkcmVzc2VzLWxpc3QgLmVtcHR5IHAge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5hZGRyZXNzZXMtbGlzdCAuZW1wdHkgcCB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTsgfSB9XG5cbi5hZGRyZXNzZXMtYWRkaXRpb25hbCBoMywgLmFkZHJlc3Nlcy1hZGRpdGlvbmFsIHAge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5hZGRyZXNzZXMtYWRkaXRpb25hbCAuYm94IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMS41NjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYWRkcmVzc2VzLWFkZGl0aW9uYWwgLmJveCB7XG4gICAgICBtYXJnaW4tdG9wOiAyLjE4NzVyZW07IH0gfVxuXG4uYWRkcmVzc2VzLWFkZGl0aW9uYWwgLnVuZGVybGluZSB7XG4gIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYWRkcmVzc2VzLXByaW1hcnkgLnVuZGVybGluZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMS41NjI1cmVtO1xuICAgIHJpZ2h0OiAxLjU2MjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5hZGRyZXNzZXMtcHJpbWFyeSAudW5kZXJsaW5lIHtcbiAgICB0b3A6IDMuMTI1cmVtO1xuICAgIHJpZ2h0OiAzLjEyNXJlbTsgfSB9XG5cbi5hZGRyZXNzZXMtcHJpbWFyeSBoMyB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBmb250LXdlaWdodDogNDAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYWRkcmVzc2VzLXByaW1hcnkgaDMge1xuICAgICAgcGFkZGluZy1yaWdodDogMy4xMjVyZW07IH0gfVxuXG4uYWRkcmVzc2VzLXByaW1hcnkgbGksIC5hZGRyZXNzZXMtYWRkaXRpb25hbCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5hZGRyZXNzZXMtcHJpbWFyeSwgLmFkZHJlc3Nlcy1hZGRpdGlvbmFsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG5cbi5hZGRyZXNzZXMtcHJpbWFyeSAuc21hbGwtMTIueG1lZGl1bS02LmNvbHVtbnMsIC5hZGRyZXNzZXMtYWRkaXRpb25hbCAuc21hbGwtMTIueG1lZGl1bS02LmNvbHVtbnMge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi5hZGRyZXNzZXMtcHJpbWFyeSAuaG9sZGVyLCAuYWRkcmVzc2VzLXByaW1hcnkgLmJveCwgLmFkZHJlc3Nlcy1hZGRpdGlvbmFsIC5ob2xkZXIsIC5hZGRyZXNzZXMtYWRkaXRpb25hbCAuYm94IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmM2Y2O1xuICBwYWRkaW5nOiAwLjkzNzVyZW0gMC42MjVyZW07XG4gIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hZGRyZXNzZXMtcHJpbWFyeSAuaG9sZGVyLCAuYWRkcmVzc2VzLXByaW1hcnkgLmJveCwgLmFkZHJlc3Nlcy1hZGRpdGlvbmFsIC5ob2xkZXIsIC5hZGRyZXNzZXMtYWRkaXRpb25hbCAuYm94IHtcbiAgICAgIHBhZGRpbmc6IDEuNTYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYWRkcmVzc2VzLXByaW1hcnkgLmhvbGRlciwgLmFkZHJlc3Nlcy1wcmltYXJ5IC5ib3gsIC5hZGRyZXNzZXMtYWRkaXRpb25hbCAuaG9sZGVyLCAuYWRkcmVzc2VzLWFkZGl0aW9uYWwgLmJveCB7XG4gICAgICBwYWRkaW5nOiAzLjEyNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG5cbi5hZGRyZXNzZXMtcHJpbWFyeSAuYWRkcmVzcywgLmFkZHJlc3Nlcy1hZGRpdGlvbmFsIC5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG5cbi5hZGRyZXNzZXMtcHJpbWFyeSBhYmJyLCAuYWRkcmVzc2VzLWFkZGl0aW9uYWwgYWJiciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cblxuLmFkZHJlc3Nlcy1wcmltYXJ5IC5idXR0b24uYWN0aW9uLCAuYWRkcmVzc2VzLWFkZGl0aW9uYWwgLmJ1dHRvbi5hY3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5hZGRyZXNzZXMtcHJpbWFyeSAuYnV0dG9uLmFjdGlvbiwgLmFkZHJlc3Nlcy1hZGRpdGlvbmFsIC5idXR0b24uYWN0aW9uIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5hZGRyZXNzZXMtcHJpbWFyeSAuaXRlbS5hY3Rpb25zLCAuYWRkcmVzc2VzLWFkZGl0aW9uYWwgLml0ZW0uYWN0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9IH1cblxuLmJsb2NrLWFkZHJlc3Nlcy1kZWZhdWx0IHtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuXG4uYWJvdXQtb3JkZXIge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYWJvdXQtb3JkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtOyB9IH1cbiAgLmFib3V0LW9yZGVyIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDEuMDYyNXJlbTtcbiAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5hYm91dC1vcmRlciBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07IH0gfVxuICAuYWJvdXQtb3JkZXIgc3BhbiB7XG4gICAgbWluLXdpZHRoOiA2LjI1cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmFib3V0LW9yZGVyIHNwYW4ge1xuICAgICAgICBtaW4td2lkdGg6IDEyLjVyZW07IH0gfVxuXG4ub3JkZXItaW5mbyB7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgLm9yZGVyLWluZm8gdWwgbGksIC5vcmRlci1pbmZvIGR0IHtcbiAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5vcmRlci1pbmZvIHVsIGxpLCAub3JkZXItaW5mbyBkdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG4gIC5vcmRlci1pbmZvIGR0IHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbi5vcmRlci1pbmZvLWJveCAuYm94LXBheW1lbnQgLmJveC1jb250ZW50IHtcbiAgcGFkZGluZy1ib3R0b206IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cbiAgLm9yZGVyLWluZm8tYm94IC5ib3gtcGF5bWVudCAuYm94LWNvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gIC5vcmRlci1pbmZvLWJveCAuYm94LXBheW1lbnQgLmJveC1jb250ZW50IC5jYXJkcy1saXN0IGxpIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuXG4ub3JkZXItaW5mby1ib3ggLmJveCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYzZjY7XG4gIHBhZGRpbmc6IDAuOTM3NXJlbSAwLjYyNXJlbTtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAub3JkZXItaW5mby1ib3ggLmJveCB7XG4gICAgICBwYWRkaW5nOiAxLjU2MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm9yZGVyLWluZm8tYm94IC5ib3gge1xuICAgICAgcGFkZGluZzogMy4xMjVyZW07XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjE4NzVyZW07IH0gfVxuXG4ub3JkZXItaW5mby1ib3ggaDMge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZSAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm9yZGVyLWluZm8tYm94IGgzIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtOyB9IH1cblxuLm9yZGVyLWluZm8tYm94IC5ib3gtY29udGVudCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgLm9yZGVyLWluZm8tYm94IC5ib3gtY29udGVudCBhZGRyZXNzIHtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gIC5vcmRlci1pbmZvLWJveCAuYm94LWNvbnRlbnQgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLm9yZGVyLWluZm8tYm94IC5ib3gtY29udGVudCBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cblxuLm9yZGVyLWluZm8tYm94IC5wYXltZW50LW1ldGhvZCB7XG4gIG1hcmdpbjogMDsgfVxuICAub3JkZXItaW5mby1ib3ggLnBheW1lbnQtbWV0aG9kIC50aXRsZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblxuLm9yZGVyLWl0ZW1zIC50YWJsZS1jYXB0aW9uIHtcbiAgbWFyZ2luOiAxLjU2MjVyZW0gMDsgfVxuXG4uY3JlYXRlLWFjY291bnQtZm9ybS5mb3JtLWxpc3QgLmZpZWxkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7IH1cblxuLmNyZWF0ZS1hY2NvdW50LWZvcm0uZm9ybS1saXN0IC5maWVsZHMge1xuICBtYXJnaW46IDA7IH1cblxuLmNyZWF0ZS1hY2NvdW50LWZvcm0uZm9ybS1saXN0IGlucHV0LmlucHV0LXRleHQsIC5jcmVhdGUtYWNjb3VudC1mb3JtLmZvcm0tbGlzdCBzZWxlY3Qge1xuICBtYXgtd2lkdGg6IG5vbmU7IH1cblxuLm9yZGVyLWxpbmtzIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2YyZjNmNjtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cbiAgLm9yZGVyLWxpbmtzIGEsIC5vcmRlci1saW5rcyBzdHJvbmcge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjNzIGVhc2U7XG4gICAgbWFyZ2luOiAwO1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbWluLXdpZHRoOiAxNTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm9yZGVyLWxpbmtzIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJhY2tncm91bmQ6ICMwMDAwMDA7IH1cbiAgLm9yZGVyLWxpbmtzIC5pdGVtICsgLml0ZW0ge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIC5vcmRlci1saW5rcyAuY3VycmVudCB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMwMDAwMDA7XG4gICAgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAgIC5vcmRlci1saW5rcyAuY3VycmVudCArIC5pdGVtIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAub3JkZXItbGlua3MgLmN1cnJlbnQgYSwgLm9yZGVyLWxpbmtzIC5jdXJyZW50IHN0cm9uZyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cblxuLnRhYmxlLnRyYWNraW5nIC5sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICMwMDA7IH1cblxuLmNyZWRpdC1jYXJkLXByaW1hcnkgb2wsIC5jcmVkaXQtY2FyZC1wcmltYXJ5IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwOyB9XG5cbi5jcmVkaXQtY2FyZC1wcmltYXJ5IC5jYXJkLWluZm8ge1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBmb250LXNpemU6IDEuMDYyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmNyZWRpdC1jYXJkLXByaW1hcnkgLmNhcmQtaW5mbyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDsgfSB9XG5cbi5jcmVkaXQtY2FyZC1wcmltYXJ5IC5idXR0b24ge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuY3JlZGl0LWNhcmQtcHJpbWFyeSAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMS42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmNyZWRpdC1jYXJkLXByaW1hcnkgLmJ1dHRvbiB7XG4gICAgICBtaW4td2lkdGg6IDExLjA2MjVyZW07IH0gfVxuXG4ucGFnZS1wcmludCB7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7IH1cbiAgLnBhZ2UtcHJpbnQgLm1haW4tY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgLnBhZ2UtcHJpbnQgdGFibGUge1xuICAgIG1pbi13aWR0aDogdW5zZXQ7IH1cbiAgICAucGFnZS1wcmludCB0YWJsZSB0ZCB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDVweDsgfVxuICAucGFnZS1wcmludCAuZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDE0NXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH1cbiAgICAucGFnZS1wcmludCAuZGVzY3JpcHRpb24gc3BhbiB7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgY29sb3I6ICNhM2EzYTM7IH1cbiAgICAucGFnZS1wcmludCAuZGVzY3JpcHRpb24gYnIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAucGFnZS1wcmludCAucHJvZHVjdC1jYXJ0LWltYWdlIC5wcm9kdWN0LWltYWdlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDkwcHg7XG4gICAgaGVpZ2h0OiA5MHB4O1xuICAgIG1hcmdpbjogMCA1cHggNXB4IDA7IH1cbiAgLnBhZ2UtcHJpbnQgLnByb2R1Y3QtY2FydC1pbWFnZSBpbWcge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwOyB9XG4gIC5wYWdlLXByaW50IHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIC5wYWdlLXByaW50IC5ib3gge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAucGFnZS1wcmludCAudGFibGUtY2FwdGlvbiB7XG4gICAgbWFyZ2luOiAwIDAgMTVweDsgfVxuICAucGFnZS1wcmludCAubWVzc2FnZXMge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnBhZ2UtcHJpbnQgLmxvZ28ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gIC5wYWdlLXByaW50IC5pdGVtLW9wdGlvbnMge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAucGFnZS1wcmludCAuc21hbGwtMTIge1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5wYWdlLXByaW50IGgxLCAucGFnZS1wcmludCAuaDEge1xuICAgIG1hcmdpbjogMTVweCAwOyB9XG4gIC5wYWdlLXByaW50IC5wcm9kdWN0LWl0ZW0tbmFtZSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1hcmdpbi1ib3R0b206IDJweDsgfVxuICAucGFnZS1wcmludCAucHJvZHVjdC1jYXJ0LWltYWdlIC5pdGVtLW9wdGlvbnMgZHQsXG4gIC5wYWdlLXByaW50IC5kZXNjcmlwdGlvbiAuaXRlbS1vcHRpb25zIGR0IHtcbiAgICBmb250LXNpemU6IDEwcHg7IH1cbiAgLnBhZ2UtcHJpbnQgLnByb2R1Y3QtY2FydC1pbWFnZSAuaXRlbS1vcHRpb25zIGRkLFxuICAucGFnZS1wcmludCAuZGVzY3JpcHRpb24gLml0ZW0tb3B0aW9ucyBkZCB7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG4gIC5wYWdlLXByaW50LnNhbGVzLW9yZGVyLXByaW50IC5sb2dvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwOyB9XG4gIC5wYWdlLXByaW50LnNhbGVzLW9yZGVyLXByaW50IC5wYWdlLXRpdGxlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwMHB4OyB9XG5cbi5wYWdlLXByaW50IC5wcmludC1oZWFkIHtcbiAgbWFyZ2luOiAwIDAgMTVweDsgfVxuXG4ucGFnZS1wcmludCAucHJpbnQtaGVhZCAubG9nbyB7XG4gIGZsb2F0OiBub25lO1xuICBtYXgtaGVpZ2h0OiA1MHB4O1xuICB3aWR0aDogYXV0bzsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zdHJlYW1pbmctbGlicmFyeSBoMSwgLnN0cmVhbWluZy1saWJyYXJ5IC5oMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9IH1cblxuI3N0cmVhbWluZy1saWJyYXJ5LWdyaWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICNzdHJlYW1pbmctbGlicmFyeS1ncmlkIC5tYWtlLXBsYXlsaXN0IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAjc3RyZWFtaW5nLWxpYnJhcnktZ3JpZCAubWFrZS1wbGF5bGlzdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0NXB4OyB9IH1cbiAgI3N0cmVhbWluZy1saWJyYXJ5LWdyaWQgLmxvYWRpbmctbWFzayB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAjc3RyZWFtaW5nLWxpYnJhcnktZ3JpZCAucGFnaW5hdGlvbiAuY3VycmVudCB7XG4gICAgY3Vyc29yOiBhdXRvOyB9XG4gICAgI3N0cmVhbWluZy1saWJyYXJ5LWdyaWQgLnBhZ2luYXRpb24gLmN1cnJlbnQgYSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgY3Vyc29yOiBhdXRvOyB9XG4gICNzdHJlYW1pbmctbGlicmFyeS1ncmlkIC5oaWRkZW4td3JhcCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAjc3RyZWFtaW5nLWxpYnJhcnktZ3JpZC5zaG93IC5oaWRkZW4td3JhcCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgI3N0cmVhbWluZy1saWJyYXJ5LWdyaWQgLmN3LWFkZCBhIHtcbiAgICBjb2xvcjogI2YxNjU2NzsgfVxuXG4uc3RyZWFtaW5nLWxpYnJhcnktbGlzdCB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5zdHJlYW1pbmctbGlicmFyeS1saXN0IHVsIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuc3RyZWFtaW5nLWxpYnJhcnktbGlzdCB1bCBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuODEyNXJlbTsgfSB9XG5cbi5zdHJlYW1pbmctbGlicmFyeS1saXN0IC5wcmV2aWV3LXdyYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnN0cmVhbWluZy1saWJyYXJ5LWxpc3QgLnByZXZpZXctd3JhcCAubGlrZS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgcGFkZGluZzogMC45Mzc1cmVtO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnN0cmVhbWluZy1saWJyYXJ5LWxpc3QgLnByZXZpZXctd3JhcCAubGlrZS1jb250YWluZXIgaSB7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIC5zdHJlYW1pbmctbGlicmFyeS1saXN0IC5wcmV2aWV3LXdyYXAgLmxpa2UtY29udGFpbmVyLmFjdGl2ZSBpIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5zdHJlYW1pbmctbGlicmFyeS1saXN0IC5wcmV2aWV3IHtcbiAgcGFkZGluZy10b3A6IDYyLjE2JTtcbiAgbWluLWhlaWdodDogMTQuMzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuc3RyZWFtaW5nLWxpYnJhcnktbGlzdCAucHJldmlldzphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMsIDMsIDMsIDAuNCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy9wbGF5LWJ1dHRvbi5zdmcpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogNDhweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7IH1cbiAgLnN0cmVhbWluZy1saWJyYXJ5LWxpc3QgLnByZXZpZXcubmV3OmJlZm9yZSB7XG4gICAgY29udGVudDogJ05ldyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogNS4yNXJlbTtcbiAgICBoZWlnaHQ6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAzMDMwMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXNpemU6IDAuOTM3NXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zdHJlYW1pbmctbGlicmFyeS1saXN0IC5wcmV2aWV3Lm5ldzpiZWZvcmUge1xuICAgICAgICBmb250LXNpemU6IDEuMDYyNXJlbTsgfSB9XG4gIC5zdHJlYW1pbmctbGlicmFyeS1saXN0IC5wcmV2aWV3IGltZyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5zdHJlYW1pbmctbGlicmFyeS1saXN0IC5uYW1lIHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zdHJlYW1pbmctbGlicmFyeS1saXN0IC5uYW1lIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG5cbi5zdHJlYW1pbmctbGlicmFyeS1saXN0IC5ydW50aW1lIHtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGNvbG9yOiAjYTNhM2EzO1xuICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zdHJlYW1pbmctbGlicmFyeS1saXN0IC5ydW50aW1lIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9IH1cblxuLmxpYnJhcnktZmlsdGVyLWFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAubGlicmFyeS1maWx0ZXItYXJlYSA+IGRpdiAucm93IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmM2Y2O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwLjkzNzVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubGlicmFyeS1maWx0ZXItYXJlYSA+IGRpdiAucm93IHtcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbSAxLjU2MjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5saWJyYXJ5LWZpbHRlci1hcmVhID4gZGl2IC5yb3cge1xuICAgICAgICBwYWRkaW5nOiAyLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmxpYnJhcnktZmlsdGVyLWFyZWEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTsgfSB9XG4gIC5saWJyYXJ5LWZpbHRlci1hcmVhIC5pbmxpbmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5saWJyYXJ5LWZpbHRlci1hcmVhIC5pbmxpbmUgLmN1c3RvbS1zZWxlY3Qge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpOyB9XG4gICAgLmxpYnJhcnktZmlsdGVyLWFyZWEgLmlubGluZSAuaWNvbiB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDsgfVxuICAubGlicmFyeS1maWx0ZXItYXJlYSAuZm9ybS1jb250cm9sIHtcbiAgICBjb2xvcjogI2EzYTNhMzsgfVxuICAubGlicmFyeS1maWx0ZXItYXJlYSAuc2VhcmNoLWZvcm0taG9sZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAubGlicmFyeS1maWx0ZXItYXJlYSAuc2VhcmNoLWZvcm0taG9sZGVyIC5zZWFyY2gtaWNvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL3NlYXJjaC5zdmcpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAubGlicmFyeS1maWx0ZXItYXJlYSAuc2VhcmNoLWZvcm0taG9sZGVyIC5zZWFyY2gtaWNvbiB7XG4gICAgICAgICAgcmlnaHQ6IDIwcHg7IH0gfVxuICAubGlicmFyeS1maWx0ZXItYXJlYSAuZXhjaGFuZ2Uge1xuICAgIGhlaWdodDogMi41cmVtO1xuICAgIHdpZHRoOiAyLjVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAgMC4zMTI1cmVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5saWJyYXJ5LWZpbHRlci1hcmVhIC5leGNoYW5nZS5kaXNhYmxlZCB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2I0YmZjMjsgfVxuICAgICAgLmxpYnJhcnktZmlsdGVyLWFyZWEgLmV4Y2hhbmdlLmRpc2FibGVkLmFjdGl2ZSAuaWNvbi1oZWFydC1lbXB0eSB7XG4gICAgICAgIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7IH1cbiAgICAubGlicmFyeS1maWx0ZXItYXJlYSAuZXhjaGFuZ2Ugc3BhbiB7XG4gICAgICBjb2xvcjogI2EzYTNhMyAhaW1wb3J0YW50OyB9XG4gICAgLmxpYnJhcnktZmlsdGVyLWFyZWEgLmV4Y2hhbmdlIC5pY29uLWRvd24ge1xuICAgICAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDsgfVxuICAgIC5saWJyYXJ5LWZpbHRlci1hcmVhIC5leGNoYW5nZS5hY3RpdmUgLmljb24taGVhcnQtZW1wdHkge1xuICAgICAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDsgfVxuICAgIC5saWJyYXJ5LWZpbHRlci1hcmVhIC5leGNoYW5nZS51cCAuaWNvbi1kb3duIHtcbiAgICAgIGNvbG9yOiAjYTNhM2EzICFpbXBvcnRhbnQ7IH1cbiAgICAubGlicmFyeS1maWx0ZXItYXJlYSAuZXhjaGFuZ2UudXAgLmljb24tdXAge1xuICAgICAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDsgfVxuXG4uc3Vic2NyaWJlLW92ZXJsYXkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTsgfVxuICAuc3Vic2NyaWJlLW92ZXJsYXkudmlzaWJsZSB7XG4gICAgcGFkZGluZzogMTVweDsgfVxuICAgIC5zdWJzY3JpYmUtb3ZlcmxheS52aXNpYmxlOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogNTA7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDsgfVxuXG4ud29yZHByZXNzLWhvbWVwYWdlLXZpZXcgLnBhZ2Utd3JhcCA+IC5yb3cgPiAuc21hbGwtMTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAud29yZHByZXNzLWhvbWVwYWdlLXZpZXcgLnNlYXJjaC1ibG9nIHtcbiAgICB0b3A6IDIzcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC53b3JkcHJlc3MtaG9tZXBhZ2UtdmlldyAuc2VhcmNoLWJsb2cge1xuICAgIHRvcDogMzZweDsgfSB9XG5cbi5zZWFyY2gtYmxvZyBkaXYubWFnZS1lcnJvciB7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNlYXJjaC1ibG9nIGlucHV0Lm1hZ2UtZXJyb3Ige1xuICBib3JkZXItY29sb3I6IHJlZDsgfVxuXG4uc2VhcmNoLWJsb2cgLnZhbGlkYXRpb24tYWR2aWNlIHtcbiAgb3BhY2l0eTogMDsgfVxuXG4ud29yZHByZXNzLXBvc3QtdmlldyAucGFnZS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC53b3JkcHJlc3MtcG9zdC12aWV3IC5wYWdlLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAud29yZHByZXNzLXBvc3QtdmlldyAucGFnZS10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDUwcHg7IH0gfVxuXG4ud29yZHByZXNzLXBvc3QtdmlldyAucG9zdC1jb250ZW50ID4gKiB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLndvcmRwcmVzcy1wb3N0LXZpZXcgLnBvc3QtY29udGVudCA+ICoge1xuICAgICAgbWF4LXdpZHRoOiA2MTBweDsgfSB9XG5cbi8qIEFsd2F5cyBzZXQgdGhlIG1hcCBoZWlnaHQgZXhwbGljaXRseSB0byBkZWZpbmUgdGhlIHNpemUgb2YgdGhlIGRpdlxuICAgICAgKiBlbGVtZW50IHRoYXQgY29udGFpbnMgdGhlIG1hcC4gKi9cbi8qIE9wdGlvbmFsOiBNYWtlcyB0aGUgc2FtcGxlIHBhZ2UgZmlsbCB0aGUgd2luZG93LiAqL1xuIiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuMi40XG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuXG5AaW1wb3J0IFwic2V0dGluZ3Mvc2V0dGluZ3NcIjtcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnZ3JpZC9ncmlkJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICdmb3Jtcy9mb3Jtcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXZlYWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJsZSc7XG5cbi8vIERlcGVuZGVuY2llc1xuQGltcG9ydCAnLi9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplJztcbkBpbXBvcnQgJy4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL21pc3NpbmctZGVwZW5kZW5jaWVzJztcbkBpbXBvcnQgJy4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL3RydWUnO1xuQGltcG9ydCAnLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9wdXJnZSc7XG5AaW1wb3J0ICcuL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlcGxhY2UnO1xuQGltcG9ydCAnLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy90by1saXN0JztcblxuXG5AbWl4aW4gZm91bmRhdGlvbi1ldmVyeXRoaW5nIHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3Nlcztcbn1cblxuQGluY2x1ZGUgZm91bmRhdGlvbi1ldmVyeXRoaW5nOyIsIi8vIEhlbHBlciBmdW5jdGlvbiBmb3IgdGhlIG5vcm1hbGl6ZSgpIG1peGluLlxuQGZ1bmN0aW9uIF9ub3JtYWxpemUtaW5jbHVkZSgkc2VjdGlvbiwgJGV4Y2x1ZGU6IG51bGwpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgZ2xvYmFsIHZhcmlhYmxlcyBuZWVkZWQgYnkgdGhpcyBmdW5jdGlvbi5cbiAgQGlmIG5vdCBnbG9iYWxfdmFyaWFibGVfZXhpc3RzKF9ub3JtYWxpemUtaW5jbHVkZSkge1xuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6ICgpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogKCkgIWdsb2JhbDtcbiAgfVxuICAvLyBTaW5jZSB3ZSBhcmUgZ2l2ZW4gMiBwYXJhbWV0ZXJzLCBzZXQgdGhlIGdsb2JhbCB2YXJpYWJsZXMuXG4gIEBpZiAkZXhjbHVkZSAhPSBudWxsIHtcbiAgICAkaW5jbHVkZTogJHNlY3Rpb247XG4gICAgLy8gU2FzcyBkb2Vzbid0IGhhdmUgc3RhdGljIHZhcmlhYmxlcywgc28gdGhlIHdvcmstYXJvdW5kIGlzIHRvIHN0dWZmIHRoZXNlXG4gICAgLy8gdmFsdWVzIGludG8gZ2xvYmFsIHZhcmlhYmxlcyBzbyB3ZSBjYW4gYWNjZXNzIHRoZW0gaW4gZnV0dXJlIGNhbGxzLlxuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6IGlmKHR5cGUtb2YoJGluY2x1ZGUpID09ICdsaXN0JywgJGluY2x1ZGUsICgkaW5jbHVkZSkpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogaWYodHlwZS1vZigkZXhjbHVkZSkgPT0gJ2xpc3QnLCAkZXhjbHVkZSwgKCRleGNsdWRlKSkgIWdsb2JhbDtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiAkc2VjdGlvbiBpcyBpbiB0aGUgJGluY2x1ZGUgbGlzdC5cbiAgQGlmIGluZGV4KCRfbm9ybWFsaXplLWluY2x1ZGUsICRzZWN0aW9uKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIC8vIElmICRpbmNsdWRlIGlzIHNldCB0byAoYWxsKSwgbWFrZSBzdXJlICRzZWN0aW9uIGlzIG5vdCBpbiAkZXhjbHVkZS5cbiAgQGVsc2UgaWYgbm90IGluZGV4KCRfbm9ybWFsaXplLWV4Y2x1ZGUsICRzZWN0aW9uKSBhbmQgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgYWxsKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIEByZXR1cm4gZmFsc2U7XG59XG5cbkBtaXhpbiBub3JtYWxpemUoJGluY2x1ZGU6IChhbGwpLCAkZXhjbHVkZTogKCkpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgaGVscGVyIGZ1bmN0aW9uIGJ5IHBhc3NpbmcgaXQgdGhpcyBtaXhpbidzIHBhcmFtZXRlcnMuXG4gICRpbml0OiBfbm9ybWFsaXplLWluY2x1ZGUoJGluY2x1ZGUsICRleGNsdWRlKTtcblxuICAvLyBJZiB3ZSd2ZSBjdXN0b21pemVkIGFueSBmb250IHZhcmlhYmxlcywgd2UnbGwgbmVlZCBleHRyYSBwcm9wZXJ0aWVzLlxuICBAaWYgJGJhc2UtZm9udC1zaXplICE9IDE2cHhcbiAgICBvciAkYmFzZS1saW5lLWhlaWdodCAhPSAyNHB4XG4gICAgb3IgJGJhc2UtdW5pdCAhPSAnZW0nXG4gICAgb3IgJGgxLWZvbnQtc2l6ZSAhPSAyICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgyLWZvbnQtc2l6ZSAhPSAxLjUgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgzLWZvbnQtc2l6ZSAhPSAxLjE3ICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg0LWZvbnQtc2l6ZSAhPSAxICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg1LWZvbnQtc2l6ZSAhPSAwLjgzICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg2LWZvbnQtc2l6ZSAhPSAwLjY3ICogJGJhc2UtZm9udC1zaXplIHtcbiAgICAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGRvY3VtZW50KSB7XG4gICAgLyogRG9jdW1lbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4gICAgICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICAgICAqL1xuXG4gICAgaHRtbCB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8vIENvcnJlY3Qgb2xkIGJyb3dzZXIgYnVnIHRoYXQgcHJldmVudGVkIGFjY2Vzc2libGUgcmVzaXppbmcgb2YgdGV4dFxuICAgICAgICAvLyB3aGVuIHJvb3QgZm9udC1zaXplIGlzIHNldCB3aXRoIHB4IG9yIGVtLlxuICAgICAgICBmb250LXNpemU6ICgkYmFzZS1mb250LXNpemUgLyAxNnB4KSAqIDEwMCU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAyICovXG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAyICovXG4gICAgICB9XG4gICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xuICAgICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzZWN0aW9ucykge1xuICAgIC8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgYm9keSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhcnRpY2xlLFxuICAgIGFzaWRlLFxuICAgIGZvb3RlcixcbiAgICBoZWFkZXIsXG4gICAgbmF2LFxuICAgIHNlY3Rpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBoMSwgLmgxIHtcbiAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8qIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW5zLiAqL1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGgxLWZvbnQtc2l6ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIG1hcmdpbjogMC42N2VtIDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgIGgyLCAuaDIge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMi1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGgyLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDItZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgaDMsIC5oMyB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMy1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNCwgLmg0IHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWZvbnQtc2l6ZSgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoNC1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCwgJGg0LWZvbnQtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIGg1LCAuaDUge1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoNS1mb250LXNpemUpO1xuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbGluZS1oZWlnaHQoJGg1LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwLCAkaDUtZm9udC1zaXplKTtcbiAgICAgIH1cblxuICAgICAgaDYsIC5oNiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNi1mb250LXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZ3JvdXBpbmcpIHtcbiAgICAvKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAkaW5kZW50LWFtb3VudCk7XG4gICAgICB9XG5cbiAgICAgIGRsLFxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAqL1xuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgb2wsXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZGQge1xuICAgICAgICBtYXJnaW46IDAgMCAwICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBmaWdjYXB0aW9uLFxuICAgIGZpZ3VyZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5cbiAgICBmaWd1cmUge1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cblxuICAgIGhyIHtcbiAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gICAgICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICBtYWluIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgcCxcbiAgICAgIHByZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHByZSB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShsaW5rcykge1xuICAgIC8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gICAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gICAgICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBhOmFjdGl2ZSxcbiAgICBhOmhvdmVyIHtcbiAgICAgIG91dGxpbmUtd2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZSh0ZXh0KSB7XG4gICAgLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBhYmJyW3RpdGxlXSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYixcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGNvZGUsXG4gICAga2JkLFxuICAgIHNhbXAge1xuICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cblxuICAgIGRmbiB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWFyayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzbWFsbCB7XG4gICAgICBmb250LXNpemU6IDgwJTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICAgKiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdWIsXG4gICAgc3VwIHtcbiAgICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgfVxuXG4gICAgc3ViIHtcbiAgICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgICB9XG5cbiAgICBzdXAge1xuICAgICAgdG9wOiAtMC41ZW07XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShlbWJlZGRlZCkge1xuICAgIC8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhdWRpbyxcbiAgICB2aWRlbyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cblxuICAgIGF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cblxuICAgIHN2Zzpub3QoOnJvb3QpIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShmb3Jtcykge1xuICAgIC8qIEZvcm1zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGlucHV0LFxuICAgIG9wdGdyb3VwLFxuICAgIHNlbGVjdCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIG1hcmdpbjogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgICAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBzZWxlY3QgeyAvKiAxICovXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAgICAgKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBodG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG4gICAgW3R5cGU9XCJyZXNldFwiXSxcbiAgICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICAgIH1cblxuICAgIGJ1dHRvbixcbiAgICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAgICovXG5cbiAgICAgICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgICAgICovXG5cbiAgICAgICY6LW1vei1mb2N1c3Jpbmcge1xuICAgICAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAgICAgKi9cblxuICAgIGlucHV0IHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAgICovXG5cbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgICAgICovXG5cbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4gICAgICAmOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICAgICAqL1xuXG4gICAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICAgICAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgZmllbGRzZXQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICAgIG1hcmdpbjogMCAycHg7XG4gICAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgbGVnZW5kIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgICAgIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cblxuICAgIHByb2dyZXNzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgICAgKi9cblxuICAgIHRleHRhcmVhIHtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaW50ZXJhY3RpdmUpIHtcbiAgICAvKiBJbnRlcmFjdGl2ZVxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGRldGFpbHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdW1tYXJ5IHtcbiAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWVudSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLypcbiAgICAgICAgICogMS4gU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAgICogMi4gU2V0IGNvbnNpc3RlbnQgc3BhY2UgZm9yIHRoZSBsaXN0IHN0eWxlIGltYWdlLlxuICAgICAgICAgKi9cblxuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7IC8qIDEgKi9cbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7IC8qIDIgKi9cblxuICAgICAgICAvKipcbiAgICAgICAgICogVHVybiBvZmYgbWFyZ2lucyBvbiBuZXN0ZWQgbGlzdHMuXG4gICAgICAgICAqL1xuXG4gICAgICAgIG1lbnUgJixcbiAgICAgICAgb2wgJixcbiAgICAgICAgdWwgJiB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzY3JpcHRpbmcpIHtcbiAgICAvKiBTY3JpcHRpbmdcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBjYW52YXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xuXG4gICAgdGVtcGxhdGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGhpZGRlbikge1xuICAgIC8qIEhpZGRlblxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbaGlkZGVuXSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFZhcmlhYmxlc1xuLy9cbi8vIFlvdSBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgdmFsdWVzIGJ5IHNldHRpbmcgdGhlIHZhcmlhYmxlcyBpbiB5b3VyIFNhc3Ncbi8vIGJlZm9yZSBpbXBvcnRpbmcgdGhlIG5vcm1hbGl6ZS1zY3NzIGxpYnJhcnkuXG5cbi8vIFRoZSBmb250IHNpemUgc2V0IG9uIHRoZSByb290IGh0bWwgZWxlbWVudC5cbiRiYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8gVGhlIGJhc2UgbGluZSBoZWlnaHQgZGV0ZXJtaW5lcyB0aGUgYmFzaWMgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0uXG4kYmFzZS1saW5lLWhlaWdodDogMjRweCAhZGVmYXVsdDtcblxuLy8gVGhlIGxlbmd0aCB1bml0IGluIHdoaWNoIHRvIG91dHB1dCB2ZXJ0aWNhbCByaHl0aG0gdmFsdWVzLlxuLy8gU3VwcG9ydGVkIHZhbHVlczogcHgsIGVtLCByZW0uXG4kYmFzZS11bml0OiAnZW0nICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCBmb250IGZhbWlseS5cbiRiYXNlLWZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9udCBzaXplcyBmb3IgaDEtaDYuXG4kaDEtZm9udC1zaXplOiAyICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogMS41ICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6IDEuMTcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAxICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogMC44MyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6IDAuNjcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vIFRoZSBhbW91bnQgbGlzdHMgYW5kIGJsb2NrcXVvdGVzIGFyZSBpbmRlbnRlZC5cbiRpbmRlbnQtYW1vdW50OiA0MHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlIGNvbnRyb2xzIHdoZXRoZXIgbm9ybWFsaXplLXNjc3Mgd2lsbCBvdXRwdXRcbi8vIGZvbnQtc2l6ZXMsIGxpbmUtaGVpZ2h0cyBhbmQgYmxvY2stbGV2ZWwgdG9wL2JvdHRvbSBtYXJnaW5zIHRoYXQgZm9ybSBhIGJhc2ljXG4vLyB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHBhZ2UsIHdoaWNoIGRpZmZlcnMgZnJvbSB0aGUgb3JpZ2luYWwgTm9ybWFsaXplLmNzcy5cbi8vIEhvd2V2ZXIsIGNoYW5naW5nIGFueSBvZiB0aGUgdmFyaWFibGVzIGFib3ZlIHdpbGwgY2F1c2Vcbi8vICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHRvIGJlIGF1dG9tYXRpY2FsbHkgc2V0IHRvIHRydWUuXG4kbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogZmFsc2UgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gVmVydGljYWwgUmh5dGhtXG4vL1xuLy8gVGhpcyBpcyB0aGUgbWluaW1hbCBhbW91bnQgb2YgY29kZSBuZWVkZWQgdG8gY3JlYXRlIHZlcnRpY2FsIHJoeXRobSBpbiBvdXJcbi8vIENTUy4gSWYgeW91IGFyZSBsb29raW5nIGZvciBhIHJvYnVzdCBzb2x1dGlvbiwgbG9vayBhdCB0aGUgZXhjZWxsZW50IFR5cGV5XG4vLyBsaWJyYXJ5LiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9qcHRhcmFudG8vdHlwZXlcblxuQGZ1bmN0aW9uIG5vcm1hbGl6ZS1yaHl0aG0oJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSwgJHVuaXQ6ICRiYXNlLXVuaXQpIHtcbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSBweCB7XG4gICAgQGVycm9yIFwiVGhlIG5vcm1hbGl6ZSB2ZXJ0aWNhbC1yaHl0aG0gbW9kdWxlIG9ubHkgc3VwcG9ydHMgcHggaW5wdXRzLiBUaGUgdHlwZXkgbGlicmFyeSBpcyBiZXR0ZXIuXCI7XG4gIH1cbiAgQGlmICR1bml0ID09IHJlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJGJhc2UtZm9udC1zaXplKSAqIDFyZW07XG4gIH1cbiAgQGVsc2UgaWYgJHVuaXQgPT0gZW0ge1xuICAgIEByZXR1cm4gKCR2YWx1ZSAvICRyZWxhdGl2ZS10bykgKiAxZW07XG4gIH1cbiAgQGVsc2UgeyAvLyAkdW5pdCA9PSBweFxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG59XG5cbkBtaXhpbiBub3JtYWxpemUtZm9udC1zaXplKCR2YWx1ZSwgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncHgnIHtcbiAgICBAZXJyb3IgXCJub3JtYWxpemUtZm9udC1zaXplKCkgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBmb250LXNpemU6IG5vcm1hbGl6ZS1yaHl0aG0oJHZhbHVlLCAkcmVsYXRpdmUtdG8pO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLXJoeXRobSgkcHJvcGVydHksICR2YWx1ZXMsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplKSB7XG4gICR2YWx1ZS1saXN0OiAkdmFsdWVzO1xuICAkc2VwOiBzcGFjZTtcbiAgQGlmIHR5cGUtb2YoJHZhbHVlcykgPT0gJ2xpc3QnIHtcbiAgICAkc2VwOiBsaXN0LXNlcGFyYXRvcigkdmFsdWVzKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgJHZhbHVlLWxpc3Q6IGFwcGVuZCgoKSwgJHZhbHVlcyk7XG4gIH1cblxuICAkbm9ybWFsaXplZC12YWx1ZXM6ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlLWxpc3Qge1xuICAgIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAkdmFsdWUgIT0gMCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqIG5vcm1hbGl6ZS1yaHl0aG0oJGJhc2UtbGluZS1oZWlnaHQsICRyZWxhdGl2ZS10byk7XG4gICAgfVxuICAgICRub3JtYWxpemVkLXZhbHVlczogYXBwZW5kKCRub3JtYWxpemVkLXZhbHVlcywgJHZhbHVlLCAkc2VwKTtcbiAgfVxuICAjeyRwcm9wZXJ0eX06ICRub3JtYWxpemVkLXZhbHVlcztcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1tYXJnaW4oJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgQGluY2x1ZGUgbm9ybWFsaXplLXJoeXRobShtYXJnaW4sICR2YWx1ZXMsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtbGluZS1oZWlnaHQoJGZvbnQtc2l6ZSwgJG1pbi1saW5lLXBhZGRpbmc6IDJweCkge1xuICAkbGluZXM6IGNlaWwoJGZvbnQtc2l6ZSAvICRiYXNlLWxpbmUtaGVpZ2h0KTtcbiAgLy8gSWYgbGluZXMgYXJlIGNyYW1wZWQgaW5jbHVkZSBzb21lIGV4dHJhIGxlYWRpbmcuXG4gIEBpZiAoJGxpbmVzICogJGJhc2UtbGluZS1oZWlnaHQgLSAkZm9udC1zaXplKSA8ICgkbWluLWxpbmUtcGFkZGluZyAqIDIpIHtcbiAgICAkbGluZXM6ICRsaW5lcyArIDE7XG4gIH1cbiAgQGluY2x1ZGUgbm9ybWFsaXplLXJoeXRobShsaW5lLWhlaWdodCwgJGxpbmVzLCAkZm9udC1zaXplKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJtaXhpbnNcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBmb3JjZS1hdHRyaWJ1dGUtbmVzdGluZywgZm9yY2UtcHNldWRvLW5lc3RpbmcsIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICAgICAgICBwcmltYXJ5OiAjMTc3OWJhLFxuICAgICAgICBzZWNvbmRhcnk6ICM3Njc2NzYsXG4gICAgICAgIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gICAgICAgIHdhcm5pbmc6ICNmZmFlMDAsXG4gICAgICAgIGFsZXJ0OiAjY2M0YjM3LFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogZmFsc2UgIWRlZmF1bHQ7XG5cbkBpZiBub3QgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICBAZXJyb3IgJ0luICRmb3VuZGF0aW9uLXBhbGV0dGUsIHlvdSBtdXN0IGhhdmUgYSBjb2xvciBuYW1lZCBcInByaW1hcnlcIi4nO1xufVxuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgdGV4dCBkaXJlY3Rpb25cbiRnbG9iYWwtbGVmdDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIHJpZ2h0LCBsZWZ0KTtcbiRnbG9iYWwtcmlnaHQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBsZWZ0LCByaWdodCk7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbiRwcmltYXJ5LWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kc2Vjb25kYXJ5LWNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcbiRzdWNjZXNzLWNvbG9yOiBnZXQtY29sb3Ioc3VjY2Vzcyk7XG4kd2FybmluZy1jb2xvcjogZ2V0LWNvbG9yKHdhcm5pbmcpO1xuJGFsZXJ0LWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgLXpmLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gICAgcGFkZGluZzogMDtcblxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBMb2FkcyBub3JtYWxpemUuY3NzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC16Zi1ub3JtYWxpemUge1xuICBAaW5jbHVkZSBub3JtYWxpemUoKTtcbn1cbiIsIi8vICBGb3VuZGF0aW9uIGZvciBTaXRlcyBTZXR0aW5nc1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1xuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxuLy9cbi8vICAgMS4gR2xvYmFsXG4vLyAgIDIuIEJyZWFrcG9pbnRzXG4vLyAgIDMuIFRoZSBHcmlkXG4vLyAgIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vICAgNi4gQWJpZGVcbi8vICAgNy4gQWNjb3JkaW9uXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XG4vLyAgIDkuIEJhZGdlXG4vLyAgMTAuIEJyZWFkY3J1bWJzXG4vLyAgMTEuIEJ1dHRvblxuLy8gIDEyLiBCdXR0b24gR3JvdXBcbi8vICAxMy4gQ2FsbG91dFxuLy8gIDE0LiBDYXJkXG4vLyAgMTUuIENsb3NlIEJ1dHRvblxuLy8gIDE2LiBEcmlsbGRvd25cbi8vICAxNy4gRHJvcGRvd25cbi8vICAxOC4gRHJvcGRvd24gTWVudVxuLy8gIDE5LiBGb3Jtc1xuLy8gIDIwLiBMYWJlbFxuLy8gIDIxLiBNZWRpYSBPYmplY3Rcbi8vICAyMi4gTWVudVxuLy8gIDIzLiBNZXRlclxuLy8gIDI0LiBPZmYtY2FudmFzXG4vLyAgMjUuIE9yYml0XG4vLyAgMjYuIFBhZ2luYXRpb25cbi8vICAyNy4gUHJvZ3Jlc3MgQmFyXG4vLyAgMjguIFJlc3BvbnNpdmUgRW1iZWRcbi8vICAyOS4gUmV2ZWFsXG4vLyAgMzAuIFNsaWRlclxuLy8gIDMxLiBTd2l0Y2hcbi8vICAzMi4gVGFibGVcbi8vICAzMy4gVGFic1xuLy8gIDM0LiBUaHVtYm5haWxcbi8vICAzNS4gVGl0bGUgQmFyXG4vLyAgMzYuIFRvb2x0aXBcbi8vICAzNy4gVG9wIEJhclxuXG5AaW1wb3J0ICcuLi91dGlsL3V0aWwnO1xuXG4vLyAxLiBHbG9iYWxcbi8vIC0tLS0tLS0tLVxuXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDE2MDApO1xuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjU7XG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gICAgICAgIHByaW1hcnk6ICMwMDAwMDAsXG4gICAgICAgIHNlY29uZGFyeTogI2YxNjU2NyxcbiAgICAgICAgc3VjY2VzczogIzNhZGI3NixcbiAgICAgICAgd2FybmluZzogI2ZmYWUwMCxcbiAgICAgICAgYWxlcnQ6ICNjYzRiMzcsXG4pO1xuJHBlYWNoOiAjZmNiNjllO1xuJGN1c3RvbS1ncmF5OiAjZjJmM2Y2O1xuJGxpZ2h0LWdyYXk6ICNiNGJmYzI7XG4kbWVkaXVtLWdyYXk6ICNkNWQ2ZDc7XG4kZGFyay1ncmF5OiAjYTNhM2EzO1xuJGJsYWNrOiAjMDAwMDAwO1xuJHdoaXRlOiAjZmZmZmZmO1xuJGxpZ2h0LWJsYWNrOiByZ2JhKCRibGFjaywgLjc1KTtcbiRoZWFkZXItYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIC4xKTtcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjaztcbiRib2R5LWZvbnQtZmFtaWx5OiAnQnJhbmRvbkdyb3Rlc3F1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlO1xuJGdsb2JhbC1tYXJnaW46IDFyZW07XG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbDtcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XG4kZ2xvYmFsLXJhZGl1czogMDtcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0cjtcbiRnbG9iYWwtZmxleGJveDogZmFsc2U7XG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWU7XG4kZmFzdC10cmFuc2l0aW9uOiAuMTVzIGVhc2U7XG4kdHJhbnNpdGlvbjogLjNzIGVhc2U7XG4kc2xvdy10cmFuc2l0aW9uOiAuNDVzIGVhc2U7XG4kaGVhZGVyLXNoYWRvdzogIDAgNHB4IDdweCByZ2JhKCRkYXJrLWdyYXksIC41KTtcblxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG4vLyAyLiBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFrcG9pbnRzOiAoXG4gICAgICAgIHNtYWxsOiAwLFxuICAgICAgICB4c21hbGw6IDQ4MHB4LFxuICAgICAgICBtZWRpdW06IDY0MHB4LFxuICAgICAgICB4bWVkaXVtOiA3NjhweCxcbiAgICAgICAgbGFyZ2U6IDEwMjRweCxcbiAgICAgICAgeGxhcmdlOiAxMjAwcHgsXG4gICAgICAgIHh4bGFyZ2U6IDE0NDBweCxcbiAgICAgICAgeHh4bGFyZ2U6IDE2MjBweCxcbik7XG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIHhtZWRpdW0gbGFyZ2UgeGxhcmdlIHh4bGFyZ2UgeHh4bGFyZ2UpO1xuXG4vLyAzLiBUaGUgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJGdyaWQtcm93LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcbiRncmlkLWNvbHVtbi1ndXR0ZXI6IChcbiAgICAgICAgc21hbGw6IDIwcHgsXG4gICAgICAgIGxhcmdlOiAzMHB4LFxuKTtcbiRncmlkLWNvbHVtbi1hbGlnbi1lZGdlOiB0cnVlO1xuJGJsb2NrLWdyaWQtbWF4OiA4O1xuXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoXG4gICAgICAgIHNtYWxsOiAoXG4gICAgICAgICAgICAgICAgJ2gxJzogKCdmb250LXNpemUnOiAzMCksXG4gICAgICAgICAgICAgICAgJ2gyJzogKCdmb250LXNpemUnOiAyNSksXG4gICAgICAgICAgICAgICAgJ2gzJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgICAgICAgICAgICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgICAgICAgICAgICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgICAgICAgICAgICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICAgICAgICksXG4gICAgICAgIHhtZWRpdW06IChcbiAgICAgICAgICAgICAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ1KSxcbiAgICAgICAgICAgICAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDI4KSxcbiAgICAgICAgICAgICAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDIyKSxcbiAgICAgICAgICAgICAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcbiAgICAgICAgICAgICAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcbiAgICAgICAgICAgICAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgICAgICAgKSxcbiAgICAgICAgeHhsYXJnZTogKFxuICAgICAgICAgICAgICAgICdoMSc6ICgnZm9udC1zaXplJzogNzApLFxuICAgICAgICAgICAgICAgICdoMic6ICgnZm9udC1zaXplJzogMzIpLFxuICAgICAgICAgICAgICAgICdoMyc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICAgICAgICAgICAgICdoNCc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICAgICAgICAgICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICAgICAgICAgICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICAgICAgICApLFxuKTtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRzbWFsbC1mb250LXNpemU6IDgwJTtcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjY7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW07XG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4kY29kZS1jb2xvcjogJGJsYWNrO1xuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XG4kYW5jaG9yLWNvbG9yOiAkZGFyay1ncmF5O1xuJGFuY2hvci1jb2xvci1ob3ZlcjogJGJsYWNrO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xuJGxpc3Qtc2lkZS1tYXJnaW46IDA7XG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW07XG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiRibG9ja3F1b3RlLWNvbG9yOiAkYmxhY2s7XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYygwIDAgMjAgMCk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XG5cbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xuJGxlYWQtbGluZWhlaWdodDogMS42O1xuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xuXG4vLyA2LiBBYmlkZVxuLy8gLS0tLS0tLS1cblxuJGFiaWRlLWlucHV0czogdHJ1ZTtcbiRhYmlkZS1sYWJlbHM6IHRydWU7XG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcblxuLy8gNy4gQWNjb3JkaW9uXG4vLyAtLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gOC4gQWNjb3JkaW9uIE1lbnVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcblxuLy8gOS4gQmFkZ2Vcbi8vIC0tLS0tLS0tXG5cbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtO1xuXG4vLyAxMC4gQnJlYWRjcnVtYnNcbi8vIC0tLS0tLS0tLS0tLS0tLVxuXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZTtcbiRicmVhZGNydW1icy1pdGVtLXNsYXNoOiB0cnVlO1xuXG4vLyAxMS4gQnV0dG9uXG4vLyAtLS0tLS0tLS0tXG5cbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbTtcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRidXR0b24tZmlsbDogc29saWQ7XG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjaztcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRidXR0b24tc2l6ZXM6IChcbiAgICAgICAgdGlueTogMC42cmVtLFxuICAgICAgICBzbWFsbDogMC43NXJlbSxcbiAgICAgICAgZGVmYXVsdDogMC45cmVtLFxuICAgICAgICBsYXJnZTogMS4yNXJlbSxcbik7XG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcblxuLy8gMTIuIEJ1dHRvbiBHcm91cFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtO1xuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweDtcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nO1xuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDY7XG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWU7XG5cbi8vIDEzLiBDYWxsb3V0XG4vLyAtLS0tLS0tLS0tLVxuXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JTtcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW07XG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQ7XG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhbGxvdXQtbGluay10aW50OiAzMCU7XG5cbi8vIDE0LiBDYXJkXG4vLyAtLS0tLS0tLVxuXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xuJGNhcmQtc2hhZG93OiBub25lO1xuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kY2FyZC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuXG4vLyAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wO1xuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXG4gICAgICAgIHNtYWxsOiAwLjY2cmVtLFxuICAgICAgICBtZWRpdW06IDFyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxuICAgICAgICBzbWFsbDogMC4zM2VtLFxuICAgICAgICBtZWRpdW06IDAuNXJlbSxcbik7XG4kY2xvc2VidXR0b24tc2l6ZTogKFxuICAgICAgICBzbWFsbDogMS41ZW0sXG4gICAgICAgIG1lZGl1bTogMmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxO1xuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2s7XG5cbi8vIDE2LiBEcmlsbGRvd25cbi8vIC0tLS0tLS0tLS0tLS1cblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyO1xuJGRyaWxsZG93bi1hcnJvd3M6IHRydWU7XG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4O1xuJGRyaWxsZG93bi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG5cbi8vIDE3LiBEcm9wZG93blxuLy8gLS0tLS0tLS0tLS0tXG5cbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtO1xuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbTtcbiRkcm9wZG93bi13aWR0aDogMzAwcHg7XG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRkcm9wZG93bi1zaXplczogKFxuICAgICAgICB0aW55OiAxMDBweCxcbiAgICAgICAgc21hbGw6IDIwMHB4LFxuICAgICAgICBsYXJnZTogNDAwcHgsXG4pO1xuXG4vLyAxOC4gRHJvcGRvd24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWU7XG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplOiA2cHg7XG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHg7XG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuXG4vLyAxOS4gRm9ybXNcbi8vIC0tLS0tLS0tLVxuXG4kZmllbGRzZXQtYm9yZGVyOiBub25lO1xuJGZpZWxkc2V0LXBhZGRpbmc6IDA7XG4kZmllbGRzZXQtbWFyZ2luOiAwO1xuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpO1xuJGZvcm0tc3BhY2luZzogcmVtLWNhbGMoMTYpO1xuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2s7XG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljO1xuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjaztcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6IDQwMDtcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjg7XG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XG4kc2VsZWN0LXJhZGl1czogMDtcbiRpbnB1dC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuJGlucHV0LWZvbnQtd2VpZ2h0OiA0MDA7XG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheTtcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRibGFjaztcbiRpbnB1dC1zaGFkb3c6IG5vbmU7XG4kaW5wdXQtc2hhZG93LWZvY3VzOiBub25lO1xuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQ7XG4kaW5wdXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6IDA7XG4kZm9ybS1idXR0b24tcmFkaXVzOiAwO1xuXG4vLyAyMC4gTGFiZWxcbi8vIC0tLS0tLS0tLVxuXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kbGFiZWwtY29sb3I6ICR3aGl0ZTtcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjaztcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtO1xuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIxLiBNZWRpYSBPYmplY3Rcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCU7XG5cbi8vIDIyLiBNZW51XG4vLyAtLS0tLS0tLVxuXG4kbWVudS1tYXJnaW46IDA7XG4kbWVudS1tYXJnaW4tbmVzdGVkOiAxcmVtO1xuJG1lbnUtaXRlbS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGU7XG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG4kbWVudS1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJG1lbnUtYm9yZGVyOiAkbGlnaHQtZ3JheTtcblxuLy8gMjMuIE1ldGVyXG4vLyAtLS0tLS0tLS1cblxuJG1ldGVyLWhlaWdodDogMXJlbTtcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJG1ldGVyLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcbiRtZXRlci1maWxsLWJhZDogJGFsZXJ0LWNvbG9yO1xuXG4vLyAyNC4gT2ZmLWNhbnZhc1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJG9mZmNhbnZhcy1zaXplOiAyNTBweDtcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZTogMjUwcHg7XG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpO1xuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTtcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEwO1xuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cztcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2U7XG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xuXG4vLyAyNS4gT3JiaXRcbi8vIC0tLS0tLS0tLVxuXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTA7XG5cbi8vIDI2LiBQYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKTtcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSk7XG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvcjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7XG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZTtcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcblxuLy8gMjcuIFByb2dyZXNzIEJhclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAxcmVtO1xuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRwcm9ncmVzcy1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyOC4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gICAgICAgIGRlZmF1bHQ6IDQgYnkgMyxcbiAgICAgICAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbik7XG5cbi8vIDI5LiBSZXZlYWxcbi8vIC0tLS0tLS0tLS1cblxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcbiRyZXZlYWwtbWF4LXdpZHRoOiByZW0tY2FsYyg5MzApO1xuJHJldmVhbC1wYWRkaW5nOiByZW0tY2FsYygyMCAzMCk7XG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuJHJldmVhbC1yYWRpdXM6IDA7XG4kcmV2ZWFsLXppbmRleDogMTAwNTtcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC44NSk7XG5cbi8vIDMwLiBTbGlkZXJcbi8vIC0tLS0tLS0tLS1cblxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtO1xuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XG4kc2xpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJHNsaWRlci1maWxsLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtd2lkdGg6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJHNsaWRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAzMS4gU3dpdGNoXG4vLyAtLS0tLS0tLS0tXG5cbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3I7XG4kc3dpdGNoLWhlaWdodDogMnJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXNtYWxsOiAxLjc1cmVtO1xuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG5cbi8vIDMyLiBUYWJsZVxuLy8gLS0tLS0tLS0tXG5cbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFibGUtY29sb3Itc2NhbGU6IDUlO1xuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApO1xuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJTtcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZTtcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXN0cmlwZTogZXZlbjtcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKTtcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2U7XG5cbi8vIDMzLiBUYWJzXG4vLyAtLS0tLS0tLVxuXG4kdGFiLW1hcmdpbjogMDtcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheTtcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGU7XG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4kdGFiLWV4cGFuZC1tYXg6IDY7XG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXk7XG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcblxuLy8gMzQuIFRodW1ibmFpbFxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGh1bWJuYWlsLWJvcmRlcjogc29saWQgNHB4ICR3aGl0ZTtcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpO1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSk7XG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDM1LiBUaXRsZSBCYXJcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjaztcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbTtcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXk7XG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuXG4vLyAzNi4gVG9vbHRpcFxuLy8gLS0tLS0tLS0tLS1cblxuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXk7XG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlO1xuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbTtcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2O1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMzcuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b3BiYXItcGFkZGluZzogMC41cmVtO1xuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4iLCJAbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0ICR0cmlhbmdsZS1zaXplO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICB9XG59XG5cbkBtaXhpbiBjc3MtdHJpYW5nbGUtY3VzdG9tKFxuICAkdG9wLFxuICAkbGVmdCxcbiAgJGJvdHRvbSxcbiAgJHJpZ2h0LFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci10b3A6ICR0b3Agc29saWQ7XG4gIGJvcmRlci1sZWZ0OiAkbGVmdCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJGJvdHRvbSBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkcmlnaHQgc29saWQ7XG5cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGRvd24pIHtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiAoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpKSAvICgkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBib3JkZXJBcnJvdygkd2lkdGgsICRoZWlnaHQsICRtYXJnaW4sICRib3JkZXItd2lkdGgsICRib3JkZXItY29sb3IsICRkaXJlY3Rpb24pIHtcbiAgJjphZnRlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG4gIEBpZiAoJGRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgJjphZnRlciB7XG4gICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGMoI3stJGhlaWdodH0pO1xuICAgIH1cbiAgfVxuICBAaWYgKCRkaXJlY3Rpb24gPT0gdXApIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcbiAgICB9XG4gIH1cbiAgQGlmICgkZGlyZWN0aW9uID09IHJpZ2h0KSB7XG4gICAgJjphZnRlciB7XG4gICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGMoI3stJGhlaWdodCAvIDJ9KTtcbiAgICB9XG4gIH1cbiAgQGlmICgkZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcbiAgICAgIG1hcmdpbi10b3A6IGNhbGMoI3stJGhlaWdodCAvIDJ9KTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJhY2tncm91bmQtdHJpYW5nbGUoJGNvbG9yOiAkYmxhY2spIHtcbiAgJHJnYjogJ3JnYiUyOCN7cm91bmQocmVkKCRjb2xvcikpfSwgI3tyb3VuZChncmVlbigkY29sb3IpKX0sICN7cm91bmQoYmx1ZSgkY29sb3IpKX0lMjknO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogI3skcmdifSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwIFxcMFxuICApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA2MCUge1xuICAgICAgLy8gV2hpdGUgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgLy9AaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAvLyAgZmxleC1iYXNpczogMDtcbiAgICAvLyAgb3JkZXI6IDE7XG4gICAgLy99XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiB0cnVlKSB7XG4gICRtYXA6ICRicmVha3BvaW50LWNsYXNzZXM7XG5cbiAgQGlmIG5vdCAkc21hbGwge1xuICAgICRtYXA6IG1hcC1yZW1vdmUoJG1hcCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgQGVhY2ggJHNpemUgaW4gJG1hcCB7XG4gICAgJC16Zi1zaXplOiAkc2l6ZSAhZ2xvYmFsO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSB0aGUgYEBjb250ZW50YCBwYXNzZWQgdG8gdGhlIG1peGluIHdpdGggYSB2YWx1ZSBgJC16Zi1icC12YWx1ZWAgcmVsYXRlZCB0byBhIGJyZWFrcG9pbnQsIGRlcGVuZGluZyBvbiB0aGUgYCRuYW1lYCBwYXJhbWV0ZXI6XG4vLy8gLSBGb3IgYSBzaW5nbGUgdmFsdWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGlzIHZhbHVlLlxuLy8vIC0gRm9yIGEgYnJlYWtwb2ludCBuYW1lLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAuXG4vLy8gLSBGb3IgXCJhdXRvXCIsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYCBhbmQgaXMgcGFzc2VkIHRvIGBAY29udGVudGAsIHdoaWNoIGlzIG1hZGUgcmVzcG9uc2l2ZSBmb3IgZWFjaCBicmVha3BvaW50IG9mIGAkbWFwYC5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkbmFtZSBbYXV0b10gLSBTaW5nbGUgdmFsdWUgb3IgYnJlYWtwb2ludCBuYW1lIHRvIHVzZS4gXCJhdXRvXCIgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBNYXAgb2YgYnJlYWtwb2ludHMgYW5kIHZhbHVlcyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLlxuQG1peGluIC16Zi1icmVha3BvaW50LXZhbHVlKFxuICAkbmFtZTogYXV0byxcbiAgJG1hcDogbnVsbFxuKSB7XG4gIEBpZiAkbmFtZSA9PSBhdXRvIGFuZCB0eXBlLW9mKCRtYXApID09ICdtYXAnIHtcbiAgICAvLyBcImF1dG9cIlxuICAgIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGspIHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJHYsICRtYXApIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gYnJlYWtwb2ludCBuYW1lXG4gICAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdzdHJpbmcnIHtcbiAgICAgICRuYW1lOiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkbmFtZSk7XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gR2xvYmFsIGljb25zIG1peGluXG5AbWl4aW4gaWNvbigkbmFtZSwgJHdpZHRoLCAkaGVpZ2h0LCAkcG9zaXRpb24sICRtYXJnaW46IDAsICRhbGlnbjogbWlkZGxlKSB7XG4gIEBpZiAoJHBvc2l0aW9uID09IHJpZ2h0KSB7XG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogJHdpZHRoO1xuICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW47XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGFsaWduO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvI3skbmFtZX0taWNvbi5zdmcnKSBuby1yZXBlYXQgY2VudGVyIC8gJHdpZHRoICRoZWlnaHQ7XG4gICAgICBjb250ZW50OiAnJztcbiAgICB9XG4gIH1cbiAgQGlmICgkcG9zaXRpb24gPT0gbGVmdCkge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnaW47XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogJGFsaWduO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvI3skbmFtZX0taWNvbi5zdmcnKSBuby1yZXBlYXQgY2VudGVyIC8gJHdpZHRoICRoZWlnaHQ7XG4gICAgICBjb250ZW50OiAnJztcbiAgICB9XG4gIH1cbiAgQGlmICgkcG9zaXRpb24gPT0gaW5oZXJpdCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIGhlaWdodDogJGhlaWdodDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogJGFsaWduO1xuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1hZ2VzLyN7JG5hbWV9LWljb24uc3ZnJykgbm8tcmVwZWF0IGNlbnRlciAvICR3aWR0aCAkaGVpZ2h0O1xuICB9XG4gIEBpZiAoJHBvc2l0aW9uID09IGFic29sdXRlKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcuLi9pbWFnZXMvI3skbmFtZX0taWNvbi5zdmcnKSBuby1yZXBlYXQgY2VudGVyIC8gJHdpZHRoICRoZWlnaHQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogJHdpZHRoO1xuICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gY2F0ZWdvcnlCbHVlTWFzaygkb3BhY2l0eTogLjMpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJhY2tncm91bmQ6ICRkYXJrLWJsdWU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9wYWNpdHk6ICRvcGFjaXR5O1xuICB9XG59XG5cbkBtaXhpbiBxdHkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBsYWJlbCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDUpO1xuICAgIGNvbG9yOiAkZGFyay1ibGFjaztcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzApO1xuICB9XG4gIGlucHV0IHtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDUwKTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgNSAwIDApO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgNSk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG4gIGJ1dHRvbiB7XG4gICAgY29sb3I6ICRkYXJrLWJsYWNrO1xuICAgIHRyYW5zaXRpb246IGNvbG9yICRnbG9iYWwtdHJhbnNpdGlvbjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkZ29sZDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHRpY2tJblN0b2NrKCRwYWRkaW5MZWZ0OiAxNXB4LCAkdG9wOiA0NSUsICRsZWZ0OiAwLCAkd2lkdGg6IDhweCwgJGhlaWdodDogNHB4LCAkY29sb3I6ICRkYXJrLWJsdWUpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5MZWZ0O1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6ICRsZWZ0O1xuICAgIHRvcDogJHRvcDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC00NWRlZyk7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgMXB4IDFweDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICB9XG59XG5cbkBtaXhpbiByZWNvbWVuZGVkQ3Jvc3MoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTMuNXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtLjVweDtcbiAgICB3aWR0aDogMXB4O1xuICAgIGhlaWdodDogN3B4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycztcblxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0zLjVweDtcbiAgICBtYXJnaW4tdG9wOiAtLjVweDtcbiAgICB3aWR0aDogN3B4O1xuICAgIGhlaWdodDogMXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4ycztcblxuICB9XG59XG5cbkBtaXhpbiBjbG9zZUJ1dHRvbiAoJHNpemU6IDEwcHgsICR0aGlja25lc3M6IDFweCwgJGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yLCAkY29sb3JIb3ZlcjogJGJsYWNrKSB7XG5cbiAgJiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAkc2l6ZTtcbiAgICBoZWlnaHQ6ICRzaXplO1xuICB9XG5cbiAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxNDAlO1xuICAgIGhlaWdodDogJHRoaWNrbmVzcztcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAkdHJhbnNpdGlvbjtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgIG1hcmdpbi10b3A6IC0kdGhpY2tuZXNzLzQ7XG4gICAgbWFyZ2luLWxlZnQ6ICR0aGlja25lc3MvMjtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICAgIG1hcmdpbi1sZWZ0OiAtNDElO1xuICAgIG1hcmdpbi10b3A6IC0kdGhpY2tuZXNzO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9ySG92ZXI7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBpbWFnZVdyYXBwZXJTaXplKCR3aWR0aCwgJGhlaWdodCxcbiAgICAgICAgICAgICAgICAgICAgICAgICRtZWRpdW1XaWR0aDogJHdpZHRoLCAkbWVkaXVtSGVpZ2h0OiAkaGVpZ2h0LFxuICAgICAgICAgICAgICAgICAgICAgICAgJG1vYmlsZVdpZHRoOiAkbWVkaXVtV2lkdGgsICRtb2JpbGVIZWlnaHQ6ICRtZWRpdW1IZWlnaHQpIHtcbiAgLnByb2R1Y3QtaW1hZ2Utd3JhcHBlciwgLnJlYmF0ZS1pbWFnZS13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHdpZHRoOiByZW0tY2FsYygkbW9iaWxlV2lkdGgpO1xuICAgIGhlaWdodDogcmVtLWNhbGMoJG1vYmlsZUhlaWdodCk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICB3aWR0aDogcmVtLWNhbGMoJG1lZGl1bVdpZHRoKTtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoJG1lZGl1bUhlaWdodCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygkd2lkdGgpO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygkaGVpZ2h0KTtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGxvYWRpbmdNYXNrKCRjb2xvcjogJHdoaXRlLCAkb3BhY2l0eTogLjYpIHtcbiAgLmxvYWRpbmctbWFzayB7XG4gICAgJjpub3QoW2RhdGEtcm9sZT1cImNoZWNrb3V0LWxvYWRlclwiXSkge1xuICAgICAgYmFja2dyb3VuZDogcmdiYSgkY29sb3IsICRvcGFjaXR5KTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHBsYWNlaG9sZGVyIHtcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgQGNvbnRlbnRcbiAgfVxuICAmOi1tb3otcGxhY2Vob2xkZXIge1xuICAgIEBjb250ZW50XG4gIH1cbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgQGNvbnRlbnRcbiAgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgQGNvbnRlbnRcbiAgfVxufVxuXG5AbWl4aW4gY29udGFpbmVycyB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTEwMCk7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2Upe1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTE2MCk7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKXtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDE0MDApO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2Upe1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTY1MCk7XG4gIH1cbn1cblxuQG1peGluIGN1c3RvbS1idG4tY29sb3IoJGNvbG9yKSB7XG4gIC5idG4tY3VzdG9tIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgICY6YWZ0ZXIsJjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJAbWl4aW4gZmxleC1ncmlkLXJvdyhcbiAgJGJlaGF2aW9yOiBudWxsLFxuICAkd2lkdGg6ICRncmlkLXJvdy13aWR0aCxcbiAgJGNvbHVtbnM6IG51bGwsXG4gICRiYXNlOiB0cnVlLFxuICAkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcblxuICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBuZXN0KSAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRndXR0ZXIpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGJhc2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgfVxuXG4gIEBpZiAkY29sdW1ucyAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbnRleHQoJGNvbHVtbnMsICRiYXNlKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQGZ1bmN0aW9uIGZsZXgtZ3JpZC1jb2x1bW4oJGNvbHVtbnM6IG51bGwpIHtcbiAgJGZsZXg6IDEgMSAwcHg7XG5cbiAgQGlmICRjb2x1bW5zID09IHNocmluayB7XG4gICAgJGZsZXg6IDAgMCBhdXRvO1xuICB9XG4gIEBlbHNlIGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgICRmbGV4OiAwIDAgZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG5cbiAgQHJldHVybiAkZmxleDtcbn1cblxuQG1peGluIGZsZXgtZ3JpZC1jb2x1bW4oXG4gICRjb2x1bW5zOiBudWxsLFxuICAkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgZmxleDogZmxleC1ncmlkLWNvbHVtbigkY29sdW1ucyk7XG5cbiAgQGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ21hcCcge1xuICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgICAkcGFkZGluZzogcmVtLWNhbGMoJHZhbHVlKSAvIDI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ251bWJlcicgYW5kIHN0cmlwLXVuaXQoJGd1dHRlcikgPiAwIHtcbiAgICAkcGFkZGluZzogcmVtLWNhbGMoJGd1dHRlcikgLyAyO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgPT0gbnVsbCB7XG4gICAgbWluLXdpZHRoOiBpbml0aWFsO1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwgYW5kICRjb2x1bW5zICE9IHNocmluayB7XG4gICAgbWF4LXdpZHRoOiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG4gIH1cbn1cblxuQG1peGluIGZsZXgtZ3JpZC1sYXlvdXQoXG4gICRuLFxuICAkc2VsZWN0b3I6ICcuY29sdW1uJ1xuKSB7XG4gIGZsZXgtd3JhcDogd3JhcDtcblxuICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgJHBjdDogcGVyY2VudGFnZSgxLyRuKTtcblxuICAgIGZsZXg6IDAgMCAkcGN0O1xuICAgIG1heC13aWR0aDogJHBjdDtcbiAgfVxufVxuXG5AbWl4aW4gZmxleC1ncmlkLW9yZGVyKCRvcmRlcjogMCkge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBmbGV4LW9yZGVyKCkuIGZsZXgtZ3JpZC1vcmRlcigpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuMy4nO1xuICBAaW5jbHVkZSBmbGV4LW9yZGVyKCRvcmRlcik7XG59XG5cbkBtaXhpbiBmbGV4LWdyaWQtcm93LWFsaWduKCR4OiBudWxsLCAkeTogbnVsbCkge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBmbGV4LWFsaWduKCkuIGZsZXgtZ3JpZC1yb3ctYWxpZ24oKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjMuJztcbiAgQGluY2x1ZGUgZmxleC1hbGlnbigkeCwgJHkpO1xufVxuXG5AbWl4aW4gZmxleC1ncmlkLWNvbHVtbi1hbGlnbigkeTogbnVsbCkge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBmbGV4LWFsaWduLXNlbGYoKS4gZmxleC1ncmlkLWNvbHVtbi1hbGlnbigpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuMy4nO1xuICBAaW5jbHVkZSBmbGV4LWFsaWduLXNlbGYoJHkpO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LWdyaWQge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBmbGV4LWdyaWQtcm93O1xuXG4gICAgJiAucm93IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3cobmVzdCwgJGJhc2U6IGZhbHNlKTtcbiAgICB9XG5cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG5cbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgID4gLmNvbHVtbiB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtY29sbGFwc2UtY2hpbGQsXG4gICAgJi5jb2xsYXBzZSA+IC5jb2x1bW4gPiAucm93IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5jb2x1bW4ge1xuICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1jb2x1bW47XG4gIH1cblxuICAuY29sdW1uLnJvdy5yb3cge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLnJvdyAuY29sdW1uLnJvdy5yb3cge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCRpKTtcbiAgICAgICAgbWF4LXdpZHRoOiBncmlkLWNvbHVtbigkaSk7XG4gICAgICB9XG5cbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRvKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDYge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtbWF4IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtbGF5b3V0KCRpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJC16Zi1zaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi1zaXplKSB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tZXhwYW5kIHtcbiAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGF0LXJvb3QgKHdpdGhvdXQ6IG1lZGlhKSB7XG4gICAgICAgIC5yb3cuI3skLXpmLXNpemV9LXVuc3RhY2sge1xuICAgICAgICAgID4gLmNvbHVtbiB7XG4gICAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKDEwMCUpO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtc2l6ZSkge1xuICAgICAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS1jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4geyBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTsgfVxuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tdW5jb2xsYXBzZSB7XG4gICAgICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3JpZC1jb2x1bW4tZ3V0dGVyLCAkLXpmLXNpemUpO1xuXG4gICAgICA+IC5jb2x1bW4geyBAaW5jbHVkZSBncmlkLWNvbC11bmNvbGxhcHNlKCRndXR0ZXIpOyB9XG4gICAgfVxuICB9XG5cbiAgLnNocmluayB7XG4gICAgZmxleDogZmxleC1ncmlkLWNvbHVtbihzaHJpbmspO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5jb2x1bW4uYWxpZ24tI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR2ZGlyKTtcbiAgICB9XG4gIH1cblxuICAuY29sdW1ucyB7XG4gICAgQGV4dGVuZCAuY29sdW1uO1xuICB9XG59IiwiJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG4gIEByZXR1cm4gJG51bSAvICgkbnVtICogMCArIDEpO1xufVxuXG5AZnVuY3Rpb24gcmVtLWNhbGMoJHZhbHVlcywgJGJhc2U6IG51bGwpIHtcbiAgJHJlbS12YWx1ZXM6ICgpO1xuICAkY291bnQ6IGxlbmd0aCgkdmFsdWVzKTtcblxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG5AZnVuY3Rpb24gLXpmLWJwLXRvLWVtKCR2YWx1ZSkge1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcgb3IgdW5pdGxlc3MoJHZhbHVlKSB7XG4gICAgJHZhbHVlOiByZW0tY2FsYygkdmFsdWUsICRiYXNlOiAxNnB4KTtcbiAgfVxuXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG5AZnVuY3Rpb24gLXpmLXRvLXJlbSgkdmFsdWUsICRiYXNlOiBudWxsKSB7XG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSkgKiAxcmVtO1xuICB9XG5cbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn0iLCJAbWl4aW4gZ3JpZC1jb250ZXh0KFxuICAkY29sdW1ucyxcbiAgJHJvb3Q6IGZhbHNlXG4pIHtcbiAgJG9sZC1ncmlkLWNvbHVtbi1jb3VudDogJGdyaWQtY29sdW1uLWNvdW50O1xuICAkZ3JpZC1jb2x1bW4tY291bnQ6ICRjb2x1bW5zICFnbG9iYWw7XG5cbiAgQGlmICRyb290IHtcbiAgICBAYXQtcm9vdCB7IEBjb250ZW50OyB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkb2xkLWdyaWQtY29sdW1uLWNvdW50ICFnbG9iYWw7XG59XG5cbkBtaXhpbiBncmlkLXJvdyhcbiAgJGNvbHVtbnM6IG51bGwsXG4gICRiZWhhdmlvcjogbnVsbCxcbiAgJHdpZHRoOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjZjogdHJ1ZSxcbiAgJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gICRtYXJnaW46IGF1dG87XG5cbiAgQGlmIGluZGV4KCRiZWhhdmlvciwgbmVzdCkgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3V0dGVyKTtcblxuICAgIEBpZiBpbmRleCgkYmVoYXZpb3IsIGNvbGxhcHNlKSAhPSBudWxsIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgQGlmICRjZiB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGdyaWQtcm93LW5lc3QoJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbnVtYmVyJyB7XG4gICAgJGd1dHRlcjogKCQtemYtemVyby1icmVha3BvaW50OiAkZ3V0dGVyKTtcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgJG1hcmdpbjogcmVtLWNhbGMoJHZhbHVlKSAvIDIgKiAtMTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuICAgIH1cbiAgfVxufSIsIiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbiAgeHh4bGFyZ2U6IDE2MDBweFxuKSAhZGVmYXVsdDtcblxuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdZb3VyIHNtYWxsZXN0IGJyZWFrcG9pbnQgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzKSBtdXN0IGJlIHNldCB0byBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAkYnAtbWF4OiAwO1xuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgJHN0cjogJyc7XG4gICRuYW1lZDogZmFsc2U7XG5cbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuICBAZWxzZSBpZiAkYnAgPT0gJ3JldGluYScge1xuICAgIEByZXR1cm4gJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkYnAtbWF4OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyICRicmVha3BvaW50cyBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgQGlmICRicC1tYXgge1xuICAgICRicC1tYXg6IC16Zi1icC10by1lbSgkYnAtbWF4KSAtICgxLzE2KTtcbiAgfVxuXG4gIEBpZiAkYnAgPiAwZW0gb3IgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIEBpZiAkZGlyID09ICdvbmx5JyB7XG4gICAgICBAaWYgJG5hbWVkID09IHRydWUge1xuICAgICAgICBAaWYgJGJwID4gMGVtIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuXG4gICAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JGJwLW1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGVsc2UgaWYgJGRpciA9PSAnZG93bicge1xuICAgICAgJG1heDogaWYoJG5hbWVkLCAkYnAtbWF4LCAkYnApO1xuXG4gICAgICBAaWYgJG5hbWVkIG9yICRicCA+IDBlbSB7XG4gICAgICAgIEBpZiAkbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGVsc2UgaWYgJGJwID4gMGVtIHtcbiAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWUpIHtcbiAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuXG4gIEBpZiAkc3RyID09ICcnIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIEBlbHNlIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AZnVuY3Rpb24gLXpmLWJwLXNlcmlhbGl6ZSgkbWFwKSB7XG4gICRzdHI6ICcnO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgJHN0cjogJHN0ciArICRrZXkgKyAnPScgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArICcmJztcbiAgfVxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuJHNtYWxsLXVwOiBudWxsO1xuJHNtYWxsLW9ubHk6IG51bGw7XG4kbWVkaXVtLXVwOiBudWxsO1xuJG1lZGl1bS1vbmx5OiBudWxsO1xuJGxhcmdlLXVwOiBudWxsO1xuJGxhcmdlLW9ubHk6IG51bGw7XG4keGxhcmdlLXVwOiBudWxsO1xuJHhsYXJnZS1vbmx5OiBudWxsO1xuJHh4bGFyZ2UtdXA6IG51bGw7XG4keHhsYXJnZS1vbmx5OiBudWxsO1xuJHh4eGxhcmdlLXVwOiBudWxsO1xuJHh4eGxhcmdlLW9ubHk6IG51bGw7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbiAgJHh4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHh4bGFyZ2UpIHtcbiAgJHh4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eHhsYXJnZSl9Jyk7XG59IiwiQG1peGluIGdyaWQtY29sdW1uLWNvbGxhcHNlIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyO1xufVxuXG5AbWl4aW4gZ3JpZC1jb2wtY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcbn1cblxuQG1peGluIGdyaWQtY29sLXVuY29sbGFwc2UoJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bmNvbGxhcHNlKCRndXR0ZXIpO1xufSIsIkBmdW5jdGlvbiBncmlkLWNvbHVtbigkY29sdW1ucykge1xuICAkd2lkdGg6IDAlO1xuXG4gIEBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbnVtYmVyJyB7XG4gICAgQGlmIHVuaXQoJGNvbHVtbnMpID09ICclJyB7XG4gICAgICAkd2lkdGg6ICRjb2x1bW5zO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkY29sdW1ucyA8IDEge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbGlzdCcge1xuICAgIEBpZiBsZW5ndGgoJGNvbHVtbnMpICE9IDMge1xuICAgICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSB0aGUgZm9ybWF0IFwibiBvZiBuXCIuJztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKG50aCgkY29sdW1ucywgMSkgLyBudGgoJGNvbHVtbnMsIDMpKTtcbiAgICB9XG4gIH1cblxuICBAZWxzZSB7XG4gICAgQGVycm9yICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uKCkuIFVzZSBhIG51bWJlciwgZGVjaW1hbCwgcGVyY2VudGFnZSwgb3IgXCJuIG9mIG5cIi4nO1xuICB9XG5cbiAgQHJldHVybiAkd2lkdGg7XG59XG5cbkBtaXhpbiBncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xuICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuXG4gIEBpZiB0eXBlLW9mKCRndXR0ZXIpID09ICdtYXAnIHtcbiAgICBAZWFjaCAkYnJlYWtwb2ludCwgJHZhbHVlIGluICRndXR0ZXIge1xuICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCR2YWx1ZSkgLyAyO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiB0eXBlLW9mKCRndXR0ZXIpID09ICdudW1iZXInIGFuZCBzdHJpcC11bml0KCRndXR0ZXIpID4gMCB7XG4gICAgJHBhZGRpbmc6IHJlbS1jYWxjKCRndXR0ZXIpIC8gMjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICB9XG5cbiAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBncmlkLWNvbHVtbi1yb3coXG4gICRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLXJvdztcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGd1dHRlcjogJGd1dHRlcik7XG5cbiAgJixcbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG5AZnVuY3Rpb24gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnRcbikge1xuICBAcmV0dXJuIGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuQG1peGluIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXIpO1xufVxuXG5AbWl4aW4gZ3JpZC1jb2wtcm93KFxuICAkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCRndXR0ZXIpO1xufSIsIkBtaXhpbiBncmlkLWNvbHVtbi1wb3NpdGlvbigkcG9zaXRpb24pIHtcbiAgQGlmIHR5cGUtb2YoJHBvc2l0aW9uKSA9PSAnbnVtYmVyJyB7XG4gICAgJG9mZnNldDogcGVyY2VudGFnZSgkcG9zaXRpb24gLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gY2VudGVyIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbi1wb3NpdGlvbigpLiBFbnRlciBhIHBvc2l0aXZlIG9yIG5lZ2F0aXZlIG51bWJlciwgb3IgY2VudGVyLic7XG4gIH1cbn1cblxuQG1peGluIGdyaWQtY29sdW1uLW9mZnNldCgkbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiBncmlkLWNvbHVtbigkbik7XG59XG5cbkBtaXhpbiBncmlkLWNvbHVtbi1lbmQge1xuICAmOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgfVxufVxuXG5AbWl4aW4gZ3JpZC1jb2wtcG9zKCRwb3NpdGlvbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbigkcG9zaXRpb24pO1xufVxuXG5AbWl4aW4gZ3JpZC1jb2wtb2ZmKCRuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgkbik7XG59XG5cbkBtaXhpbiBncmlkLWNvbC1lbmQge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1lbmQ7XG59IiwiJC16Zi1mbGV4LWp1c3RpZnk6IChcbiAgJ2xlZnQnOiBmbGV4LXN0YXJ0LFxuICAncmlnaHQnOiBmbGV4LWVuZCxcbiAgJ2NlbnRlcic6IGNlbnRlcixcbiAgJ2p1c3RpZnknOiBzcGFjZS1iZXR3ZWVuLFxuICAnc3BhY2VkJzogc3BhY2UtYXJvdW5kLFxuKTtcblxuJC16Zi1mbGV4LWFsaWduOiAoXG4gICd0b3AnOiBmbGV4LXN0YXJ0LFxuICAnYm90dG9tJzogZmxleC1lbmQsXG4gICdtaWRkbGUnOiBjZW50ZXIsXG4gICdzdHJldGNoJzogc3RyZXRjaCxcbik7XG5cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuQG1peGluIGZsZXgtYWxpZ24oJHg6IG51bGwsICR5OiBudWxsKSB7XG4gIEBpZiAkeCB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1qdXN0aWZ5LCAkeCkge1xuICAgICAgJHg6IG1hcC1nZXQoJC16Zi1mbGV4LWp1c3RpZnksICR4KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeH0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGhvcml6b250YWwgYWxpZ25tZW50LiBVc2UgbGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSwgb3Igc3BhY2VkLidcbiAgICB9XG4gIH1cblxuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHZlcnRpY2FsIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJ1xuICAgIH1cbiAgfVxuXG4gIGp1c3RpZnktY29udGVudDogJHg7XG4gIGFsaWduLWl0ZW1zOiAkeTtcbn1cblxuQG1peGluIGZsZXgtYWxpZ24tc2VsZigkeTogbnVsbCkge1xuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1jb2x1bW4tYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJ1xuICAgIH1cbiAgfVxuXG4gIGFsaWduLXNlbGY6ICR5O1xufVxuXG5AbWl4aW4gZmxleC1vcmRlcigkb3JkZXI6IDApIHtcbiAgb3JkZXI6ICRvcmRlcjtcbn0iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT4tPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIGZvciBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHN0eWxlcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc3R5bGVzOiAoXG4gICAgICAgIHNtYWxsOiAoXG4gICAgICAgICAgICAgICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgICAgICAgICAgICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgICAgICAgICAgICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgICAgICAgICAgICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgICAgICAgICAgICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgICAgICAgICAgICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICAgICAgICksXG4gICAgICAgIG1lZGl1bTogKFxuICAgICAgICAgICAgICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICAgICAgICAgICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICAgICAgICAgICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICAgICAgICAgICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICAgICAgICAgICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICAgICAgICAgICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICAgICAgICApLFxuKSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zdHlsZXMgbWFwIGlzIGJ1aWx0IGZyb20gJGhlYWRlci1zaXplcyBpbiBvcmRlciB0byBlbnN1cmUgZG93bndhcmQgY29tcGF0aWJpbGl0eVxuLy8gd2hlbiAkaGVhZGVyLXNpemVzIGlzIGRlcHJlY2lhdGVkLCAkaGVhZGVyLXN0eWxlcyBuZWVkcyB0byBnZXQgIWRlZmF1bHQgdmFsdWVzIGxpa2Ugc2V0dGluZ3Muc2Nzc1xuQGZ1bmN0aW9uIGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpIHtcbiAgQHdhcm4gJ05vdGUsIHRoYXQgJGhlYWRlci1zaXplcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoICRoZWFkZXItc3R5bGVzLiAkaGVhZGVyLXNpemVzIHN0aWxsIHdvcmtzLCBidXQgaXQgaXMgZ29pbmcgdG8gYmUgZGVwcmVjaWF0ZWQuJztcbiAgJGhlYWRlci1zdHlsZXM6ICgpO1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zaXplcyB7XG4gICAgJGhlYWRlci1tYXA6ICgpO1xuICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgJGhlYWRlci1tYXA6IG1hcC1tZXJnZSgkaGVhZGVyLW1hcCwgKCRoZWFkZXI6ICgnZm9udC1zaXplJzogJGZvbnQtc2l6ZSkpKTtcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZW9jcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgfVxuICB9XG5cbiAgLy8gRW1waGFzaXplZCB0ZXh0XG4gIGVtLFxuICBpIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTdHJvbmcgdGV4dFxuICBzdHJvbmcsXG4gIGIge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU21hbGwgdGV4dFxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSGVhZGluZ3NcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgZm9udC1zdHlsZTogJGhlYWRlci1mb250LXN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XG4gICAgLy9mb250LWZhbWlseTogJ21pbGxlcicsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1mYW1pbHk6ICdNaWxsZXJEaXNwbGF5LUxpZ2h0Jywgc2Fucy1zZXJpZjtcbiAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG5cbiAgICBzbWFsbCB7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgaDEsICAuaDEge1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIGJvZHkgJiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxuICB9XG4gIGgyIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICB9XG5cbiAgLy8gSGVhZGluZyBzdHlsZXNcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc3R5bGVzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkaGVhZGVyLCAkaGVhZGVyLWRlZnMgaW4gJGhlYWRlcnMge1xuICAgICAgICAkZm9udC1zaXplLXRlbXA6IDFyZW07XG4gICAgICAgICN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBDaXRhdGlvbnNcbiAgY2l0ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAkY2l0ZS1mb250LXNpemU7XG4gICAgY29sb3I6ICRjaXRlLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyIHtcbiAgICBib3JkZXItYm90dG9tOiAkYWJici11bmRlcmxpbmU7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgY3Vyc29yOiBoZWxwO1xuICB9XG5cbiAgLy8gRmlndXJlc1xuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvZGVcbiAgY29kZSB7XG4gICAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcblxuICAgIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGZvdW5kYXRpb24tdGV4dC1hbGlnbm1lbnQge1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkYWxpZ24gaW4gKGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnkpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tdGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLnRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZm9jdXNlZCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBmb2N1c2VkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgaW5zaWRlIHRleHQgaW5wdXRzIHdoZW4gbm90IGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IG91dHNpZGUgdGV4dCBpbnB1dHMgd2hlbiBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDdXJzb3IgdG8gdXNlIHdoZW4gaG92ZXJpbmcgb3ZlciBhIGRpc2FibGVkIHRleHQgaW5wdXQuXG4vLy8gQHR5cGUgQ3Vyc29yXG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuLy8vIFByb3BlcnRpZXMgdG8gdHJhbnNpdGlvbiBvbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIHRoZSB1cC9kb3duIGJ1dHRvbnMgdGhhdCBDaHJvbWUgYW5kIEZpcmVmb3ggYWRkIHRvIGA8aW5wdXQgdHlwZT0nbnVtYmVyJz5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBSYWRpdXMgZm9yIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBmb3JtIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWVsZW1lbnQge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSArICgkZm9ybS1zcGFjaW5nICogMS41KSAtIHJlbS1jYWxjKDEpKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgM3B4O1xuICBwYWRkaW5nOiAkZm9ybS1zcGFjaW5nLzIgMThweDtcblxuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93O1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICB9XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXRleHQge1xuICAvLyBUZXh0IGlucHV0c1xuICAje3RleHQtaW5wdXRzKCl9LFxuICB0ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyBUZXh0IGFyZWFzXG4gIHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmW3Jvd3NdIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIC8vIFBsYWNlaG9sZGVyIHRleHRcbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIERpc2FibGVkL3JlYWRvbmx5IHN0YXRlXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb24gYnV0dG9uLWxpa2UgaW5wdXRzXG4gIFt0eXBlPSdzdWJtaXQnXSxcbiAgW3R5cGU9J2J1dHRvbiddIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWJ1dHRvbi1yYWRpdXM7XG4gIH1cblxuICAvLyBSZXNldCBOb3JtYWxpemUgc2V0dGluZyBjb250ZW50LWJveCB0byBzZWFyY2ggZWxlbWVudHNcbiAgaW5wdXRbdHlwZT0nc2VhcmNoJ10geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gTnVtYmVyIGlucHV0IHN0eWxlc1xuICBbdHlwZT0nbnVtYmVyJ10ge1xuICAgIEBpZiBub3QgJGlucHV0LW51bWJlci1zcGlubmVycyB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4XG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGZvcm0gbGFiZWxzLiBUaGUgaGlnaGVyIHRoZSBudW1iZXIsIHRoZSBtb3JlIHNwYWNlIGJldHdlZW4gdGhlIGxhYmVsIGFuZCBpdHMgaW5wdXQgZmllbGQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44ICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG5cbiAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG4gIGxldHRlci1zcGFjaW5nOiAuOXB4O1xuICBlbSB7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgfVxufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcblxuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSkgMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1sYWJlbCB7XG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBmb3JtLWxhYmVsO1xuXG4gICAgJi5taWRkbGUge1xuICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1taWRkbGU7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gZm9ybS1zZWxlY3Qge1xuICBoZWlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgcGFkZGluZzogcmVtLWNhbGMoNiAyMik7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgbWFyZ2luOiByZW0tY2FsYygwIDAgMTUpO1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuXG4gIEBpZiAkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yICE9IHRyYW5zcGFyZW50IHtcbiAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRzZWxlY3QtdHJpYW5nbGUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZ2xvYmFsLXJpZ2h0ICgtJGZvcm0tc3BhY2luZykgY2VudGVyO1xuICAgIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogKCRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuICBkaXZbY2xhc3MqPSdzbWFsbC1jdHJscyddICYge1xuICAgIGhlaWdodDogcmVtLWNhbGMoMzYpO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDggMjUgOCAxNSk7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1zZWxlY3Qge1xuICBzZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tc2VsZWN0O1xuICB9XG59IiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmV2ZWFsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHdpZHRoIG9mIGEgbW9kYWwsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXhpbXVtIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHotaW5kZXggZm9yIG1vZGFscy4gVGhlIG92ZXJsYXkgdXNlcyB0aGlzIHZhbHVlLCB3aGlsZSB0aGUgbW9kYWwgaXRzZWxmIHVzZXMgdGhpcyB2YWx1ZSBwbHVzIG9uZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtemluZGV4OiAxMDA1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBvdmVybGF5cy5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1vZGFsIG92ZXJsYXkuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIG92ZXJsYXkuXG5AbWl4aW4gcmV2ZWFsLW92ZXJsYXkoJGJhY2tncm91bmQ6ICRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kKSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4O1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG5cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGEgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4ICsgMTtcbiAgLy8gV29ya2Fyb3VuZCBhbmRyb2lkIGJyb3dzZXIgei1pbmRleCBidWdcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBib2R5IHtcbiAgICBiYWNrZ3JvdW5kOiBncmVlbnllbGxvdyAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6ICM0MWUzZWUgIWltcG9ydGFudDtcbiAgfVxuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcmV2ZWFsLXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkcmV2ZWFsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJldmVhbC1yYWRpdXM7XG4gIC8vYmFja2dyb3VuZC1jb2xvcjogJHJldmVhbC1iYWNrZ3JvdW5kO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSByb3dzIGRvbid0IGhhdmUgYSBtaW4td2lkdGggb24gdGhlbVxuICAuY29sdW1uLFxuICAuY29sdW1ucyB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG5cbiAgLy8gU3RyaXAgbWFyZ2lucyBmcm9tIHRoZSBsYXN0IGl0ZW0gaW4gdGhlIG1vZGFsXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkanVzdHMgdGhlIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBtb2RhbC4gR2VuZXJhbGx5IGEgcGVyY2VudGFnZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heC13aWR0aCBbJHJldmVhbC1tYXgtd2lkdGhdIC0gTWF4aW11bSB3aWR0aCBvZiB0aGUgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLXdpZHRoKFxuICAkd2lkdGg6ICRyZXZlYWwtd2lkdGgsXG4gICRtYXgtd2lkdGg6ICRyZXZlYWwtbWF4LXdpZHRoXG4pIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBAZXh0ZW5kICVyZXZlYWwtY2VudGVyZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIC8vaGVpZ2h0OiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWR1cGxpY2F0ZS1wcm9wZXJ0aWVzXG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBtYXJnaW4tbGVmdDogMDtcblxuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJldmVhbCB7XG4gIC8vIFtUT0RPXSBJcyB0aGlzIG5lY2Vzc2FyeT9cbiAgYm9keS5pcy1yZXZlYWwtb3BlbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAvLyBodG1sIGdldHMgdGhpcyBjbGFzcyBvbmx5IGluIGlPU1xuICBodG1sLmlzLXJldmVhbC1vcGVuLFxuICBodG1sLmlzLXJldmVhbC1vcGVuIGJvZHkge1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIC8vIE92ZXJsYXlcbiAgLnJldmVhbC1vdmVybGF5IHtcbiAgICBAaW5jbHVkZSByZXZlYWwtb3ZlcmxheTtcbiAgfVxuXG4gIC8vIE1vZGFsIGNvbnRhaW5lclxuICAucmV2ZWFsIHtcbiAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZTtcbiAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoJHJldmVhbC13aWR0aCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMTAwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuXG4gICAgLy8gUGxhY2Vob2xkZXIgc2VsZWN0b3IgZm9yIG1lZGl1bS1hbmQtdXAgbW9kYWxzXG4gICAgLy8gUHJldmVudHMgZHVwbGljYXRlIENTUyB3aGVuIGRlZmluaW5nIG11bHRpcGxlIFJldmVhbCBzaXplc1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAlcmV2ZWFsLWNlbnRlcmVkIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFNpemluZyBjbGFzc2VzXG4gICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgzMCUpOyB9XG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg1MCUpOyB9XG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg5MCUpOyB9XG5cbiAgICAvLyBGdWxsLXNjcmVlbiBtb2RlXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgJi53aXRob3V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGluc2lkZSBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tcGFkZGluZzogcmVtLWNhbGMoMTYgNDYpICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gICAgICAgIHRpbnk6IDAuNnJlbSxcbiAgICAgICAgc21hbGw6IDAuNzVyZW0sXG4gICAgICAgIGRlZmF1bHQ6IDAuOXJlbSxcbiAgICAgICAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgYXV0byAxcmVtO1xuICBwYWRkaW5nOiByZW0tY2FsYygxMiAzMCk7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogJGJ1dHRvbi10cmFuc2l0aW9uO1xuICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtZmFtaWx5OiAnQnJhbmRvbkdyb3Rlc3F1ZScsIHNhbnMtc2VyaWY7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE2IDQ2KTtcbiAgfVxufVxuXG4vLy8gRXhwYW5kcyBhIGJ1dHRvbiB0byBtYWtlIGl0IGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIHRoZSBleHBhbmQgYmVoYXZpb3IuIFNldCB0byBgZmFsc2VgIHRvIHJldmVyc2UgdGhpcyBiZWhhdmlvci5cbkBtaXhpbiBidXR0b24tZXhwYW5kKCRleHBhbmQ6IHRydWUpIHtcbiAgQGlmICRleHBhbmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZSBvZiBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gYnV0dG9uLXN0eWxlKFxuICAkYmFja2dyb3VuZDogJGJsYWNrLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHNlY29uZGFyeS1jb2xvcixcbiAgJGNvbG9yOiAkd2hpdGVcbikge1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi1zZWNvbmRhcnkoXG4gICRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJsYWNrLFxuICAkY29sb3I6ICR3aGl0ZVxuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuQG1peGluIGJ1dHRvbi10cmFuc3BhcmVudChcbiAgJGJhY2tncm91bmQ6IHRyYW5zcGFyZW50LFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJsYWNrLFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkd2hpdGUsXG4gICRib3JkZXI6IDFweCBzb2xpZCAkYmxhY2tcbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBwYWRkaW5nOiByZW0tY2FsYygxMSAzMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxNSA0Nik7XG4gIH1cblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICB9XG59XG5cbi8vLyBSZW1vdmVzIGJhY2tncm91bmQgZmlsbCBvbiBob3ZlciBhbmQgZm9jdXMgZm9yIGhvbGxvdyBidXR0b25zLlxuQG1peGluIGJ1dHRvbi1ob2xsb3cge1xuICAmLFxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdy1zdHlsZShcbiAgJGNvbG9yOiAkcHJpbWFyeS1jb2xvcixcbiAgJGhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcjtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICB9XG59XG5cbi8vLyBBZGRzIGRpc2FibGVkIHN0eWxlcyB0byBhIGJ1dHRvbiBieSBmYWRpbmcgdGhlIGVsZW1lbnQsIHJlc2V0aW5nIHRoZSBjdXJzb3IsIGFuZCBkaXNhYmxpbmcgcG9pbnRlciBldmVudHMuXG4vLy8gQHBhcmFtIFtDb2xvcl0gJGJhY2tncm91bmQgWyRwcmltYXJ5LWNvbG9yXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAcGFyYW0gW0NvbG9yXSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkcm9wZG93biBhcnJvdyB0byBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgWzAuNGVtXSAtIFNpemUgb2YgdGhlIGFycm93LiBXZSByZWNvbW1lbmQgdXNpbmcgYW4gYGVtYCB2YWx1ZSBzbyB0aGUgdHJpYW5nbGUgc2NhbGVzIHdoZW4gdXNlZCBpbnNpZGUgZGlmZmVyZW50IHNpemVzIG9mIGJ1dHRvbnMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFt3aGl0ZV0gLSBDb2xvciBvZiB0aGUgYXJyb3cuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvZmZzZXQgWyRidXR0b24tcGFkZGluZ10gLSBEaXN0YW5jZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHQgb2YgdGhlIGJ1dHRvbi4gRGVmYXVsdHMgdG8gd2hhdGV2ZXIgdGhlIHJpZ2h0IHBhZGRpbmcgb2YgYSBidXR0b24gaXMuXG5AbWl4aW4gYnV0dG9uLWRyb3Bkb3duKFxuICAkc2l6ZTogMC40ZW0sXG4gICRjb2xvcjogJHdoaXRlLFxuICAkb2Zmc2V0OiBnZXQtc2lkZSgkYnV0dG9uLXBhZGRpbmcsIHJpZ2h0KVxuKSB7XG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHNpemUsICRjb2xvciwgZG93bik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07IC8vIEFsaWducyB0aGUgYXJyb3cgd2l0aCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uXG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1yaWdodH07XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodCk7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYmxhY2ssXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkc2Vjb25kYXJ5LWNvbG9yLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRzdHlsZTogJGJ1dHRvbi1maWxsXG4pIHtcbiAgQGluY2x1ZGUgYnV0dG9uLWJhc2U7XG5cbiAgQGlmICRzdHlsZSA9PSBzb2xpZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiYWNrZ3JvdW5kLCAkYmFja2dyb3VuZC1ob3ZlciwgJGNvbG9yKTtcbiAgfVxuICBAZWxzZSBpZiAkc3R5bGUgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG5cbiAgQGlmICRleHBhbmQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uIHtcbiAgLmJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZXhwYW5kZWQgeyBAaW5jbHVkZSBidXR0b24tZXhwYW5kOyB9XG5cbiAgICAvLyBDb2xvcnNcbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuI3skbmFtZX0uZHJvcGRvd246OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIb2xsb3cgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0eWxlXG4gICAgJi5kaXNhYmxlZCxcbiAgICAmW2Rpc2FibGVkXSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQ7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkKCRjb2xvciwgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBhcnJvd1xuICAgICYuZHJvcGRvd24ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRyb3Bkb3duO1xuXG4gICAgICBAaWYgJGJ1dHRvbi1maWxsID09IGhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG5cbiAgICAvL1xuICAgICYuYnV0dG9uLXNlY29uZGFyeSB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tc2Vjb25kYXJ5KCk7XG4gICAgfVxuICAgICYuYnV0dG9uLXRyYW5zcGFyZW50IHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi10cmFuc3BhcmVudCgpO1xuICAgIH1cbiAgICAmLmJ0bi1iaWcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtaW4td2lkdGg6IHJlbS1jYWxjKDIyNSk7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE4IDQ2KTtcbiAgICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDggMTcpO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmJ0bi1sYXJnZSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgbWluLXdpZHRoOiByZW0tY2FsYygyMjUpO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxOCA0Nik7XG4gICAgICB9XG4gICAgfVxuICAgICYubG9hZCB7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDQ5KTtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygyMDApO1xuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAvL2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvbG9hZGVyLnN2Zyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiByZW0tY2FsYygzMCk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIGZvcmNlLWVsZW1lbnQtbmVzdGluZywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYmxlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciB0YWJsZSBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlICAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgc3RyaXBlZCB0YWJsZSByb3dzIGFuZCB0aGUgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc3R5bGUgZm9yIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYmxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RhbmRhcmQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0cmlwZWQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCB0YWJsZXMgYXJlIHN0cmlwZWQgYnkgZGVmYXVsdCBhbmQgYW4gLnVuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLiBJZiBgZmFsc2VgLCBhIC5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIHN0cmlwZWQgcm93cy5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBzdHJpcGUgb24gcm93cyBvZiB0aGUgdGFibGVzLCBleGNsdWRpbmcgdGhlIGhlYWRlciBhbmQgZm9vdGVyLiBJZiBldmVuLCB0aGUgZXZlbiByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIG9kZCwgdGhlIG9kZCByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIGVtcHR5LCBvciBhbnkgb3RoZXIgdmFsdWUsIHRoZSB0YWJsZSByb3dzIHdpbGwgaGF2ZSBubyBzdHJpcGluZy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kdGFibGUtc3RyaXBlOiBldmVuICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVhZGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGZvb3RlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgaGVhZGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBmb290ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBoZWFkZXIgd2hlbiB1c2luZyBzdGFja2VkIHRhYmxlcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG5AbWl4aW4gLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlOiAkdGFibGUtc3RyaXBlKSB7XG4gIHRyIHtcbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIGV2ZW4sIGRhcmtlbiB0aGUgZXZlbiByb3dzLlxuICAgIEBpZiAkc3RyaXBlID09IGV2ZW4ge1xuICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBvZGQsIGRhcmtlbiB0aGUgb2RkIHJvd3MuXG4gICAgQGVsc2UgaWYgJHN0cmlwZSA9PSBvZGQge1xuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtdW5zdHJpcGUoKSB7XG4gIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSwgJGlzLXN0cmlwZWQ6ICR0YWJsZS1pcy1zdHJpcGVkKSB7XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENhcHRpb25cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaGVhZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgZm9vdFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWZvb3QtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWQgYW5kIGZvb3RcbiAgdGhlYWQsXG4gIHRmb290IHtcbiAgICAvLyBSb3dzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2VsbHMgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogI3skZ2xvYmFsLWxlZnR9O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRhYmxlIHJvd3NcbiAgdGJvZHkge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgc3RyaXBlZFxuICBAaWYgJGlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICB9XG5cbiAgICAmLnVuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAgIC8vIElmIHRhYmxlcyBhcmUgbm90IHN0cmlwZWRcbiAgQGVsc2UgaWYgJGlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgIH1cblxuICAgICYuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgdGFibGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0cmlwZSBbJHRhYmxlLXN0cmlwZV0gLSBVc2VzIGtleXdvcmRzIGV2ZW4sIG9kZCwgb3Igbm9uZSB0byBkYXJrZW4gcm93cyBvZiB0aGUgdGFibGUuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGV2ZW4uXG5AbWl4aW4gdGFibGUoXG4gICRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsXG4gICRuZXN0OiBmYWxzZVxuKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgQGlmICRuZXN0IHtcbiAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgYWJpbGl0eSB0byBob3Jpem9udGFsbHkgc2Nyb2xsIHRoZSB0YWJsZSB3aGVuIHRoZSBjb250ZW50IG92ZXJmbG93cyBob3Jpem9udGFsbHkuXG5AbWl4aW4gdGFibGUtc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4vLy8gU2xpZ2h0bHkgZGFya2VucyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbkBtaXhpbiB0YWJsZS1ob3ZlciB7XG4gIHRoZWFkIHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWZvb3Qtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRib2R5IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIG5vbi1zdHJpcGVkIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZWlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShvZGQpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgJHRhYmxlLWlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICYuc3RyaXBlZCB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZWlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgdGhlYWQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIHRyLFxuICB0aCxcbiAgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFibGUoJG5lc3Q6IGZhbHNlKSB7XG4gIHRhYmxlIHtcbiAgICBAaW5jbHVkZSB0YWJsZSgkbmVzdDogJG5lc3QpO1xuICB9XG5cbiAgdGFibGUuc3RhY2sge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgIHRhYmxlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbHVtaW5hbmNlIG9mLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbkBmdW5jdGlvbiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICAkcmdiYTogcmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKTtcbiAgJHJnYmEyOiAoKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMge1xuICAgICRyZ2I6IG50aCgkcmdiYSwgJGkpO1xuICAgICRyZ2I6ICRyZ2IgLyAyNTU7XG5cbiAgICAkcmdiOiBpZigkcmdiIDwgMC4wMzkyOCwgJHJnYiAvIDEyLjkyLCBwb3coKCRyZ2IgKyAwLjA1NSkgLyAxLjA1NSwgMi40KSk7XG5cbiAgICAkcmdiYTI6IGFwcGVuZCgkcmdiYTIsICRyZ2IpO1xuICB9XG5cbiAgQHJldHVybiAwLjIxMjYgKiBudGgoJHJnYmEyLCAxKSArIDAuNzE1MiAqIG50aCgkcmdiYTIsIDIpICsgMC4wNzIyICogbnRoKCRyZ2JhMiwgMyk7XG59XG5cbi8vLyBDaGVja3MgdGhlIGNvbnRyYXN0IHJhdGlvIG9mIHR3byBjb2xvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IxIC0gRmlyc3QgY29sb3IgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IyIC0gU2Vjb25kIGNvbG9yIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgY29udHJhc3QgcmF0aW8gb2YgdGhlIGNvbXBhcmVkIGNvbG9ycy5cbkBmdW5jdGlvbiBjb2xvci1jb250cmFzdCgkY29sb3IxLCAkY29sb3IyKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNjb250cmFzdC1yYXRpb2RlZlxuICAkbHVtaW5hbmNlMTogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjEpICsgMC4wNTtcbiAgJGx1bWluYW5jZTI6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IyKSArIDAuMDU7XG4gICRyYXRpbzogJGx1bWluYW5jZTEgLyAkbHVtaW5hbmNlMjtcblxuICBAaWYgJGx1bWluYW5jZTIgPiAkbHVtaW5hbmNlMSB7XG4gICAgJHJhdGlvOiAxIC8gJHJhdGlvO1xuICB9XG5cbiAgJHJhdGlvOiByb3VuZCgkcmF0aW8gKiAxMCkgLyAxMDtcblxuICBAcmV0dXJuICRyYXRpbztcbn1cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkYmFzZWAsIGFuZCByZXR1cm5zIHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItcGljay1jb250cmFzdCgkYmFzZSwgJGNvbG9yczogKCR3aGl0ZSwgJGJsYWNrKSwgJHRvbGVyYW5jZTogMCkge1xuICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgMSkpO1xuICAkYmVzdDogbnRoKCRjb2xvcnMsIDEpO1xuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggbGVuZ3RoKCRjb2xvcnMpIHtcbiAgICAkY3VycmVudC1jb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgIEBpZiAoJGN1cnJlbnQtY29udHJhc3QgLSAkY29udHJhc3QgPiAkdG9sZXJhbmNlKSB7XG4gICAgICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICAgICRiZXN0OiBudGgoJGNvbG9ycywgJGkpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGNvbnRyYXN0IDwgMykge1xuICAgIEB3YXJuIFwiQ29udHJhc3QgcmF0aW8gb2YgI3skYmVzdH0gb24gI3skYmFzZX0gaXMgcHJldHR5IGJhZCwganVzdCAjeyRjb250cmFzdH1cIjtcbiAgfVxuXG4gIEByZXR1cm4gJGJlc3Q7XG59XG5cbi8vLyBTY2FsZXMgYSBjb2xvciB0byBiZSBkYXJrZXIgaWYgaXQncyBsaWdodCwgb3IgbGlnaHRlciBpZiBpdCdzIGRhcmsuIFVzZSB0aGlzIGZ1bmN0aW9uIHRvIHRpbnQgYSBjb2xvciBhcHByb3ByaWF0ZSB0byBpdHMgbGlnaHRuZXNzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gc2NhbGUuXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkc2NhbGUgWzUlXSAtIEFtb3VudCB0byBzY2FsZSB1cCBvciBkb3duLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHRocmVzaG9sZCBbNDAlXSAtIFRocmVzaG9sZCBvZiBsaWdodG5lc3MgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gQSBzY2FsZWQgY29sb3IuXG5AZnVuY3Rpb24gc21hcnQtc2NhbGUoJGNvbG9yLCAkc2NhbGU6IDUlLCAkdGhyZXNob2xkOiA0MCUpIHtcbiAgQGlmIGxpZ2h0bmVzcygkY29sb3IpID4gJHRocmVzaG9sZCB7XG4gICAgJHNjYWxlOiAtJHNjYWxlO1xuICB9XG4gIEByZXR1cm4gc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkc2NhbGUpO1xufVxuXG4vLy8gR2V0IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcGFyYW0ge2tleX0gY29sb3Iga2V5IGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG5AZnVuY3Rpb24gZ2V0LWNvbG9yKCRrZXkpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnZ2l2ZW4gJGtleSBpcyBub3QgYXZhaWxhYmxlIGluICRmb3VuZGF0aW9uLXBhbGV0dGUnO1xuICB9XG59XG5cbkBtaXhpbiBhZGQtZm91bmRhdGlvbi1jb2xvcnMoKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gICAgJHByaW1hcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH1cbn0iLCJAbWl4aW4gZm91bmRhdGlvbi1mbGV4LWNsYXNzZXMge1xuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gbWFwLXJlbW92ZSgkLXpmLWZsZXgtanVzdGlmeSwgbGVmdCkge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJHZkaXIsICRwcm9wIGluICQtemYtZmxleC1hbGlnbiB7XG4gICAgLmFsaWduLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHk6ICR2ZGlyKTtcbiAgICB9XG5cbiAgICAuYWxpZ24tc2VsZi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduLXNlbGYoJHk6ICR2ZGlyKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDYge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8vIEN1c3RvbSBGb250XG4vLyRmb250LW5hbWU6IFwiZm9udFwiO1xuLy9AZm9udC1mYWNlIHtcbi8vICAgIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuLy8gICAgc3JjOiAgICAgICAgIHVybCgnI3skcGF0aC1mb250c30vI3skZm9udC1uYW1lfS5lb3QnKTtcbi8vICAgIHNyYzogICAgICAgICB1cmwoJyN7JHBhdGgtZm9udHN9LyN7JGZvbnQtbmFtZX0uZW90I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCB1cmwoJyN7JHBhdGgtZm9udHN9LyN7JGZvbnQtbmFtZX0ud29mZicpIGZvcm1hdCgnd29mZicpLCB1cmwoJyN7JHBhdGgtZm9udHN9LyN7JGZvbnQtbmFtZX0udHRmJykgZm9ybWF0KCd0cnVldHlwZScpLCB1cmwoJyN7JHBhdGgtZm9udHN9LyN7JGZvbnQtbmFtZX0uc3ZnI2ZvbnRlbGxvJykgZm9ybWF0KCdzdmcnKTtcbi8vICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4vLyAgICBmb250LXN0eWxlOiAgbm9ybWFsO1xuLy99XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnbWlsbGVyJztcbiAgICBzcmM6ICAgICAgICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9NaWxsZXItRGlzcGxheS9NaWxsZXItRGlzcGxheS5lb3QnKTtcbiAgICBzcmM6ICAgICAgICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9NaWxsZXItRGlzcGxheS9NaWxsZXItRGlzcGxheS5lb3QjaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9NaWxsZXItRGlzcGxheS9NaWxsZXItRGlzcGxheS53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9NaWxsZXItRGlzcGxheS9NaWxsZXItRGlzcGxheS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9NaWxsZXItRGlzcGxheS9NaWxsZXItRGlzcGxheS5zdmcjTWlsbGVyLURpc3BsYXknKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogIG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdNaWxsZXJEaXNwbGF5LUxpZ2h0JztcbiAgICBzcmM6ICAgICAgICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9NaWxsZXJEaXNwbGF5LUxpZ2h0L01pbGxlckRpc3BsYXktTGlnaHQuZW90Jyk7XG4gICAgc3JjOiAgICAgICAgIHVybCgnI3skcGF0aC1mb250c30vTWlsbGVyRGlzcGxheS1MaWdodC9NaWxsZXJEaXNwbGF5LUxpZ2h0LmVvdCNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJyN7JHBhdGgtZm9udHN9L01pbGxlckRpc3BsYXktTGlnaHQvTWlsbGVyRGlzcGxheS1MaWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9NaWxsZXJEaXNwbGF5LUxpZ2h0L01pbGxlckRpc3BsYXktTGlnaHQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgIHVybCgnI3skcGF0aC1mb250c30vTWlsbGVyRGlzcGxheS1MaWdodC9NaWxsZXJEaXNwbGF5LUxpZ2h0LnN2ZyNNaWxsZXJEaXNwbGF5LUxpZ2h0JykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc3R5bGU6ICBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnQnJhbmRvbkdyb3Rlc3F1ZSc7XG4gICAgc3JjOiAgICAgICAgIHVybCgnI3skcGF0aC1mb250c30vQnJhbmRvbkdyb3Rlc3F1ZS1SZWd1bGFyL0JyYW5kb25Hcm90ZXNxdWUtUmVndWxhci5lb3QnKTtcbiAgICBzcmM6ICAgICAgICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9CcmFuZG9uR3JvdGVzcXVlLVJlZ3VsYXIvQnJhbmRvbkdyb3Rlc3F1ZS1SZWd1bGFyLmVvdCNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJyN7JHBhdGgtZm9udHN9L0JyYW5kb25Hcm90ZXNxdWUtUmVndWxhci9CcmFuZG9uR3JvdGVzcXVlLVJlZ3VsYXIud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnI3skcGF0aC1mb250c30vQnJhbmRvbkdyb3Rlc3F1ZS1SZWd1bGFyL0JyYW5kb25Hcm90ZXNxdWUtUmVndWxhci50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9CcmFuZG9uR3JvdGVzcXVlLVJlZ3VsYXIvQnJhbmRvbkdyb3Rlc3F1ZS1SZWd1bGFyLnN2ZyNCcmFuZG9uR3JvdGVzcXVlLVJlZ3VsYXInKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zdHlsZTogIG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdCcmFuZG9uR3JvdGVzcXVlJztcbiAgICBzcmM6ICAgICAgICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9CcmFuZG9uR3JvdGVzcXVlLU1lZGl1bS9CcmFuZG9uR3JvdGVzcXVlLU1lZGl1bS5lb3QnKTtcbiAgICBzcmM6ICAgICAgICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9CcmFuZG9uR3JvdGVzcXVlLU1lZGl1bS9CcmFuZG9uR3JvdGVzcXVlLU1lZGl1bS5lb3QjaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9CcmFuZG9uR3JvdGVzcXVlLU1lZGl1bS9CcmFuZG9uR3JvdGVzcXVlLU1lZGl1bS53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9CcmFuZG9uR3JvdGVzcXVlLU1lZGl1bS9CcmFuZG9uR3JvdGVzcXVlLU1lZGl1bS50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9CcmFuZG9uR3JvdGVzcXVlLU1lZGl1bS9CcmFuZG9uR3JvdGVzcXVlLU1lZGl1bS5zdmcjQnJhbmRvbkdyb3Rlc3F1ZS1NZWRpdW0nKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgZm9udC1zdHlsZTogIG5vcm1hbDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdCcmFuZG9uR3JvdGVzcXVlJztcbiAgICBzcmM6ICAgICAgICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9CcmFuZG9uR3JvdGVzcXVlLUxpZ2h0L0JyYW5kb25Hcm90ZXNxdWUtTGlnaHQuZW90Jyk7XG4gICAgc3JjOiAgICAgICAgIHVybCgnI3skcGF0aC1mb250c30vQnJhbmRvbkdyb3Rlc3F1ZS1MaWdodC9CcmFuZG9uR3JvdGVzcXVlLUxpZ2h0LmVvdCNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJyN7JHBhdGgtZm9udHN9L0JyYW5kb25Hcm90ZXNxdWUtTGlnaHQvQnJhbmRvbkdyb3Rlc3F1ZS1MaWdodC53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9CcmFuZG9uR3JvdGVzcXVlLUxpZ2h0L0JyYW5kb25Hcm90ZXNxdWUtTGlnaHQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgIHVybCgnI3skcGF0aC1mb250c30vQnJhbmRvbkdyb3Rlc3F1ZS1MaWdodC9CcmFuZG9uR3JvdGVzcXVlLUxpZ2h0LnN2ZyNCcmFuZG9uR3JvdGVzcXVlLUxpZ2h0JykgZm9ybWF0KCdzdmcnKTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGZvbnQtc3R5bGU6ICBub3JtYWw7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnQnJhbmRvbkdyb3Rlc3F1ZSc7XG4gICAgc3JjOiAgICAgICAgIHVybCgnI3skcGF0aC1mb250c30vQnJhbmRvbkdyb3Rlc3F1ZS1UaGluL0JyYW5kb25Hcm90ZXNxdWUtVGhpbi5lb3QnKTtcbiAgICBzcmM6ICAgICAgICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9CcmFuZG9uR3JvdGVzcXVlLVRoaW4vQnJhbmRvbkdyb3Rlc3F1ZS1UaGluLmVvdCNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJyN7JHBhdGgtZm9udHN9L0JyYW5kb25Hcm90ZXNxdWUtVGhpbi9CcmFuZG9uR3JvdGVzcXVlLVRoaW4ud29mZicpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnI3skcGF0aC1mb250c30vQnJhbmRvbkdyb3Rlc3F1ZS1UaGluL0JyYW5kb25Hcm90ZXNxdWUtVGhpbi50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9CcmFuZG9uR3JvdGVzcXVlLVRoaW4vQnJhbmRvbkdyb3Rlc3F1ZS1UaGluLnN2ZyNCcmFuZG9uR3JvdGVzcXVlLVRoaW4nKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgZm9udC1zdHlsZTogIG5vcm1hbDtcbn1cblxuIiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICBzcmM6IHVybCgnI3skcGF0aC1mb250c30vRm9udGVsbG8vZm9udGVsbG8uZW90Pzk1NTI4OTUnKTtcbiAgc3JjOiB1cmwoJyN7JHBhdGgtZm9udHN9L0ZvbnRlbGxvL2ZvbnRlbGxvLmVvdD85NTUyODk1I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgIHVybCgnI3skcGF0aC1mb250c30vRm9udGVsbG8vZm9udGVsbG8ud29mZjI/OTU1Mjg5NScpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICB1cmwoJyN7JHBhdGgtZm9udHN9L0ZvbnRlbGxvL2ZvbnRlbGxvLndvZmY/OTU1Mjg5NScpIGZvcm1hdCgnd29mZicpLFxuICAgICAgIHVybCgnI3skcGF0aC1mb250c30vRm9udGVsbG8vZm9udGVsbG8udHRmPzk1NTI4OTUnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgdXJsKCcjeyRwYXRoLWZvbnRzfS9Gb250ZWxsby9mb250ZWxsby5zdmc/OTU1Mjg5NSNmb250ZWxsbycpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbiBcbiBbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCBbY2xhc3MqPVwiIGljb24tXCJdOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcImZvbnRlbGxvXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgc3BlYWs6IG5vbmU7XG4gXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBpbmhlcml0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5pY29uLWRvd24tb3Blbi1taW5pOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDAnOyB9IC8qICfuoIAnICovXG4uaWNvbi1yaWdodC1vcGVuLWJpZzpiZWZvcmUgeyBjb250ZW50OiAnXFxlODAxJzsgfSAvKiAn7qCBJyAqL1xuLmljb24tbGVmdC1vcGVuLWJpZzpiZWZvcmUgeyBjb250ZW50OiAnXFxlODAyJzsgfSAvKiAn7qCCJyAqL1xuLmljb24tcmlnaHQtb3Blbi1taW5pOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDMnOyB9IC8qICfuoIMnICovXG4uaWNvbi11cC1vcGVuLWJpZzpiZWZvcmUgeyBjb250ZW50OiAnXFxlODA0JzsgfSAvKiAn7qCEJyAqL1xuLmljb24tZG93bi1vcGVuLWJpZzpiZWZvcmUgeyBjb250ZW50OiAnXFxlODA1JzsgfSAvKiAn7qCFJyAqL1xuLmljb24tdXAtb3Blbi1taW5pOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDYnOyB9IC8qICfuoIYnICovXG4uaWNvbi1sZWZ0LW9wZW4tbWluaTpiZWZvcmUgeyBjb250ZW50OiAnXFxlODA3JzsgfSAvKiAn7qCHJyAqL1xuLmljb24tY2FuY2VsOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MDgnOyB9IC8qICfuoIgnICovXG4uaWNvbi1oZWFydDpiZWZvcmUgeyBjb250ZW50OiAnXFxlODA5JzsgfSAvKiAn7qCJJyAqL1xuLmljb24tZG93bi1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYwMDQnOyB9IC8qICfvgIQnICovXG4uaWNvbi11cC1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYwMDUnOyB9IC8qICfvgIUnICovXG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYwOTknOyB9IC8qICfvgpknICovXG4uaWNvbi1mYWNlYm9vazpiZWZvcmUgeyBjb250ZW50OiAnXFxmMDlhJzsgfSAvKiAn74KaJyAqL1xuLmljb24tbGlua2VkaW46YmVmb3JlIHsgY29udGVudDogJ1xcZjBlMSc7IH0gLyogJ++DoScgKi9cbi5pY29uLWRvd246YmVmb3JlIHsgY29udGVudDogJ1xcZjE3NSc7IH0gLyogJ++FtScgKi9cbi5pY29uLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYxNzYnOyB9IC8qICfvhbYnICovXG4uaWNvbi1waW50ZXJlc3Q6YmVmb3JlIHsgY29udGVudDogJ1xcZjMxMic7IH0gLyogJ++MkicgKi9cbi5pY29uLXlvdXR1YmU6YmVmb3JlIHsgY29udGVudDogJ1xcZjMxMyc7IH0gLyogJ++MkycgKi9cbi5pY29uLWluc3RhZ3JhbTpiZWZvcmUgeyBjb250ZW50OiAnXFxmMzFlJzsgfSAvKiAn74yeJyAqL1xuLmljb24tYXJyb3dzLWN3OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MGEnOyB9IC8qICfuoIonICovXG4uaWNvbi1wZW5jaWw6YmVmb3JlIHsgY29udGVudDogJ1xcZTgwYic7IH0gLyogJ+6giycgKi9cbi5pY29uLWhlYXJ0LWVtcHR5OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGU4MGMnOyB9IC8qICfuoIwnICovXG4iLCIvKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXJcbntcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAyMHB4IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAgICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stbGlzdFxue1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cbi5zbGljay1saXN0OmZvY3VzXG57XG4gICAgb3V0bGluZTogbm9uZTtcbn1cbi5zbGljay1saXN0LmRyYWdnaW5nXG57XG4gICAgY3Vyc29yOiBtb3ZlOyAvKiBmYWxsYmFjayBpZiBncmFiIGN1cnNvciBpcyB1bnN1cHBvcnRlZCAqL1xuICAgIGN1cnNvcjogZ3JhYjtcbiAgICBjdXJzb3I6IC1tb3otZ3JhYjtcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbn1cblxuLnNsaWNrLWxpc3QuZHJhZ2dpbmc6YWN0aXZlIHtcbiAgICBjdXJzb3I6IGdyYWJiaW5nO1xuICAgIGN1cnNvcjogLW1vei1ncmFiYmluZztcbiAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYmJpbmc7XG59XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdFxue1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFja1xue1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNsaWNrLXRyYWNrOmJlZm9yZSxcbi5zbGljay10cmFjazphZnRlclxue1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuXG4gICAgY29udGVudDogJyc7XG59XG4uc2xpY2stdHJhY2s6YWZ0ZXJcbntcbiAgICBjbGVhcjogYm90aDtcbn1cbi5zbGljay1sb2FkaW5nIC5zbGljay10cmFja1xue1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWNrLXNsaWRlXG57XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmbG9hdDogbGVmdDtcblxuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG59XG5bZGlyPSdydGwnXSAuc2xpY2stc2xpZGVcbntcbiAgICBmbG9hdDogcmlnaHQ7XG59XG4uc2xpY2stc2xpZGUgaW1nXG57XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvO1xufVxuLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nXG57XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbi5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWdcbntcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGVcbntcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbi5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZVxue1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGVcbntcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIGhlaWdodDogYXV0bztcblxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8uc2xpY2stc2xpZGUgYSB7XG4vLyAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLyAgICB0b3A6IDg1JTtcbi8vICAgIGxlZnQ6IC0yNSU7XG4vLyAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbi8vICAgIGNvbG9yOiAjMDAwO1xuLy8gICAgcGFkZGluZzogNXB4O1xuLy8gICAgZGlzcGxheTogYmxvY2s7XG4vLyAgICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZTtcbi8vICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4vLyAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuLy8gICAgdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlO1xuLy99XG4vL1xuLy8uc2xpY2stc2xpZGUgYTpob3ZlciB7XG4vLyAgICBiYWNrZ3JvdW5kOiAjMDAwO1xuLy8gICAgY29sb3I6ICNmZmY7XG4vLyAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4vL31cbi8vXG4vLy5zbGljay1zbGlkZS5zbGljay1hY3RpdmUgYSB7XG4vLyAgICBhbmltYXRpb246IHB1bHNlIDE1MDBtcyBmb3J3YXJkcztcbi8vfVxuLy9cbi8vQGtleWZyYW1lcyBwdWxzZSB7XG4vLyAgICAwJSB7XG4vLyAgICAgICAgb3BhY2l0eTogMDtcbi8vICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4vLyAgICB9XG4vLyAgICAxMDAlIHtcbi8vICAgICAgICBvcGFjaXR5OiAxO1xuLy8gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4vLyAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwMHB4KTtcbi8vICAgIH1cbi8vfVxuXG4uc2xpY2stbGlzdCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn0iLCIvKiBTbGlkZXIgKi9cbi5zbGljay1sb2FkaW5nIC5zbGljay1saXN0XG57XG4gICAgLy9iYWNrZ3JvdW5kOiAjZmZmIHVybCgnLi4vaW1hZ2VzL2xvYWRlci5zdmcnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbn1cblxuLyogQXJyb3dzICovXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0XG57XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2U7XG4gICAgJi5zbGljay1kaXNhYmxlZCB7XG4gICAgICAgIG9wYWNpdHk6IC41O1xuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG59XG5cbi5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAwO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAmOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICAgICAgICB9XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ1xcZTgwMic7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2U7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgICB9XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAn4oCiJztcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAmOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJ1xcZTgwMSc7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2U7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgICB9XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ+KAoic7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBEb3RzICovXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlclxue1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5zbGljay1kb3RzXG57XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnNsaWNrLWRvdHMgbGlcbntcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnNsaWNrLWRvdHMgbGkgYnV0dG9uXG57XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgcGFkZGluZzogNXB4O1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyLFxuLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzXG57XG4gICAgb3V0bGluZTogbm9uZTtcbn1cbi5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlcjpiZWZvcmUsXG4uc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXM6YmVmb3JlXG57XG4gICAgb3BhY2l0eTogMTtcbn1cbi5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmVcbntcbiAgICAvL2ZvbnQtZmFtaWx5OiAnc2xpY2snO1xuICAgIGZvbnQtc2l6ZTogNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuXG4gICAgY29udGVudDogJ+KAoic7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgb3BhY2l0eTogLjI1O1xuICAgIGNvbG9yOiAjM0QzRDNEO1xuXG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cbi5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlXG57XG4gICAgb3BhY2l0eTogLjc1O1xuICAgIGNvbG9yOiAjM0QzRDNEO1xufVxuIiwiLyoqXG4gKiBTd2lwZXIgNC4wLjdcbiAqIE1vc3QgbW9kZXJuIG1vYmlsZSB0b3VjaCBzbGlkZXIgYW5kIGZyYW1ld29yayB3aXRoIGhhcmR3YXJlIGFjY2VsZXJhdGVkIHRyYW5zaXRpb25zXG4gKiBodHRwOi8vd3d3LmlkYW5nZXJvLnVzL3N3aXBlci9cbiAqXG4gKiBDb3B5cmlnaHQgMjAxNC0yMDE3IFZsYWRpbWlyIEtoYXJsYW1waWRpXG4gKlxuICogUmVsZWFzZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlXG4gKlxuICogUmVsZWFzZWQgb246IE5vdmVtYmVyIDI4LCAyMDE3XG4gKi9cblxuLnN3aXBlci1jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICB6LWluZGV4OiAxXG59XG5cbi5zd2lwZXItY29udGFpbmVyLW5vLWZsZXhib3ggLnN3aXBlci1zbGlkZSB7XG4gIGZsb2F0OiBsZWZ0XG59XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsPi5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC1tcy1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uXG59XG5cbi5zd2lwZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3hcbn1cblxuLnN3aXBlci1jb250YWluZXItYW5kcm9pZCAuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci13cmFwcGVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApXG59XG5cbi5zd2lwZXItY29udGFpbmVyLW11bHRpcm93Pi5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAtbXMtZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LXdyYXA6IHdyYXBcbn1cblxuLnN3aXBlci1jb250YWluZXItZnJlZS1tb2RlPi5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtby10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgbWFyZ2luOiAwIGF1dG9cbn1cblxuLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtZmxleC1zaHJpbms6IDA7XG4gIC1tcy1mbGV4LW5lZ2F0aXZlOiAwO1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgLXdlYmtpdC10cmFuc2Zvcm1cbn1cblxuLnN3aXBlci1pbnZpc2libGUtYmxhbmstc2xpZGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW5cbn1cblxuLnN3aXBlci1jb250YWluZXItYXV0b2hlaWdodCxcbi5zd2lwZXItY29udGFpbmVyLWF1dG9oZWlnaHQgLnN3aXBlci1zbGlkZSB7XG4gIGhlaWdodDogYXV0b1xufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1hdXRvaGVpZ2h0IC5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtYm94LWFsaWduOiBzdGFydDtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgLW1zLWZsZXgtYWxpZ246IHN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBoZWlnaHQsIC13ZWJraXQtdHJhbnNmb3JtO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBoZWlnaHQsIC13ZWJraXQtdHJhbnNmb3JtO1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIGhlaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBoZWlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgaGVpZ2h0LCAtd2Via2l0LXRyYW5zZm9ybVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6IDEyMDBweDtcbiAgcGVyc3BlY3RpdmU6IDEyMDBweFxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLWN1YmUtc2hhZG93LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZSxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1yaWdodCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCxcbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItd3JhcHBlciB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbiAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZFxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1sZWZ0LFxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHotaW5kZXg6IDEwXG59XG5cbi5zd2lwZXItY29udGFpbmVyLTNkIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgcmlnaHQgdG9wLCBsZWZ0IHRvcCwgZnJvbShyZ2JhKDAsIDAsIDAsIC41KSksIHRvKHJnYmEoMCwgMCwgMCwgMCkpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQocmlnaHQsIHJnYmEoMCwgMCwgMCwgLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHJpZ2h0LCByZ2JhKDAsIDAsIDAsIC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDAsIDAsIDAsIC41KSwgcmdiYSgwLCAwLCAwLCAwKSlcbn1cblxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCwgZnJvbShyZ2JhKDAsIDAsIDAsIC41KSksIHRvKHJnYmEoMCwgMCwgMCwgMCkpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgcmdiYSgwLCAwLCAwLCAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgLjUpLCByZ2JhKDAsIDAsIDAsIDApKVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci0zZCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCBib3R0b20sIGxlZnQgdG9wLCBmcm9tKHJnYmEoMCwgMCwgMCwgLjUpKSwgdG8ocmdiYSgwLCAwLCAwLCAwKSkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChib3R0b20sIHJnYmEoMCwgMCwgMCwgLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAuNSksIHJnYmEoMCwgMCwgMCwgMCkpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDAsIDAsIDAsIC41KSwgcmdiYSgwLCAwLCAwLCAwKSlcbn1cblxuLnN3aXBlci1jb250YWluZXItM2QgLnN3aXBlci1zbGlkZS1zaGFkb3ctYm90dG9tIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbShyZ2JhKDAsIDAsIDAsIC41KSksIHRvKHJnYmEoMCwgMCwgMCwgMCkpKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCByZ2JhKDAsIDAsIDAsIC41KSwgcmdiYSgwLCAwLCAwLCAwKSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHJnYmEoMCwgMCwgMCwgLjUpLCByZ2JhKDAsIDAsIDAsIDApKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLCAwLCAwLCAuNSksIHJnYmEoMCwgMCwgMCwgMCkpXG59XG5cbi5zd2lwZXItY29udGFpbmVyLXdwOC1ob3Jpem9udGFsLFxuLnN3aXBlci1jb250YWluZXItd3A4LWhvcml6b250YWw+LnN3aXBlci13cmFwcGVyIHtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXlcbn1cblxuLnN3aXBlci1jb250YWluZXItd3A4LXZlcnRpY2FsLFxuLnN3aXBlci1jb250YWluZXItd3A4LXZlcnRpY2FsPi5zd2lwZXItd3JhcHBlciB7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi14O1xuICB0b3VjaC1hY3Rpb246IHBhbi14XG59XG5cbi5zd2lwZXItYnV0dG9uLW5leHQsXG4uc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDI3cHg7XG4gIGhlaWdodDogNDRweDtcbiAgbWFyZ2luLXRvcDogLTIycHg7XG4gIHotaW5kZXg6IDEwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMjdweCA0NHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXRcbn1cblxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWRpc2FibGVkLFxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogLjM1O1xuICBjdXJzb3I6IGF1dG87XG4gIHBvaW50ZXItZXZlbnRzOiBub25lXG59XG5cbi5zd2lwZXItYnV0dG9uLXByZXYsXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjMwMDdhZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpO1xuICBsZWZ0OiAxMHB4O1xuICByaWdodDogYXV0b1xufVxuXG4uc3dpcGVyLWJ1dHRvbi1uZXh0LFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzMDA3YWZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKTtcbiAgcmlnaHQ6IDEwcHg7XG4gIGxlZnQ6IGF1dG9cbn1cblxuLnN3aXBlci1idXR0b24tcHJldi5zd2lwZXItYnV0dG9uLXdoaXRlLFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi13aGl0ZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMCUyQzIyTDIyJTJDMGwyLjElMkMyLjFMNC4yJTJDMjJsMTkuOSUyQzE5LjlMMjIlMkM0NEwwJTJDMjJMMCUyQzIyTDAlMkMyMnonJTIwZmlsbCUzRCclMjNmZmZmZmYnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpXG59XG5cbi5zd2lwZXItYnV0dG9uLW5leHQuc3dpcGVyLWJ1dHRvbi13aGl0ZSxcbi5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24td2hpdGUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtOCwlM0NzdmclMjB4bWxucyUzRCdodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjIwMDAlMkZzdmcnJTIwdmlld0JveCUzRCcwJTIwMCUyMDI3JTIwNDQnJTNFJTNDcGF0aCUyMGQlM0QnTTI3JTJDMjJMMjclMkMyMkw1JTJDNDRsLTIuMS0yLjFMMjIuOCUyQzIyTDIuOSUyQzIuMUw1JTJDMEwyNyUyQzIyTDI3JTJDMjJ6JyUyMGZpbGwlM0QnJTIzZmZmZmZmJyUyRiUzRSUzQyUyRnN2ZyUzRVwiKVxufVxuXG4uc3dpcGVyLWJ1dHRvbi1wcmV2LnN3aXBlci1idXR0b24tYmxhY2ssXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWJsYWNrIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmLTgsJTNDc3ZnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHZpZXdCb3glM0QnMCUyMDAlMjAyNyUyMDQ0JyUzRSUzQ3BhdGglMjBkJTNEJ00wJTJDMjJMMjIlMkMwbDIuMSUyQzIuMUw0LjIlMkMyMmwxOS45JTJDMTkuOUwyMiUyQzQ0TDAlMkMyMkwwJTJDMjJMMCUyQzIyeiclMjBmaWxsJTNEJyUyMzAwMDAwMCclMkYlM0UlM0MlMkZzdmclM0VcIilcbn1cblxuLnN3aXBlci1idXR0b24tbmV4dC5zd2lwZXItYnV0dG9uLWJsYWNrLFxuLnN3aXBlci1jb250YWluZXItcnRsIC5zd2lwZXItYnV0dG9uLXByZXYuc3dpcGVyLWJ1dHRvbi1ibGFjayB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHhtbG5zJTNEJ2h0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyclMjB2aWV3Qm94JTNEJzAlMjAwJTIwMjclMjA0NCclM0UlM0NwYXRoJTIwZCUzRCdNMjclMkMyMkwyNyUyQzIyTDUlMkM0NGwtMi4xLTIuMUwyMi44JTJDMjJMMi45JTJDMi4xTDUlMkMwTDI3JTJDMjJMMjclMkMyMnonJTIwZmlsbCUzRCclMjMwMDAwMDAnJTJGJTNFJTNDJTJGc3ZnJTNFXCIpXG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IC4zcyBvcGFjaXR5O1xuICAtby10cmFuc2l0aW9uOiAuM3Mgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbjogLjNzIG9wYWNpdHk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgei1pbmRleDogMTBcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLnN3aXBlci1wYWdpbmF0aW9uLWhpZGRlbiB7XG4gIG9wYWNpdHk6IDBcbn1cblxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyxcbi5zd2lwZXItcGFnaW5hdGlvbi1jdXN0b20sXG4uc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24ge1xuICBib3R0b206IDEwcHg7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlXG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmb250LXNpemU6IDBcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4zMyk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKC4zMyk7XG4gIHRyYW5zZm9ybTogc2NhbGUoLjMzKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlXG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpXG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtcHJldiB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguNjYpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSguNjYpO1xuICB0cmFuc2Zvcm06IHNjYWxlKC42Nilcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1wcmV2LXByZXYge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjMzKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSguMzMpXG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUtbmV4dCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguNjYpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSguNjYpO1xuICB0cmFuc2Zvcm06IHNjYWxlKC42Nilcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZS1uZXh0LW5leHQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoLjMzKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoLjMzKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSguMzMpXG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDhweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBvcGFjaXR5OiAuMlxufVxuXG5idXR0b24uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmVcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWNsaWNrYWJsZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgY3Vyc29yOiBwb2ludGVyXG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgYmFja2dyb3VuZDogIzAwN2FmZlxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cyB7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01MCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01MCUsIDApXG59XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQge1xuICBtYXJnaW46IDZweCAwO1xuICBkaXNwbGF5OiBibG9ja1xufVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgd2lkdGg6IDhweFxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci12ZXJ0aWNhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAuMnMgdG9wLCAuMnMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIHRyYW5zaXRpb246IC4ycyB0b3AsIC4ycyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbjogLjJzIHRyYW5zZm9ybSwgLjJzIHRvcDtcbiAgdHJhbnNpdGlvbjogLjJzIHRyYW5zZm9ybSwgLjJzIHRvcDtcbiAgdHJhbnNpdGlvbjogLjJzIHRyYW5zZm9ybSwgLjJzIHRvcCwgLjJzIC13ZWJraXQtdHJhbnNmb3JtXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIG1hcmdpbjogMCA0cHhcbn1cblxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMge1xuICBsZWZ0OiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXBcbn1cblxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cy5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXRzLWR5bmFtaWMgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldCB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLjJzIGxlZnQsIC4ycyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbjogLjJzIGxlZnQsIC4ycyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgLW8tdHJhbnNpdGlvbjogLjJzIHRyYW5zZm9ybSwgLjJzIGxlZnQ7XG4gIHRyYW5zaXRpb246IC4ycyB0cmFuc2Zvcm0sIC4ycyBsZWZ0O1xuICB0cmFuc2l0aW9uOiAuMnMgdHJhbnNmb3JtLCAuMnMgbGVmdCwgLjJzIC13ZWJraXQtdHJhbnNmb3JtXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwuc3dpcGVyLWNvbnRhaW5lci1ydGw+LnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldHMtZHluYW1pYyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAuMnMgcmlnaHQsIC4ycyAtd2Via2l0LXRyYW5zZm9ybTtcbiAgdHJhbnNpdGlvbjogLjJzIHJpZ2h0LCAuMnMgLXdlYmtpdC10cmFuc2Zvcm07XG4gIC1vLXRyYW5zaXRpb246IC4ycyB0cmFuc2Zvcm0sIC4ycyByaWdodDtcbiAgdHJhbnNpdGlvbjogLjJzIHRyYW5zZm9ybSwgLjJzIHJpZ2h0O1xuICB0cmFuc2l0aW9uOiAuMnMgdHJhbnNmb3JtLCAuMnMgcmlnaHQsIC4ycyAtd2Via2l0LXRyYW5zZm9ybVxufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC4yNSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZVxufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICBiYWNrZ3JvdW5kOiAjMDA3YWZmO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcDtcbiAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgdG9wO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IHRvcFxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCB0b3A7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IHRvcFxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1ob3Jpem9udGFsPi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDRweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwXG59XG5cbi5zd2lwZXItY29udGFpbmVyLXZlcnRpY2FsPi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2JhciB7XG4gIHdpZHRoOiA0cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwXG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNmZmZcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLXdoaXRlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMjUpXG59XG5cbi5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci5zd2lwZXItcGFnaW5hdGlvbi13aGl0ZSAuc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXItZmlsbCB7XG4gIGJhY2tncm91bmQ6ICNmZmZcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLWJsYWNrIC5zd2lwZXItcGFnaW5hdGlvbi1idWxsZXQtYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogIzAwMFxufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJvZ3Jlc3NiYXIuc3dpcGVyLXBhZ2luYXRpb24tYmxhY2sge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC4yNSlcbn1cblxuLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLnN3aXBlci1wYWdpbmF0aW9uLWJsYWNrIC5zd2lwZXItcGFnaW5hdGlvbi1wcm9ncmVzc2Jhci1maWxsIHtcbiAgYmFja2dyb3VuZDogIzAwMFxufVxuXG4uc3dpcGVyLXNjcm9sbGJhciB7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuMSlcbn1cblxuLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbD4uc3dpcGVyLXNjcm9sbGJhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMSU7XG4gIGJvdHRvbTogM3B4O1xuICB6LWluZGV4OiA1MDtcbiAgaGVpZ2h0OiA1cHg7XG4gIHdpZHRoOiA5OCVcbn1cblxuLnN3aXBlci1jb250YWluZXItdmVydGljYWw+LnN3aXBlci1zY3JvbGxiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAzcHg7XG4gIHRvcDogMSU7XG4gIHotaW5kZXg6IDUwO1xuICB3aWR0aDogNXB4O1xuICBoZWlnaHQ6IDk4JVxufVxuXG4uc3dpcGVyLXNjcm9sbGJhci1kcmFnIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC41KTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwXG59XG5cbi5zd2lwZXItc2Nyb2xsYmFyLWN1cnNvci1kcmFnIHtcbiAgY3Vyc29yOiBtb3ZlXG59XG5cbi5zd2lwZXItem9vbS1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlclxufVxuXG4uc3dpcGVyLXpvb20tY29udGFpbmVyPmNhbnZhcyxcbi5zd2lwZXItem9vbS1jb250YWluZXI+aW1nLFxuLnN3aXBlci16b29tLWNvbnRhaW5lcj5zdmcge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIC1vLW9iamVjdC1maXQ6IGNvbnRhaW47XG4gIG9iamVjdC1maXQ6IGNvbnRhaW5cbn1cblxuLnN3aXBlci1zbGlkZS16b29tZWQge1xuICBjdXJzb3I6IG1vdmVcbn1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlciB7XG4gIHdpZHRoOiA0MnB4O1xuICBoZWlnaHQ6IDQycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IC0yMXB4O1xuICBtYXJnaW4tdG9wOiAtMjFweDtcbiAgei1pbmRleDogMTA7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogNTAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzd2lwZXItcHJlbG9hZGVyLXNwaW4gMXMgc3RlcHMoMTIsIGVuZCkgaW5maW5pdGU7XG4gIGFuaW1hdGlvbjogc3dpcGVyLXByZWxvYWRlci1zcGluIDFzIHN0ZXBzKDEyLCBlbmQpIGluZmluaXRlXG59XG5cbi5zd2lwZXItbGF6eS1wcmVsb2FkZXI6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogJyc7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxMjAlMjAxMjAnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHhtbG5zJTNBeGxpbmslM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmsnJTNFJTNDZGVmcyUzRSUzQ2xpbmUlMjBpZCUzRCdsJyUyMHgxJTNEJzYwJyUyMHgyJTNEJzYwJyUyMHkxJTNEJzcnJTIweTIlM0QnMjcnJTIwc3Ryb2tlJTNEJyUyMzZjNmM2YyclMjBzdHJva2Utd2lkdGglM0QnMTEnJTIwc3Ryb2tlLWxpbmVjYXAlM0Qncm91bmQnJTJGJTNFJTNDJTJGZGVmcyUzRSUzQ2clM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg2MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoOTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDEyMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTUwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMzcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxODAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy40NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDIxMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjU2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjQwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNjYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy43NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjg1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzMwJTIwNjAlMkM2MCknJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRVwiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXRcbn1cblxuLnN3aXBlci1sYXp5LXByZWxvYWRlci13aGl0ZTphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyUyMHZpZXdCb3glM0QnMCUyMDAlMjAxMjAlMjAxMjAnJTIweG1sbnMlM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYyMDAwJTJGc3ZnJyUyMHhtbG5zJTNBeGxpbmslM0QnaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGxpbmsnJTNFJTNDZGVmcyUzRSUzQ2xpbmUlMjBpZCUzRCdsJyUyMHgxJTNEJzYwJyUyMHgyJTNEJzYwJyUyMHkxJTNEJzcnJTIweTIlM0QnMjcnJTIwc3Ryb2tlJTNEJyUyM2ZmZiclMjBzdHJva2Utd2lkdGglM0QnMTEnJTIwc3Ryb2tlLWxpbmVjYXAlM0Qncm91bmQnJTJGJTNFJTNDJTJGZGVmcyUzRSUzQ2clM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMjcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSg2MCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoOTAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy4yNyclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDEyMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjI3JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMTUwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuMzcnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgxODAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy40NiclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDIxMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjU2JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMjQwJTIwNjAlMkM2MCknJTJGJTNFJTNDdXNlJTIweGxpbmslM0FocmVmJTNEJyUyM2wnJTIwb3BhY2l0eSUzRCcuNjYnJTIwdHJhbnNmb3JtJTNEJ3JvdGF0ZSgyNzAlMjA2MCUyQzYwKSclMkYlM0UlM0N1c2UlMjB4bGluayUzQWhyZWYlM0QnJTIzbCclMjBvcGFjaXR5JTNEJy43NSclMjB0cmFuc2Zvcm0lM0Qncm90YXRlKDMwMCUyMDYwJTJDNjApJyUyRiUzRSUzQ3VzZSUyMHhsaW5rJTNBaHJlZiUzRCclMjNsJyUyMG9wYWNpdHklM0QnLjg1JyUyMHRyYW5zZm9ybSUzRCdyb3RhdGUoMzMwJTIwNjAlMkM2MCknJTJGJTNFJTNDJTJGZyUzRSUzQyUyRnN2ZyUzRVwiKVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc3dpcGVyLXByZWxvYWRlci1zcGluIHtcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZylcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHN3aXBlci1wcmVsb2FkZXItc3BpbiB7XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpXG4gIH1cbn1cblxuLnN3aXBlci1jb250YWluZXIgLnN3aXBlci1ub3RpZmljYXRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IC0xMDAwXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWZhZGUuc3dpcGVyLWNvbnRhaW5lci1mcmVlLW1vZGUgLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAtby10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dFxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mYWRlIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5XG59XG5cbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmVcbn1cblxuLnN3aXBlci1jb250YWluZXItZmFkZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWZhZGUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0b1xufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIHtcbiAgb3ZlcmZsb3c6IHZpc2libGVcbn1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDE7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWN1YmUuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1zbGlkZSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAwO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDBcbn1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLWFjdGl2ZSxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1hY3RpdmUgLnN3aXBlci1zbGlkZS1hY3RpdmUge1xuICBwb2ludGVyLWV2ZW50czogYXV0b1xufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtYWN0aXZlLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLW5leHQsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtbmV4dCsuc3dpcGVyLXNsaWRlLFxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLXNsaWRlLXByZXYge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LWJvdHRvbSxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctbGVmdCxcbi5zd2lwZXItY29udGFpbmVyLWN1YmUgLnN3aXBlci1zbGlkZS1zaGFkb3ctcmlnaHQsXG4uc3dpcGVyLWNvbnRhaW5lci1jdWJlIC5zd2lwZXItc2xpZGUtc2hhZG93LXRvcCB7XG4gIHotaW5kZXg6IDA7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW5cbn1cblxuLnN3aXBlci1jb250YWluZXItY3ViZSAuc3dpcGVyLWN1YmUtc2hhZG93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIG9wYWNpdHk6IC42O1xuICAtd2Via2l0LWZpbHRlcjogYmx1cig1MHB4KTtcbiAgZmlsdGVyOiBibHVyKDUwcHgpO1xuICB6LWluZGV4OiAwXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWZsaXAge1xuICBvdmVyZmxvdzogdmlzaWJsZVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMVxufVxuXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUgLnN3aXBlci1zbGlkZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWZsaXAgLnN3aXBlci1zbGlkZS1hY3RpdmUsXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtYWN0aXZlIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG9cbn1cblxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy1ib3R0b20sXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LWxlZnQsXG4uc3dpcGVyLWNvbnRhaW5lci1mbGlwIC5zd2lwZXItc2xpZGUtc2hhZG93LXJpZ2h0LFxuLnN3aXBlci1jb250YWluZXItZmxpcCAuc3dpcGVyLXNsaWRlLXNoYWRvdy10b3Age1xuICB6LWluZGV4OiAwO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuXG59XG5cbi5zd2lwZXItY29udGFpbmVyLWNvdmVyZmxvdyAuc3dpcGVyLXdyYXBwZXIge1xuICAtbXMtcGVyc3BlY3RpdmU6IDEyMDBweFxufSIsIi8qIElvbi5SYW5nZVNsaWRlclxuLy8gY3NzIHZlcnNpb24gMi4wLjNcbi8vIMKpIDIwMTMtMjAxNCBEZW5pcyBJbmVzaGluIHwgSW9uRGVuLmNvbVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUmFuZ2VTbGlkZXIgKi9cblxuLmlycyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyBkaXNwbGF5OiBibG9jaztcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xufVxuICAgIC5pcnMtbGluZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgICAgIC5pcnMtbGluZS1sZWZ0LCAuaXJzLWxpbmUtbWlkLCAuaXJzLWxpbmUtcmlnaHQge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgICAgICAuaXJzLWxpbmUtbGVmdCB7XG4gICAgICAgICAgICBsZWZ0OiAwOyB3aWR0aDogMTElO1xuICAgICAgICB9XG4gICAgICAgIC5pcnMtbGluZS1taWQge1xuICAgICAgICAgICAgbGVmdDogOSU7IHdpZHRoOiA4MiU7XG4gICAgICAgIH1cbiAgICAgICAgLmlycy1saW5lLXJpZ2h0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAwOyB3aWR0aDogMTElO1xuICAgICAgICB9XG5cbiAgICAuaXJzLWJhciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGxlZnQ6IDA7IHdpZHRoOiAwO1xuICAgIH1cbiAgICAgICAgLmlycy1iYXItZWRnZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdG9wOiAwOyBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAuaXJzLXNoYWRvdyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgZGlzcGxheTogbm9uZTtcbiAgICAgICAgbGVmdDogMDsgd2lkdGg6IDA7XG4gICAgfVxuXG4gICAgLmlycy1oYW5kbGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgICAgICAuaXJzLWhhbmRsZS5zaW5nbGUge1xuXG4gICAgICAgIH1cbiAgICAgICAgLmlycy1oYW5kbGUuZnJvbSB7XG5cbiAgICAgICAgfVxuICAgICAgICAuaXJzLWhhbmRsZS50byB7XG5cbiAgICAgICAgfVxuICAgICAgICAuaXJzLWhhbmRsZS50eXBlX2xhc3Qge1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgfVxuXG4gICAgLmlycy1taW4ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuICAgIC5pcnMtbWF4IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB9XG5cbiAgICAuaXJzLWZyb20sIC5pcnMtdG8sIC5pcnMtc2luZ2xlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdG9wOiAwOyBsZWZ0OiAwO1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuXG4uaXJzLWdyaWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgZGlzcGxheTogbm9uZTtcbiAgICBib3R0b206IDA7IGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7IGhlaWdodDogMjBweDtcbn1cbi5pcnMtd2l0aC1ncmlkIC5pcnMtZ3JpZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG4gICAgLmlycy1ncmlkLXBvbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwOyBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMXB4OyBoZWlnaHQ6IDhweDtcbiAgICAgICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICB9XG4gICAgLmlycy1ncmlkLXBvbC5zbWFsbCB7XG4gICAgICAgIGhlaWdodDogNHB4O1xuICAgIH1cbiAgICAuaXJzLWdyaWQtdGV4dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwOyBsZWZ0OiAwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogOXB4OyBsaW5lLWhlaWdodDogOXB4O1xuICAgICAgICBwYWRkaW5nOiAwIDNweDtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuXG4uaXJzLWRpc2FibGUtbWFzayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyBkaXNwbGF5OiBibG9jaztcbiAgICB0b3A6IDA7IGxlZnQ6IC0xJTtcbiAgICB3aWR0aDogMTAyJTsgaGVpZ2h0OiAxMDAlO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuMCk7XG4gICAgei1pbmRleDogMjtcbn1cbi5pcnMtZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNDtcbn1cbi5sdC1pZTkgLmlycy1kaXNhYmxlZCB7XG4gICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTQwKTtcbn1cblxuXG4uaXJzLWhpZGRlbi1pbnB1dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB0b3A6IDAgIWltcG9ydGFudDtcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDAgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDAgIWltcG9ydGFudDtcbiAgICBsaW5lLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgei1pbmRleDogLTk5OTkgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbiIsIi5pcnMtZ3JpZC1wb2wge1xuICAgICYuc21hbGwge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICB3aWR0aDogcmVtLWNhbGMoOCk7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg4KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDMwMzAzO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB0b3A6IC0zcHg7XG59XG5cbi5pcnMtZ3JpZC10ZXh0IHtcbiAgICBmb250LXNpemU6IDA7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHVzZXItc2VsZWN0OiB0ZXh0O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgLy9tYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIC8vdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGNhbGMoLTUwJSArIDRweCkpO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDE1KTtcbiAgICAmLmpzLWdyaWQtdGV4dC0wIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAvL3RyYW5zZm9ybTogdHJhbnNsYXRlWChjYWxjKC0xMDAlICsgOHB4KSk7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIHJpZ2h0OiAtOHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygyOCk7XG4gICAgfVxuICAgIC52YWx1ZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmxhYmVsVmFsdWUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmlycy1ncmlkIHtcbiAgICB0b3A6IHJlbS1jYWxjKDEyKTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMjVweCkgIWltcG9ydGFudDtcbiAgICBsZWZ0OiByZW0tY2FsYyg4KSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5pcnMge1xuICAgIGhlaWdodDogcmVtLWNhbGMoNzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoOTApO1xuICAgIH1cbiAgICAuaXJzIHtcbiAgICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDgpO1xuICAgIH1cbn1cblxuLmlycy1iYXItZWRnZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmlycy1iYXIge1xuICAgIHRvcDogcmVtLWNhbGMoMTIpO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgIGxlZnQ6IHJlbS1jYWxjKDgpICFpbXBvcnRhbnQ7XG59XG5cbi5pcnMtbGluZSB7XG4gICAgdG9wOiByZW0tY2FsYygxMik7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYm9yZGVyLXJhZGl1czogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYmVkZjI7XG4gICAgPiBzcGFuIHtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgfVxufVxuXG4uaXJzLWhhbmRsZSB7XG4gICAgdG9wOiAxcHg7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDI0KTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDI0KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2RjZGNkO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTYpO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgdG9wOiA0cHg7XG4gICAgICAgIGxlZnQ6IDRweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMzAzMDM7XG4gICAgfVxufVxuXG4vLy5pcnMtd2l0aC1ncmlkIHtcbi8vICAgIG1pbi13aWR0aDogcmVtLWNhbGMoMjYwKTtcbi8vfSIsIi8qXHJcbj09IG1hbGlodSBqcXVlcnkgY3VzdG9tIHNjcm9sbGJhciBwbHVnaW4gPT1cclxuUGx1Z2luIFVSSTogaHR0cDovL21hbm9zLm1hbGlodS5nci9qcXVlcnktY3VzdG9tLWNvbnRlbnQtc2Nyb2xsZXJcclxuKi9cclxuXHJcblxyXG5cclxuLypcclxuQ09OVEVOVFM6IFxyXG5cdDEuIEJBU0lDIFNUWUxFIC0gUGx1Z2luJ3MgYmFzaWMvZXNzZW50aWFsIENTUyBwcm9wZXJ0aWVzIChub3JtYWxseSwgc2hvdWxkIG5vdCBiZSBlZGl0ZWQpLiBcclxuXHQyLiBWRVJUSUNBTCBTQ1JPTExCQVIgLSBQb3NpdGlvbmluZyBhbmQgZGltZW5zaW9ucyBvZiB2ZXJ0aWNhbCBzY3JvbGxiYXIuIFxyXG5cdDMuIEhPUklaT05UQUwgU0NST0xMQkFSIC0gUG9zaXRpb25pbmcgYW5kIGRpbWVuc2lvbnMgb2YgaG9yaXpvbnRhbCBzY3JvbGxiYXIuXHJcblx0NC4gVkVSVElDQUwgQU5EIEhPUklaT05UQUwgU0NST0xMQkFSUyAtIFBvc2l0aW9uaW5nIGFuZCBkaW1lbnNpb25zIG9mIDItYXhpcyBzY3JvbGxiYXJzLiBcclxuXHQ1LiBUUkFOU0lUSU9OUyAtIENTUzMgdHJhbnNpdGlvbnMgZm9yIGhvdmVyIGV2ZW50cywgYXV0by1leHBhbmRlZCBhbmQgYXV0by1oaWRkZW4gc2Nyb2xsYmFycy4gXHJcblx0Ni4gU0NST0xMQkFSIENPTE9SUywgT1BBQ0lUWSBBTkQgQkFDS0dST1VORFMgXHJcblx0XHQ2LjEgVEhFTUVTIC0gU2Nyb2xsYmFyIGNvbG9ycywgb3BhY2l0eSwgZGltZW5zaW9ucywgYmFja2dyb3VuZHMgZXRjLiB2aWEgcmVhZHktdG8tdXNlIHRoZW1lcy5cclxuKi9cclxuXHJcblxyXG5cclxuLyogXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4xLiBCQVNJQyBTVFlMRSAgXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4qL1xyXG5cclxuXHQubUN1c3RvbVNjcm9sbGJhcnsgLW1zLXRvdWNoLWFjdGlvbjogcGluY2gtem9vbTsgdG91Y2gtYWN0aW9uOiBwaW5jaC16b29tOyAvKiBkaXJlY3QgcG9pbnRlciBldmVudHMgdG8ganMgKi8gfVxyXG5cdC5tQ3VzdG9tU2Nyb2xsYmFyLm1DU19ub19zY3JvbGxiYXIsIC5tQ3VzdG9tU2Nyb2xsYmFyLm1DU190b3VjaF9hY3Rpb257IC1tcy10b3VjaC1hY3Rpb246IGF1dG87IHRvdWNoLWFjdGlvbjogYXV0bzsgfVxyXG5cdFxyXG5cdC5tQ3VzdG9tU2Nyb2xsQm94eyAvKiBjb250YWlucyBwbHVnaW4ncyBtYXJrdXAgKi9cclxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHRvdXRsaW5lOiBub25lO1xyXG5cdFx0ZGlyZWN0aW9uOiBsdHI7XHJcblx0fVxyXG5cclxuXHQubUNTQl9jb250YWluZXJ7IC8qIGNvbnRhaW5zIHRoZSBvcmlnaW5hbCBjb250ZW50ICovXHJcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0XHRoZWlnaHQ6IGF1dG87XHJcblx0fVxyXG5cclxuXHJcblxyXG4vKiBcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbjIuIFZFUlRJQ0FMIFNDUk9MTEJBUiBcclxueS1heGlzXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4qL1xyXG5cclxuXHQubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJ7IG1hcmdpbi1yaWdodDogMzBweDsgfVxyXG5cclxuXHQubUNTQl9jb250YWluZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbnsgbWFyZ2luLXJpZ2h0OiAwOyB9IC8qIG5vbi12aXNpYmxlIHNjcm9sbGJhciAqL1xyXG5cdFxyXG5cdC5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcnsgLyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXHJcblx0XHRtYXJnaW4tcmlnaHQ6IDA7XHJcblx0XHRtYXJnaW4tbGVmdDogMzBweDtcclxuXHR9XHJcblx0XHJcblx0Lm1DUy1kaXItcnRsID4gLm1DU0JfaW5zaWRlID4gLm1DU0JfY29udGFpbmVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW57IG1hcmdpbi1sZWZ0OiAwOyB9IC8qIFJUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xyXG5cclxuXHQubUNTQl9zY3JvbGxUb29sc3sgLyogY29udGFpbnMgc2Nyb2xsYmFyIG1hcmt1cCAoZHJhZ2dhYmxlIGVsZW1lbnQsIGRyYWdnZXIgcmFpbCwgYnV0dG9ucyBldGMuKSAqL1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0d2lkdGg6IDE2cHg7XHJcblx0XHRoZWlnaHQ6IGF1dG87XHJcblx0XHRsZWZ0OiBhdXRvO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHRib3R0b206IDA7XHJcblx0fVxyXG5cclxuXHQubUNTQl9vdXRzaWRlICsgLm1DU0Jfc2Nyb2xsVG9vbHN7IHJpZ2h0OiAtMjZweDsgfSAvKiBzY3JvbGxiYXIgcG9zaXRpb246IG91dHNpZGUgKi9cclxuXHRcclxuXHQubUNTLWRpci1ydGwgPiAubUNTQl9pbnNpZGUgPiAubUNTQl9zY3JvbGxUb29scywgXHJcblx0Lm1DUy1kaXItcnRsID4gLm1DU0Jfb3V0c2lkZSArIC5tQ1NCX3Njcm9sbFRvb2xzeyAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cclxuXHRcdHJpZ2h0OiBhdXRvO1xyXG5cdFx0bGVmdDogMDtcclxuXHR9XHJcblx0XHJcblx0Lm1DUy1kaXItcnRsID4gLm1DU0Jfb3V0c2lkZSArIC5tQ1NCX3Njcm9sbFRvb2xzeyBsZWZ0OiAtMjZweDsgfSAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKHNjcm9sbGJhciBwb3NpdGlvbjogb3V0c2lkZSkgKi9cclxuXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcnsgLyogY29udGFpbnMgdGhlIGRyYWdnYWJsZSBlbGVtZW50IGFuZCBkcmFnZ2VyIHJhaWwgbWFya3VwICovXHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0Ym90dG9tOiAwO1xyXG5cdFx0cmlnaHQ6IDA7IFxyXG5cdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdH1cclxuXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgYSArIC5tQ1NCX2RyYWdnZXJDb250YWluZXJ7IG1hcmdpbjogMjBweCAwOyB9XHJcblxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xyXG5cdFx0d2lkdGg6IDJweDtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxNnB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDE2cHg7IGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcblx0fVxyXG5cclxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9kcmFnZ2VyeyAvKiB0aGUgZHJhZ2dhYmxlIGVsZW1lbnQgKi9cclxuXHRcdGN1cnNvcjogcG9pbnRlcjtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiA3MHB4OyAvKiBtaW5pbXVtIGRyYWdnZXIgaGVpZ2h0ICovXHJcblx0XHR6LWluZGV4OiAxO1xyXG5cdH1cclxuXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhcnsgLyogdGhlIGRyYWdnZXIgZWxlbWVudCAqL1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0d2lkdGg6IDJweDtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0Ly8td2Via2l0LWJvcmRlci1yYWRpdXM6IDE2cHg7IC1tb3otYm9yZGVyLXJhZGl1czogMTZweDsgYm9yZGVyLXJhZGl1czogMTZweDtcclxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHR9XHJcblx0XHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXIubUNTQl9kcmFnZ2VyX29uRHJhZ19leHBhbmRlZCAubUNTQl9kcmFnZ2VyX2JhciwgXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJDb250YWluZXI6aG92ZXIgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2Jhcnsgd2lkdGg6IDEycHg7IC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovIH1cclxuXHRcclxuXHQubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkICsgLm1DU0JfZHJhZ2dlclJhaWwsIFxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXJSYWlseyB3aWR0aDogOHB4OyAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqLyB9XHJcblxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwLFxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdGhlaWdodDogMjBweDtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdH1cclxuXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bnsgYm90dG9tOiAwOyB9XHJcblxyXG5cclxuXHJcbi8qIFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuMy4gSE9SSVpPTlRBTCBTQ1JPTExCQVIgXHJcbngtYXhpc1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuKi9cclxuXHJcblx0Lm1DU0JfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcntcclxuXHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0fVxyXG5cdFxyXG5cdC5tQ1NCX2hvcml6b250YWwubUNTQl9vdXRzaWRlID4gLm1DU0JfY29udGFpbmVyeyBtaW4taGVpZ2h0OiAxMDAlOyB9XHJcblxyXG5cdC5tQ1NCX2hvcml6b250YWwgPiAubUNTQl9jb250YWluZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbnsgbWFyZ2luLWJvdHRvbTogMDsgfSAvKiBub24tdmlzaWJsZSBzY3JvbGxiYXIgKi9cclxuXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFse1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0XHRoZWlnaHQ6IDE2cHg7XHJcblx0XHR0b3A6IGF1dG87XHJcblx0XHRyaWdodDogMDtcclxuXHRcdGJvdHRvbTogMDtcclxuXHRcdGxlZnQ6IDA7XHJcblx0fVxyXG5cclxuXHQubUN1c3RvbVNjcm9sbEJveCArIC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCxcclxuXHQubUN1c3RvbVNjcm9sbEJveCArIC5tQ1NCX3Njcm9sbFRvb2xzICsgLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFseyBib3R0b206IC0yNnB4OyB9IC8qIHNjcm9sbGJhciBwb3NpdGlvbjogb3V0c2lkZSAqL1xyXG5cclxuXHQubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwgYSArIC5tQ1NCX2RyYWdnZXJDb250YWluZXJ7IG1hcmdpbjogMCAyMHB4OyB9XHJcblxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9kcmFnZ2VyUmFpbHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiAycHg7XHJcblx0XHRtYXJnaW46IDdweCAwO1xyXG5cdH1cclxuXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXJ7XHJcblx0XHR3aWR0aDogMzBweDsgLyogbWluaW11bSBkcmFnZ2VyIHdpZHRoICovXHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdH1cclxuXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdGhlaWdodDogNHB4O1xyXG5cdFx0bWFyZ2luOiA2cHggYXV0bztcclxuXHR9XHJcblx0XHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnX2V4cGFuZGVkIC5tQ1NCX2RyYWdnZXJfYmFyLCBcclxuXHQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyQ29udGFpbmVyOmhvdmVyIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XHJcblx0XHRoZWlnaHQ6IDEycHg7IC8qIGF1dG8tZXhwYW5kZWQgc2Nyb2xsYmFyICovXHJcblx0XHRtYXJnaW46IDJweCBhdXRvO1xyXG5cdH1cclxuXHRcclxuXHQubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyLm1DU0JfZHJhZ2dlcl9vbkRyYWdfZXhwYW5kZWQgKyAubUNTQl9kcmFnZ2VyUmFpbCwgXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlckNvbnRhaW5lcjpob3ZlciAubUNTQl9kcmFnZ2VyUmFpbHtcclxuXHRcdGhlaWdodDogOHB4OyAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xyXG5cdFx0bWFyZ2luOiA0cHggMDtcclxuXHR9XHJcblxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25MZWZ0LFxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25SaWdodHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0d2lkdGg6IDIwcHg7XHJcblx0XHRoZWlnaHQ6IDEwMCU7XHJcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0fVxyXG5cdFxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25MZWZ0eyBsZWZ0OiAwOyB9XHJcblxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbCAubUNTQl9idXR0b25SaWdodHsgcmlnaHQ6IDA7IH1cclxuXHJcblxyXG5cclxuLyogXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG40LiBWRVJUSUNBTCBBTkQgSE9SSVpPTlRBTCBTQ1JPTExCQVJTIFxyXG55eC1heGlzIFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuKi9cclxuXHJcblx0Lm1DU0JfY29udGFpbmVyX3dyYXBwZXJ7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRoZWlnaHQ6IGF1dG87XHJcblx0XHR3aWR0aDogYXV0bztcclxuXHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHR0b3A6IDA7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHRib3R0b206IDA7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDMwcHg7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cdH1cclxuXHRcclxuXHQubUNTQl9jb250YWluZXJfd3JhcHBlciA+IC5tQ1NCX2NvbnRhaW5lcntcclxuXHRcdHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuXHRcdC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDsgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94OyBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdH1cclxuXHRcclxuXHQubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc192ZXJ0aWNhbHsgYm90dG9tOiAyMHB4OyB9XHJcblx0XHJcblx0Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbCA+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHsgcmlnaHQ6IDIwcHg7IH1cclxuXHRcclxuXHQvKiBub24tdmlzaWJsZSBob3Jpem9udGFsIHNjcm9sbGJhciAqL1xyXG5cdC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeC5tQ1NfeF9oaWRkZW4gKyAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FseyBib3R0b206IDA7IH1cclxuXHRcclxuXHQvKiBub24tdmlzaWJsZSB2ZXJ0aWNhbCBzY3JvbGxiYXIvUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXHJcblx0Lm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl95Lm1DU195X2hpZGRlbiArIC5tQ1NCX3Njcm9sbFRvb2xzIH4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFsLCBcclxuXHQubUNTLWRpci1ydGwgPiAubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9zY3JvbGxUb29scy5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWx7IHJpZ2h0OiAwOyB9XHJcblx0XHJcblx0LyogUlRMIGRpcmVjdGlvbi9sZWZ0LXNpZGUgc2Nyb2xsYmFyICovXHJcblx0Lm1DUy1kaXItcnRsID4gLm1DdXN0b21TY3JvbGxCb3gubUNTQl92ZXJ0aWNhbF9ob3Jpem9udGFsLm1DU0JfaW5zaWRlID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19ob3Jpem9udGFseyBsZWZ0OiAyMHB4OyB9XHJcblx0XHJcblx0Lyogbm9uLXZpc2libGUgc2Nyb2xsYmFyL1JUTCBkaXJlY3Rpb24vbGVmdC1zaWRlIHNjcm9sbGJhciAqL1xyXG5cdC5tQ1MtZGlyLXJ0bCA+IC5tQ3VzdG9tU2Nyb2xsQm94Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeS5tQ1NfeV9oaWRkZW4gKyAubUNTQl9zY3JvbGxUb29scyB+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbHsgbGVmdDogMDsgfVxyXG5cdFxyXG5cdC5tQ1MtZGlyLXJ0bCA+IC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyeyAvKiBSVEwgZGlyZWN0aW9uL2xlZnQtc2lkZSBzY3JvbGxiYXIgKi9cclxuXHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHRcdG1hcmdpbi1sZWZ0OiAzMHB4O1xyXG5cdH1cclxuXHRcclxuXHQubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVuID4gLm1DU0JfY29udGFpbmVyeyBwYWRkaW5nLXJpZ2h0OiAwOyB9XHJcblx0XHJcblx0Lm1DU0JfY29udGFpbmVyX3dyYXBwZXIubUNTX25vX3Njcm9sbGJhcl94Lm1DU194X2hpZGRlbiA+IC5tQ1NCX2NvbnRhaW5lcnsgcGFkZGluZy1ib3R0b206IDA7IH1cclxuXHRcclxuXHQubUN1c3RvbVNjcm9sbEJveC5tQ1NCX3ZlcnRpY2FsX2hvcml6b250YWwubUNTQl9pbnNpZGUgPiAubUNTQl9jb250YWluZXJfd3JhcHBlci5tQ1Nfbm9fc2Nyb2xsYmFyX3kubUNTX3lfaGlkZGVue1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAwOyAvKiBub24tdmlzaWJsZSBzY3JvbGxiYXIgKi9cclxuXHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdH1cclxuXHRcclxuXHQvKiBub24tdmlzaWJsZSBob3Jpem9udGFsIHNjcm9sbGJhciAqL1xyXG5cdC5tQ3VzdG9tU2Nyb2xsQm94Lm1DU0JfdmVydGljYWxfaG9yaXpvbnRhbC5tQ1NCX2luc2lkZSA+IC5tQ1NCX2NvbnRhaW5lcl93cmFwcGVyLm1DU19ub19zY3JvbGxiYXJfeC5tQ1NfeF9oaWRkZW57IG1hcmdpbi1ib3R0b206IDA7IH1cclxuXHJcblxyXG5cclxuLyogXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG41LiBUUkFOU0lUSU9OUyAgXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4qL1xyXG5cclxuXHQubUNTQl9zY3JvbGxUb29scywgXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlciAubUNTQl9kcmFnZ2VyX2JhciwgXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXAsXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bixcclxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0LFxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1xyXG5cdFx0LXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMnMgZWFzZS1pbi1vdXQ7XHJcblx0XHQtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcclxuXHRcdC1vLXRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcclxuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDtcclxuXHR9XHJcblx0XHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHNfdmVydGljYWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJfYmFyLCAvKiBhdXRvLWV4cGFuZGVkIHNjcm9sbGJhciAqL1xyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzX3ZlcnRpY2FsLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnX2V4cGFuZCAubUNTQl9kcmFnZ2VyUmFpbCwgXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHNfaG9yaXpvbnRhbC5tQ1NCX3Njcm9sbFRvb2xzX29uRHJhZ19leHBhbmQgLm1DU0JfZHJhZ2dlcl9iYXIsIFxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzX2hvcml6b250YWwubUNTQl9zY3JvbGxUb29sc19vbkRyYWdfZXhwYW5kIC5tQ1NCX2RyYWdnZXJSYWlse1xyXG5cdFx0LXdlYmtpdC10cmFuc2l0aW9uOiB3aWR0aCAuMnMgZWFzZS1vdXQgLjJzLCBoZWlnaHQgLjJzIGVhc2Utb3V0IC4ycywgXHJcblx0XHRcdFx0XHRtYXJnaW4tbGVmdCAuMnMgZWFzZS1vdXQgLjJzLCBtYXJnaW4tcmlnaHQgLjJzIGVhc2Utb3V0IC4ycywgXHJcblx0XHRcdFx0XHRtYXJnaW4tdG9wIC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1ib3R0b20gLjJzIGVhc2Utb3V0IC4ycyxcclxuXHRcdFx0XHRcdG9wYWNpdHkgLjJzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4ycyBlYXNlLWluLW91dDsgXHJcblx0XHQtbW96LXRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLW91dCAuMnMsIGhlaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcclxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1yaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcclxuXHRcdFx0XHRcdG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLFxyXG5cdFx0XHRcdFx0b3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0OyBcclxuXHRcdC1vLXRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLW91dCAuMnMsIGhlaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcclxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1yaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcclxuXHRcdFx0XHRcdG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLFxyXG5cdFx0XHRcdFx0b3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0OyBcclxuXHRcdHRyYW5zaXRpb246IHdpZHRoIC4ycyBlYXNlLW91dCAuMnMsIGhlaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcclxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0IC4ycyBlYXNlLW91dCAuMnMsIG1hcmdpbi1yaWdodCAuMnMgZWFzZS1vdXQgLjJzLCBcclxuXHRcdFx0XHRcdG1hcmdpbi10b3AgLjJzIGVhc2Utb3V0IC4ycywgbWFyZ2luLWJvdHRvbSAuMnMgZWFzZS1vdXQgLjJzLFxyXG5cdFx0XHRcdFx0b3BhY2l0eSAuMnMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjJzIGVhc2UtaW4tb3V0OyBcclxuXHR9XHJcblxyXG5cclxuXHJcbi8qXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG42LiBTQ1JPTExCQVIgQ09MT1JTLCBPUEFDSVRZIEFORCBCQUNLR1JPVU5EU1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuKi9cclxuXHJcblx0LypcclxuXHQtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblx0Ni4xIFRIRU1FU1xyXG5cdC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHQqL1xyXG5cclxuXHQvKiBkZWZhdWx0IHRoZW1lIChcImxpZ2h0XCIpICovXHJcblxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzeyBvcGFjaXR5OiAwLjc1OyBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTc1KVwiOyB9XHJcblxyXG5cdC5tQ1MtYXV0b0hpZGUgPiAubUN1c3RvbVNjcm9sbEJveCA+IC5tQ1NCX3Njcm9sbFRvb2xzLFxyXG5cdC5tQ1MtYXV0b0hpZGUgPiAubUN1c3RvbVNjcm9sbEJveCB+IC5tQ1NCX3Njcm9sbFRvb2xzeyBvcGFjaXR5OiAwOyBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT0wKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MClcIjsgfVxyXG5cclxuXHQubUN1c3RvbVNjcm9sbGJhciA+IC5tQ3VzdG9tU2Nyb2xsQm94ID4gLm1DU0Jfc2Nyb2xsVG9vbHMubUNTQl9zY3JvbGxUb29sc19vbkRyYWcsXHJcblx0Lm1DdXN0b21TY3JvbGxiYXIgPiAubUN1c3RvbVNjcm9sbEJveCB+IC5tQ1NCX3Njcm9sbFRvb2xzLm1DU0Jfc2Nyb2xsVG9vbHNfb25EcmFnLFxyXG5cdC5tQ3VzdG9tU2Nyb2xsQm94OmhvdmVyID4gLm1DU0Jfc2Nyb2xsVG9vbHMsXHJcblx0Lm1DdXN0b21TY3JvbGxCb3g6aG92ZXIgfiAubUNTQl9zY3JvbGxUb29scyxcclxuXHQubUNTLWF1dG9IaWRlOmhvdmVyID4gLm1DdXN0b21TY3JvbGxCb3ggPiAubUNTQl9zY3JvbGxUb29scyxcclxuXHQubUNTLWF1dG9IaWRlOmhvdmVyID4gLm1DdXN0b21TY3JvbGxCb3ggfiAubUNTQl9zY3JvbGxUb29sc3sgb3BhY2l0eTogMTsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9MTAwKVwiOyB9XHJcblxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXJSYWlse1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwwLjEpO1xyXG5cdFx0ZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NDApXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjtcclxuXHR9XHJcblxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcclxuXHR9XHJcblxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2RyYWdnZXI6aG92ZXIgLm1DU0JfZHJhZ2dlcl9iYXJ7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcclxuXHR9XHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlcjphY3RpdmUgLm1DU0JfZHJhZ2dlcl9iYXIsXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfZHJhZ2dlci5tQ1NCX2RyYWdnZXJfb25EcmFnIC5tQ1NCX2RyYWdnZXJfYmFye1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XHJcblx0fVxyXG5cclxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcCxcclxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25Eb3duLFxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkxlZnQsXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHR7XHJcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwobUNTQl9idXR0b25zLnBuZyk7IC8qIGNzcyBzcHJpdGVzICovXHJcblx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdFx0b3BhY2l0eTogMC40OyBmaWx0ZXI6IFwiYWxwaGEob3BhY2l0eT00MClcIjsgLW1zLWZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTQwKVwiO1xyXG5cdH1cclxuXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uVXB7XHJcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XHJcblx0XHQvKlxyXG5cdFx0c3ByaXRlcyBsb2NhdGlvbnNcclxuXHRcdGxpZ2h0OiAwIDAsIC0xNnB4IDAsIC0zMnB4IDAsIC00OHB4IDAsIDAgLTcycHgsIC0xNnB4IC03MnB4LCAtMzJweCAtNzJweFxyXG5cdFx0ZGFyazogLTgwcHggMCwgLTk2cHggMCwgLTExMnB4IDAsIC0xMjhweCAwLCAtODBweCAtNzJweCwgLTk2cHggLTcycHgsIC0xMTJweCAtNzJweFxyXG5cdFx0Ki9cclxuXHR9XHJcblxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd257XHJcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0yMHB4O1xyXG5cdFx0LypcclxuXHRcdHNwcml0ZXMgbG9jYXRpb25zXHJcblx0XHRsaWdodDogMCAtMjBweCwgLTE2cHggLTIwcHgsIC0zMnB4IC0yMHB4LCAtNDhweCAtMjBweCwgMCAtOTJweCwgLTE2cHggLTkycHgsIC0zMnB4IC05MnB4XHJcblx0XHRkYXJrOiAtODBweCAtMjBweCwgLTk2cHggLTIwcHgsIC0xMTJweCAtMjBweCwgLTEyOHB4IC0yMHB4LCAtODBweCAtOTJweCwgLTk2cHggLTkycHgsIC0xMTIgLTkycHhcclxuXHRcdCovXHJcblx0fVxyXG5cclxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25MZWZ0e1xyXG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNDBweDtcclxuXHRcdC8qXHJcblx0XHRzcHJpdGVzIGxvY2F0aW9uc1xyXG5cdFx0bGlnaHQ6IDAgLTQwcHgsIC0yMHB4IC00MHB4LCAtNDBweCAtNDBweCwgLTYwcHggLTQwcHgsIDAgLTExMnB4LCAtMjBweCAtMTEycHgsIC00MHB4IC0xMTJweFxyXG5cdFx0ZGFyazogLTgwcHggLTQwcHgsIC0xMDBweCAtNDBweCwgLTEyMHB4IC00MHB4LCAtMTQwcHggLTQwcHgsIC04MHB4IC0xMTJweCwgLTEwMHB4IC0xMTJweCwgLTEyMHB4IC0xMTJweFxyXG5cdFx0Ki9cclxuXHR9XHJcblxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblJpZ2h0e1xyXG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogMCAtNTZweDtcclxuXHRcdC8qXHJcblx0XHRzcHJpdGVzIGxvY2F0aW9uc1xyXG5cdFx0bGlnaHQ6IDAgLTU2cHgsIC0yMHB4IC01NnB4LCAtNDBweCAtNTZweCwgLTYwcHggLTU2cHgsIDAgLTEyOHB4LCAtMjBweCAtMTI4cHgsIC00MHB4IC0xMjhweFxyXG5cdFx0ZGFyazogLTgwcHggLTU2cHgsIC0xMDBweCAtNTZweCwgLTEyMHB4IC01NnB4LCAtMTQwcHggLTU2cHgsIC04MHB4IC0xMjhweCwgLTEwMHB4IC0xMjhweCwgLTEyMHB4IC0xMjhweFxyXG5cdFx0Ki9cclxuXHR9XHJcblxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvblVwOmhvdmVyLFxyXG5cdC5tQ1NCX3Njcm9sbFRvb2xzIC5tQ1NCX2J1dHRvbkRvd246aG92ZXIsXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdDpob3ZlcixcclxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25SaWdodDpob3Zlcnsgb3BhY2l0eTogMC43NTsgZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9NzUpXCI7IC1tcy1maWx0ZXI6IFwiYWxwaGEob3BhY2l0eT03NSlcIjsgfVxyXG5cclxuXHQubUNTQl9zY3JvbGxUb29scyAubUNTQl9idXR0b25VcDphY3RpdmUsXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uRG93bjphY3RpdmUsXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uTGVmdDphY3RpdmUsXHJcblx0Lm1DU0Jfc2Nyb2xsVG9vbHMgLm1DU0JfYnV0dG9uUmlnaHQ6YWN0aXZleyBvcGFjaXR5OiAwLjk7IGZpbHRlcjogXCJhbHBoYShvcGFjaXR5PTkwKVwiOyAtbXMtZmlsdGVyOiBcImFscGhhKG9wYWNpdHk9OTApXCI7IH1cclxuIiwiLmhlYWRlci1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDU7XG5cbiAgYSB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuXG4gIC5pcy1yZXZlYWwtb3BlbiAmIHtcbiAgICB6LWluZGV4OiA0O1xuICB9XG59XG5cbi5wYWdlLWhlYWRlciB7XG4gIC8vcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDA7XG4gIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBib3JkZXItYm90dG9tOiAkaGVhZGVyLWJvcmRlcjtcbiAgcGFkZGluZzogcmVtLWNhbGMoMTAgMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE3IDApO1xuXG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG5cbiAgICAubGV2ZWwwLmNhdGVnb3J5LWl0ZW0ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5sZXZlbDAuY2F0ZWdvcnktaXRlbS5vcGVuZWQgfiAqIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tZXItYWNjb3VudC1pbmRleCAmLFxuICAuY2F0YWxvZy1wcm9kdWN0LXZpZXcgJixcbiAgLmNhdGFsb2ctY2F0ZWdvcnktdmlldyAmIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG5cbiAgLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgLy8gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoNTUpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBtYXgtd2lkdGg6IDE2MDBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICAvL2Rpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLnNraXAtbGlua3Mge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIC8vdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgdG9wOiBjYWxjKDQwcHggLyAyKTtcbiAgICAgIC8vdHJhbnNmb3JtOiBub25lO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICB0b3A6IGNhbGMoNTRweCAvIDIpO1xuICAgICAgLy9yaWdodDogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuXG4gICAgPiBkaXYsID4gYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTlweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubG9nbyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiByZW0tY2FsYygxMTIpO1xuICAgIGhlaWdodDogcmVtLWNhbGMoNDEpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygxNDgpO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYyg1NCk7XG4gICAgfVxuICB9XG5cbiAgLmxvZ28td3JhcHBlciB7XG4gICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgYWxpZ24tc2VsZjogYXV0bztcbiAgICB9XG4gIH1cblxuICAmLmhvbWUtaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhlYWRlci1ib3JkZXI7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTAgMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUgMCAwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygyMyAwIDApO1xuICAgIH1cblxuICAgICYuZml4ZWQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJGhlYWRlci1ib3JkZXI7XG4gICAgICAgIGxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE3IDApO1xuICAgICAgICAucGFnZS1oZWFkZXItY29udGFpbmVyIHtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDEwMSk7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgfVxuICAgICAgICAuc2tpcC1saW5rcyB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgfVxuICAgICAgICAubG9nby13cmFwcGVyIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgICAgICAubG9nbyB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygxNDgpO1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNTQpO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgLnBhZ2UtaGVhZGVyLWNvbnRhaW5lciB7XG4gICAgICAgICAgLy9TdHlsZXMgb25seSBmb3IgU2FmYXJpIDkrXG4gICAgICAgICAgQHN1cHBvcnRzICgtd2Via2l0LW1hcnF1ZWUtcmVwZXRpdGlvbjppbmZpbml0ZSkgYW5kIChvYmplY3QtZml0OmZpbGwpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLy9TdHlsZXMgb25seSBmb3IgU2FmYXJpIDEwLjAxXG4gICAgICAgICAgQG1lZGlhIG5vdCBhbGwgYW5kIChtaW4tcmVzb2x1dGlvbjogLjAwMWRwY20pIHtcbiAgICAgICAgICAgIEBzdXBwb3J0cyAoLXdlYmtpdC1hcHBlYXJhbmNlOm5vbmUpIGFuZCAobm90IChzdHJva2UtY29sb3I6dHJhbnNwYXJlbnQpKSB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLy9TdHlsZXMgb25seSBmb3IgU2FmYXJpIDEwLjAxK1xuICAgICAgICAgIEBtZWRpYSBub3QgYWxsIGFuZCAobWluLXJlc29sdXRpb246IC4wMDFkcGNtKSB7XG4gICAgICAgICAgICBAc3VwcG9ydHMgKC13ZWJraXQtYXBwZWFyYW5jZTpub25lKSB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLy9TdHlsZXMgb25seSBmb3IgU2FmYXJpIDExK1xuICAgICAgICAgIEBtZWRpYSBub3QgYWxsIGFuZCAobWluLXJlc29sdXRpb246IC4wMDFkcGNtKSB7XG4gICAgICAgICAgICBAc3VwcG9ydHMgKC13ZWJraXQtYXBwZWFyYW5jZTpub25lKSBhbmQgKHN0cm9rZS1jb2xvcjp0cmFuc3BhcmVudCkge1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC8vU3R5bGVzIG9ubHkgZm9yIFNhZmFyaSAxMytcbiAgICAgICAgICBAbWVkaWEgbm90IGFsbCBhbmQgKG1pbi1yZXNvbHV0aW9uOiAuMDAxZHBjbSkge1xuICAgICAgICAgICAgQHN1cHBvcnRzICgtd2Via2l0LWFwcGVhcmFuY2U6bm9uZSkgYW5kIChkaXNwbGF5OmZsb3ctcm9vdCkge1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy9TdHlsZXMgb25seSBmb3IgU2FmYXJpIDkrXG4gICAgICAgIEBzdXBwb3J0cyAoLXdlYmtpdC1tYXJxdWVlLXJlcGV0aXRpb246aW5maW5pdGUpIGFuZCAob2JqZWN0LWZpdDpmaWxsKSB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDQ4MHB4O1xuICAgICAgICB9XG4gICAgICAgIC8vU3R5bGVzIG9ubHkgZm9yIFNhZmFyaSAxMC4wMVxuICAgICAgICBAbWVkaWEgbm90IGFsbCBhbmQgKG1pbi1yZXNvbHV0aW9uOiAuMDAxZHBjbSkge1xuICAgICAgICAgIEBzdXBwb3J0cyAoLXdlYmtpdC1hcHBlYXJhbmNlOm5vbmUpIGFuZCAobm90IChzdHJva2UtY29sb3I6dHJhbnNwYXJlbnQpKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDgwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vU3R5bGVzIG9ubHkgZm9yIFNhZmFyaSAxMC4wMStcbiAgICAgICAgQG1lZGlhIG5vdCBhbGwgYW5kIChtaW4tcmVzb2x1dGlvbjogLjAwMWRwY20pIHtcbiAgICAgICAgICBAc3VwcG9ydHMgKC13ZWJraXQtYXBwZWFyYW5jZTpub25lKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDgwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vU3R5bGVzIG9ubHkgZm9yIFNhZmFyaSAxMStcbiAgICAgICAgQG1lZGlhIG5vdCBhbGwgYW5kIChtaW4tcmVzb2x1dGlvbjogLjAwMWRwY20pIHtcbiAgICAgICAgICBAc3VwcG9ydHMgKC13ZWJraXQtYXBwZWFyYW5jZTpub25lKSBhbmQgKHN0cm9rZS1jb2xvcjp0cmFuc3BhcmVudCkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQ4MHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvL1N0eWxlcyBvbmx5IGZvciBTYWZhcmkgMTMrXG4gICAgICAgIEBtZWRpYSBub3QgYWxsIGFuZCAobWluLXJlc29sdXRpb246IC4wMDFkcGNtKSB7XG4gICAgICAgICAgQHN1cHBvcnRzICgtd2Via2l0LWFwcGVhcmFuY2U6bm9uZSkgYW5kIChkaXNwbGF5OmZsb3ctcm9vdCkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQ4MHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5wYWdlLWhlYWRlci1jb250YWluZXIge1xuICAgICAgLy9wb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubG9nbyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygxMTIpO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0MSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTQ4KTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg1NCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTg0KTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg2Nyk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDIzMCk7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoODUpO1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dvLXdyYXBwZXIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5za2lwLWxpbmtzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgLy90b3A6IHJlbS1jYWxjKDM1KTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiBjYWxjKDY3cHggLyAyKTtcbiAgICAgICAgLy90b3A6IHJlbS1jYWxjKDI3KTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAvL3RvcDogcmVtLWNhbGMoNjApO1xuICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICAgICB0b3A6IGNhbGMoODRweCAvIDIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJ0LWxpbmsgLmNvdW50IHtcbiAgICAgIGJvcmRlcjogM3B4IHNvbGlkICR3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgI2I0YjdjNTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmZpeGVkIHtcbiAgICAgIC5jYXJ0LWxpbmsgLmNvdW50IHtcbiAgICAgICAgYm9yZGVyOiAzcHggc29saWQgJHdoaXRlO1xuICAgICAgfVxuXG4gICAgICAubmF2aWdhdGlvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG5cbiAgICAgIC5za2lwLWxpbmtzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jYXJ0LWxpbmsge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5jb3VudCB7XG4gICAgICB3aWR0aDogcmVtLWNhbGMoMTIpO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygxMik7XG4gICAgICBib3JkZXI6IDNweCBzb2xpZCAkd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NywgOTcsIDk5LCAuOSk7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg3KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiByZW0tY2FsYygtNCk7XG4gICAgICBmb250LXNpemU6IDA7XG4gICAgfVxuXG4gICAgJi5uby1jb3VudCB7XG4gICAgICAuY291bnQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5vcGVuLXN1Yi1uYXYge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIH1cblxuICAgICYubW9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZml4ZWQge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIGxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgIHJpZ2h0OiByZW0tY2FsYygxNSk7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE3IDApO1xuXG4gICAgICAuY3VzdG9tZXItYWNjb3VudC1pbmRleCAmLFxuICAgICAgLmNhdGFsb2ctcHJvZHVjdC12aWV3ICYsXG4gICAgICAuY2F0YWxvZy1jYXRlZ29yeS12aWV3ICYge1xuICAgICAgICBib3JkZXItYm90dG9tOiAkaGVhZGVyLWJvcmRlcjtcbiAgICAgIH1cbiAgICAgIC5wYWdlLWhlYWRlci1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgfVxuICAgICAgLnNraXAtbGlua3Mge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgIH1cbiAgICAgIC5jYXJ0LWxpbmsge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgLmNvdW50IHtcbiAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmhpZGUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIC8vdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlO1xuICB9XG5cbiAgJjpub3QoLmhvbWUtaGVhZGVyKSB7XG4gICAgLmNvbHVtbnMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGV2ZWwwIHtcbiAgICAgICYuc2hvdyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICAgIGJveC1zaGFkb3c6ICRoZWFkZXItc2hhZG93O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5oZWFkZXItYWNjb3VudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmLmFjdGl2ZSB7XG4gICAgLmxvZ2luOmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAgIH1cbiAgfVxuXG4gIC5sb2dpbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnXFxlODAwJztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBzdWI7XG4gICAgICBmb250LWZhbWlseTogJ2ZvbnRlbGxvJztcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3M7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiByZW0tY2FsYygyMCk7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygzMCk7XG4gICAgfVxuICB9XG5cbiAgLnNraXAtY29udGVudCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYygxMDAlICsgMTVweCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMzVweDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGJveC1zaGFkb3c6ICRoZWFkZXItc2hhZG93O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgdG9wOiBjYWxjKDEwMCUgKyA3cHgpO1xuICAgICAgLy9sZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgICAvL3dpZHRoOiBhdXRvO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cbiAgICB9XG5cbiAgICAuaG9tZS1oZWFkZXIgJiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIC8vYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZpeGVkLmhvbWUtaGVhZGVyICYge1xuICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAvL2JveC1zaGFkb3c6ICRoZWFkZXItc2hhZG93O1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAkdHJhbnNpdGlvbjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaGVhZGVyLWJhbm5lciB7XG4gIC8vZGlzcGxheTogbm9uZTtcbiAgLy9wYWRkaW5nOiByZW0tY2FsYygxMCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgcGFkZGluZzogMDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIC8vcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuICB9XG5cbiAgcCB7XG4gICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYyg4KTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDEuNXB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAyLjVweDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5tb2JpbGUtaGVhZGVyLWJhbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAvL2Rpc3BsYXk6IG5vbmU7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBhZGRpbmc6IDE1cHggOHB4ICFpbXBvcnRhbnQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5zdWJzY3JpcHRpb24tZmVhdHVyZXMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICA+IHVsIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuXG4gICAgICAgIGxpIHtcblxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnN1YnNjcmlwdGlvbi1uYW1lIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmgyIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmg0IHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5idXR0b24ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc21hbGwtMTIge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAmLnNtYWxsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMCAxNXB4IDE1cHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhlYWRlci1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiAwIDMwcHggMTVweDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICBsaW5lLWhlaWdodDogMS40O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE0cHg7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jcm9zcyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIC8vdG9wOiA1MCU7XG4gICAgdG9wOiAwO1xuICAgIC8vdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHdpZHRoOiAxNXB4O1xuICAgIGhlaWdodDogMTVweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICByaWdodDogMTVweDtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSgtNDVkZWcpO1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxufVxuXG4jc3ViLW1haW4tbmF2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0xcHg7XG4gIHJpZ2h0OiAtMXB4O1xuICAvL3dpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiByZW0tY2FsYygyMCAxMCk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRvcDogcmVtLWNhbGMoNTUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgLy90b3A6IHJlbS1jYWxjKDcxKTtcbiAgICB0b3A6IDEwMCU7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjMgMTUpO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgLy90b3A6IHJlbS1jYWxjKDEwMSk7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgdG9wOiByZW0tY2FsYygxMDEpO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIzIDE1KTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTQgMTUpO1xuICB9XG5cbiAgLmhvbWUtaGVhZGVyICYge1xuICAgIHRvcDogcmVtLWNhbGMoNTUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHRvcDogcmVtLWNhbGMoODEpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgIHRvcDogcmVtLWNhbGMoMTAxKTtcbiAgICB9XG4gIH1cblxuICAuZml4ZWQuaG9tZS1oZWFkZXIgJiB7XG4gICAgdG9wOiByZW0tY2FsYygxMDEpO1xuICB9XG5cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg1IDM3KTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiByZW0tY2FsYygtMik7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKC0yKTtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cblxuICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDQpO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDQpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygyKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiAjMDMwMzAzO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmJ0bi1tZW51IHtcbiAgd2lkdGg6IHJlbS1jYWxjKDQwKTtcbiAgaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDEwIDEwIDEwIDApO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIC8vYm9yZGVyLXJhZGl1czogNTAlO1xuICAvL21hcmdpbi1sZWZ0OiByZW0tY2FsYygyMCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi10b3A6IHJlbS1jYWxjKDUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgPiBkaXYsID4gcCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiByZW0tY2FsYygxNik7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg3KTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBzcGFuIHtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoMik7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogcmVtLWNhbGMoMTYpO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjI1cywgYmFja2dyb3VuZC1jb2xvciAuMjVzO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBjZW50ZXI7XG5cbiAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHRvcDogcmVtLWNhbGMoNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5vcGVuIHtcbiAgICBzcGFuIHtcbiAgICAgIGxlZnQ6IHJlbS1jYWxjKDIpO1xuXG4gICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgdG9wOiByZW0tY2FsYygtMyk7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgdG9wOiByZW0tY2FsYyg4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm5hdmlnYXRpb24ge1xuICBvdmVyZmxvdzogYXV0bztcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiByZW0tY2FsYyg0MCAwIDUpO1xuICAvL3otaW5kZXg6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgLy9iYWNrZ3JvdW5kLWNvbG9yOiBncmVlbjtcbiAgLy9sZWZ0OiAtMXB4O1xuICByaWdodDogLTFweDtcbiAgLy93aWR0aDogMTAwJTtcbiAgLy90b3A6IHJlbS1jYWxjKDU1KTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbjtcblxuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwdmg7XG4gIC8vb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMTAxO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBtYXJnaW4tdG9wOiA3cHg7XG4gICAgei1pbmRleDogMTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEwKTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICAuaG9tZS1oZWFkZXIgJiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBsZWZ0OiByZW0tY2FsYygtMTApO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDIwcHgpO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICA+IHVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgLy9wb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIC8vcGFkZGluZzogcmVtLWNhbGMoMTIpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgIC8vcGFkZGluZzogcmVtLWNhbGMoOCk7XG4gICAgICB9XG5cbiAgICAgICYubW9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAvL2ZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgICAgICAvL2xldHRlci1zcGFjaW5nOiAycHg7XG4gICAgICAgIC8vZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAvL2ZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg4IDI4KTtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAxNCk7XG4gICAgICAgIG1hcmdpbjogOHB4IDZweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDE4KTtcbiAgICAgICAgbWFyZ2luOiAxMnB4O1xuXG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaS5wYXJlbnQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG5cbiAgICAgID4gYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJ1xcZTgwMCc7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICdmb250ZWxsbyc7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRzbG93LXRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTEpO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDUpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg5KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBhIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDEwcHg7XG4gICAgdG9wOiAxMHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAudmlldy1hbGwge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG59XG5cbi5sZXZlbDAge1xuICA+IGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gICAgfVxuICB9XG5cbiAgJi5zdWJtZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBwYWRkaW5nOiAyNXB4IDEwcHg7XG4gICAgLy9tYXgtd2lkdGg6IDExMzBweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICR0cmFuc2l0aW9uLCB0cmFuc2Zvcm0gJHRyYW5zaXRpb24sIHZpc2liaWxpdHkgJHRyYW5zaXRpb247XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgbWluLXdpZHRoOiByZW0tY2FsYygxMjUpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgcGFkZGluZzogMzBweCAxMSU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgLy9sZWZ0OiByZW0tY2FsYyg1MCk7XG4gICAgICAvL3dpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC5maXhlZCAmIHtcbiAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgYm94LXNoYWRvdzogJGhlYWRlci1zaGFkb3c7XG4gICAgfVxuXG4gICAgLmhvbWUtaGVhZGVyICYge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAvL2JveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5zaG93IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlZGYyO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gICYucGFyZW50IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmLm9wZW5lZCB7XG4gICAgICA+IGEge1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgPiBhIHtcbiAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5jYXRlZ29yeS1pdGVtIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJi5vcGVuZWQge1xuICAgICAgb3ZlcmZsb3c6IHVuc2V0O1xuICAgIH1cblxuICAgICYuZmlyc3Qge1xuICAgICAgLmxldmVsMS5jYXRlZ29yeS1pdGVtIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDUxcHg7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5sZXZlbDEuY2F0ZWdvcnktaXRlbSA+IGEge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiBjYWxjKDEwMCUgLSA1MHB4KTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5tZWdhLW1lbnUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgLmxldmVsMS5jYXRlZ29yeS1pdGVtIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5sZXZlbDEge1xuICAmLnN1Ym1lbnUge1xuICAgIC8vcG9zaXRpb246IHN0YXRpYztcbiAgICAvL2Rpc3BsYXk6IGJsb2NrO1xuICAgID4gbGkge1xuICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5jYXRlZ29yeS1pdGVtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgMCAxNXB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICB3aWR0aDogY2FsYygyMCUgLSAyMHB4KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbjogMCAxNXB4O1xuICAgICAgd2lkdGg6IGNhbGMoMjAlIC0gMzBweCk7XG4gICAgfVxuXG4gICAgPiBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMi41cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNnB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRibGFjaztcbiAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAkdHJhbnNpdGlvbiwgY29sb3IgJHRyYW5zaXRpb247XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi50d28tY29scyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgY29sdW1uczogMjtcbiAgICAgIGNvbHVtbi1nYXA6IDQ2cHg7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiAgfVxuXG4gID4gYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgfVxuICB9XG59XG5cbi5sZXZlbDIge1xuICA+IGEge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICB9XG59XG5cbi5sZWZ0LXNpZGUtbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBtYXgtd2lkdGg6IDI2OHB4O1xuXG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuXG4gIC5pbWFnZS1ob2xkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQoKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gICAgfVxuICA7XG4gIH1cblxuICAubGV2ZWwxIHtcbiAgICAmLmNhdGVnb3J5LWl0ZW0ge1xuICAgICAgbWF4LXdpZHRoOiAyNjhweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgbWFyZ2luOiAwIDAgMTVweDtcbiAgICAgIGJvcmRlci1ib3R0b206ICRoZWFkZXItYm9yZGVyO1xuXG4gICAgICA+IGEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuLnJpZ2h0LXNpZGUtbWVudSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICBtYXgtd2lkdGg6IDI2OHB4O1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgIGJvcmRlci1sZWZ0OiAkaGVhZGVyLWJvcmRlcjtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG4uYWJvdXQtdXMtbWVudS1pdGVtIHtcbiAgLmxldmVsMS5jYXRlZ29yeS1pdGVtIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLnRyYWluLXdpdGgtdXMtbWVudSB7XG4gIC5yaWdodC1zaWRlLW1lbnUge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgIC8vbWF4LXdpZHRoOiAyNjhweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICAvL2JvcmRlci1sZWZ0OiAkaGVhZGVyLWJvcmRlcjtcbiAgICAgIC8vcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICBtYXgtd2lkdGg6IDIzMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMjhweDtcbiAgICAgIG1heC13aWR0aDogMjg1cHg7XG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiQG1peGluIGJhY2tncm91bmQoKSB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG59XG5cbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjphZnRlciB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBjbGVhcjogYm90aDtcbiAgICBoZWlnaHQ6IDA7XG4gIH1cbn1cblxuQG1peGluIGxvYWRpbmdNYXNrKCkge1xuICAubG9hZGluZy1tYXNrIHtcbiAgICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHotaW5kZXg6IDk5OTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgLjUpO1xuICAgIC5sb2FkZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn0iLCIuZm9vdGVyLWdhbGxlcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlZGYyO1xufVxuXG4uZm9vdGVyX3NsaWRlci1zbGlkZXIge1xuICBwYWRkaW5nOiByZW0tY2FsYygzNSA1KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDYwIDUwIDYwKTtcbiAgfVxuICAuc2xpZGUtY29udGVudC1ib3gge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5zbGlkZS1jb250ZW50LXRleHQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDgxNXB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG4gIC5zbGljay1zbGlkZXItbmF2IC5zbGljay1zbGlkZSB7XG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogMTg1cHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBtYXgtd2lkdGg6IDE4NXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zbGljay1zbGlkZSA+IGRpdiwgLnNsaWNrLXNsaWRlID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCAxMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDI1KTtcbiAgICB9XG4gICAgLmF1dGhvciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICctJztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDRweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRvcDogLTJweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgfVxuICAgIH1cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgLy90ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiByZW0tY2FsYygtNSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIGxlZnQ6IHJlbS1jYWxjKC0yNSk7XG4gICAgfVxuICB9XG4gIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogcmVtLWNhbGMoLTUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICByaWdodDogcmVtLWNhbGMoLTI1KTtcbiAgICB9XG4gIH1cbiAgLnNsaWNrLWRvdHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gICAgbGkge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgICBidXR0b246YmVmb3JlIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgfVxuICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZXtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNsaWNrLXRyYWNrIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufSIsIkBpbXBvcnQgXCIuL2Zvb3Rlci1nYWxsZXJ5XCI7XG5cbi5mb290ZXIge1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gIH1cbiAgaDIsIC5oMiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICBmb250LWZhbWlseTogJ0JyYW5kb25Hcm90ZXNxdWUnLCBzYW5zLXNlcmlmO1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjRweDtcbiAgICBsYWJlbCB7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvb3Rlci1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgIH1cbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cbiAgLm5ld3NsZXR0ZXItZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbiAgLmlucHV0LWJveCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuYnRuLWFycm93IHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAuMTQpO1xuICAgIH1cbiAgfVxufVxuXG4uZm9vdGVyLWhvbGRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAuMTQpO1xuICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMzAgMCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICAuaXRlbSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjUgMTUpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRibGFjaywgLjE0KTtcbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxNSk7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgLjE0KTtcbiAgICAgIHdpZHRoOiAzMy4zJTtcbiAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE1IDI1KTtcbiAgICB9XG4gICAgJi5taWRkbGUge1xuICAgICAgcCB7XG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMzUwKTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNvbnRhY3QtYmxvY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAuaXRlbSB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMDBweDtcbiAgICB9XG4gICAgJisuaXRlbSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0gZG93bikge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLml0ZW0tbWFpbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDVweDtcbiAgICB9XG4gICAgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgfVxuICAgIGEge1xuICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5lbWFpbHMtaG9sZGVyIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuXG4ucHJpdmFjeS1ibG9jayB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLmZvb3Rlci1uYXYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgICAmK2xpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgIH1cbiAgfVxuICAuaXRlbSB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgICAmKy5pdGVtIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSBkb3duKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYmxvY2stc3Vic2NyaWJlLCAuYmxvY2stc3Vic2NyaWJlLXBvcHVwIHtcbiAgbWF4LXdpZHRoOiByZW0tY2FsYyg0NTApO1xuICBtYXJnaW46IDAgYXV0bztcbiAgLmZvcm0tZ3JvdXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgfVxuICAuaW5wdXQtdGV4dCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDQyKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg3MCk7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNDIpO1xuICAgIGJvcmRlci1jb2xvcjogJGJsYWNrO1xuICAgIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDEyMCk7XG4gICAgfVxuICAgICY6Zm9jdXMge1xuICAgICAgLy9ib3JkZXItY29sb3I6ICRibGE7XG4gICAgfVxuICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjI1cztcbiAgICB9XG4gICAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAuMjVzO1xuICAgIH1cbiAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4yNXM7XG4gICAgfVxuICB9XG4gIC5idG4tYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmxhY2s7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAkZmFzdC10cmFuc2l0aW9uO1xuICB9XG59XG5cbi5mb2xsb3ctbGlua3Mge1xuICBtYXJnaW46IHJlbS1jYWxjKDAgLTEwIDI1KTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgbWFyZ2luOiByZW0tY2FsYygwIC0xNyAzNSk7XG4gIH1cbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIG1hcmdpbjogcmVtLWNhbGMoMCAxMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMTcpO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCA1KTtcbiAgICB9XG4gIH1cbn1cblxuLmZvb3Rlci1uYXYge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUpO1xuICB9XG4gIGEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gIH1cbn1cblxuLnNjcm9sbC10b3Age1xuICBjb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgfVxufVxuXG4uY29weXJpZ2h0IHtcbiAgc3BhbiB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxufSIsIi5icmVhZGNydW1icyB7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDE1IDApO1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQ1KTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjcgMCk7XG4gIH1cbiAgJi53aGl0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIC4xKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI1KTtcbiAgICB9XG4gIH1cbiAgLmJyZWFkY3J1bWJzLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG4gIH1cbiAgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgJHRyYW5zaXRpb247XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICB9XG4gICAgfVxuICAgIHN0cm9uZyB7XG4gICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICB9XG4gICAgYSwgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCA1KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuICB9XG4gIC5iYWNrLWxpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgICY6aG92ZXI6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNXB4KTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcZTgwMic7XG4gICAgICBmb250LWZhbWlseTogJ2ZvbnRlbGxvJztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDYpO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2U7XG4gICAgfVxuICB9XG59IiwiLmNvbnRlbnQtYm94ZXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICBwYWRkaW5nOiByZW0tY2FsYyg0NSAwIDI1KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg5NSAwIDcwKTtcbiAgfVxuICAuY29sdW1ucyB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICB9XG4gIHAge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAzMCk7XG4gICAgfVxuICB9XG4gIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICB9XG4gIH1cbiAgLnBpY3R1cmUge1xuICAgIHBhZGRpbmctdG9wOiA0OS4xOCU7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZCgpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI1KTtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxufSIsIi5ibG9jay1zdWJzY3JpYmUtcG9wdXAge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvdHVsbGUuanBnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDMwKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogJGJsYWNrO1xuICB6LWluZGV4OiAxMDE7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4c21hbGwpIHtcbiAgICAvL3dpZHRoOiA4MCU7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYyg3NTApO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIGxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICByaWdodDogcmVtLWNhbGMoMTUpO1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoOTUwKTtcbiAgfVxuXG4gIC5ib3JkZXItaG9sZGVyIHtcbiAgICBib3JkZXI6IDFweCBkYXNoZWQgYmxhY2s7XG4gICAgcGFkZGluZzogMTVweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoNDUgMzUpO1xuICAgIH1cbiAgfVxuXG4gIC5ibG9jay1zdWJzY3JpYmUtcG9wdXAtY29udGVudCB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg1MDApO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gIH1cblxuICAudmFsaWRhdGlvbi1hZHZpY2Uge1xuICAgIGNvbG9yOiByZWQ7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDM1MCk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTtcbiAgICB9XG4gIH1cblxuICBoMiB7XG4gICAgLy90ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgbGFiZWwge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygzNTApO1xuICAgIG1hcmdpbjogMCBhdXRvIDFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg0NTApO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC10ZXh0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItY29sb3I6ICRibGFjaztcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGNhcmV0LWNvbG9yOiAkYmxhY2s7XG4gICAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICB9XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrO1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuXG4gICAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cblxuICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1hcnJvdyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHdpZHRoOiByZW0tY2FsYygxODApO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygyNTUpO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICB0b3A6IC0xMnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5idXR0b24tc2Vjb25kYXJ5IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG5cbiAgLnBpbmsge1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDUwKTtcbiAgICB9XG4gIH1cblxuICAubG9hZC1idXR0b24ge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gIH1cblxuICAuY3Jvc3Mge1xuICAgIGhlaWdodDogcmVtLWNhbGMoMjIpO1xuICAgIHRvcDogcmVtLWNhbGMoNyk7XG4gICAgcmlnaHQ6IHJlbS1jYWxjKDUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYygyNCk7XG4gICAgICB0b3A6IHJlbS1jYWxjKC0zNCk7XG4gICAgICByaWdodDogcmVtLWNhbGMoLTM0KTtcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygyNCk7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgdG9wOiByZW0tY2FsYygtNDApO1xuICAgICAgcmlnaHQ6IHJlbS1jYWxjKC00MCk7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygzMCk7XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgID4gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogcmVtLWNhbGMoMjIpO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjIpO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubmV3c2xldHRlci1zdWJzY3JpcHRpb24ge1xuICAmLm1vZGFsLXBvcHVwIHtcbiAgICAubW9kYWwtaW5uZXItd3JhcCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLmFjdGlvbi1jbG9zZSB7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHotaW5kZXg6IDY7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICB0b3A6IC0zOHB4O1xuICAgICAgICByaWdodDogLTM2cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtIGRvd24pIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLy9jaGVja2JveFxuXG4uY2hlY2tib3gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG5cbiAgJiArIGxhYmVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU1O1xuICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMjIpO1xuICAgIGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJjpob3ZlcjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MgZWFzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDI3KTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgfVxuICB9XG4gICYgKyBsYWJlbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogcmVtLWNhbGMoNCk7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDE1KTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJsYWNrO1xuICB9XG4gICY6Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICB9XG4gICY6ZGlzYWJsZWQgKyBsYWJlbCB7XG4gICAgY29sb3I6ICRtZWRpdW0tZ3JheTtcbiAgICBjdXJzb3I6IGF1dG87XG4gIH1cbiAgJjpkaXNhYmxlZCArIGxhYmVsOmJlZm9yZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAjZGRkO1xuICB9XG4gICY6Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiByZW0tY2FsYyg2KTtcbiAgICBsZWZ0OiByZW0tY2FsYyg1KTtcbiAgICB3aWR0aDogcmVtLWNhbGMoMik7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg5KTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygyKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlcjogc29saWQgJGJsYWNrO1xuICAgIGJvcmRlci13aWR0aDogMCAxcHggMXB4IDA7XG4gIH1cbn1cblxuLy9yYWRpb1xuXG4ucmFkaW86Y2hlY2tlZCxcbi5yYWRpbzpub3QoOmNoZWNrZWQpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtOTk5OXB4O1xufVxuLnJhZGlvOmNoZWNrZWQgKyBsYWJlbCxcbi5yYWRpbzpub3QoOmNoZWNrZWQpICsgbGFiZWxcbntcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDQwKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjApO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiByZ2JhKCRibGFjaywgLjUpO1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gIH1cbn1cbi5yYWRpbzpjaGVja2VkICsgbGFiZWw6YmVmb3JlLFxuLnJhZGlvOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiByZW0tY2FsYygyMCk7XG4gIGhlaWdodDogcmVtLWNhbGMoMjApO1xuICBib3JkZXI6IDFweCBzb2xpZCAkYmxhY2s7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZTtcbn1cbi5yYWRpbzpjaGVja2VkICsgbGFiZWw6YWZ0ZXIsXG4ucmFkaW86bm90KDpjaGVja2VkKSArIGxhYmVsOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHdpZHRoOiByZW0tY2FsYyg2KTtcbiAgaGVpZ2h0OiByZW0tY2FsYyg2KTtcbiAgYmFja2dyb3VuZDogJGJsYWNrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogcmVtLWNhbGMoNyk7XG4gIGxlZnQ6IHJlbS1jYWxjKDcpO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xufVxuLnJhZGlvOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlciB7XG4gIG9wYWNpdHk6IDA7XG59XG4ucmFkaW86Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLy9zZWxlY3RcblxuLmN1c3RvbS1zZWxlY3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC5zZWxlY3RlZC12YWx1ZSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDM4KTtcbiAgICBtYXJnaW46IDAgMCAxcmVtO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMzUgMCAxOCk7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbnMvYXJyb3ctZG93bi5zdmcpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMThweCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICAmLmRpc2FibGVkIHtcbiAgICAuc2VsZWN0ZWQtdmFsdWUge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiNGJmYzI7XG4gICAgfVxuICB9XG4gICYub3BlbmVkIHtcbiAgICAuc2VsZWN0ZWQtdmFsdWUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICAgIC5zZWxlY3Qtb3B0aW9ucyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbiAgLnNlbGVjdC1saXN0IHtcbiAgICBtYXgtaGVpZ2h0OiByZW0tY2FsYygyMzApO1xuICB9XG4gIC5zZWxlY3Qtb3B0aW9ucyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiByZW0tY2FsYyg0OSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgei1pbmRleDogMTAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdWwge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwIDEwIDIwIDIwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgbGkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNSk7XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBzY3JvbGxcblxuLmN1c3RvbS1zY3JvbGwge1xuICAkc2Nyb2xsLW1hcmdpbi10b3A6IDZweDtcbiAgbWluLWhlaWdodDogMDtcbiAgbWluLXdpZHRoOiAwO1xuICAub3V0ZXItY29udGFpbmVyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOmhvdmVyIC5jdXN0b20tc2Nyb2xsYmFyIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICAgIH1cbiAgfVxuICAuaW5uZXItY29udGFpbmVyIHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgICY6YWZ0ZXJ7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMC4yKSAwJSwgcmdiYSgwLCAwLCAwLCAwLjA1KSA2MCUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjFzIGVhc2UtaW47XG4gICAgICB3aWxsLWNoYW5nZTogaGVpZ2h0O1xuICAgIH1cbiAgICAmLmNvbnRlbnQtc2Nyb2xsZWQ6YWZ0ZXIge1xuICAgICAgaGVpZ2h0OiA1cHg7XG4gICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4xNXMgZWFzZS1vdXQ7XG4gICAgfVxuICB9XG4gICYuc2Nyb2xsLWhhbmRsZS1kcmFnZ2VkIC5pbm5lci1jb250YWluZXIge1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG4gIC5jdXN0b20tc2Nyb2xsYmFyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiByZW0tY2FsYyg0KTtcbiAgICByaWdodDogcmVtLWNhbGMoMyk7XG4gICAgei1pbmRleDogMTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZS1vdXQ7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNikgMDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICAgJi5jdXN0b20tc2Nyb2xsYmFyLXJ0bCB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDNweDtcbiAgICB9XG4gIH1cbiAgJi5zY3JvbGwtaGFuZGxlLWRyYWdnZWQgLmN1c3RvbS1zY3JvbGxiYXIge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgLmN1c3RvbS1zY3JvbGwtaGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiAwO1xuICB9XG4gIC5pbm5lci1oYW5kbGUge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gI3syICogJHNjcm9sbC1tYXJnaW4tdG9wfSk7XG4gICAgbWFyZ2luLXRvcDogJHNjcm9sbC1tYXJnaW4tdG9wO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAwLjcpO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDQpO1xuICB9XG59IiwiLmJsb2NrLWFjY291bnQsIC5ibG9jay1jYXRlZ29yeSB7XG4gID4gbmF2IHtcbiAgICBtYXJnaW46IDAgYXV0byByZW0tY2FsYygzMCk7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYyg0ODApO1xuICB9XG4gIHVsLmxldmVsMSB7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxMHB4KTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuICB1bC5sZXZlbDIge1xuICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMTBweCk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgID4gbmF2IHtcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDQwKTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gICAgdWwubGV2ZWwxIHtcbiAgICAgIG1hcmdpbi10b3A6IDFweDtcbiAgICB9XG4gICAgdWwubGV2ZWwyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxcHg7XG4gICAgfVxuICAgIGxpLnBhcmVudC5sZXZlbDEuc3BpbGwge1xuICAgICAgdWwubGV2ZWwyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMXB4O1xuICAgICAgfVxuICAgIH1cbiAgICB1bC5sZXZlbDEsIHVsLmxldmVsMiB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxMDtcbiAgICB9XG4gIH1cbiAgLmNhdGFsb2ctcHJvZHVjdC12aWV3ICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNmY3ZmI7XG4gIH1cbiAgLml0ZW1zIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy10b3A6IDFweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5pdGVtIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoMTAwJSAvIDQuMDAxKTtcbiAgICAgICAgJjphZnRlciwgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjY2M7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDEwMCUgLyA2LjAwMSk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC8gOC4wMDEpO1xuICAgICAgfVxuICAgICAgLnRvdWNoICYge1xuICAgICAgICAmLnBhcmVudCB7XG4gICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgICYubWVudS1hY3RpdmUgPiB1bCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5jdXJyZW50LCAmLmFjdGl2ZSB7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICY6YWZ0ZXIsICY6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cbiAgICAgICAgYSwgc3Ryb25nIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYmxhY2s7XG4gICAgICAgICAgJjphZnRlciwgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAvL3BhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubm8tdG91Y2ggJiB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHotaW5kZXg6IDk7XG4gICAgICAgICAgJjphZnRlciwgJjpiZWZvcmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRibGFjaztcbiAgICAgICAgICAgICY6YWZ0ZXIsICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBsaS5wYXJlbnQubGV2ZWwxIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgID4gdWwubGV2ZWwxIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhLmhhcy1jaGlsZHJlbiB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMTApO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZSwgbWFyZ2luLXRvcCAuM3MgZWFzZTtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGYwMDQnO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdmb250ZWxsbyc7XG4gICAgICAgICAgfVxuICAgICAgICAgICYubGVmdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5tZW51LWFjdGl2ZSB7XG4gICAgICAgID4gYSBzcGFuIHtcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuc3BpbGwge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgdWwubGV2ZWwyIHtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbGkucGFyZW50LmxldmVsMiB7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgJi5sZWZ0IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBsaS5wYXJlbnQubGV2ZWwyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgID4gdWwubGV2ZWwyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLm1lbnUtYWN0aXZlIHtcbiAgICAgICAgPiBhIHNwYW4ge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgZG93bikge1xuICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnRvdWNoICYge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZVooMCkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgJi5sZWZ0IHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZykgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYS5oYXMtY2hpbGRyZW4ge1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDEwKTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZVooMCk7XG4gICAgICAgICAgICAvL21hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICB9XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxmMDA0JztcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmxlZnQge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgYSwgc3Ryb25ne1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAvL2hlaWdodDogMTAwJTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZ3JheTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MgZWFzZSwgYm9yZGVyIC4zcyBlYXNlLCBjb2xvciAuM3MgZWFzZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAmOmFmdGVyLCAmOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2U7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgbGVmdDogLTFweDtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICAgICAgfVxuICAgICAgc3Ryb25nIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIvL3JldmVhbFxuXG4ucmV2ZWFsIHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcGFkZGluZzogcmVtLWNhbGMoMzApO1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcbiAgfVxuXG4gICYuZnVsbCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMzApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNDApO1xuICAgIH1cblxuICAgIC5jbG9zZS1idXR0b24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgdG9wOiByZW0tY2FsYygxNyk7XG4gICAgICAgIHJpZ2h0OiByZW0tY2FsYyg1KTtcbiAgICAgICAgPiBzcGFuLCBzcGFuIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygzMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmNyZWF0ZS1jdXN0b20td29ya291dCxcbiAgJi5wbGF5bGlzdC1tb2RhbCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDEyNTApO1xuXG4gICAgLmlycy1ncmlkLXRleHQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzNSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg3MCk7XG4gICAgICB9XG5cbiAgICAgICYudGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAucm93IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDM1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDcwKTtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC53b3Jrb3V0LWNvbnRlbnQtbW9kYWwge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMzUgMTAgMjApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygyMCAzMCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg0NSA1MCAzNSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnBsYXlsaXN0LWNvbnRlbnQtbW9kYWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDM1IDEwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjAgMzApO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNDUgNTApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hdHRyLWhvbGRlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTApO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIC8vQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAgICAgLy8gIGZsZXgtYmFzaXM6IDIwJTtcbiAgICAgICAgLy99XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgbWF4LXdpZHRoOiA2MHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDkwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaW5wdXRbdHlwZT1yYWRpb10ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgICAgICAmOmNoZWNrZWQgKyBzcGFuIHtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjI1cztcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNyZWF0ZS13b3Jrb3V0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICB9XG5cbiAgICAgIC5jb3VudCB7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYyg0MCk7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoNDApO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzOCk7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjApO1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDU2KTtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDU2KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNTQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbnMtZ3JvdXAge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjAgMTApO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlZGVlZjE7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIC5idXR0b24ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjUpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYucGxheWxpc3QtbW9kYWwge1xuICAgIC5hdHRyLWhvbGRlciB7XG4gICAgICBpbWcge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDYwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLndvcmtvdXQtdmlkZW8tZ2FsbGVyeSB7XG4gICAgLmJ1dHRvbnMtZ3JvdXAge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmdhbGxlcnkge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDUwKTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNTApICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgIGlmcmFtZSB7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDU1cHgpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNDBweCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLndvcmtvdXQtcHJldi12aWRlbyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBsZWZ0OiAxNXB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC53b3Jrb3V0LW5leHQtdmlkZW8ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLndvcmtvdXQtcHJldi12aWRlbyxcbiAgICAgIC53b3Jrb3V0LW5leHQtdmlkZW8ge1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYnV0dG9ucy1ncm91cCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5jYW5jZWwtc3Vic2NyaXB0aW9uIHtcbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgbWFyZ2luOiAwIGF1dG8gMS41cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNoZWNrYm94ICsgbGFiZWw6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHRvcDogcmVtLWNhbGMoNik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNoZWNrYm94ICsgbGFiZWw6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgdG9wOiByZW0tY2FsYyg4KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgYSB7XG4gICAgICAgIG1hcmdpbjogMCA4cHggMXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udHJvbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5hZHZhaWNlLWxpc3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgIH1cblxuICAgICNhZHZhaWNlLWNvbnRhaW5lci1jYW5jZWwtc3Vic2NyaXB0aW9uIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHNtYWxsKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tbGlzdCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIC8vbWF4LXdpZHRoOiByZW0tY2FsYyg1MDApO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGxpIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTAgMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHNtYWxsKSB7XG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDE2MCk7XG4gICAgICByZXNpemU6IHZlcnRpY2FsO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5pbnB1dC1ib3gge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogcmVtLWNhbGMoMjIpO1xuICAgIHRvcDogcmVtLWNhbGMoNyk7XG4gICAgcmlnaHQ6IHJlbS1jYWxjKDUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHJpZ2h0OiByZW0tY2FsYygtMzApO1xuICAgICAgdG9wOiByZW0tY2FsYygtNCk7XG4gICAgICA+IHNwYW4sIHNwYW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IHNwYW4ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDIyKTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgc3BhbiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDIyKTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucGFkLWluZm8ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAyNXZoIDA7XG4gIH1cblxuICBpZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDYwcHgpO1xuICAgIG1hcmdpbjogMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDQwcHgpO1xuICAgIH1cbiAgfVxufVxuXG4ucmV2ZWFsLWNvbnRlbnQge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgLjIpO1xuICBwYWRkaW5nOiByZW0tY2FsYygxNSAxMCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg1NSA3NSk7XG4gICAgJi5taWRkbGUge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMzggNjApO1xuICAgIH1cbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICB9XG4gIH1cbn1cblxuLnJldmVhbC1vdmVybGF5IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMzUpO1xuICB9XG59XG5cbi8vIGVuZCByZXZlYWxcblxuLm1vZGFsLXBvcHVwIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICB6LWluZGV4OiA5OTkgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIC44NSk7XG5cbiAgJi5fc2hvdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuYWN0aW9uLWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgdG9wOiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBAaW5jbHVkZSBjbG9zZUJ1dHRvbigpO1xuXG4gICAgJjpiZWZvcmUsICY6YWZ0ZXJ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIHRvcDogLTFweDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtaW5uZXItd3JhcCB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIHBhZGRpbmc6IDI1cHggMjBweDtcbiAgICBib3gtc2hhZG93OiAkaGVhZGVyLXNoYWRvdztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IDIwcHggNDBweDtcbiAgICAgIHdpZHRoOiA3NSU7XG4gICAgICBtYXgtd2lkdGg6IDc1MHB4O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDMwcHgpO1xuICAgIH1cbiAgfVxuXG4gICYuY2FuY2VsLXN1YnNjcmlwdGlvbiB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjg1KSAhaW1wb3J0YW50O1xuICAgIC5tb2RhbC1pbm5lci13cmFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWF4LXdpZHRoOiA5NTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgfVxufVxuXG4uY21zLWhvbWUge1xuICAubW9kYWwtcG9wdXAge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAuNTUpO1xuICB9XG59IiwiLnBhZ2luYXRpb24sIC53cC1wYWdlbmF2aSB7XG4gIG1hcmdpbjogcmVtLWNhbGMoMjUpIGF1dG8gMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDQwKSBhdXRvIDA7XG4gIH1cblxuICAmLmN1c3RvbSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC5idG4tZmlyc3QtcGFnZSwgLmJ0bi1sYXN0LXBhZ2UsIC5kaXNhYmxlZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgICAuYnRuLW5leHQtbW9yZSBhOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIC5idG4tcHJldi1wYWdlIGEge1xuICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgJjpob3ZlcjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ1xcZTgwMic7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjNzIGVhc2U7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICfigKInICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgICB0b3A6IDNweDtcbiAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYnRuLW5leHQtcGFnZSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgJjpob3ZlcjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJ1xcZTgwMScgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdmb250ZWxsbyc7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZSAhaW1wb3J0YW50O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICfigKInO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDNweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBhLCBsaS5jdXJyZW50LCBzcGFuLmN1cnJlbnQge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg5KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwIDEzKTtcbiAgICB9XG4gIH1cbiAgYTpub3QoLnByZXZpb3VzX2p1bXAsIC5uZXh0X2p1bXAsIC5wcmV2aW91cywgLm5leHQsIC5wcmV2aW91c3Bvc3RzbGluaywgLm5leHRwb3N0c2xpbmspLCBsaS5jdXJyZW50LCBzcGFuLmN1cnJlbnQge1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDNweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2U7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxuICBhOmhvdmVyOmFmdGVyLCBsaS5jdXJyZW50OmFmdGVyLCBsaS5hY3RpdmUgYTphZnRlciwgc3Bhbi5jdXJyZW50OmFmdGVyIHtcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gIH1cbiAgb2wge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC5wcmV2aW91cywgLnByZXZpb3VzcG9zdHNsaW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICY6aG92ZXI6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcZTgwMic7XG4gICAgICBmb250LWZhbWlseTogJ2ZvbnRlbGxvJztcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG4gICAgICB9XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ+KAoic7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIC8vdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5uZXh0LCAubmV4dHBvc3RzbGluaywgLmJ0bi1uZXh0LXBhZ2UgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICY6aG92ZXI6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gICAgICB9XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ1xcZTgwMSc7XG4gICAgICBmb250LWZhbWlseTogJ2ZvbnRlbGxvJztcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygzMCk7XG4gICAgICB9XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICfigKInO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAvL3ZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucGFnZXMtaXRlbS1wcmV2aW91cywgLnBhZ2VzLWl0ZW0tbmV4dCB7XG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIC43NSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi53cC1wYWdlbmF2aSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICA+IGEsIHNwYW4ge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDkpICFpbXBvcnRhbnQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwIDEzKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufSIsIi5wcm9kdWN0cy1ncmlkIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgLy9tYXJnaW46IDAgMCAtMzBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLml0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbiAgJi5zbGljay1zbGlkZXIge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG59XG5cbi5wcm9kdWN0LWhvbGRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJiA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gICYucHJvZHVjdC12aWRlby1ob2xkZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAucHJvZHVjdC1pbWFnZSB7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDI0MCk7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gICAgLnByb2R1Y3QtbmFtZSxcbiAgICAucHJpY2UtYm94LFxuICAgIC5hY3Rpb25zIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuICAgIC5wcm9kdWN0LW5hbWUge1xuICAgICAgZm9udC1mYW1pbHk6ICdCcmFuZG9uR3JvdGVzcXVlJywgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBhIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICB9XG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgICAucHJpY2UtYm94IHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUgMCAwKTtcbiAgICB9XG4gICAgLnNwZWNpYWwtcHJpY2UsIC5vbGQtcHJpY2UsIC5yZWd1bGFyLXByaWNlLCAucHJpY2Uge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSkgIWltcG9ydGFudDtcbiAgICAgIGZvbnQtZmFtaWx5OiAnbWlsbGVyJywgc2Fucy1zZXJpZjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5wcm9kdWN0LWltYWdlIHtcbiAgICB3aWR0aDogcmVtLWNhbGMoMjgwKTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDM3MCk7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZCgpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCBhdXRvIHJlbS1jYWxjKDUpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhzbWFsbCkge1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDM2MCk7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDQ4MCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTMzJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICAucHJvZHVjdC1jYXB0aW9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogcmVtLWNhbGMoODQpO1xuICAgIGhlaWdodDogcmVtLWNhbGMoMzIpO1xuICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAzMDMwMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgIH1cbiAgfVxuICAucHJvZHVjdC1pbWFnZS1waG90byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC05OTk5JTtcbiAgICB0b3A6IC05OTk5JTtcbiAgfVxufVxuXG4ucHJvZHVjdC1pbmZvIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogMCAhaW1wb3J0YW50O1xuICAucHJvZHVjdC1uYW1lLFxuICAucHJpY2UtYm94LFxuICAuYWN0aW9ucyB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTAgMCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAuMSk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1mYW1pbHk6IFwiQnJhbmRvbkdyb3Rlc3F1ZVwiLCBzYW5zLXNlcmlmO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEzIDApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTcgMCk7XG4gICAgfVxuICAgIC5uZXctZCAmIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoNiAwKTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTMgMCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxNyAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNwZWNpYWwtcHJpY2UsIC5vbGQtcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFpbXBvcnRhbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LWZhbWlseTogXCJCcmFuZG9uR3JvdGVzcXVlXCIsIHNhbnMtc2VyaWY7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIC5wcmljZS1sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAub2xkLXByaWNlIHtcbiAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDExKSAhaW1wb3J0YW50O1xuICB9XG4gIC5wcm9kdWN0LWFjdGlvbiB7XG4gICAgY29sb3I6ICNmZjY2NjY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IGF1dG87XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgLm91dC1vZi1zdG9jayB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICBmb250LXdlaWdodDogcmVtLWNhbGMoNDAwKTtcbiAgICBjb2xvcjogJGJsYWNrO1xuICB9XG4gIC5hY3Rpb25zIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG4gIC5wcm9kdWN0LW5hbWUge1xuICAgIG1hcmdpbjogMDtcbiAgICBhIHtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIC5uZXctZCAmIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm5ldy1kIHtcbiAgLnByb2R1Y3QtaW1hZ2Uge1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogMTE1JTtcbiAgfVxufVxuXG4ud3JhcHBlci1mb3ItYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICAuYWN0aW9ucyB7XG4gICAgICAubm8tdG91Y2ggJiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmJlc3RzZWxsZXJzLXNsaWRlciAmIHtcbiAgICAgIC5hY3Rpb25zIHtcbiAgICAgICAgLm5vLXRvdWNoICYge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5iZXN0c2VsbGVycy1zbGlkZXIgJiB7XG4gICAgLmFjdGlvbnMge1xuICAgICAgLm5vLXRvdWNoICYge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHRyYW5zaXRpb247XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnByb2R1Y3QtYWN0aW9uIHtcbiAgICAgICAgLm5vLXRvdWNoICYge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgICAgcGFkZGluZzogMTJweCA1cHg7XG4gICAgICAgICAgICB3aWR0aDogMTM1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yICR0cmFuc2l0aW9uLCBiYWNrZ3JvdW5kLWNvbG9yICR0cmFuc2l0aW9uO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAubm8tdG91Y2ggJiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hY3Rpb25zIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiA3cHggNXB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAxLjFweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IDEzcHggNXB4O1xuICAgIH1cbiAgICAubm8tdG91Y2ggJiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkZmFzdC10cmFuc2l0aW9uO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICB9XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMS4xcHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICAgIC5wcm9kdWN0LWFjdGlvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgfVxuICB9XG59XG5cbi5mZWF0dXJlZC1ncmlkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhzbWFsbCkge1xuICAgIG1hcmdpbjogMCAtMTBweDtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICBtYXJnaW46IDAgLTIwcHg7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1hcmdpbjogMCAtMzBweDtcbiAgfVxuICAucHJvZHVjdC1ob2xkZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCAwIDE1cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4c21hbGwpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgICAgbWFyZ2luOiAwIDEwcHggMTVweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSA0MHB4KTtcbiAgICAgIG1hcmdpbjogMCAyMHB4IDI1cHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMlIC0gNDBweCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMyUgLSA2MHB4KTtcbiAgICAgIG1hcmdpbjogMCAzMHB4IDI1cHg7XG4gICAgfVxuICB9XG4gIC5wcm9kdWN0LWltYWdlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhzbWFsbCkge1xuICAgICAgcGFkZGluZy10b3A6IDEyNSU7XG4gICAgfVxuICB9XG59IiwiLnByb2R1Y3QtaW5uZXItc2xpZGVyIHtcbiAgcGFkZGluZzogcmVtLWNhbGMoMCAxNSk7XG59XG5cbi5wcm9kdWN0LXNsaWRlci1ibG9jayB7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDIwIDApO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNTAgMCk7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoOTAgMCk7XG4gIH1cbiAgLmNtcy1ob21lICYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxuICAuZmVhdHVyZWQtaXRlbXMgJiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG4gIC5zbGlkZXItdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICBoMzpub3QoLmgxKSB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgIGZvbnQtZmFtaWx5OiAnQnJhbmRvbkdyb3Rlc3F1ZScsIHNhbnMtc2VyaWY7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNjApO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgICB9XG4gIH1cbn1cblxuLnByb2R1Y3Qtc2xpZGVyIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxuICAuc2xpY2stdHJhY2sge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG4gIC5wcm9kdWN0LWhvbGRlciAucHJvZHVjdC1pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiAxMDAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIC8vcGFkZGluZy10b3A6IDEzMyU7XG4gICAgfVxuICB9XG4gIC5pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDM5MHB4O1xuICAgIH1cbiAgfVxuICAucHJvZHVjdC12aWRlby1ob2xkZXIgLnByb2R1Y3QtaW1hZ2Uge1xuICAgIGhlaWdodDogcmVtLWNhbGMoMjQwKTtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuICAuc2xpY2stYXJyb3cge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICB0b3A6IDQwJTtcbiAgICB9XG4gIH1cbiAgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IHJlbS1jYWxjKC0zMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIGxlZnQ6IHJlbS1jYWxjKC0xMzApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG4gICAgICBsZWZ0OiByZW0tY2FsYygtMjAwKTtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE4MDBweCkge1xuICAgICAgbGVmdDogcmVtLWNhbGMoLTI1MCk7XG4gICAgfVxuICB9XG4gIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogcmVtLWNhbGMoLTMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgcmlnaHQ6IHJlbS1jYWxjKC0xMzApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG4gICAgICByaWdodDogcmVtLWNhbGMoLTIwMCk7XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxODAwcHgpIHtcbiAgICAgIHJpZ2h0OiByZW0tY2FsYygtMjUwKTtcbiAgICB9XG4gIH1cbn0iLCIudGl0bGUtY3JlZGl0IHtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAudGl0bGUtY3JlZGl0LWxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICB9XG4gIH1cbn1cblxuLmN1c3RvbWVyLWNyZWRpdC1mb3JtLWNvZGUge1xuICBtYXgtd2lkdGg6IHJlbS1jYWxjKDI5MCk7XG4gIG1hcmdpbjogcmVtLWNhbGMoMjAgMCk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmlucHV0LWJveCB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICB9XG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGJ1dHRvbiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMjYpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygyNik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wYXltZW50LWZvcm0ge1xuICAuY3VzdG9tZXJjcmVkaXQge1xuICAgIGxhYmVsIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDAgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgICAgY3Vyc29yOiB0ZXh0O1xuICAgIH1cbiAgICAuY2hlY2tvdXQtY3JlZGl0LXVzZSB7XG4gICAgICA+c3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5lZGl0LWNyZWRpdCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIH1cbiAgICAgIC5pbnB1dC10ZXh0IHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2NjYyAhaW1wb3J0YW50O1xuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkYmxhY2sgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNoZWNrb3V0X2NjX2lucHV0X2FsZXJ0IHtcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygyOTApO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgfVxuICAgICAgLnZhbGlkYXRpb24tYWR2aWNlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIH1cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDI2KTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygyNik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuZmFxe1xuICBjb3VudGVyLXJlc2V0OiBsaTtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNzUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1MCk7XG4gIH1cbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgICYrcCB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxNik7XG4gICAgfVxuICB9XG4gIGEge1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICB9XG59XG4uYWNjb3JkaW9uLWJvZHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmFjY29yZGlvbi10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmZhcS1jYXRlZ29yeSB7XG4gIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMjcpO1xuICBjb3VudGVyLWluY3JlbWVudDogbGk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyg3MCk7XG4gIH1cbiAgJisuZmFxLWNhdGVnb3J5IHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7XG4gIH1cbn1cbi5mY2F0LW5hbWUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNDApO1xuICBvcGFjaXR5OiAuNjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnM7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyg1MCk7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAmLmFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGNvbnRlbnQ6IGNvdW50ZXIobGksIGRlY2ltYWwtbGVhZGluZy16ZXJvKTtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6IDcwcHg7XG4gICAgfVxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiByZW0tY2FsYyg1KTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICB0b3A6IDA7XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBsZWZ0OiByZW0tY2FsYygyMCk7XG4gICAgfVxuICB9XG4gIC50aXRsZTEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI3KTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDUwKTtcblxuICAgIH1cbiAgfVxuICAudGl0bGUyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTApO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDEyKTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuXG4gICAgfVxuICB9XG59XG4uZmNhdC1jb250ZW50IHtcbiAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygwKTtcbiAgbWFyZ2luLXRvcDogMzVweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDYwKTtcbiAgfVxufVxuLmZzdWItbmFtZSB7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvcGFjaXR5OiAuNjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMnM7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygyNSk7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAmLmFjdGl2ZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDonJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDEwKTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxufVxuLmZhcS1zdWJjYXRlZ29yeSB7XG4gICYrLmZhcS1zdWJjYXRlZ29yeSB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICB9XG59XG4uZnN1Yi1jb250ZW50IHtcbiAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygxNSk7XG4gIG1hcmdpbi10b3A6IHJlbS1jYWxjKDE0KTtcbn0iLCIuaW50cm9kdWNpbmctZ2FsbGVyeSB7XG4gIC8vYmFja2dyb3VuZC1jb2xvcjogI2ViZWRmMjtcbiAgaGVpZ2h0OiAxMDAlO1xuICAuY29sdW1ucyxcbiAgLnNsaWNrLXNsaWRlcixcbiAgLmludHJvZHVjaW5nX3NsaWRlcixcbiAgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIsXG4gIC5zbGljay10cmFjayxcbiAgLnNsaWNrLWxpc3QsXG4gIC5zbGljay1zbGlkZSA+IGRpdiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG4uc2xpZGVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uaW50cm9kdWNpbmdfc2xpZGVyLFxuLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIsXG4uaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVye1xuICBwYWRkaW5nOiByZW0tY2FsYygzNSAxMCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg2MCAxMCk7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNjAgMjApO1xuICB9XG4gIC5zbGlkZS1jb250ZW50LWJveCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTUpO1xuICAgIH1cbiAgICAuc3VidGl0bGUge1xuICAgICAgY29sb3I6ICMwMzAzMDM7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgICBoMSwgIC5oMSB7XG4gICAgICBjb2xvcjogIzAyMDIwMjtcbiAgICB9XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgIGNvbG9yOiAjMDEwMTAxO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmJ0bi1jdXN0b20ge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG4gIH1cbiAgLnNsaWNrLXNsaWRlLnJldmVyc2UgLnNsaWRlLWNvbnRlbnQtaG9sZGVyLCAuc2xpY2stc2xpZGUucmV2ZXJzZSA+IGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICB9XG4gIH1cbiAgLnNsaWNrLXNsaWRlIC5zbGlkZS1jb250ZW50LWhvbGRlciwgLnNsaWNrLXNsaWRlID4gYSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCAxMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMjUpO1xuICAgIH1cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIG1heC1oZWlnaHQ6IHJlbS1jYWxjKDI1MCk7XG4gICAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICAgICAgbWF4LXdpZHRoOiA3MCU7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzNSU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDkwdmg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDE1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNsaWNrLXRyYWNrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IHJlbS1jYWxjKC0yMCk7XG4gICAgdG9wOiA0MCU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbGVmdDogcmVtLWNhbGMoLTEwKTtcbiAgICAgIHRvcDogNTAlO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgIGxlZnQ6IHJlbS1jYWxjKDI1KTtcbiAgICB9XG4gIH1cbiAgLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiByZW0tY2FsYygtMjApO1xuICAgIHRvcDogNDAlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHJpZ2h0OiByZW0tY2FsYygtMTApO1xuICAgICAgdG9wOiA1MCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgcmlnaHQ6IHJlbS1jYWxjKDI1KTtcbiAgICB9XG4gIH1cbiAgLnNsaWNrLWRvdHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBsaSB7XG4gICAgICBidXR0b246YmVmb3JlIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgfVxuICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZXtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiLnByaXZhdGUtd29ya291dC1pbmZvLWhvbGRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG4gIC5sZWZ0LXNpZGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcGFkZGluZzogMTVweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHdpZHRoOiA0OCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcbiAgICAgIHdpZHRoOiA0NiU7XG4gICAgfVxuICAgIC50ZXh0LWhvbGRlciB7XG4gICAgICBtYXgtd2lkdGg6IDM1MHB4O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXgtd2lkdGg6IDU2MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBoMSwgLmgxIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuICB9XG4gIC5wcml2YXRlX3dvcmtvdXQtc2xpZGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG4gIC5yaWdodC1zaWRlIHtcbiAgICBoZWlnaHQ6IDUwMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHdpZHRoOiA0NSU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBwYWRkaW5nLXRvcDogNTUlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIC8vd2lkdGg6IDUyJTtcbiAgICAgIHBhZGRpbmctdG9wOiA1MCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcbiAgICAgIHdpZHRoOiA4MnZoO1xuICAgICAgcGFkZGluZy10b3A6IDkwdmg7XG4gICAgfVxuICB9XG4gIC5nZW5lcmFsLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIHotaW5kZXg6IDIwO1xuICAgIH1cbiAgfVxuXG4gIC5zd2lwZXItY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLnRpbnkge1xuICAgIHotaW5kZXg6IDE1O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBoZWlnaHQ6IDc1JTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICB3aWR0aDogNjAlO1xuICAgICAgaGVpZ2h0OiA4MCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcbiAgICAgIHdpZHRoOiA1NSU7XG4gICAgfVxuICAgIC5zd2lwZXItc2xpZGUge1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5zd2lwZXItc2xpZGUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgJi1wcmV2IHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgICB9XG4gICAgJi1hY3RpdmUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG4gIH1cblxuICAuc2xpZGUtaW5uZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIH1cblxuICAuY29weSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMTVweDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDZlbTtcbiAgfVxufSIsIi5iZXN0c2VsbGVycy1zbGlkZXIge1xuICAuc3dpcGVyLXNsaWRlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0cmFuc2l0aW9uOiBmaWx0ZXIgLjE1cyBlYXNlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMzUwcHg7XG4gIH1cbiAgLnByb2R1Y3QtaG9sZGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuc3dpcGVyLXdyYXBwZXIge1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIH1cbiAgLm5vLXN3aXBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4c21hbGwpIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luOiAwIC0xNXB4O1xuICAgIH1cbiAgICAuc3dpcGVyLXNsaWRlIHtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHNtYWxsKSB7XG4gICAgICAgIG1hcmdpbjogMCAxNXB4IDIwcHg7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDMwcHgpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDMzLjMlIC0gMzBweCk7XG4gICAgICAgIG1heC13aWR0aDogMzkwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiYm9keSB7XG4gICYuaXMtcmV2ZWFsLW9wZW4ge1xuICAgIC8vcG9zaXRpb246IGZpeGVkO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gICYudG91Y2gsXG4gICYubm8tdG91Y2gge1xuICAgIC5teS1wbGF5bGlzdCB7XG4gICAgICAud3JhcC1jcmVhdGUtcGxheWxpc3Qge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpdiB7XG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjUpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZ3JheTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGJvZHktYmFja2dyb3VuZDtcbiAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAycHggc29saWQgJGJvZHktYmFja2dyb3VuZDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmRlc2Mge1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wcmV2aWV3LXdyYXAge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIyMCk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvcGxheWxpc3QtZGVmYXVsdC1jb3Zlci5qcGcnKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMywgMywgMywgLjQpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGxpbmVhcjtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjYwKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyNDApO1xuICAgICAgICB9XG4gICAgICAgICYucmFuZG9te1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3JhbmRvbS5qcGcnKTtcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgYW5pbWF0aW9uOiBhbmltTGlzdCAuNXMgbGluZWFyIGZvcndhcmRzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucGxheWxpc3QtY29udGVudC1tb2RhbCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgICAgICAgLndvcmtvdXQtY29udGVudC1tb2RhbCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDM1IDE1KTtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDQ1IDUwIDM1KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJ1dHRvbnMtZ3JvdXAge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAxMCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZGl2W2NsYXNzKj0nc3RlcCddIHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGlucHV0W3R5cGU9J2NoZWNrYm94J10ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgICAgICAgICYgfiAucHJldmlldy13cmFwIHtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuY2hlY2sge1xuICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLnByZXZpZXctd3JhcCB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyNjApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDI0MCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLm5ldyB7XG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdOZXcnO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDYwKTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDI4KTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjgpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYucGxheSB7XG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9wbGF5LWJ1dHRvbi5zdmcnKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuY2hlY2ssXG4gICAgICAgICAgLnJlbW92ZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNDApO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgbGluZWFyO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2hlY2sge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvaWNvbnMvY2hlY2stc3ltYm9sLnN2ZycpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzUlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgICAucmVtb3ZlIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyKTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLm5hbWUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5pY29uLWhlYXJ0IHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgICAucnVudGltZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc2Vjb25kLXN0ZXAge1xuICAgICAgICAgIC5idXR0b25zLWdyb3VwIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50aGlyZC1zdGVwIHtcbiAgICAgICAgICAud3JhcC1wbGF5bGlzdC1pbmZvLFxuICAgICAgICAgIC53cmFwLXBsYXlsaXN0LXZpZXcge1xuICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTApO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAud3JhcC1wbGF5bGlzdC1pbmZvIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLndyYXAtcGxheWxpc3QtdmlldyB7XG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMjVweCk7XG4gICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDU1dmg7XG4gICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAyMCk7XG4gICAgICAgICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKC02KTtcbiAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwcHgpO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAxNSAzMCk7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMzBweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzJSAtIDMwcHgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLnByZXZpZXctd3JhcCB7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5zdWItdGl0bGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGlucHV0LFxuICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICYuZXJyb3Ige1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgICAgICYgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmVycm9yLW1lc3NhZ2Uge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTEwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoLTIwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5lcnJvci1tZXNzYWdlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzIGxpbmVhcjtcbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDEwIDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgICYudG9we1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5iZy11cGxvYWQtaW1hZ2Uge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIyMCk7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyMjApO1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3BsYXlsaXN0LWRlZmF1bHQtY292ZXIuanBnJyk7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygzMTApO1xuICAgICAgICAgIH1cbiAgICAgICAgICAucHJldmlldy1pbWFnZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLnJhbmRvbXtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3JhbmRvbS5qcGcnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnVwbG9hZC1sYWJlbCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4yNXMgbGluZWFyO1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgfVxuICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoMjIwKTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYygyOTYpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmRyYWdpbmcge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICB6LWluZGV4OiAxMDA1O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAucHJldmlldy13cmFwIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygxNSk7XG4gICAgICAgICAgJi5uZXcge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6ICdOZXcnO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDYwKTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyOCk7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygyOCk7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pY29uLWhlYXJ0IHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuICAgICAgICAubmFtZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnJ1bnRpbWUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wbGF5bGlzdC1pbmZvIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgICB9XG4gICAgICAgIC5kb3Qge1xuICAgICAgICAgICY6bnRoLW9mLXR5cGUoMSkge1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBhbmltRG90cyAxcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICAgICAgYW5pbWF0aW9uOiBhbmltRG90cyAxcyAuMnMgbGluZWFyIGluZmluaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgICAgIGFuaW1hdGlvbjogYW5pbURvdHMgMXMgLjRzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGtleWZyYW1lcyBhbmltRG90cyB7XG4gICAgICAgICAgZnJvbSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0byB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJldmlldy13cmFwIHtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9pY29ucy9wbGF5LWJ1dHRvbi5zdmcnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmVkaXQsXG4gICAgICAgIC5kZWxldGUge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTAgMTUpO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjI1cyBsaW5lYXI7XG4gICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZWRpdCB7XG4gICAgICAgICAgcmlnaHQ6IC01MCU7XG4gICAgICAgIH1cbiAgICAgICAgLmRlbGV0ZSB7XG4gICAgICAgICAgbGVmdDogLTUwJTtcbiAgICAgICAgfVxuICAgICAgICAubmFtZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnZhbGlkYXRpb24ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAjdmlkZW9HYWxsZXJ5IHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjAgNTApO1xuICAgICAgICAuc2xpY2stcHJldiB7XG4gICAgICAgICAgbGVmdDogcmVtLWNhbGMoLTQwKTtcbiAgICAgICAgfVxuICAgICAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKC00MCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5yYW5nZS1zbGlkZXIge1xuICAgICAgICAuaXJzLWdyaWQtdGV4dCB7XG4gICAgICAgICAgJjpudGgtb2YtdHlwZSgxbisyKSB7XG4gICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDE1IDAgMCkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMjggMCAwKSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUsXG4gICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTUpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygyOCkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jdXN0b20tb3ZlcmxheSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvbG9hZGVyLnN2Zyk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICYuaW5uZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgfVxuICAgICAgICAmLm9wYWNpdHl7XG4gICAgICAgICAgb3BhY2l0eTogLjU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5mYXZvcml0ZS1vdmVybGF5LWhvbGRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cbiAgICAgIC5wcmVsb2FkZXIge1xuICAgICAgICAubXItdG9wIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygyMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wbGF5bGlzdC12aWV3LWhlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICAgIC5zaG9ydC1pbmZvIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0byAwIDA7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucGxheWxpc3QtaW5mby1zdGVwIHtcbiAgICAgICAgLnJvdyB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA4OCU7XG4gICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucGxheWxpc3QtbW9kYWwge1xuICAgICAgICB0b3A6IHJlbS1jYWxjKDI1KSAhaW1wb3J0YW50O1xuICAgICAgICBib3R0b206IHJlbS1jYWxjKDI1KSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjVzIGxpbmVhcjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIHRvcDogcmVtLWNhbGMoNTApICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm90dG9tOiByZW0tY2FsYyg1MCkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAubW9kYWwtaW5mbyB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIC8vaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNTBweCk7XG4gICAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKHdpZHRoOiAzNzVweCkgYW5kIChtaW4taGVpZ2h0OiA2MDBweCkgYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMDBweCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMDBweCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5uby1vdmVybGF5IHtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgICAuaGVhZGVyLWluZm8ge1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICAgICAgLnN0ZXAsXG4gICAgICAgIC5iYWNrLFxuICAgICAgICAuYWRkLXZpZGVvIHtcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg1IDE1KTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMjVzIGxpbmVhcjtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJhY2sge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIC5zdGVwIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmhpZGUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLndyYXAtaW5uZXItYnV0dG9uc3tcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgfVxuICAgICAgICAucmUtcmFuZG9tLFxuICAgICAgICAuc2VsZWN0LWFsbCB7XG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAxNSk7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4yNXM7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgZW0ge1xuICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgICAgIH1cbiAgICAgICAgICBlbSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICBib3R0b206IC0ycHg7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5yZS1yYW5kb20ge1xuICAgICAgICAgIC5pY29uLWFycm93cy1jdyB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDUpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBlbSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICBib3R0b206IC0ycHg7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zY3JvbGxUb0JvdHRvbSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHJpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgYm90dG9tOiByZW0tY2FsYygxMDApO1xuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgICAgICAgYm90dG9tOiByZW0tY2FsYyg2MCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICh3aWR0aDogMzc1cHgpIGFuZCAobWluLWhlaWdodDogNjAwcHgpIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgICAgICAgICBib3R0b206IHJlbS1jYWxjKDE1MCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICByaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICAgICAgYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5hZGQtdmlkZW8ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDE1cHggYXV0bztcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMjVzIGxpbmVhcjtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5maXJzdC1zdGVwIHtcbiAgICAgICAgLmF0dHItaG9sZGVyIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIHdpZHRoOiAzMyU7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogMTYuNiU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAjc2Vjb25kU3RlcEZvcm0ge1xuICAgICAgICBtYXgtd2lkdGg6IDg4JTtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm5vdC1mb3VuZC10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgICAuZHJhZ2dhYmxlLWl0ZW0ge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB9XG4gICAgICBAa2V5ZnJhbWVzIGFuaW1MaXN0IHtcbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuICAgICAgICB0byB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmxvYWRpbmctbWFzayB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgLmxvYWRlciB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnRvdWNoIHtcbiAgICAubXktcGxheWxpc3Qge1xuICAgICAgLnBsYXlsaXN0LWluZm8ge1xuICAgICAgICAucHJldmlldy13cmFwIHtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuZWRpdCB7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmRlbGV0ZSB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnBsYXlsaXN0LWluZm8tc3RlcCB7XG4gICAgICAgIC5wcmV2aWV3LXdyYXAucGxheSB7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50aGlyZC1zdGVwIHtcbiAgICAgICAgLnByZXZpZXctd3JhcCB7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wbGF5bGlzdC12aWV3LWhlYWRlciB7XG4gICAgICAgIC5idXR0b24uYnV0dG9uLXNlY29uZGFyeSB7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgZGl2W2NsYXNzKj0nc3RlcCddIHtcbiAgICAgICAgLnJlbW92ZSB7XG4gICAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b25zLWdyb3VwIHtcbiAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wbGF5bGlzdC1tb2RhbCB7XG4gICAgICAgIC5iYWNrLFxuICAgICAgICAuc3RlcCB7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLm5vLXRvdWNoIHtcbiAgICAubXktcGxheWxpc3Qge1xuICAgICAgLnByZXZpZXctd3JhcCB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jaGVjayxcbiAgICAgICAgICAucmVtb3ZlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5lZGl0IHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuZGVsZXRlIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucGxheWxpc3QtY29udGVudC1tb2RhbCB7XG4gICAgICAgIC5wcmV2aWV3LXdyYXAge1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNoZWNrLFxuICAgICAgICAgICAgLnJlbW92ZSB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC51cGxvYWQtbGFiZWwge1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmF1dGhlbnRpY2F0aW9uLXBvcHVwLWN1c3RvbWVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICA+LmJsb2NrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgfVxuICB9XG59IiwiLy9AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9pbnRyb2R1Y2luZ19zbGlkZXJcIjtcbi5jbXMtaG9tZSB7XG4gIC8vYmFja2dyb3VuZDogcmVkO1xuICAubWFpbi1jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAxODBweDtcbiAgfVxuICAucGFnZS5tZXNzYWdlcyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAud3JhcHBlciB7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxNDQwKTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuICAuZmVhdHVyZWQtaXRlbXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg1MCAxNSk7XG4gICAgfVxuICB9XG4gIC5ib29rLWNsYXNzIHtcbiAgICAuaG9sZGVyIHtcbiAgICAgIGNvbG9yOiByZ2JhKCRibGFjaywgLjc1KTtcbiAgICAgIEBpbmNsdWRlIGN1c3RvbS1idG4tY29sb3IocmdiYSgkYmxhY2ssIC43NSkpO1xuICAgIH1cbiAgfVxuICAvLy5mZWF0dXJlZC1pdGVtcyB7XG4gIC8vICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAvLyAgICBwYWRkaW5nOiByZW0tY2FsYyg1MCAxNSk7XG4gIC8vICB9XG4gIC8vfVxuICAvLy5ib29rLWNsYXNzIHtcbiAgLy8gIC5ob2xkZXIge1xuICAvLyAgICBjb2xvcjogcmdiYSgkYmxhY2ssIC43NSk7XG4gIC8vICAgIC5idG4tY3VzdG9tIHtcbiAgLy8gICAgICBjb2xvcjogcmdiYSgkYmxhY2ssIC43NSk7XG4gIC8vICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAvLyAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIC43NSk7XG4gIC8vICAgICAgfVxuICAvLyAgICB9XG4gIC8vICB9XG4gIC8vfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTMxNXB4KSB7XG4gIC5jbXMtaG9tZSAubWFpbi1jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAxNjBweFxuICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgLmNtcy1ob21lIC5tYWluLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDE0MHB4XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwODBweCkge1xuICAuY21zLWhvbWUgLm1haW4tY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogMHB4XG4gIH1cbn1cblxuLmhvbWUtcGFnZSB7XG4gIC5wYWdlLm1lc3NhZ2VzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgLnBhbmVsIHtcbiAgICBtaW4taGVpZ2h0OiBjYWxjKDcydmggLSAxMHB4KTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxNSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNzUlIGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5jdXN0b20td29ya291dCB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAyNSUgY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgLmhvbGRlciB7XG4gICAgICAgICAgLy9tYXJnaW4tdG9wOiByZW0tY2FsYygtMTAwKTtcblxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuYm9vay1ob2xkZXIge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmludHJvZHVjaW5nLWdhbGxlcnkge1xuICAgICAgaGVpZ2h0OiA2NXZoO1xuICAgICAgLy9taW4taGVpZ2h0OiBjYWxjKDY1dmggLSAxNXB4KTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMzApO1xuICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNTUwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAvL3BhZGRpbmc6IDAgODBweDtcbiAgICAgICAgLy9taW4taGVpZ2h0OiA2NDBweDtcbiAgICAgIH1cbiAgICAgIC50b3VjaCAmIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4c21hbGwgZG93bikge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuaW50cm8tc2VjdGlvbiB7XG4gICAgICBtaW4taGVpZ2h0OiByZW0tY2FsYyg3MzApO1xuICAgICAgLy9oZWlnaHQ6IGNhbGMoMTAwdmggLSAxNXB4KTtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDE4MHB4KTtcbiAgICB9XG4gICAgLmludHJvZHVjaW5nX3NsaWRlciwgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMzAgMTApO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDQwIDIwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNsaWNrLXNsaWRlciB7XG4gICAgICAmLmJhY2tncm91bmQge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDMwKTtcbiAgICAgICAgLnNsaWNrLXNsaWRlci1pdGVtIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZnVsbC13aWR0aCB7XG4gICAgICAgIC5zbGlkZXItYmcge1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5zbGlkZXItYmcge1xuICAgICAgLy9oZWlnaHQ6IDEwMCU7XG4gICAgICAvL21pbi1oZWlnaHQ6IDUwdmg7XG4gICAgfVxuICAgIC50b3VjaCAmIHtcbiAgICAgIC8vbWluLWhlaWdodDogMXB4O1xuICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoMzUwKTtcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoNTAgMTUpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg3NSAxNSk7XG4gICAgICAgICYuaW50cm9kdWNpbmctZ2FsbGVyeSB7XG4gICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoNzUgNDUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAvL3BhZGRpbmc6IHJlbS1jYWxjKDE1MCAxNSk7XG4gICAgICB9XG4gICAgICAvLyYuY3VzdG9tLXdvcmtvdXQge1xuICAgICAgLy8gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIC8vICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwMCAxNSk7XG4gICAgICAvLyAgfVxuICAgICAgLy8gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAvLyAgICBwYWRkaW5nOiByZW0tY2FsYygxNTAgMTUpO1xuICAgICAgLy8gIH1cbiAgICAgIC8vfVxuXG4gICAgICAuaW50cm9kdWNpbmdfc2xpZGVyLCAuc2Vjb25kX2ludHJvZHVjaW5nX3NsaWRlciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc2xpY2stc2xpZGVyIHtcbiAgICAgICAgJi5iYWNrZ3JvdW5kLFxuICAgICAgICAuZnVsbC13aWR0aCB7XG4gICAgICAgICAgLnNsaWRlci1iZyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDM1dmg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgICAgICAgICBoZWlnaHQ6IDYwdmg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucHJvZHVjdC1zbGlkZXItYmxvY2sge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucm93IHtcbiAgICAgICAgbWluLWhlaWdodDogMXB4O1xuICAgICAgfVxuICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgLy9wYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNTApO1xuICAgICAgICAvL3BhZGRpbmctdG9wOiByZW0tY2FsYyg1MCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTAwKTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMjUwKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxNTApO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygzMDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgLy9iYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAucm93IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgZG93bikge1xuICAgICAgaGVpZ2h0OiA3MnZoO1xuICAgICAgJi5pbnRyby1zZWN0aW9uIHtcbiAgICAgICAgLy9taW4taGVpZ2h0OiByZW0tY2FsYyg0NTApO1xuICAgICAgICAvL2hlaWdodDogNzB2aDtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTAwIDE1KTtcbiAgICAgIH1cbiAgICAgICYuZmVhdHVyZWQtaXRlbXMge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxMDEgMTUpO1xuICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDE4OCk7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAvL21pbi1oZWlnaHQ6IGNhbGMoNzJ2aCAtIDE1cHgpO1xuICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNTUwKTtcbiAgICAgIGhlaWdodDogNzJ2aDtcbiAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygyMDApO1xuICAgICAgfVxuICAgICAgJi5mZWF0dXJlZC1pdGVtcyB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMjUwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJvdyB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG4gICAgICAgIC8vbWluLWhlaWdodDogODB2aDtcbiAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNjAwKTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDFyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDEsICAuaDEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICB9XG4gICAgfVxuICAgIC8vLmxhcmdlLWNvbnRlbnQgIHtcbiAgICAvLyAgcCB7XG4gICAgLy8gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAvLyAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIC8vICAgIH1cbiAgICAvLyAgfVxuICAgIC8vfVxuICB9XG4gIC5ob2xkZXIge1xuICAgIGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjkpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAuYm9vay1ob2xkZXIge1xuICAgIC8vbWFyZ2luLXRvcDogcmVtLWNhbGMoODApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIGRvd24pIHtcbiAgICAgIC8vbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAvL21hcmdpbi10b3A6IHJlbS1jYWxjKDMwKTtcbiAgICB9XG4gICAgLmhvbGRlciB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNjcwKTtcbiAgICAgIC8vYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIC43NSk7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg2NSAwKTtcbiAgICAgIGNvbG9yOiAkbGlnaHQtYmxhY2s7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tYnRuLWNvbG9yKCRsaWdodC1ibGFjayk7XG4gICAgfVxuICAgIC5yb3cge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIC5jdXN0b20td29ya291dCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkbGlnaHQtYmxhY2s7XG4gICAgICBAaW5jbHVkZSBjdXN0b20tYnRuLWNvbG9yKCRsaWdodC1ibGFjayk7XG4gICAgfVxuICB9XG59IiwiLy9idXR0b25zXG5cbi5idG4tYXJyb3cge1xuICBoZWlnaHQ6IHJlbS1jYWxjKDQyKTtcbiAgd2lkdGg6IHJlbS1jYWxjKDY2KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLy9qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2QyZDNkMztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBib3JkZXIgLjNzIGVhc2U7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgIHdpZHRoOiByZW0tY2FsYygxMTQpO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRibGFjaztcbiAgfVxuICBzcGFuIHtcbiAgICB3aWR0aDogcmVtLWNhbGMoMjcpO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDU1KTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnXFxlODAzJztcbiAgICAgIGZvbnQtZmFtaWx5OiAnZm9udGVsbG8nO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IC0xcHg7XG4gICAgICB0b3A6IC04cHg7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbiAgICB9XG4gIH1cbiAgJi5vbiB7XG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAvL2JhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvbG9hZGVyLnN2Zyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IHJlbS1jYWxjKDMwKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB9XG59XG5cbi5idG4tY3VzdG9tIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6IHJnYmEoJHdoaXRlLCAuOSk7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAmLmJsYWNrIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIsIHNwYW46YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgfVxuICAubm8tdG91Y2ggJiB7XG4gICAgJi5ibGFjayB7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgY29sb3I6IHJnYmEoJHdoaXRlLCAuOSk7XG4gICAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgICBzcGFuOmFmdGVyIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogNHB4O1xuICAgIHdpZHRoOiA0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAuOSk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgZWFzZTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIHNwYW4ge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE3IDIxKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogNHB4O1xuICAgICAgd2lkdGg6IDRweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAuOSk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTJweDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2U7XG4gICAgfVxuICB9XG59XG5cbi5yZWFkLW1vcmUge1xuICBjb2xvcjogJGJsYWNrO1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAn4oCiJztcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE5KTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTApO1xuICB9XG59XG5cbi51bmRlcmxpbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogLTJweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzIGVhc2U7XG4gIH1cbiAgJjpob3ZlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICB9XG59XG5cbi8vZW5kIGJ1dHRvbnMiLCJAaW1wb3J0IFwiLi4vY29tcG9uZW50cy9tb2RhbHNcIjtcbkBpbXBvcnQgXCIuLi9jb21wb25lbnRzL2J1dHRvbnNcIjtcblxuKiB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuLmFsaWdubGVmdCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMS41ZW07XG59XG5cbi53ZWJzZWN1cml0eS10YWJsZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1pbi13aWR0aDogdW5zZXQ7XG4gIHdpZHRoOiByZW0tY2FsYygyMjgpO1xuICBib3JkZXItY29sbGFwc2U6IHVuc2V0O1xuXG4gIHRkOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg1IDIwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg1IDEzKTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDYwKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgZG93bikge1xuICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDEwMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGZvbnQ6IGJvbGQgNXB4IHZlcmRhbmEsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDBweDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgZG93bikge1xuICAgICAgICBmb250OiBib2xkIDhweCB2ZXJkYW5hLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogMTIwcHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYWxpZ25yaWdodCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogMS41ZW07XG59XG5cbi5hbGlnbmNlbnRlciB7XG4gIGNsZWFyOiBib3RoO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuaHRtbCwgYm9keSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuYm9keSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTApO1xuICBtaW4td2lkdGg6IHJlbS1jYWxjKDMyMCk7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGluaGVyaXQ7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCAxNSk7XG4gIH1cblxuICAmLmNtcy1uby1yb3V0ZSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG5oMSwgLmgxIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICBmb250LXNpemU6IDQ1cHg7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgZm9udC1zaXplOiA3MHB4O1xuICB9XG59XG5cbi5jb2wyLXJpZ2h0LWxheW91dCB7XG4gIG1heC13aWR0aDogcmVtLWNhbGMoMTYwMCk7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ucGFnZS13cmFwLCAud3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuXG5ib2R5Om5vdCguY21zLWhvbWUpIHtcbiAgLm1haW4tY29udGFpbmVyIHtcbiAgICB0cmFuc2l0aW9uOiBwYWRkaW5nICR0cmFuc2l0aW9uO1xuICAgIHBhZGRpbmctdG9wOiByZW0tY2FsYygxMDQpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA0O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTA4KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTUxKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDE3OCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTU5KTtcbiAgICB9XG4gIH1cbn1cblxudWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5ub3RlLW1zZyB7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICBwYWRkaW5nOiByZW0tY2FsYygwIDEwKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTUpO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICB9XG59XG5cbi5wYWdlLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzNSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNzApO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDkwKTtcbiAgfVxuXG4gICYucGFnZS10aXRsZS1taWRkbGUge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNzApO1xuICAgIH1cbiAgfVxuXG4gIGgxLCAgLmgxIHtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICB9XG59XG5cbi5jdXN0b20tbGlzdCB7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuXG4gIGxpIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAn4oCiJztcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTkpO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICB9XG59XG5cbi5wYXlwYWwtZXhwcmVzcy1yZXZpZXctY3VzdG9tIHtcbiAgLmxlZ2VuZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICB9XG5cbiAgLmJveC10aXRsZSwgLmJveC1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gIH1cbn1cblxuYSB7XG4gIHRyYW5zaXRpb246IGNvbG9yIC4yNXM7XG59XG5cbmFkZHJlc3Mge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmlucHV0W3R5cGU9dGV4dF06Oi1tcy1jbGVhciB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuaW5wdXQ6Oi13ZWJraXQtY29udGFjdHMtYXV0by1maWxsLWJ1dHRvbiB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbn1cblxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCxcbnRleHRhcmVhOi13ZWJraXQtYXV0b2ZpbGwsXG5zZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDEwMDBweCB3aGl0ZSBpbnNldCAhaW1wb3J0YW50O1xufVxuXG5pbnB1dCwgc2VsZWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMyk7XG59XG5cbi5yZXF1aXJlZCwgLl9yZXF1aXJlZCB7XG4gID4gLmxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcqJztcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgfVxuICB9XG59XG5cbi5pbnB1dC1ib3gge1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICB9XG59XG5cbi52YWxpZGF0aW9uLWFkdmljZSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIC4xKTtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICBmb250LWZhbWlseTogJ21pbGxlcicsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICB9XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgfVxufVxuXG4ubGFyZ2UtcGFkZGluZyB7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDM1IDAgMzApO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDcwIDAgNjApO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwMCAwIDg1KTtcbiAgfVxufVxuXG4ubWlkZGxlLXBhZGRpbmcge1xuICBwYWRkaW5nOiByZW0tY2FsYygyMCAwIDMwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg0MCAwIDYwKTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg1MCAwIDg1KTtcbiAgfVxufVxuXG4ubGFyZ2UtbWFyZ2luIHtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDcwKTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMDApO1xuICB9XG59XG5cbi5taWRkbGUtbWFyZ2luIHtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg3NSk7XG4gIH1cbn1cblxuLnNtYWxsLW1iIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLm1pZGRsZS1tYiB7XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbn1cblxuLm5vLWRpc3BsYXkge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5uby12aXNpYmxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5lbWFpbC1oaW50IHtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gIGNvbG9yOiByZ2JhKCMwMjAyMDIsIC41KTtcbiAgbWFyZ2luLXRvcDogLTFyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgbWFyZ2luLXRvcDogLTEuNXJlbTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgfVxufVxuXG4ud2l0aC1wYWRkaW5nIHtcbiAgcGFkZGluZzogcmVtLWNhbGMoMCAxNSk7XG4gIG1heC13aWR0aDogcmVtLWNhbGMoMjkwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cblt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG5bdHlwZT0ncmFkaW8nXSArIGxhYmVsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5tZXNzYWdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiByZW0tY2FsYygxMCk7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUpO1xuXG4gICYuc3VjY2VzcyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHN1Y2Nlc3MtY29sb3I7XG4gIH1cblxuICAmLmVycm9yIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkYWxlcnQtY29sb3I7XG4gIH1cblxuICAmLm5vdGljZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2UyNjcwMztcbiAgfVxufVxuXG4ubWVzc2FnZXMtd3JhcHBlciwgLmNoZWNrb3V0LWNhcnQtaW5kZXggLnBhZ2UubWVzc2FnZXMge1xuICBwYWRkaW5nOiAxcmVtIDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLy9saSB7XG4gIC8vICB1bCB7XG4gIC8vICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIC8vICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLy8gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIC8vICB9XG4gIC8vICBsaSB7XG4gIC8vXG4gIC8vICB9XG4gIC8vICAmLnN1Y2Nlc3MtbXNnIHtcbiAgLy8gICAgbGkge1xuICAvLyAgICB9XG4gIC8vICB9XG4gIC8vICAmLmVycm9yLW1zZyB7XG4gIC8vICAgIGxpIHtcbiAgLy8gICAgfVxuICAvLyAgfVxuICAvLyAgJi5ub3RpY2UtbXNnIHtcbiAgLy8gICAgbGkge1xuICAvLyAgICB9XG4gIC8vICB9XG4gIC8vfVxufVxuXG4ud2hpdGUtbG9hZGVyIHtcbiAgLy9iYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2xvYWRlci5zdmcpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IHJlbS1jYWxjKDQ4KTtcbiAgei1pbmRleDogMjAwO1xuICBwYWRkaW5nOiByZW0tY2FsYyg1MCAyMCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubG9hZGluZyB7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDUwIDApO1xufVxuXG4uZnVsbC13aWR0aCB7XG4gIC5pbnB1dC10ZXh0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4ub3ZlcmZsb3cge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubGltaXRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgc2VsZWN0IHtcbiAgICAgIHdpZHRoOiByZW0tY2FsYygyOTApO1xuICAgIH1cbiAgfVxuXG4gIGxhYmVsIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjApO1xuICB9XG5cbiAgc2VsZWN0IHtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDI5MCk7XG4gIH1cbn1cblxuLnByaW50LXdyYXBwZXIge1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gIH1cblxuICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0NSk7XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogcmVtLWNhbGMoMTcpO1xuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTUpO1xuICB9XG5cbiAgLnByaW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cblxuLnN1Yi10aXRsZS51bmRlcmxpbmVkIHtcbiAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDI0KTtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjQpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIC4xKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPWZpbGVdIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5jdXN0b20tb3ZlcmxheSwgLnBsZWFzZS13YWl0IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgb3BhY2l0eTogLjU7XG4gIC8vYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9sb2FkZXIuc3ZnKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiByZW0tY2FsYyg0OCk7XG4gIHotaW5kZXg6IDIwMDtcbn1cblxuI3Jldmlldy1wbGVhc2Utd2FpdCB7XG4gIGZvbnQtc2l6ZTogMDtcblxuICBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuI2RldGFpbHMtcmVsb2FkIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi5jdXN0b20tb3ZlcmxheSB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgJi52aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4ud2hpdGUtYmcge1xuICBoZWlnaHQ6IHJlbS1jYWxjKDEwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgaGVpZ2h0OiByZW0tY2FsYygxNSk7XG4gIH1cbn1cblxuLy9zbGlja1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uc2xpY2stc2xpZGUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXM7XG4gIG91dGxpbmU6IG5vbmU7XG5cbiAgYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIGFuaW1hdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG5cbi5zbGljay1zbGlkZXItbmF2IHtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxuXG4gIC5zbGljay1zbGlkZSB7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5pbWFnZS1ob2xkZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGhlaWdodDogNjBweDtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHNtYWxsKSB7XG4gICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgaGVpZ2h0OiAxMjVweDtcbiAgICAgIHBhZGRpbmc6IDAgMjVweDtcbiAgICB9XG4gIH1cbn1cblxuLy9lbmQgc2xpY2tcblxuLy90YWJsZXNcblxuQG1lZGlhIHByaW50IHtcbiAgaW1nLCAuZGVzY3JpcHRpb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDtcbiAgfVxufVxuXG50YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBtaW4td2lkdGg6IHJlbS1jYWxjKDcwMCk7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcblxuICBoNCB7XG4gICAgZm9udC1mYW1pbHk6ICdCcmFuZG9uR3JvdGVzcXVlJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIH1cblxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICB9XG5cbiAgdGJvZHkge1xuICAgIHRyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWRlZWYxO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHtcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG5cbiAgICB0ciB0ZCB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCAxOCAwKTtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2x1bW4tc3BhbjogMTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTAgMjggMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdGgge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwIDIwKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxNSAzNyk7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxuXG4gIHRkIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygyNSAxOCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDM4IDI4KTtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgLy9mbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMSk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyNSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDE4NXB4KTtcbiAgICAgICAgfVxuICAgICAgICAvL0BpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAvLyAgbWF4LXdpZHRoOiA2MCU7XG4gICAgICAgIC8vfVxuICAgICAgICBzcGFuLCBwIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJiNteS1vcmRlcnMtdGFibGUge1xuICAgIC5udW1iZXIge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gIH1cblxuICAmI215LW9yZGVycy10YWJsZSwgJi5teS10YWJsZSB7XG4gICAgdGJvZHkgdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmI215LXNoaXBtZW50LXRhYmxlLTEge1xuICAgIHRib2R5IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5mb3ItdGZvb3Qge1xuICBtaW4td2lkdGg6IDFweDtcblxuICB0ciB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG5cbiAgdGgge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gIH1cblxuICB0ZCB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTAgMCk7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICB9XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoNTApO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4uc2Nyb2xsYWJsZSB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgJi53aXRoLXBkIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygwIDAgMTUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMCAxNSk7XG4gICAgfVxuICB9XG59XG5cbi8vZW5kIHRhYmxlc1xuXG4vL2xheW91dFxuXG4uY29sMi1yaWdodC1sYXlvdXQge1xuICAubWFpbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzNSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDcwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg5MCk7XG4gICAgfVxuICB9XG5cbiAgLmNvbC1tYWluLCAuY29sLXJpZ2h0IHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygwIDEwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDE1KTtcbiAgICB9XG4gIH1cblxuICAuY29sLW1haW4ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuY29sLXJpZ2h0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4vL2VuZCBsYXlvdXRcblxuI2F3LWxuLWZpbHRlcnMtY29udGFpbmVyIGRkIG9sLmN1c3RvbS1maWx0ZXJlZC1saXN0IGxpLFxuI2F3LWxuLWZpbHRlcnMtY29udGFpbmVyIGRkIG9sLmZpbHRlci10eXBlIGxpIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMSAhaW1wb3J0YW50O1xufVxuXG5kaXYubWFnZS1lcnJvciwgLmZpZWxkLWVycm9yIHtcbiAgY29sb3I6IHJlZDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4ubm8tYnVsbGV0cyB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLmN1c3RvbS10YWJsZSB7XG4gIHRoZWFkLCB0Ym9keSwgdGZvb3Qge1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgfVxuXG4gIC5pdGVtcy1xdHkge1xuICAgIC5pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuW3YtY2xvYWtdIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnZ1ZS1tb2RhbCB7XG4gIC5tb2RhbC1tYXNrIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogOTk5ODtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuICB9XG5cbiAgLm1vZGFsLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuXG4gIC5tb2RhbC1jb250YWluZXIge1xuICAgIHdpZHRoOiAzMDBweDtcbiAgICBtYXJnaW46IDBweCBhdXRvO1xuICAgIHBhZGRpbmc6IDIwcHggMzBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgICBib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjMzKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICB9XG5cbiAgLm1vZGFsLWhlYWRlciBoMyB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBjb2xvcjogIzQyYjk4MztcbiAgfVxuXG4gIC5tb2RhbC1ib2R5IHtcbiAgICBtYXJnaW46IDIwcHggMDtcbiAgfVxuXG4gIC5tb2RhbC1kZWZhdWx0LWJ1dHRvbiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgLypcbiAgICogVGhlIGZvbGxvd2luZyBzdHlsZXMgYXJlIGF1dG8tYXBwbGllZCB0byBlbGVtZW50cyB3aXRoXG4gICAqIHRyYW5zaXRpb249XCJtb2RhbFwiIHdoZW4gdGhlaXIgdmlzaWJpbGl0eSBpcyB0b2dnbGVkXG4gICAqIGJ5IFZ1ZS5qcy5cbiAgICpcbiAgICogWW91IGNhbiBlYXNpbHkgcGxheSB3aXRoIHRoZSBtb2RhbCB0cmFuc2l0aW9uIGJ5IGVkaXRpbmdcbiAgICogdGhlc2Ugc3R5bGVzLlxuICAgKi9cblxuICAubW9kYWwtZW50ZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAubW9kYWwtbGVhdmUtYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgLm1vZGFsLWVudGVyIC5tb2RhbC1jb250YWluZXIsXG4gIC5tb2RhbC1sZWF2ZS1hY3RpdmUgLm1vZGFsLWNvbnRhaW5lciB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB9XG59XG5cbi5mbG9hdC1jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLmxpbmstcHJpbnQge1xuICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQ1KTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gIH1cblxuICBpbWcge1xuICAgIHdpZHRoOiByZW0tY2FsYygxNyk7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxNSk7XG4gIH1cbn1cblxuLy9CUkFJTlRSRUUgU1RZTEVTXG5cbi8qKlxuICogM0QgU2VjdXJlIENvbnRhaW5lclxuICovXG4jYnJhaW50cmVlLXRocmVlLWQtbW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgd2lkdGg6IDEwMHZ3O1xuICB6LWluZGV4OiAxMDAwMDA7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbiNicmFpbnRyZWUtdGhyZWUtZC1tb2RhbCAuYnQtbW9kYWwtZnJhbWUge1xuICBoZWlnaHQ6IDQyMHB4O1xuICB3aWR0aDogNDQwcHg7XG4gIG1hcmdpbjogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgei1pbmRleDogMjtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xufVxuXG4jYnJhaW50cmVlLXRocmVlLWQtbW9kYWwgLmJ0LW1vZGFsLWJvZHkge1xuICBoZWlnaHQ6IDM4MHB4O1xuICBtYXJnaW46IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCBsaWdodGdyYXk7XG59XG5cbiNicmFpbnRyZWUtdGhyZWUtZC1tb2RhbCAuYnQtbWFzayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgb3BhY2l0eTogMC43NTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDY1MHB4KSB7XG4gICNicmFpbnRyZWUtdGhyZWUtZC1tb2RhbCAuYnQtbW9kYWwtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8qKlxuICogQXBwbGUgUGF5IGJ1dHRvblxuICovXG4uYnJhaW50cmVlLWFwcGxlcGF5LWNvbnRhaW5lci1wcm9kdWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIC5icmFpbnRyZWUtYXBwbGUtcGF5LWJ1dHRvbiB7XG4gICAgcGFkZGluZzogMTBweCAwcHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5icmFpbnRyZWUtYXBwbGVwYXktY29udGFpbmVyLXByb2R1Y3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgLmJyYWludHJlZS1hcHBsZS1wYXktYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4uYnJhaW50cmVlLWFwcGxlLXBheS1idXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDIwMHB4O1xuICBtaW4taGVpZ2h0OiA0MHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCBibGFjaztcbiAgLy9iYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgLy9iYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHBhZGRpbmc6IDJweDtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjE1cztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvYXBwbGUtcGF5LnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG59XG5cbi8qKlxuICogUFAgQ3JlZGl0IENhbGN1bGF0b3JcbiAqL1xuLnBwY3JlZGl0LXN1bW1hcnkge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICMwMDlDREUsICMwMDMwODcpO1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDEwcHggMHB4O1xufVxuXG4ucHBjcmVkaXRjYWxjLWNvbnRhaW5lciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZWRlZGU7XG4gIGJhY2tncm91bmQ6ICNGRkY7XG59XG5cbi5wcGNyZWRpdGNhbGMtaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogI0ZGRjtcbiAgcGFkZGluZzogMTVweDtcbn1cblxuLnBwY3JlZGl0Y2FsYy1sZWdhbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVkZWRlO1xuICBwYWRkaW5nOiAxNXB4O1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDJyZW07XG59XG5cbi5wcGNyZWRpdGNhbGMtaW5zdGFsbWVudHMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjREVERURFO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0RFREVERTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtcbn1cblxuLnBwY3JlZGl0Y2FsYy1pbnN0YWxtZW50cyBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4ucHBjcmVkaXRjYWxjLWluc3RhbG1lbnRzLXRlcm0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBjb2xvcjogIzAwMDtcbn1cblxuLnBwY3JlZGl0Y2FsYy1pbnN0YWxtZW50cy10ZXJtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzAwOUNERTtcbiAgY29sb3I6ICNGRkY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnBwY3JlZGl0Y2FsYy1pbnN0YWxtZW50cy10ZXJtLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICMwMDMwODc7XG4gIGNvbG9yOiAjRkZGO1xufVxuXG4ucHBjcmVkaXRjYWxjLWluc3RhbG1lbnQtc3VtbWFyeSB7XG4gIHBhZGRpbmc6IDE1cHg7XG59XG5cbi5wcGNyZWRpdGNhbGMtaW5zdGFsbWVudC1zdW1tYXJ5IGRsIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4ucHBjcmVkaXRjYWxjLWluc3RhbG1lbnQtc3VtbWFyeSBkdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnBwY3JlZGl0Y2FsYy1pbnN0YWxtZW50LXN1bW1hcnkgZGQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8qKlxuICogQ0MgRk9STVxuICovXG4jYnJhaW50cmVlX2V4cGlyYXRpb25EYXRlIHtcbiAgd2lkdGg6IDkwcHg7XG59XG5cbi8qKlxuICogR29vZ2xlIFBheVxuICovXG5idXR0b24uYnJhaW50cmVlLWdvb2dsZXBheS1idXR0b24ge1xuICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYm9yZGVyOiAwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNoYWRvdzogcmdiYSg2MCwgNjQsIDY3LCAwLjMpIDBweCAxcHggMXB4IDBweCwgcmdiYSg2MCwgNjQsIDY3LCAwLjE1KSAwcHggMXB4IDNweCAxcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiA0MHB4O1xuICBtaW4taGVpZ2h0OiA0MHB4O1xuICBwYWRkaW5nOiAxMXB4IDI0cHg7XG59XG5cbmJ1dHRvbi5icmFpbnRyZWUtZ29vZ2xlcGF5LWJ1dHRvbi5ibGFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHBhZGRpbmc6IDEycHggMjRweCAxMHB4O1xufVxuXG5idXR0b24uYnJhaW50cmVlLWdvb2dsZXBheS1idXR0b24ud2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG5idXR0b24uYnJhaW50cmVlLWdvb2dsZXBheS1idXR0b24uc2hvcnQge1xuICBtaW4td2lkdGg6IDkwcHg7XG4gIHdpZHRoOiAxNjBweDtcbn1cblxuYnV0dG9uLmJyYWludHJlZS1nb29nbGVwYXktYnV0dG9uLmJsYWNrLnNob3J0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2luc3RhbnRidXkvc3ZnL2RhcmtfZ3BheS5zdmcpO1xufVxuXG5idXR0b24uYnJhaW50cmVlLWdvb2dsZXBheS1idXR0b24ud2hpdGUuc2hvcnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW5zdGFudGJ1eS9zdmcvbGlnaHRfZ3BheS5zdmcpO1xufVxuXG5idXR0b24uYnJhaW50cmVlLWdvb2dsZXBheS1idXR0b24uYmxhY2s6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVmNjM2ODtcbn1cblxuYnV0dG9uLmJyYWludHJlZS1nb29nbGVwYXktYnV0dG9uLmJsYWNrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNjNDA0Mztcbn1cblxuYnV0dG9uLmJyYWludHJlZS1nb29nbGVwYXktYnV0dG9uLndoaXRlOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbmJ1dHRvbi5icmFpbnRyZWUtZ29vZ2xlcGF5LWJ1dHRvbi53aGl0ZTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6ICNlOGU4ZTggMCAxcHggMXB4IDAsICNlOGU4ZTggMCAxcHggM3B4O1xufVxuXG5idXR0b24uYnJhaW50cmVlLWdvb2dsZXBheS1idXR0b24ud2hpdGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xufVxuXG5idXR0b24uYnJhaW50cmVlLWdvb2dsZXBheS1idXR0b24ubG9uZyB7XG4gIG1pbi13aWR0aDogMTUycHg7XG4gIHdpZHRoOiAyNDBweDtcbn1cblxuYnV0dG9uLmJyYWludHJlZS1nb29nbGVwYXktYnV0dG9uLndoaXRlLmxvbmcge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW5zdGFudGJ1eS9zdmcvbGlnaHQvZW4uc3ZnKTtcbn1cblxuYnV0dG9uLmJyYWludHJlZS1nb29nbGVwYXktYnV0dG9uLmJsYWNrLmxvbmcge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vaW5zdGFudGJ1eS9zdmcvZGFyay9lbi5zdmcpO1xufVxuXG4uZ29vZ2xlcGF5LW1pbmljYXJ0LWxvZ28ge1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wYXltZW50LW1ldGhvZC1icmFpbnRyZWUgLmhvc3RlZC1jb250cm9sIHtcbiAgcGFkZGluZzogOHB4IDE1cHg7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4jYnJhaW50cmVlX2NjX251bWJlciB7XG4gIHBhZGRpbmctbGVmdDogNjhweDtcbn1cblxuLnBheW1lbnQtbWV0aG9kLWJyYWludHJlZSAuY3Z2IC5maWVsZC10b29sdGlwIHtcbiAgbGVmdDogMTByZW07XG4gIHRvcDogMTBweDtcbn1cblxuLmNoZWNrb3V0LXBheW1lbnQtbWV0aG9kIC5jcmVkaXQtY2FyZC10eXBlcy5icmFpbnRyZWUtY3JlZGl0LWNhcmQtdHlwZXMgaW1nIHtcbiAgd2lkdGg6IDMwcHg7XG4gIC13ZWJraXQtZmlsdGVyOiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmU7XG59XG5cbi5icmFpbnRyZWUtY2FyZC1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYnJhaW50cmVlLWNyZWRpdC1jYXJkLXNlbGVjdGVkIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgbGVmdDogMTBweDtcbn1cblxuLmJyYWludHJlZS1wYXlwYWwtbG9nby5vbmVjbGljay1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbn1cblxuI3BheW1lbnRfZm9ybV9icmFpbnRyZWVfYWNoX2RpcmVjdF9kZWJpdCB7XG4gIC5maWVsZCA+IC5maWVsZHMge1xuICAgIC5maWVsZCB7XG4gICAgICAubGFiZWwge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgfVxuXG4gICAgICAmLnJlcXVpcmVkID4gLmxhYmVsOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyonO1xuICAgICAgICBjb2xvcjogI2UwMmIyNztcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBtYXJnaW46IDAgMCAwIDVweDtcbiAgICAgIH1cblxuICAgICAgLmNvbnRyb2wge1xuICAgICAgICBtYXJnaW46IDEwcHggMTBweCAwIDA7XG5cbiAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl06OnBsYWNlaG9sZGVyLCBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgY29sb3I6IGxpZ2h0Z3JleTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jcGF5bWVudC1tZXRob2QtYnJhaW50cmVlLWNjLXZhdWx0IHtcbiAgLmZpZWxkIHtcbiAgICAmLnJlcXVpcmVkIHtcbiAgICAgIC5sYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyonO1xuICAgICAgICAgIGNvbG9yOiAjZTAyYjI3O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAwIDVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5ob3N0ZWQtY29udHJvbCB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMmMyYzI7XG4gICAgICBib3JkZXItcmFkaXVzOiAxcHg7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICBwYWRkaW5nOiAwIDlweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogNXJlbTtcblxuICAgICAgJi5icmFpbnRyZWUtaG9zdGVkLWZpZWxkcy1pbnZhbGlkOm5vdCguYnJhaW50cmVlLWhvc3RlZC1maWVsZHMtZm9jdXNlZCkgfiAuaG9zdGVkLWVycm9yIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5ob3N0ZWQtZXJyb3Ige1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBjb2xvcjogI2UwMmIyNztcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIG1hcmdpbi10b3A6IDdweDtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG59XG5cbi5saXZlX3N0cmVhbS1pbmRleC1pbmRleCB7XG4gIC5wYWdlLXRpdGxlLXdyYXBwZXIge1xuICAgIGgxLCAuaDEge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxufSIsIi5hY2NvcmRpb24ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzUpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDcwKTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMDApO1xuICB9XG4gID5saSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAuMSk7XG4gICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxNSAyMCAxNSAwKTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDMwIDIwIDMwIDApO1xuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGU4MDUnO1xuICAgICAgICBmb250LWZhbWlseTogJ2ZvbnRlbGxvJztcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZTtcbiAgICAgIH1cbiAgICAgIGgyIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIH1cbiAgICB9XG4gICAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgIH1cbiAgICAgIHVsLCA+YSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI0KTtcbiAgICAgIH1cbiAgICAgICoge1xuICAgICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJAaW1wb3J0IFwiLi4vY29tcG9uZW50cy9hY2NvcmRpb25cIjtcblxuLmRlc2NyLWhvbGRlciB7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDM1KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2MCk7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoODApO1xuICB9XG4gIGgxLCAuaDEsIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxuICBhZGRyZXNzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIH1cbn1cblxuLnRyYWluaW5nLWJsb2NrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1ncmF5O1xuICBwYWRkaW5nOiByZW0tY2FsYygyNSAxNSk7XG4gIG1hcmdpbjogcmVtLWNhbGMoMzApIGF1dG8gMDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIG1hcmdpbjogcmVtLWNhbGMoNjApIGF1dG8gcmVtLWNhbGMoMjApO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUwKTtcbiAgfVxuICAuaG9sZGVyIHtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDUwMCk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbiAgaDMge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAn4oCiJztcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgYm90dG9tOiAtMS4zNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMnB4O1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG4gIH1cbiAgLmJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIHAgYSB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICBwIHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuLnRlcm1zLWNvbmRpdGlvbnMge1xuICBoMSwgIC5oMSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gIH1cbn1cblxuLnRyYWluaW5nLWRlc2NyIHtcbiAgcCB7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYyg1MjApO1xuICAgIG1hcmdpbjogMCBhdXRvIDEuNXJlbTtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cblxuLnRyYWluaW5nLXBpY3R1cmUge1xuICBtYXJnaW46IHJlbS1jYWxjKDMwKSBhdXRvIDA7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDYwKSBhdXRvIHJlbS1jYWxjKDIwKTtcbiAgfVxufVxuXG4ucGFnZS1lcnJvci1ob2xkZXIge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA3NSUgY2VudGVyO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBtaW4taGVpZ2h0OiByZW0tY2FsYyg1NjgpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiByZW0tY2FsYygxNSk7XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjZDhkZWVlLCAuNik7XG4gIH1cbiAgLmVycm9yLXdyYXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMjgwKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgPiBkaXYge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg2MCk7XG4gICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDgwKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMTApO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMi4zcHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDMuM3B4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgfVxufVxuXG4uc2NoZWR1bGUtYmxvY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW46IDMwcHggMDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgbWFyZ2luOiA1MHB4IDAgMDtcbiAgfVxuICAudGV4dC1ob2xkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDM1MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMjlweDtcbiAgICB9XG4gICAgLmJnLWhvbGRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgICB0b3A6IC01cHg7XG4gICAgICByaWdodDogLTM1JTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgIHJpZ2h0OiAtNjAlO1xuICAgICAgICBoZWlnaHQ6IDExMCU7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudGl0bGUge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAzMnB4O1xuICAgIGNvbG9yOiAjODA4MTg1O1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogNDJweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiA0cHg7XG4gICAgfVxuICB9XG4gIC55ZWFyIHtcbiAgICBjb2xvcjogI2U5MWUyNTtcbiAgICBsZXR0ZXItc3BhY2luZzogMTVweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDIycHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAyMHB4O1xuXG4gICAgfVxuICB9XG4gIC5saW5rLWhvbGRlciB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAjNDk0OTQ5O1xuICAgIH1cbiAgfVxuICAuc2NoZWR1bGUtaG9sZGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfVxuICAuc2NoZWR1bGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5YjliOWM7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgICA+ICoge1xuICAgICAgcGFkZGluZzogNXB4IDA7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZGF5IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zJSAtIDIwcHgpO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzliOWI5YztcbiAgICAgIG1hcmdpbjogMCAxMHB4IDIwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5YjliOWM7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgICYgKyAuZGF5IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG4gIC53ZWVrLWRheSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOWI5YjljO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgY29sb3I6ICM4NDgzODc7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzliOWI5YztcbiAgICB9XG4gIH1cbiAgLmNvdXJzZS1uYW1lIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgICBtYXgtd2lkdGg6IDE1NnB4O1xuICAgIH1cbiAgfVxufSIsIi5hYm91dF9zbGlkZXIge1xuICAuc2xpY2stZG90cyB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5zbGljay1hcnJvdyB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogcmVtLWNhbGMoLTM1KTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIGJvdHRvbTogcmVtLWNhbGMoLTQ1KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICBib3R0b206IHJlbS1jYWxjKC02MCk7XG4gICAgfVxuICB9XG4gIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiBjYWxjKDUwJSAtIDQwcHgpO1xuICB9XG4gIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogY2FsYyg1MCUgLSA0MHB4KTtcbiAgfVxuICAuc2xpY2stc2xpZGUgPiBkaXYsIC5zbGljay1zbGlkZSA+IGEge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAuaW5uZXIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNDU1KTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg4MCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDEyMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zbGljay1zbGlkZSB7XG4gICAgJi5yZXZlcnNlID4gZGl2LCAmLnJldmVyc2UgPiBhIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICA+IGRpdiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAxNSAwIDApO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMzAgMCAwKTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAzMCAwIDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGltZyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNsaWNrLXNsaWRlID4gZGl2LCAuc2xpY2stc2xpZGUgPiBhIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICA+IGRpdiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDAgMTUpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAvL21heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDAgMCAzMCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAwIDcwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIHVsLCBwLCBibG9ja3F1b3RlLCBzdHJvbmcsIHNtYWxsLCBlbSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg0NTUpO1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTUpO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMzApO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDkwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmFib3V0LWxpc3Qge1xuICAmLmFib3V0LWdhbGxlcnkge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgZG93bikge1xuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgICB9XG4gIH1cbiAgLmludHJvZHVjaW5nX3NsaWRlciwgLnNlY29uZF9pbnRyb2R1Y2luZ19zbGlkZXIge1xuICAgIC5zbGljay1wcmV2IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGxlZnQ6IC0xMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0gZG93bikge1xuICAgICAgICByaWdodDogLTEwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5zbGljay10cmFjayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIC5zbGljay1zbGlkZSBwIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5pdGVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWdyYXk7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMzUgMCk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzUpO1xuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICBtYXJnaW46IDAgYXV0byByZW0tY2FsYygxNSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoNzAgMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg4MCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTAwIDApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTIwKTtcbiAgICB9XG4gICAgJi5taWRkbGUge1xuICAgICAgLml0ZW0taG9sZGVyIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTUpO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDgwKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDEyMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYucmV2ZXJzZSB7XG4gICAgICAucGljdHVyZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTUpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMzApO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDYwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLml0ZW0taG9sZGVyIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxNSk7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTUpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygzMCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDgwKTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYyg4MCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMjApO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDEyMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5waWN0dXJlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgICAvL21heC13aWR0aDogMTAwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNjApO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbjogMCBhdXRvIHJlbS1jYWxjKDE1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIC4zKTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAucGxheS1idG4gLmljb24ge1xuICAgICAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnBsYXktYnRuIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDc1KTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg3NSk7XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBmaWxsOiByZ2JhKCR3aGl0ZSwgLjYpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGZpbGwgLjNzIGVhc2U7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTEyKTtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDExMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXRlbS1ob2xkZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICAgLmlubmVyIHtcbiAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNDU1KTtcbiAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxNSk7XG4gICAgICAgfVxuICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygzMCk7XG4gICAgICAgfVxuICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoODApO1xuICAgICAgIH1cbiAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxMjApO1xuICAgICAgIH1cbiAgICAgfVxuICB9XG4gIHAge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICB9XG4gIH1cbiAgdWwge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAycmVtIDAgMXJlbTtcbiAgICBsaSB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICfigKInO1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE5KTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTApO1xuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICB9XG4gIH1cbiAgLmgxLCBoMSB7XG4gICAgY29sb3I6IHJnYmEoJGRhcmstZ3JheSwgLjMpO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgIGZvbnQtZmFtaWx5OiAnbWlsbGVyJywgc2Fucy1zZXJpZjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoNTApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDcwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTEwKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNTApO1xuICAgIH1cbiAgICAvL0BpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcbiAgICAvLyAgZm9udC1zaXplOiByZW0tY2FsYygxOTApO1xuICAgIC8vfVxuICB9XG59XG5cbi5tb3JlLWFib3V0IHtcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIG1hcmdpbjogcmVtLWNhbGMoMTUpIGF1dG87XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIG1hcmdpbjogcmVtLWNhbGMoMzApIGF1dG87XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgbWFyZ2luOiByZW0tY2FsYyg0MikgYXV0bztcbiAgfVxufSIsIi5jb250YWN0cy1ob2xkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIC4xNCk7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMzAgMCk7XG4gIH1cbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2NSk7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIGgyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1mYW1pbHk6ICdCcmFuZG9uR3JvdGVzcXVlJywgc2Fucy1zZXJpZjtcbiAgICBsYWJlbCB7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbiAgfVxuICAuaXRlbSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRibGFjaywgLjE0KTtcbiAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgLjE0KTtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygyNSA1MCk7XG4gICAgfVxuICB9XG59XG5cbi5jb250YWN0cy1mb3JtIHtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDcwKTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg5NSk7XG4gIH1cbiAgaDIge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNSk7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBmb250LWZhbWlseTogJ0JyYW5kb25Hcm90ZXNxdWUnLCBzYW5zLXNlcmlmO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICfigKInO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOCk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBib3R0b206IC0xLjM1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0ycHg7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgICBsYWJlbCB7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbiAgfVxuICBwIHtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDYxMCk7XG4gICAgbWFyZ2luOiAwIGF1dG8gcmVtLWNhbGMoMjUpO1xuICB9XG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG4gIC53aWRlIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzNyk7XG4gICAgfVxuICB9XG4gIC5maWVsZHMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgLTE1KTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtNnB4O1xuICAgIH1cbiAgICAuZmllbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTUpO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNzUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICB0ZXh0YXJlYSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjAgMCk7XG4gIH1cbiAgaW5wdXQge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwIDApO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIH1cbiAgaW5wdXQsIHRleHRhcmVhIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuMjVzO1xuICAgICAgfVxuICAgICAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogM3B4O1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjI1cztcbiAgICAgIH1cbiAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuMjVzO1xuICAgICAgfVxuICB9XG4gIGlucHV0IHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJsYWNrO1xuICAgIGhlaWdodDogcmVtLWNhbGMoNTgpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoNjApO1xuICAgIH1cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmxhY2s7XG4gICAgfVxuICB9XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDIxMCk7XG4gICAgcmVzaXplOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmxhY2s7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRibGFjaztcbiAgfVxufSIsIi5jYXRhbG9nLWNhdGVnb3J5LXZpZXcuY2F0ZWdvcnlwYXRoLXN0b3JlIHtcbiAgLm1haW4tY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuaW50cm9kdWNpbmdfc2xpZGVyLCAuc2Vjb25kX2ludHJvZHVjaW5nX3NsaWRlciB7XG4gICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5NSUgY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNSUgY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uY2F0ZWdvcnlwYXRoLXN0b3JlIHtcbiAgLnBhZ2UtdGl0bGUtd3JhcHBlciB7XG4gICAgZm9udC1zaXplOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIC5wYWdlLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgLm1haW4tY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuaW50cm9kdWNpbmdfc2xpZGVyLCAuaW50cm9kdWNpbmdfc3RvcmUtc2xpZGVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIC5zbGlkZXItYmcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogNTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQoKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDc1JSBjZW50ZXI7XG4gICAgICAmLnJldmVyc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAyNSUgY2VudGVyO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5zbGlkZS1jb250ZW50LWhvbGRlciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxMDtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMzAgNDApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygzMCA3MCk7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoNjQwKTtcbiAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNjQwKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoODYwKTtcbiAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoODYwKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygzMCAxMDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zbGljay1hcnJvdyB7XG4gICAgICB0b3A6IGNhbGMoNTAlIC0gMTVweCk7XG4gICAgfVxuICAgIC5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IHJlbS1jYWxjKDUpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBsZWZ0OiByZW0tY2FsYygyNSk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgbGVmdDogcmVtLWNhbGMoNzApO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDogcmVtLWNhbGMoNSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHJpZ2h0OiByZW0tY2FsYygyNSk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKDcwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDYwMCk7XG4gICAgICBtYXJnaW46IDAgYXV0byAxcmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgfVxuICB9XG5cbiAgLnNsaWNrLWRvdHMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgbGkge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICB9XG4gICAgICBidXR0b246YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgJGZhc3QtdHJhbnNpdGlvbjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgYm9yZGVyLXdpZHRoOiA0cHg7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogOHB4IDVweCAwIDVweDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJsYWNrIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5jYXRhbG9nLWNhdGVnb3J5LXZpZXcge1xuICAuc29ydGVyLCAuY291bnQtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5tYWluLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYygxNjAwKTtcbiAgICAvL21hcmdpbjogMCBhdXRvIHJlbS1jYWxjKDM1KTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgLy9tYXJnaW46IDAgYXV0byByZW0tY2FsYyg3MCk7XG4gICAgfVxuICB9XG4gIG1haW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgLmNvbC1sZWZ0IHtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDMwMCk7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICB3aWR0aDogMjYlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtaW4td2lkdGg6IHJlbS1jYWxjKDI4MCk7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICB3aWR0aDogMjMuNSU7XG4gICAgfVxuICB9XG4gIC5jb2wyLWxlZnQtbGF5b3V0IHtcbiAgICAuY29sLm1haW4ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICAgIC8vd2lkdGg6IDc0JTtcbiAgICAgICAgLy9mbG9hdDogcmlnaHQ7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICB9XG4gICAgICAvL0BpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIC8vICB3aWR0aDogY2FsYyg3NCUgLSAxMHB4KTtcbiAgICAgIC8vfVxuICAgICAgLy9AaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgLy8gIHdpZHRoOiBjYWxjKDc2LjUlIC0gMTVweCk7XG4gICAgICAvL31cbiAgICB9XG4gIH1cbiAgLmNvbC5tYWluIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB9XG4gIH1cbiAgLnBhZ2luYXRpb24ge1xuICAgIG9sIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG4gIC5jb2wtbGVmdCB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCAxMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAxNSk7XG4gICAgfVxuICB9XG4gIGg0IHtcbiAgICBmb250LWZhbWlseTogJ0JyYW5kb25Hcm90ZXNxdWUnLCBzYW5zLXNlcmlmO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE4KTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICB9XG4gIC5jb2xzIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuICBAaW5jbHVkZSBsb2FkaW5nTWFzaztcbn1cblxuLmJsb2NrLWxheWVyZWQtbmF2IHtcbiAgLmF3LWxuLWNsZWFyLWFsbCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBhIHtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoNDYpO1xuICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDQ4KTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAuNSk7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTApO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuM3MgZWFzZTtcbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDU2KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDU4KTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ub3B0aW9uLWJsb2NrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1ncmF5O1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuICB9XG4gICYuYWN0aXZlIHtcbiAgICAuZmlsdGVyLW9wdGlvbnMtdGl0bGUge1xuICAgICAgc3BhbjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZpbHRlci1vcHRpb25zLXRpdGxlIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxNyAxNyAxMyk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjcgMjcgMjMpO1xuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1KTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlO1xuICAgICAgfVxuICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDFweCk7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZmlsdGVyLW9wdGlvbnMtY29udGVudCB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTMgMTcpO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgLjEpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygyMyAyNyk7XG4gICAgfVxuICB9XG4gIG9sLCB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgLy9tYXgtaGVpZ2h0OiByZW0tY2FsYygyMTYpO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIC8vbWF4LWhlaWdodDogcmVtLWNhbGMoMjEwKTtcbiAgICB9XG4gICAgbGkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jYXRlZ29yaWVzIHtcbiAgICBsYWJlbCB7XG4gICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuY2F0LW5hbWUge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmN1c3RvbS1maWx0ZXJlZC1saXN0LCAuZmlsdGVyLXR5cGUsIC5jYXRlZ29yaWVzLXNjcm9sbCB7XG4gICAgLml0ZW0sIGxhYmVsIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAmLnNob3ctbW9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5jYXQtbmFtZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICBwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDE1KSAhaW1wb3J0YW50O1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAn4oCiJztcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOSk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2U7XG4gICAgICB9XG4gICAgfVxuICAgIHNwYW4sIGEge1xuICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAuM3MgZWFzZTtcbiAgICB9XG4gICAgbGkge1xuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgYSwgc3BhbiB7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBsYWJlbCA+IGRpdiB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgfVxuICAgIGlucHV0IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgJltjaGVja2VkXSArIGRpdiB7XG4gICAgICAgIGEsIHNwYW4ge1xuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudWktc2xpZGVyLWhhbmRsZSB7XG4gICAgd2lkdGg6IDhweDtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICB0b3A6IC0zcHg7XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAmOmZvY3VzIHtcbiAgICAgIGN1cnNvcjogZ3JhYjtcbiAgICB9XG4gIH1cbiAgLnVpLXNsaWRlci1yYW5nZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgLnVpLXNsaWRlci1ob3Jpem9udGFsIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgLjEpO1xuICAgIGhlaWdodDogMnB4O1xuICB9XG4gIC5hdy1sbi1zbGlkZXItYnV0dG9uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg0Nik7XG4gICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDQ4KTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJsYWNrLCAuNSk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTApO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDE1KTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlO1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYyg1Nik7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNTgpO1xuICAgIH1cbiAgfVxufVxuXG4uYXctbG4tc2xpZGVyLWZpbHRlci1pbmZvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tdG9wOiByZW0tY2FsYygxNSk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xufVxuXG4uc3dhdGNoLWF0dHJpYnV0ZSB7XG4gICYuY29sb3Ige1xuICAgIC5zd2F0Y2gtYXR0cmlidXRlLW9wdGlvbnMge1xuICAgICAgbWFyZ2luOiAwIC03cHg7XG4gICAgfVxuICAgIC5zd2F0Y2gtb3B0aW9uIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAyNnB4O1xuICAgICAgaGVpZ2h0OiAyNnB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJGN1c3RvbS1ncmF5O1xuICAgICAgcGFkZGluZzogNnB4O1xuICAgICAgbWFyZ2luOiAwIDdweCA1cHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW4gIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3V0bGluZTogJGhlYWRlci1ib3JkZXI7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2NoZWNrLXN5bWJvbC5zdmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDQ0JTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgZWFzZTtcbiAgICAgIH1cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgb3V0bGluZTogJGhlYWRlci1ib3JkZXI7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgaW5wdXQge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgd2lkdGg6IDA7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG4gICYuc2l6ZSB7XG4gICAgLnN3YXRjaC1hdHRyaWJ1dGUtb3B0aW9ucyB7XG4gICAgICBtYXJnaW46IDAgLTExcHg7XG4gICAgfVxuICAgIC5zd2F0Y2gtb3B0aW9uIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiByZW0tY2FsYyg0MCk7XG4gICAgICBoZWlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMCAxMXB4IDVweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzOCk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAkdHJhbnNpdGlvbjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsYWNrO1xuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc3dhdGNoLW9wdGlvbiB7XG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi5hdy1sbi1maWx0ZXItb3B0aW9ucy1yYW5nZSB7XG4gIC5hdy1sbi1maWx0ZXItb3B0aW9ucy1yYW5nZS1zbGlkZXItd3JhcHBlciB7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIC4xKTtcbiAgfVxuICAuYXctbG4tZmlsdGVyLW9wdGlvbnMtcmFuZ2Utc2xpZGVyLXdyYXBwZXItbGVmdCxcbiAgLmF3LWxuLWZpbHRlci1vcHRpb25zLXJhbmdlLXNsaWRlci13cmFwcGVyLXJpZ2h0IHtcbiAgICAvL2hlaWdodDogMTZweDtcbiAgICAvL21hcmdpbjogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG4gIC5hdy1sbi1maWx0ZXItb3B0aW9ucy1yYW5nZS1zbGlkZXItbWluLFxuICAuYXctbG4tZmlsdGVyLW9wdGlvbnMtcmFuZ2Utc2xpZGVyLW1heCB7XG4gICAgd2lkdGg6IDhweDtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gIH1cbiAgLmF3LWxuLWZpbHRlci1vcHRpb25zLXJhbmdlLXNsaWRlci1hY3RpdmUge1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgfVxufVxuXG4uYXctbG4tZmlsdGVyLW9wdGlvbnMtZnJvbXRvIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIC5maWVsZHNldCB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIH1cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDM5KTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDM5KTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg1KTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIHNwYW4ge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUpO1xuICB9XG4gIC5taW51cyB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoOCAxMCk7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIC5idXR0b24ge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoMTApO1xuICAgIHBhZGRpbmc6IC43NXJlbSAxLjg3NXJlbSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogLjkzNzVyZW0gIWltcG9ydGFudDtcbiAgfVxufVxuXG4ubGF5ZXJlZC1zZWxlY3RlZC1maWx0ZXJzLWJsb2NrIHtcbiAgLnNlbGVjdGVkLWl0ZW1zLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgbWFyZ2luOiAwIC01cHg7XG4gIH1cbiAgLnNlbGVjdGVkLWl0ZW0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICBiYWNrZ3JvdW5kOiAkY3VzdG9tLWdyYXk7XG4gICAgbWFyZ2luOiAwIDVweCAxMHB4O1xuICAgIHBhZGRpbmc6IDNweCAyMHB4IDNweCAxMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAuYWN0aW9uLWNsb3NlIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IDVweDtcbiAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIucHJvZHVjdC1pbmZvLW1haW4ge1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmctYm90dG9tOiA3MHB4O1xuICB9XG59XG5cbi5jYXRhbG9nLXByb2R1Y3QtdmlldyB7XG4gIC5wcm9kdWN0LXZpZXcge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIC8vcGFkZGluZzogMCAxNXB4O1xuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0LWNvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmJyZWFkY3J1bWJzLCAucHJvZHVjdC1pbmZvLW1haW4sIC5tZXNzYWdlcyB7XG4gICAgYmFja2dyb3VuZDogI2Y2ZjdmYjtcbiAgfVxuXG4gIC5wcm9kdWN0LWluZm8tbWFpbiB7XG4gICAgcGFkZGluZy10b3A6IDI1cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLXRvcDogNDVweDtcbiAgICB9XG4gIH1cblxuICAuYnJlYWRjcnVtYnMge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAucm93LnJvdyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtIGRvd24pIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4ucHJvZHVjdC1pbmZvLWJveCB7XG4gIC5wYWdlLXRpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI1KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjgpO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzIpO1xuICAgIH1cbiAgfVxuXG4gIC5wcmljZS1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5wcm9kdWN0LWluZm8tcHJpY2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LWZhbWlseTogJ21pbGxlcicsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gIH1cblxuICAuc3BlY2lhbC1wcmljZSwgLm5vcm1hbC1wcmljZSwgLnByaWNlIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgfVxuXG4gIC5vbGQtcHJpY2Uge1xuICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgIG1hcmdpbi1sZWZ0OiByZW0tY2FsYygxNSk7XG4gIH1cblxuICAuc2hvcnQtZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgfVxuXG4gIC5ib3gtdG9jYXJ0IHtcbiAgICAuYnV0dG9uIHtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoNDYpO1xuICAgICAgd2lkdGg6IDE4MHB4O1xuICAgICAgcGFkZGluZzogMTZweDtcbiAgICB9XG5cbiAgICAvLy5wcmljZS1ib3gge1xuICAgIC8vICBkaXNwbGF5OiBub25lO1xuICAgIC8vfVxuICB9XG5cbiAgLm92ZXJ2aWV3IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG59XG5cbi5wYWdlLXByb2R1Y3QtY29uZmlndXJhYmxlIHtcbiAgLnByb2R1Y3QtaW5mby1ib3gge1xuICAgIC5vbGQtcHJpY2Uge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLmJveC10b2NhcnQsIC5hZGQtdG8tY2FydC13cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDUwKTtcbiAgfVxufVxuXG4ucHJvZHVjdC5pbmZvLmRldGFpbGVkIHtcbiAgLml0ZW1zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gIC50aXRsZSB7XG4gICAgb3JkZXI6IDE7XG4gICAgbWFyZ2luOiAwIDE1cHggMjBweCAwO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4zcyBlYXNlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcyBlYXNlO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY29udGVudCB7XG4gICAgb3JkZXI6IDI7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnN3YXRjaC1vcHQge1xuICAuc3dhdGNoLWF0dHJpYnV0ZSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTUgMCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoIzAzMDMwMywgLjIpO1xuICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAuOXB4O1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygzMCAwKTtcbiAgICB9XG4gIH1cblxuICAuc3dhdGNoLWF0dHJpYnV0ZS1sYWJlbCB7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnOic7XG4gICAgfVxuICB9XG5cbiAgLnN3YXRjaC1hdHRyaWJ1dGUtc2VsZWN0ZWQtb3B0aW9uIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG5cbiAgLnN3YXRjaC1pbnB1dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgLnN3YXRjaC1hdHRyaWJ1dGUtb3B0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luOiAwIC03cHggMDtcbiAgfVxuXG4gIC5zd2F0Y2gtb3B0aW9uIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgJHRyYW5zaXRpb247XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBvcGFjaXR5OiAuNDtcbiAgICB9XG5cbiAgICAmLnRleHQge1xuICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzgpO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgJHRyYW5zaXRpb247XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsYWNrO1xuICAgICAgbWFyZ2luOiAwIDdweCA1cHg7XG5cbiAgICAgICYuc2VsZWN0ZWQge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAmOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jb2xvciB7XG4gICAgLnN3YXRjaC1vcHRpb24ge1xuICAgICAgd2lkdGg6IDMycHg7XG4gICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICBib3JkZXItd2lkdGg6IDFweDtcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcGFkZGluZzogM3B4O1xuICAgICAgbWFyZ2luOiAwIDdweCA1cHg7XG5cbiAgICAgICYuc2VsZWN0ZWQge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMik7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAmOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoJGJsYWNrLCAuMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc3dhdGNoLWlubmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxufVxuXG4uY3VzdG9tLWNvdW50ZXIge1xuICBoZWlnaHQ6IHJlbS1jYWxjKDQ2KTtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJsYWNrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHNtYWxsKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICB9XG5cbiAgaW5wdXQge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgNDcpO1xuICAgIG1heC13aWR0aDogMTgwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jb3VudCB7XG4gICAgaGVpZ2h0OiByZW0tY2FsYyg0NCk7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDQ0KTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8vYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAvL2p1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgIH1cblxuICAgICYubWludXMge1xuICAgICAgbGVmdDogMDtcbiAgICB9XG5cbiAgICAmLnBsdXMge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5wcm9kdWN0LW9wdGlvbnMtYm90dG9tLCAuYWRkLXRvLWNhcnQtd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IHJlbS1jYWxjKDI1KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg1MCk7XG4gIH1cbn1cblxuLnF0eS13cmFwcGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDI1KTtcblxuICAuYXZhaWxhYmlsaXR5IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuXG4gICAgc3BhbiB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIC5sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uYWRkLXRvLWNhcnQtYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuICAuYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDE0LjUpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxNC41KTtcbiAgfVxufVxuXG4ucHJvZHVjdC1pbWctYm94IHtcbiAgLmxvYWRpbmctbWFzayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgfVxuXG4gIC5wcm9kdWN0Lm1lZGlhIHtcbiAgICBtYXgtaGVpZ2h0OiA3MDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5tYWluLXByb2R1Y3Qtc2xpZGVyIHtcbiAgICAvL292ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwIGF1dG8gcmVtLWNhbGMoMjUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB9XG5cbiAgICAuaXRlbSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkdHJhbnNpdGlvbiwgdmlzaWJpbGl0eSAkdHJhbnNpdGlvbjtcblxuICAgICAgJi5zbGljay1jdXJyZW50LCAmLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnByb2R1Y3QtaW1hZ2VzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIC8vdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHdpZHRoOiA3NSU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxpc3Qge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaXRlbSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgIGltZyB7XG4gICAgICAgIC8vd2lkdGg6IGF1dG87XG4gICAgICAgIC8vZGlzcGxheTogYmxvY2s7XG4gICAgICAgIC8vbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIC8vbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAvL21heC1oZWlnaHQ6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIGRpdiB7XG4gICAgICAgIC8vbWF4LXdpZHRoOiByZW0tY2FsYyg1MDYpO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLy9tYXgtaGVpZ2h0OiA3MDBweDtcbiAgICAgICAgLy9AaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIC8vICBtYXJnaW46IDA7XG4gICAgICAgIC8vfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0LWltYWdlLXRodW1icyB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCA0MCk7XG4gICAgei1pbmRleDogMjtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDQwIDApO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAyMHB4KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNTgpO1xuICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gNThweCk7XG4gICAgfVxuXG4gICAgLml0ZW0ge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCA4KTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg4IDApO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDExIDApO1xuICAgICAgfVxuXG4gICAgICBkaXYge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgZGl2IHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgLjEpO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5zbGljay10cmFjayB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG5cbiAgICAuc2xpY2stcHJldiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0b3A6IHJlbS1jYWxjKDgpO1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTE1KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBib3R0b206IHJlbS1jYWxjKDgpO1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoLTE1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnZpZGVvLWF0dHIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiByZW0tY2FsYygyMCAwIDI1KTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAuMik7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMzAgMCAzNSk7XG4gIH1cblxuICA+IGRpdiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgfVxuICB9XG5cbiAgc3BhbiB7XG4gICAgY29sb3I6ICRkYXJrLWdyYXk7XG5cbiAgICAmLmF0dHItbGFiZWwge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucHJvZHVjdC1vcHRpb25zLWJvdHRvbSwgLmFkZC10by1jYXJ0LXdyYXBwZXIge1xuICBtYXJnaW4tdG9wOiByZW0tY2FsYygyNSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoNTApO1xuICB9XG59XG5cbi5wcm9kdWN0cy1yZWxhdGVkIHtcbiAgLnByb2R1Y3QtaG9sZGVyIHtcbiAgICAucHJvZHVjdC1pbWFnZSB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgfVxuICB9XG59XG5cbi5mZWF0dXJlZC1pdGVtcyB7XG4gIC5wcm9kdWN0LXNsaWRlciB7XG4gICAgLnByb2R1Y3QtaG9sZGVyIHtcbiAgICAgIC5wcm9kdWN0LWltYWdlIHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaXMtcmV2ZWFsLW9wZW4ge1xuICAjRGlnaUNlcnRDbGlja0lEXy1BdWFybTZPIHtcbiAgICB6LWluZGV4OiAzO1xuICB9XG59IiwiLnByb2R1Y3QtY3VzdG9tLXdvcmtvdXQtcGFnZSB7XG4gIC5icmVhZGNydW1icyB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDUpO1xuICAgIH1cbiAgfVxuICAucHJvZHVjdC1jb250ZW50IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLnByb2R1Y3QtaW5mby1tYWluIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuICAucHJvZHVjdC1pbmZvLWJveCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG9yZGVyOiAyO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG9yZGVyOiAxO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgfVxuICAucGFnZS10aXRsZS13cmFwcGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAucGFnZS10aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC8vZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogMjdweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiA0M3B4O1xuICAgICAgLy9tYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiA1M3B4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogNTdweDtcbiAgICB9XG4gIH1cbiAgLm92ZXJ2aWV3IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiAxOXB4O1xuICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICB9XG4gIH1cbiAgLmJveC10b2NhcnQge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAucHJpY2UtYm94IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLnByb2R1Y3QtaW1nLWJveCB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgb3JkZXI6IDE7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgb3JkZXI6IDI7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIC8vanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgfVxuICAucHJvZHVjdC5hdHRyaWJ1dGUub3ZlcnZpZXcge1xuICAgIG1hcmdpbjogMCBhdXRvIDQwcHg7XG4gIH1cbn1cblxuLmN1c3RvbS1qb2luIHtcbiAgYmFja2dyb3VuZDogJHBlYWNoO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDIwcHggMzVweDtcbiAgQGluY2x1ZGUgY3VzdG9tLWJ0bi1jb2xvcigkYmxhY2spO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICBwYWRkaW5nOiAyMHB4IDQ1cHg7XG4gIH1cbiAgLmJ0bi1jdXN0b20ge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbiAgLnByaWNpbmctZXhwbGFuYXRpb24ge1xuICAgIGZvbnQtZmFtaWx5OiAnbWlsbGVyJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDI1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB9XG59XG5cbi5jdXN0b20td29ya291dC1kZXNjcmlwdGlvbiB7XG4gIC8vbWFyZ2luLXRvcDogNDBweDtcbiAgYmFja2dyb3VuZDogI0YzRjRGODtcbiAgcGFkZGluZzogMTVweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIC8vbWFyZ2luLXRvcDogNjBweDtcbiAgICAvL3BhZGRpbmc6IDYwcHggMTVweDtcbiAgICBwYWRkaW5nOiAzMHB4IDE1cHg7XG4gICAgZmxleDogbm9uZTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIC8vbWFyZ2luLXRvcDogMTAwcHg7XG4gICAgLy9wYWRkaW5nOiA4MHB4IDE1cHg7XG4gICAgcGFkZGluZzogNTBweCAzMHB4O1xuICB9XG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4c21hbGwpIHtcbiAgICAgIC8vZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIC8vYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAvL2ZsZXgtd3JhcDogd3JhcDtcbiAgICAgIC8vanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAvL21hcmdpbi1ib3R0b206IC0yMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIC8vbWF4LXdpZHRoOiA5MjBweDtcbiAgICAgIC8vbWFyZ2luOiAwIGF1dG8gLTIwcHg7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIC8vbWF4LXdpZHRoOiAyNDBweDtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhzbWFsbCkge1xuICAgICAgICAvL3dpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgICAgICBtYXJnaW46IDAgMTBweCAyMHB4O1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAvL3dpZHRoOiAzMy4zJTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjVweDtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cbiAgLmltYWdlLWhvbGRlciB7XG4gICAgd2lkdGg6IDM1cHg7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLmN1c3RvbS13b3Jrb3V0LWhvbGRlciB7XG4gIC5uby1yZXN1bHRzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC41cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIH1cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgIH1cbiAgICAgIGVtIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3R0b206IC0ycHg7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubm8tdG91Y2ggJiB7XG4gICAgICAgICY6aG92ZXIgZW06YWZ0ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudGFiLWhvbGRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICYuY3VycmVudCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbiAgLmJvdHRvbS1saW5lIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI1KTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VkZWVmMTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDQ1KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQ1KTtcbiAgICB9XG4gIH1cbiAgLnRhYnMtaGVhZGVyIHtcbiAgICAuZWRpdCB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygxMCk7XG4gICAgICBhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgfVxuICAgICAgICBlbSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogLTJweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm5vLXRvdWNoICYge1xuICAgICAgICAgICY6aG92ZXIgZW06YWZ0ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIC5lZGl0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICAgIC5lZGl0IGEge1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2hhbmdlLXZhcmlhdGlvbi1zZWxlY3Qge1xuICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBhIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjVweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgfVxuICB9XG4gIC50YWJzIHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDUgMTQgNSAwKTtcbiAgICAgICYuY3VycmVudCB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luOiByZW0tY2FsYyg1IDI4IDUgMCk7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDUgNDQgNSAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnZpZGVvLXRpdGxlIHtcbiAgICBoMiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDI1KTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxNSk7XG4gICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudmlkZW8tcHJldmlldyB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHNtYWxsKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDE1IDAgMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhzbWFsbCkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgbWluLXdpZHRoOiByZW0tY2FsYygyMjApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ud29ya291dC1saXN0IC5jb2x1bW5zIHtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQ1KTtcbiAgfVxufVxuXG4uY3ctc2xpZGVyLXNsaWRlciB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgIG1hcmdpbi10b3A6IDkwcHg7XG5cbiAgfVxuICAuc2xpY2stc2xpZGUge1xuICAgIGhlaWdodDogMTUwcHg7XG4gICAgcGFkZGluZzogMCA0MHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBoZWlnaHQ6IDE2NXB4O1xuICAgICAgcGFkZGluZzogMCA4MHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IDAgMTQwcHg7XG4gICAgfVxuICB9XG4gIC5zbGlkZXItYmcge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbiNjdXN0b21Xb3Jrb3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5sb2FkaW5nLW1hc2sge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgLjUpO1xuICAgIHotaW5kZXg6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC5yZXZlYWwge1xuICAgIC5sb2FkaW5nLW1hc2sge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMSk7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgICAmLmZ1bGwge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmhpZGRlbi13cmFwIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJi5zaG93IHtcbiAgICAuaGlkZGVuLXdyYXAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbiN2aWRlb0dhbGxlcnkge1xuICAuc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IC0zMHB4O1xuICB9XG4gIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAtMzBweDtcbiAgfVxuXG59XG5cbi5jdXN0b20td29ya291dC1wcmV2aWV3IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjNmNjtcbiAgbWFyZ2luOiByZW0tY2FsYygwIDAgMTUpO1xuICBwYWRkaW5nOiByZW0tY2FsYygxNSAxMCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDMwKTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDU1IDUwIDYwKTtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMjYgMTUpO1xuICB9XG4gIGgzIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIG1hcmdpbjogMCBhdXRvIHJlbS1jYWxjKDIwKTtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDkzMCk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvIHJlbS1jYWxjKDM1KTtcbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgbWF4LXdpZHRoOiByZW0tY2FsYyg5MzApO1xuICAgIG1hcmdpbjogMCBhdXRvIHJlbS1jYWxjKDIwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgbWFyZ2luOiAwIGF1dG8gcmVtLWNhbGMoMzApO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgfVxuICB9XG4gIC5idXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLndvcmtvdXQtY3VzdG9tLWluZGV4IHtcbiAgLnBhZ2UtdGl0bGUtd3JhcHBlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufSIsIi5ibG9jay1sYXllcmVkLW5hdiB7XG4gIGgzIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiAnQnJhbmRvbkdyb3Rlc3F1ZScsIHNhbnMtc2VyaWY7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gIH1cbiAgI25hcnJvdy1ieS1saXN0MiB7XG4gICAgb2wsIHVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDYwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgb2wsIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbGkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg1KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIC8vbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNjApO1xuICAgICAgbGkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm1DdXN0b21TY3JvbGxiYXIge1xuICAgIC5zaG93LW1vcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmFib3V0LXZpZGVvcyB7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI1KTtcbiAgLmluZm8tYmxvY2sge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWdyYXk7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg0NCA0OCA0NCAzMCk7XG4gICAgfVxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQ1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRpdGxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICBoNCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgfVxuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICB9XG4gIH1cbn1cblxuLmpvaW4td29ya291dCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZ3JheTtcbiAgcGFkZGluZzogcmVtLWNhbGMoMTApO1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjApO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMzQgNDApO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDM4KTtcbiAgfVxuICAuYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cbiAgcCB7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgfVxufVxuXG4udmlkZW8taW1hZ2VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAuaXRlbSB7XG4gICAgcGFkZGluZy10b3A6IDU2LjMlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiByZW0tY2FsYygyNTApO1xuICAgIGEge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIC4yKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygxMCk7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICAucGxheS1idG4ge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgYm9yZGVyOiAycHggc29saWQgJHdoaXRlO1xuICAgICAgd2lkdGg6IDEyNXB4O1xuICAgICAgaGVpZ2h0OiAxMjVweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOiAxNzVweDtcbiAgICAgICAgaGVpZ2h0OiAxNzVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnByZXZpZXctYmcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZCgpO1xuICAgIH1cbiAgICBpZnJhbWUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn0iLCIuY2hlY2tvdXQtY2FydC1pbmRleCB7XG4gIHRib2R5IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbiAgI2Jsb2NrLXNoaXBwaW5nIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmhlYWRlci1iYW5uZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNhcnQtdGFibGUge1xuICBtaW4td2lkdGg6IHJlbS1jYWxjKDkwMCk7XG59XG5cbiNzaG9wcGluZy1jYXJ0LXRvdGFscy10YWJsZSwgLmNhcnQtdG90YWxzLXRhYmxlIHtcbiAgbWluLXdpZHRoOiAxcHg7XG4gIHNwYW4ucHJpY2Uge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbiAgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi5wcm9kdWN0LWNhcnQtaW1hZ2UsIC5kZXNjcmlwdGlvbiB7XG4gIC8vPiBhIHtcbiAgLy8gIGRpc3BsYXk6IGJsb2NrO1xuICAvLyAgZmxvYXQ6IGxlZnQ7XG4gIC8vfVxuICAucHJvZHVjdC1jYXJ0LWRlc2NyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC5wcm9kdWN0LW5hbWUge1xuICAgICAgYSB7Y29sb3I6ICRibGFjazt9XG4gICAgfVxuICB9XG4gIC5pdGVtLW9wdGlvbnMge1xuICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgIGRsIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICAgIGR0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDYgMTAgMCAwKTtcbiAgICB9XG4gICAgZGQge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICB9XG59XG5cbi5wcm9kdWN0LWNhcnQtaW1hZ2Uge1xuICAucHJvZHVjdC1pbWFnZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAxNjVweDtcbiAgICBoZWlnaHQ6IDE2NXB4O1xuICAgIG1hcmdpbjogMCAxNXB4IDVweCAwO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgfVxuXG4gIGltZyB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG5cbi5jYXJ0LXRvdGFscy13cmFwcGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICB0aGVhZCwgdGJvZHksIHRmb290IHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbiAgdHIge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB9XG4gIHRkLCB0aCB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTAgMCk7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgfVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg1MCk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgfVxuICAgIH1cbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG4gIH1cbiAgLmNoZWNrb3V0LXR5cGVzIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIC5wYXlwYWwge1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBpbnB1dCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAmKy5wYXlwYWwge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICBidXR0b24ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIC5pdGVtIHtcbiAgICAgICYrLml0ZW0ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5jaGVja291dC10eXBlcy1pbmZvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTkpO1xuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTQpO1xuICAgICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubWV0aG9kLWNoZWNrb3V0LWNhcnQtbWV0aG9kcy1tdWx0aXNoaXBwaW5nIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgYnV0dG9uLmJyYWludHJlZS1nb29nbGVwYXktYnV0dG9uLmxvbmcge1xuICAgIG1heC13aWR0aDogMTc0cHg7XG4gIH1cbn1cblxuLnByb2R1Y3QtY2FydC1yZW1vdmUge1xuICAuYWN0aW9ucy10b29sYmFyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuXG4ucHJvZHVjdC1jYXJ0LWFjdGlvbnMge1xuICAuY3VzdG9tLWNvdW50ZXIge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLmRpc2NvdW50LWZvcm0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogcmVtLWNhbGMoMjkwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgLmNoZWNrb3V0LWluZGV4LWluZGV4ICYge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5maWVsZC13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgaW5wdXQge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygzIDI1IDMgMCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmxhY2s7XG4gICAgfVxuICAgICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjI1cztcbiAgICB9XG4gICAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAuMjVzO1xuICAgIH1cbiAgICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4yNXM7XG4gICAgfVxuICB9XG4gIGJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogcmVtLWNhbGMoOTApO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTUpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgIGhlaWdodDogcmVtLWNhbGMoNDApO1xuICAgICYuYXBwbHktY291cG9uIHNwYW4gc3BhbjpiZWZvcmUge1xuICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICB9XG4gIH1cbn1cblxuLmNhcnQtZm9vdGVyLWFjdGlvbnMge1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgLTEwIDMwKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5hY3Rpb24ge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gICAgJjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZmllbGQtd3JhcHBlciB7XG4gICAgLmFjdGlvbiB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxuICAuaXRlbSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNyAwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDE1IDI1KTtcbiAgICAgIC8vd2lkdGg6IDMzLjMlO1xuICAgICAgLy8mOmZpcnN0LW9mLXR5cGUge1xuICAgICAgLy8gIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAvL31cbiAgICAgIC8vJjpudGgtY2hpbGQoMykge1xuICAgICAgLy8gIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgLy99XG4gICAgICAvLyY6bGFzdC1vZi10eXBlIHtcbiAgICAgIC8vICBtaW4td2lkdGg6IDI4OHB4O1xuICAgICAgLy99XG4gICAgfVxuICAgICYudXBkYXRlLWNhcnQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLnNob3BwaW5nLXN1cHBvcnQge1xuICBtYXgtd2lkdGg6IHJlbS1jYWxjKDQzMCk7XG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjUpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDM1KTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg1NSk7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgaDQge1xuICAgIGZvbnQtZmFtaWx5OiAnQnJhbmRvbkdyb3Rlc3F1ZScsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gIH1cbiAgcCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgYSB7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICB9XG59XG5cbiIsIi5hY2NvdW50LWxvZ2luIHtcbiAgLmNvbHVtbnMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tbGlzdCwgLmZpZWxkc2V0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cbiAgLmNvbnRyb2wge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDM0MCk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgfVxuICB9XG4gIC5kaXYubWFnZS1lcnJvciwgLmZpZWxkLWVycm9yIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG5cbiAgfVxuICAjcGFzc3dvcmQtc3RyZW5ndGgtbWV0ZXItY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgICYucGFzc3dvcmQtd2VhayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiByZWQ7XG4gICAgfVxuICAgICYucGFzc3dvcmQtbWVkaXVtIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICR3YXJuaW5nLWNvbG9yO1xuICAgIH1cbiAgICAmLnBhc3N3b3JkLXN0cm9uZywgJi5wYXNzd29yZC12ZXJ5LXN0cm9uZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAkc3VjY2Vzcy1jb2xvcjtcbiAgICB9XG4gIH1cbn0iLCIuY2hlY2tvdXQge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgID4gLnJvdyB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDQ4KTtcbiAgICB9XG4gIH1cblxuICAucGF5bWVudC1tZXRob2Qge1xuICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhlYWRlci1ib3JkZXI7XG5cbiAgICAmLl9hY3RpdmUge1xuICAgICAgLnBheW1lbnQtbWV0aG9kLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIH1cblxuICAgICAgLnBheW1lbnQtbWV0aG9kLWNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNoZWNrb3V0LW9uZXBhZ2Utc3VjY2VzcyB7XG4gIC5yZWNlaXZlLW9yZGVyLXRpdGxlIHtcbiAgICAuc3ViLXRpdGxlIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICB9XG59XG5cbi5jaGVja291dC1zdWNjZXNzIHtcbiAgLnJlY2VpdmUtb3JkZXItaW5mbyB7XG4gICAgJiA+ICoge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLmNoZWNrb3V0LWNvbnRhaW5lciB7XG4gIGgzIHtcbiAgICBmb250LWZhbWlseTogJ0JyYW5kb25Hcm90ZXNxdWUnLCBzYW5zLXNlcmlmO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gIH1cblxuICAubW9kYWwtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5jaGVja291dC1oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoOTApO1xuICB9XG5cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDEwKTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBkaXYge1xuICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmNvbXBsZXRlIHtcbiAgICAgICAgZGl2IHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2ljb25zL2NoZWNrLXN5bWJvbC5zdmcpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDI4JTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMzQlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgIGRpdiB7XG4gICAgICB3aWR0aDogcmVtLWNhbGMoNDApO1xuICAgICAgaGVpZ2h0OiByZW0tY2FsYyg0MCk7XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygzMCk7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMzgpO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyNCk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkYmxhY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoNjApO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDYwKTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gcmVtLWNhbGMoMjApO1xuICAgICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoNTgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jaGVja291dFN0ZXBzIHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXgtd2lkdGg6IHJlbS1jYWxjKDcwMCk7XG5cbiAgYm9keS5yZXZpZXcgJiB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgLm9yZGVyLXJldmlldy1kZXRhaWxzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBib2R5LnBheW1lbnQgJiB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgLnBheW1lbnQtaW5mbyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucGF5bWVudC1mb3JtIHtcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNjIwKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHdpZHRoOiA1MC43NSU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDMwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi5yZW1lbWJlci1tZS1wb3B1cCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jaGVja291dC1mb3JtIHtcbiAgLmNvbC0xIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gIH1cblxuICAuZm9ybS1saXN0IHtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAyNSk7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIC5maWVsZHMge1xuICAgICAgbWFyZ2luOiByZW0tY2FsYygwIC0xNSk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTZweDtcbiAgICB9XG5cbiAgICAuZmllbGQge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAxNSk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXQuaW5wdXQtdGV4dCwgc2VsZWN0Om5vdCguYWRkcmVzcy1zZWxlY3QpIHtcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMjkwKTtcbiAgICB9XG4gIH1cblxuICAuY29udHJvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICB9XG5cbiAgLmNvbnRyb2wtcmFkaW8ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMzApO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDUpO1xuICB9XG59XG5cbi5jdXN0b21lci1sb2dpbiB7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcblxuICB1bCB7XG4gICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG5cbiAgICBsaSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDIwMTQnO1xuICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygxMCk7XG4gICAgfVxuICB9XG59XG5cbi5zaGlwcGluZy1hZGRyZXNzLWl0ZW1zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IDAgLTEycHg7XG5cbiAgLnNoaXBwaW5nLWFkZHJlc3MtaXRlbSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGJvcmRlcjogJGhlYWRlci1ib3JkZXI7XG4gICAgcGFkZGluZzogMjBweCAzMHB4O1xuICAgIG1hcmdpbjogMCAxMnB4IDIwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDI0cHgpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMjRweCk7XG4gICAgfVxuICB9XG5cbiAgLmJ1dHRvbiB7XG4gICAgbWFyZ2luOiAxNXB4IDAgMDtcbiAgfVxufVxuXG4uYmVuZWZpdHMuY3VzdG9tLWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuXG4uc3AtbWV0aG9kcyB7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcblxuICAmLnNwLXBheWdhdGUge1xuICAgIGRkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgZHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgfVxuXG4gIGRkIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gIH1cblxuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuXG4ucGF5bWVudC1pbmZvLWhvbGRlciB7XG4gIGxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gIH1cblxuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbjogMDtcblxuICAgIGxpIHtcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAxNSAxNyAwKTtcbiAgICB9XG4gIH1cblxuICAuY2hlY2tvdXQtdHlwZXMtaW5mbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXG4gICAgaW1nIHtcbiAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTkpO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4gICAgICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMTQpO1xuICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG59XG5cbiNjaGVja291dC1yZXZpZXctdGFibGUtd3JhcHBlciB7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbn1cblxuLmNoZWNrb3V0LXRvdGFscyB7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDUgMCAyMCk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWRlZWYxO1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuICB9XG5cbiAgdGFibGUge1xuICAgIG1pbi13aWR0aDogMXB4O1xuICB9XG59XG5cbi5yZWNlaXZlLW9yZGVyLWluZm8ge1xuICBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoNDAwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgfVxuICB9XG5cbiAgc3BhbiB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgfVxuXG4gIGEge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDM1KTtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYygyMik7XG4gIH1cblxuICAucmVjZWl2ZS1vcmRlci10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICB9XG5cbiAgLmxpbmstcHJpbnQge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbiNjaGVja291dC1yZXZpZXctc3VibWl0IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAuYnV0dG9ucy1zZXQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNyk7XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLnBvbGljeS1hZ3JlZW1lbnRzIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuXG4gIC5jaGVja291dC1hZ3JlZW1lbnRzIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTApO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE3KTtcblxuICAgIC5hZ3JlZW1lbnQtY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgIH1cbiAgfVxufVxuXG4jcGF5bWVudF9mb3JtX2F1dGhvcml6ZW5ldF9jaW0ge1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG59XG5cbi5jaGVja291dC1pbmRleC1pbmRleCB7XG4gIEBpbmNsdWRlIGxvYWRpbmdNYXNrO1xuXG4gIC5oZWFkZXItYmFubmVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5vcGMtd3JhcHBlciB7XG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIH1cbn1cblxuLmN1c3RvbS1hZGRyZXNzLWZvcm0ge1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogMCAtMTBweDtcbiAgfVxuXG4gID4gLmZpZWxkIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgfVxuICB9XG5cbiAgbGVnZW5kLmxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmZpZWxkLXRvb2x0aXAge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAud2lkZS1maWVsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgfVxuICB9XG59XG5cbi5hZGRpdGlvbmFsLWFkZHJlc3MtaW5mbyB7XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG59XG5cbi5zdGVwLWNvbnRlbnQge1xuICAuZm9ybS1sb2dpbiB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBtYXJnaW46IDAgLTEwcHg7XG4gICAgfVxuXG4gICAgLmZpZWxkLCAuYWN0aW9ucy10b29sYmFyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29udHJvbCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubm90ZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbn1cblxuI2N1c3RvbWVyLWVtYWlsLWZpZWxkc2V0IHtcbiAgLmN1c3RvbS1hZGRyZXNzLWZvcm0ge1xuICAgIG1hcmdpbjogMDtcblxuICAgIC5maWVsZCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWNoZWNrb3V0LXNoaXBwaW5nLW1ldGhvZCB7XG4gIGxhYmVsIHtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gIH1cblxuICB0ciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5cbiNjaGVja291dC1zaGlwcGluZy1tZXRob2QtbG9hZCB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4ubmV3LWFkZHJlc3MtcG9wdXAge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4uY2hlY2tvdXQtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLm9wYy1lc3RpbWF0ZWQtd3JhcHBlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5vcGMtYmxvY2stc3VtbWFyeSB7XG4gIGxhYmVsLCAudG9nZ2xlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICBkdCwgZGQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gIHRhYmxlIHtcbiAgICBtaW4td2lkdGg6IHVuc2V0O1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgfVxuXG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1ncmF5O1xuXG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGgsIHRkIHtcbiAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICB9XG5cbiAgY2FwdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaXRlbXMtaW4tY2FydCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZ3JheTtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcbiAgfVxuXG4gID4gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIGxhYmVsOmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIGxhYmVsIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZTtcbiAgICAgIH1cblxuICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDFweCk7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gID4gLmFjY29yZGlvbi1ib2R5IHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxMyAxNyk7XG4gICAgYm9yZGVyLXRvcDogJGhlYWRlci1ib3JkZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IDIwcHggMTBweDtcbiAgICB9XG4gIH1cblxuICAucHJvZHVjdC1pdGVtIHtcbiAgICAmICsgLnByb2R1Y3QtaXRlbSB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICBib3JkZXItdG9wOiAkaGVhZGVyLWJvcmRlcjtcbiAgICB9XG5cbiAgICAmID4gLnByb2R1Y3Qge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0LWl0ZW0tZGV0YWlscyB7XG4gICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIH1cblxuICAub3B0aW9ucyB7XG4gICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG4gIH1cbn1cblxuLm9wYy1wYXltZW50IHtcbiAgLnN0ZXAtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cblxuICAuYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5wYXltZW50LW1ldGhvZC10aXRsZSB7XG4gIGltZyB7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDIwcHg7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIH1cbn1cblxuLnBheW1lbnQtbWV0aG9kLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gIH1cbn1cblxuLmZpZWxkLXNlbGVjdC1iaWxsaW5nIHtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG5cbiAgLmNvbnRyb2wge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG4uYmlsbGluZy1hZGRyZXNzLXNhbWUtYXMtc2hpcHBpbmctYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4uYWN0aW9uLWhlbHAtYmxvY2sge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5vcGMtYmxvY2stc2hpcHBpbmctaW5mb3JtYXRpb24ge1xuICBbY2xhc3NePVwic2hpcC1cIl0ge1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgfVxuXG4gICAgLnNoaXBwaW5nLWluZm9ybWF0aW9uLXRpdGxlIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjdXN0b20tZ3JheTtcbiAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICBidXR0b24ge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yICRmYXN0LXRyYW5zaXRpb247XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5zaGlwcGluZy1pbmZvcm1hdGlvbi1jb250ZW50IHtcbiAgICAgIGJvcmRlcjogJGhlYWRlci1ib3JkZXI7XG4gICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cbiAgfVxufVxuXG4uYmlsbGluZy1hZGRyZXNzLWRldGFpbHMge1xuICBmb250LXNpemU6IDE0cHg7XG5cbiAgYnV0dG9uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgJHRyYW5zaXRpb247XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICB9XG59XG5cbi5jcmVkaXQtY2FyZC10eXBlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5hdXRob3JpemUtY2ltIHtcbiAgLmZpZWxkIHtcbiAgICAmLmRhdGUsICYuY3Z2IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDJweCk7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIH1cblxuICAgICYuZGF0ZSB7XG5cbiAgICB9XG5cbiAgICAmLmN2diB7XG5cbiAgICB9XG4gIH1cblxuICAucGF5bWVudC1tZXRob2QtY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi5jaGVja291dC1iaWxsaW5nLWFkZHJlc3Mge1xuICAuYWN0aW9ucy10b29sYmFyIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICB9XG59XG5cbi5jaGVja291dC1hZ3JlZW1lbnRzLWJsb2NrIHtcbiAgbWFyZ2luOiAyMHB4IDA7XG5cbiAgLmNoZWNrYm94ICsgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxufVxuXG4ub3JkZXItcmV2aWV3LWZvcm0tY29udGFpbmVyIHtcbiAgLmNoZWNrb3V0LWFncmVlbWVudCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi5zdG9yZS1jcmVkaXQtYWRkIHtcbiAgbWFyZ2luLXRvcDogMzVweDtcblxuICAucGF5bWVudC1vcHRpb24tdGl0bGUge1xuICAgIGJhY2tncm91bmQ6ICRjdXN0b20tZ3JheTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlO1xuICAgIH1cblxuICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICB0b3A6IGNhbGMoNTAlIC0gMXB4KTtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICB9XG5cbiAgJi5fYWN0aXZlIHtcbiAgICAucGF5bWVudC1vcHRpb24tdGl0bGUge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucGF5bWVudC1vcHRpb24tY29udGVudCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxufSIsIi5hY2NvdW50IHtcbiAgaDEsICAuaDEge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgfVxuXG4gIC5mb3JtLWxpc3Qge1xuICAgIC5maWVsZHMge1xuICAgICAgbWFyZ2luOiByZW0tY2FsYygwIC0xNSk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTZweDtcbiAgICB9XG5cbiAgICAuZmllbGQge1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAxNSk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXQuaW5wdXQtdGV4dCwgc2VsZWN0IHtcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMjkwKTtcbiAgICB9XG4gIH1cblxuICAuY29udHJvbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICB9XG5cbiAgaDMge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1mYW1pbHk6ICdCcmFuZG9uR3JvdGVzcXVlJywgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICB9XG5cbiAgLnVpLXRvb2x0aXAge1xuICAgIHotaW5kZXg6IDgwMDtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIH1cblxuICAudHJhY2tpbmctdGl0bGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxldHRlci1zcGFjaW5nOiAzcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuXG4gIC5vcmRlci10cmFja2luZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0NSk7XG4gICAgfVxuICB9XG59XG5cbi5jb3VudC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBtYXJnaW46IDIwcHggMDtcbn1cblxuLy9kYXNoYm9hcmRcblxuLmRhc2hib2FyZCB7XG4gIC50aXRsZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG4gIH1cblxuICAud2VsY29tZS1tc2cge1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoODUwKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNSk7XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYm94LXJlY2VudCB7XG4gICAgLy9tYXJnaW4tYm90dG9tOiByZW0tY2FsYygzNSk7XG4gICAgLy9AaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIC8vICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg3MCk7XG4gICAgLy99XG4gICAgLy9AaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAvLyAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTAwKTtcbiAgICAvL31cbiAgICAuYm94LWhlYWQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgfVxuXG4gICAgICBhLnVuZGVybGluZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCA1MCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5ibG9jay10aXRsZSB7XG4gICAgaDMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzUpO1xuICAgIH1cbiAgfVxuXG4gIC50b3Age1xuICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmJvdHRvbSB7XG4gICAgLmNvdW50LWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vL2FjY291bnQgaW5mb3JtYXRpb25cblxuLmFjY291bnQtaW5mbyB7XG4gIG1hcmdpbjogcmVtLWNhbGMoMCAtMSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAuYm94IHtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgMSAyNSk7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYzZjY7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMzApO1xuICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDEgNDApO1xuICAgIH1cblxuICAgICYuYm94LXN1YnNjcmlwdGlvbiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNTVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzcGFuLCBhLCBwIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICB9XG5cbiAgICBzcGFuLCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgfVxuICB9XG5cbiAgLnVuZGVybGluZSB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgICBib3R0b206IHJlbS1jYWxjKDQzKTtcbiAgICB9XG4gIH1cblxuICAuc3Vic2NyaWJlIHtcbiAgICAuaW5mbyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICAucHJvZmlsZSB7XG4gICAgLnBpY3R1cmUge1xuICAgICAgKyBkaXYge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuICAgICAgICBwIHtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmluZm8ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5mbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAvL21heC13aWR0aDogNzAlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pY29uLWhvbGRlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDM3KTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDM3KTtcbiAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygyMCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogNDUlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICBtYXJnaW46IC0xcHggMCAwIC03cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIH1cblxuICAgICYuc3Vic2NyaWJlZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9pY29ucy9jaGVjay1zeW1ib2wuc3ZnKTtcblxuICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5waWN0dXJlIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogcmVtLWNhbGMoODApO1xuICAgIGhlaWdodDogcmVtLWNhbGMoODApO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDQwKTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgLjEpO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDYpO1xuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjApO1xuXG4gICAgZGl2IHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIEBpbmNsdWRlIGJhY2tncm91bmQoKTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg0MCk7XG4gICAgfVxuICB9XG59XG5cbi5hY2NvdW50LXBob3RvIHtcbiAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuXG4gIC5waWN0dXJlLCAuZGVsZXRlLWltYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAucGljdHVyZSB7XG4gICAgd2lkdGg6IHJlbS1jYWxjKDgwKTtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDgwKTtcbiAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYyg0MCk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIC4xKTtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg2KTtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIwKTtcblxuICAgIGRpdiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kKCk7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoNDApO1xuICAgIH1cbiAgfVxuXG4gIC5idXR0b24ge1xuICAgIG1heC13aWR0aDogcmVtLWNhbGMoMjQwKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB9XG59XG5cbi5hY2NvdW50LWdhbGxlcnkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW46IHJlbS1jYWxjKDAgLTEpO1xuXG4gIGgzIHtcbiAgICBmb250LWZhbWlseTogJ0JyYW5kb25Hcm90ZXNxdWUnLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIH1cblxuICBwIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgfVxuICB9XG5cbiAgLnBpY3R1cmUge1xuICAgIHBhZGRpbmctdG9wOiA1Ny40NyU7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZCgpO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI1KTtcbiAgfVxuXG4gIC5pdGVtIHtcbiAgICAvL3dpZHRoOiAzMy4zMyU7XG4gICAgbWFyZ2luOiByZW0tY2FsYygwIDAgMzUpO1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDcwKTtcbiAgICB9XG4gIH1cblxuICAuaW5mbyB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMCAxOSk7XG4gIH1cblxuICAuYnV0dG9uIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYygyMCk7XG4gICAgcGFkZGluZy1yaWdodDogcmVtLWNhbGMoMjApO1xuICAgIG1pbi13aWR0aDogcmVtLWNhbGMoMjQwKTtcbiAgfVxufVxuXG4vL2FjY291bnQtaW5mb3JtYXRpb25cblxuLmFjY291bnQtaW5mb3JtYXRpb24sIC5lZGl0LWFkZHJlc3Mge1xuICBtYXgtd2lkdGg6IHJlbS1jYWxjKDYyMCk7XG5cbiAgLmNoYW5nZS1oaWRkZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoMjUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtLWNhbGMoNDApO1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAzMDAlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZWYxO1xuICAgIH1cbiAgfVxuXG4gIC5idXR0b24ge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5hZGRpdGlvbmFsLWFkZHJlc3MtaW5mbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTIpO1xuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgIH1cbiAgfVxufVxuXG4vL2FkZHJlc3MgYm9va1xuXG4uYWRkcmVzc2VzLWxpc3Qge1xuICAuYnV0dG9ucy1zZXQge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICBvbCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuZW1wdHkgcCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcbiAgICB9XG4gIH1cbn1cblxuLmFkZHJlc3Nlcy1hZGRpdGlvbmFsIHtcbiAgaDMsIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuYm94IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDI1KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMzUpO1xuICAgIH1cbiAgfVxuXG4gIC51bmRlcmxpbmUge1xuICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTApO1xuICB9XG59XG5cbi5hZGRyZXNzZXMtcHJpbWFyeSB7XG4gIC51bmRlcmxpbmUge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogcmVtLWNhbGMoMjUpO1xuICAgICAgcmlnaHQ6IHJlbS1jYWxjKDI1KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHRvcDogcmVtLWNhbGMoNTApO1xuICAgICAgcmlnaHQ6IHJlbS1jYWxjKDUwKTtcbiAgICB9XG4gIH1cblxuICBoMyB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDUwKTtcbiAgICB9XG4gIH1cbn1cblxuLmFkZHJlc3Nlcy1wcmltYXJ5LCAuYWRkcmVzc2VzLWFkZGl0aW9uYWwge1xuICBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gIH1cbiAgLnNtYWxsLTEyLnhtZWRpdW0tNi5jb2x1bW5zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgLmhvbGRlciwgLmJveCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYzZjY7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTUgMTApO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDI1KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDUwKTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgfVxuXG4gIC5hZGRyZXNzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuXG4gIGFiYnIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG5cbiAgLmJ1dHRvbi5hY3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtIGRvd24pIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pdGVtLmFjdGlvbnMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSBkb3duKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgfVxufVxuXG4uYmxvY2stYWRkcmVzc2VzLWRlZmF1bHQge1xuICBtYXJnaW4tYm90dG9tOiAyNXB4O1xufVxuXG4vL215IG9yZGVyc1xuXG4uYWJvdXQtb3JkZXIge1xuICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKCRibGFjaywgLjEpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI1KTtcbiAgfVxuXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE3KTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNSk7XG4gICAgfVxuICB9XG5cbiAgc3BhbiB7XG4gICAgbWluLXdpZHRoOiByZW0tY2FsYygxMDApO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtaW4td2lkdGg6IHJlbS1jYWxjKDIwMCk7XG4gICAgfVxuICB9XG59XG5cbi5vcmRlci1pbmZvIHtcbiAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuXG4gIHVsIGxpLCBkdCB7XG4gICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgIH1cbiAgfVxuXG4gIGR0IHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59XG5cbi5vcmRlci1pbmZvLWJveCB7XG4gIC5ib3gtcGF5bWVudCB7XG4gICAgLmJveC1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIC41KTtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5jYXJkcy1saXN0IGxpIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5ib3gge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMmYzZjY7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMTUgMTApO1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygyNSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg1MCk7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDM1KTtcbiAgICB9XG4gIH1cblxuICBoMyB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWltcG9ydGFudDtcbiAgICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDUwKTtcbiAgICB9XG4gIH1cblxuICAuYm94LWNvbnRlbnQge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICBhZGRyZXNzIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wYXltZW50LW1ldGhvZCB7XG4gICAgbWFyZ2luOiAwO1xuXG4gICAgLnRpdGxlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgfVxuICB9XG59XG5cbi5vcmRlci1pdGVtcyB7XG4gIC50YWJsZS1jYXB0aW9uIHtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDI1IDApO1xuICB9XG59XG5cbi8vLnRhYmxlLW9yZGVyLWl0ZW1zIHtcbi8vICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG4vLyAgdGZvb3Qge1xuLy8gICAgYm9yZGVyOiAwO1xuLy8gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuLy8gICAgdGQge1xuLy8gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4vLyAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuLy8gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbi8vICAgICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuLy8gICAgICAmOmZpcnN0LWNoaWxkIHtcbi8vICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbi8vICAgICAgfVxuLy8gICAgfVxuLy8gIH1cbi8vfVxuXG4vL1JlZ2lzdGVyXG5cbi5jcmVhdGUtYWNjb3VudC1mb3JtIHtcbiAgJi5mb3JtLWxpc3Qge1xuICAgIC5maWVsZCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmZpZWxkcyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgaW5wdXQuaW5wdXQtdGV4dCwgc2VsZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB9XG4gIH1cblxufVxuXG4ub3JkZXItbGlua3Mge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAkY3VzdG9tLWdyYXk7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgYSwgc3Ryb25nIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAkdHJhbnNpdGlvbiwgYmFja2dyb3VuZC1jb2xvciAkdHJhbnNpdGlvbjtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIG1pbi13aWR0aDogMTUwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgYSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgIH1cbiAgfVxuXG4gIC5pdGVtIHtcbiAgICAmICsgLml0ZW0ge1xuICAgICAgYm9yZGVyLWxlZnQ6ICRoZWFkZXItYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5jdXJyZW50IHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJsYWNrO1xuICAgIGJvcmRlci1sZWZ0OiAwICFpbXBvcnRhbnQ7XG5cbiAgICAmICsgLml0ZW0ge1xuICAgICAgYm9yZGVyLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhLCBzdHJvbmcge1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLnRyYWNraW5nIHtcbiAgLmxhYmVsIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZDogIzAwMDtcbiAgfVxufSIsIi5jcmVkaXQtY2FyZC1wcmltYXJ5IHtcbiAgb2wsIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICAuY2FyZC1pbmZvIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzIpO1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIH1cbiAgfVxuICAuYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDI2KTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICBtaW4td2lkdGg6IHJlbS1jYWxjKDE3Nyk7XG4gICAgfVxuICB9XG59IiwiLnBhZ2UtcHJpbnQge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICAubWFpbi1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZSB7XG4gICAgbWluLXdpZHRoOiB1bnNldDtcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAxMHB4IDVweDtcbiAgICB9XG4gIH1cbiAgLmRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgLy9tYXgtd2lkdGg6IDIyNXB4O1xuICAgIG1heC13aWR0aDogMTQ1cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBzcGFuIHtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICB9XG4gICAgYnIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbiAgLnByb2R1Y3QtY2FydC1pbWFnZSB7XG4gICAgLnByb2R1Y3QtaW1hZ2Uge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgd2lkdGg6IDkwcHg7XG4gICAgICBoZWlnaHQ6IDkwcHg7XG4gICAgICBtYXJnaW46IDAgNXB4IDVweCAwO1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICB9XG4gIH1cbiAgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBib3JkZXItYm90dG9tOiAkaGVhZGVyLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIH1cbiAgLmJveCB7XG4gICAgYm9yZGVyOiAkaGVhZGVyLWJvcmRlcjtcbiAgfVxuICAudGFibGUtY2FwdGlvbiB7XG4gICAgbWFyZ2luOiAwIDAgMTVweDtcbiAgfVxuICAubWVzc2FnZXMge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmxvZ28ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG4gIC5pdGVtLW9wdGlvbnMge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuICAuc21hbGwtMTIge1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIGgxLCAgLmgxIHtcbiAgICBtYXJnaW46IDE1cHggMDtcbiAgfVxuICAucHJvZHVjdC1pdGVtLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XG4gIH1cbiAgLnByb2R1Y3QtY2FydC1pbWFnZSAuaXRlbS1vcHRpb25zIGR0LFxuICAuZGVzY3JpcHRpb24gLml0ZW0tb3B0aW9ucyBkdHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cbiAgLnByb2R1Y3QtY2FydC1pbWFnZSAuaXRlbS1vcHRpb25zIGRkLFxuICAuZGVzY3JpcHRpb24gLml0ZW0tb3B0aW9ucyBkZHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cbiAgJi5zYWxlcy1vcmRlci1wcmludCB7XG4gICAgLmxvZ28ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICAgIC5wYWdlLXRpdGxlLXdyYXBwZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMjAwcHg7XG4gICAgfVxuICB9XG59XG5cbi5wYWdlLXByaW50IC5wcmludC1oZWFkIHtcbiAgbWFyZ2luOiAwIDAgMTVweDtcbn1cblxuLnBhZ2UtcHJpbnQgLnByaW50LWhlYWQgLmxvZ28ge1xuICBmbG9hdDogbm9uZTtcbiAgbWF4LWhlaWdodDogNTBweDtcbiAgd2lkdGg6IGF1dG87XG59IiwiLnN0cmVhbWluZy1saWJyYXJ5IHtcbiAgaDEsICAuaDEge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gICAgfVxuICB9XG59XG5cbiNzdHJlYW1pbmctbGlicmFyeS1ncmlkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5tYWtlLXBsYXlsaXN0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhtZWRpdW0pIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuXG4gICAgfVxuICB9XG5cbiAgLmxvYWRpbmctbWFzayB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAuNSk7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAucGFnaW5hdGlvbiB7XG4gICAgLmN1cnJlbnQge1xuICAgICAgY3Vyc29yOiBhdXRvO1xuXG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgY3Vyc29yOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5oaWRkZW4td3JhcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYuc2hvdyB7XG4gICAgLmhpZGRlbi13cmFwIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5jdy1hZGQge1xuICAgIGEge1xuICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5zdHJlYW1pbmctbGlicmFyeS1saXN0IHtcbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICBsaSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0NSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnByZXZpZXctd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmxpa2UtY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICBpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBpIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucHJldmlldyB7XG4gICAgcGFkZGluZy10b3A6IDYyLjE2JTtcbiAgICBtaW4taGVpZ2h0OiByZW0tY2FsYygyMzApO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZCgpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMzAzMDMsIC40KTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbnMvcGxheS1idXR0b24uc3ZnKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNDhweDtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIH1cblxuICAgICYubmV3IHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ05ldyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoODQpO1xuICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDMyKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMyKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAzMDMwMztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5uYW1lIHtcbiAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEyKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMCk7XG4gICAgfVxuICB9XG5cbiAgLnJ1bnRpbWUge1xuICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTUpO1xuICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgIGxldHRlci1zcGFjaW5nOiAuNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcbiAgICB9XG4gIH1cbn1cblxuLy9maWx0ZXJzXG4ubGlicmFyeS1maWx0ZXItYXJlYSB7XG4gIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcblxuICA+IGRpdiAucm93IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmM2Y2O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygxNSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYygyMCAyNSk7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg0MCk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2MCk7XG4gIH1cblxuICAuaW5saW5lIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNjBweCk7XG4gICAgfVxuXG4gICAgLmljb24ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gIH1cblxuICAjc2VhcmNoIHtcblxuICB9XG5cbiAgLnNlYXJjaC1mb3JtLWhvbGRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLnNlYXJjaC1pY29uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICB3aWR0aDogMTRweDtcbiAgICAgIGhlaWdodDogMTRweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvaWNvbnMvc2VhcmNoLnN2Zyk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmV4Y2hhbmdlIHtcbiAgICBoZWlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgICB3aWR0aDogcmVtLWNhbGMoNDApO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygwIDUpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2I0YmZjMjtcblxuICAgICAgJi5hY3RpdmUgLmljb24taGVhcnQtZW1wdHkge1xuICAgICAgICBjb2xvcjogJGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjogJGRhcmstZ3JheSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5pY29uLWRvd24ge1xuICAgICAgY29sb3I6ICRibGFjayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYuYWN0aXZlIC5pY29uLWhlYXJ0LWVtcHR5IHtcbiAgICAgIGNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmLnVwIHtcbiAgICAgIC5pY29uLWRvd24ge1xuICAgICAgICBjb2xvcjogJGRhcmstZ3JheSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAuaWNvbi11cCB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnN1YnNjcmliZS1vdmVybGF5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgJi52aXNpYmxlIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAuMik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiA1MDtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgIH1cbiAgfVxufSIsIi53b3JkcHJlc3MtaG9tZXBhZ2UtdmlldyB7XG4gIC5wYWdlLXdyYXAge1xuICAgID4ucm93IHtcbiAgICAgID4uc21hbGwtMTIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC8vcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zZWFyY2gtYmxvZyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgdG9wOiAyM3B4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgIHRvcDogMzZweDtcbiAgICB9XG4gIH1cbn1cblxuLnNlYXJjaC1ibG9nIHtcbiAgZGl2Lm1hZ2UtZXJyb3Ige1xuICAgIC8vZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgaW5wdXQubWFnZS1lcnJvciB7XG4gICAgYm9yZGVyLWNvbG9yOiByZWQ7XG4gIH1cbiAgLnZhbGlkYXRpb24tYWR2aWNlIHtcbiAgICAvL2Rpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi53b3JkcHJlc3MtcG9zdC12aWV3IHtcbiAgLnBhZ2UtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiA1MHB4O1xuICAgIH1cbiAgfVxuICAucG9zdC1jb250ZW50ID4gKiB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeG1lZGl1bSkge1xuICAgICAgbWF4LXdpZHRoOiA2MTBweDtcbiAgICB9XG4gIH1cbn0iLCIvLyBGb3VuZGF0aW9uXG5AaW1wb3J0IFwic291cmNlL2ZvdW5kYXRpb24vZm91bmRhdGlvblwiO1xuXG4vLyBMaWJzXG5AaW1wb3J0IFwic291cmNlL2xpYnMvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwic291cmNlL2xpYnMvbWl4aW5zXCI7XG5AaW1wb3J0IFwic291cmNlL2xpYnMvZm9udHNcIjtcbkBpbXBvcnQgXCJzb3VyY2UvbGlicy9mb250ZWxsb1wiO1xuQGltcG9ydCBcInNvdXJjZS9saWJzL3NsaWNrXCI7XG5AaW1wb3J0IFwic291cmNlL2xpYnMvc2xpY2stdGhlbWVcIjtcbkBpbXBvcnQgXCJzb3VyY2UvbGlicy9zd2lwZXJcIjtcbkBpbXBvcnQgXCJzb3VyY2UvbGlicy9pb24ucmFuZ2VTbGlkZXJcIjtcbkBpbXBvcnQgXCJzb3VyY2UvbGlicy9pb24ucmFuZ2VTbGlkZXJTa2luXCI7XG5AaW1wb3J0IFwic291cmNlL2xpYnMvanF1ZXJ5Lm1DdXN0b21TY3JvbGxiYXJcIjtcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCBcInNvdXJjZS9jb21wb25lbnRzL2hlYWRlclwiO1xuQGltcG9ydCBcInNvdXJjZS9jb21wb25lbnRzL2Zvb3RlclwiO1xuQGltcG9ydCBcInNvdXJjZS9jb21wb25lbnRzL2JyZWFkY3J1bWJzXCI7XG5AaW1wb3J0IFwic291cmNlL2NvbXBvbmVudHMvY29udGVudC1ib3hlc1wiO1xuQGltcG9ydCBcInNvdXJjZS9jb21wb25lbnRzL3N1YnNjcmliZS1wb3B1cFwiO1xuQGltcG9ydCBcInNvdXJjZS9jb21wb25lbnRzL2N1c3RvbS1mb3Jtc1wiO1xuQGltcG9ydCBcInNvdXJjZS9jb21wb25lbnRzL2Jsb2NrLWFjY291bnRcIjtcbkBpbXBvcnQgXCJzb3VyY2UvY29tcG9uZW50cy9tb2RhbHNcIjtcbkBpbXBvcnQgXCJzb3VyY2UvY29tcG9uZW50cy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwic291cmNlL2NvbXBvbmVudHMvcHJvZHVjdHMtZ3JpZFwiO1xuQGltcG9ydCBcInNvdXJjZS9jb21wb25lbnRzL3Byb2R1Y3Qtc2xpZGVyXCI7XG5AaW1wb3J0IFwic291cmNlL2NvbXBvbmVudHMvY3VzdG9tZXJjcmVkaXRcIjtcbkBpbXBvcnQgXCJzb3VyY2UvY29tcG9uZW50cy9mYXFcIjtcbkBpbXBvcnQgXCJzb3VyY2UvY29tcG9uZW50cy9pbnRyb2R1Y2luZ19zbGlkZXJcIjtcbkBpbXBvcnQgXCJzb3VyY2UvY29tcG9uZW50cy9wcml2YXRlLXdvcmtvdXRcIjtcbkBpbXBvcnQgXCJzb3VyY2UvY29tcG9uZW50cy9iZXN0c2VsbGVycy1zbGlkZXJcIjtcbkBpbXBvcnQgXCJzb3VyY2UvY29tcG9uZW50cy9wbGF5bGlzdFwiO1xuQGltcG9ydCBcInNvdXJjZS9jb21wb25lbnRzL2F1dGhlbnRpY2F0aW9uLXBvcHVwXCI7XG5cbi8vIE1vZHVsZXNcblxuLy8gQ29tbW9uXG5cbi8vIFBhZ2VzXG5AaW1wb3J0IFwic291cmNlL3BhZ2VzL2hvbWVcIjtcbkBpbXBvcnQgXCJzb3VyY2UvcGFnZXMvZ2xvYmFsXCI7XG5AaW1wb3J0IFwic291cmNlL3BhZ2VzL3N0YXRpYy1wYWdlc1wiO1xuQGltcG9ydCBcInNvdXJjZS9wYWdlcy9hYm91dFwiO1xuQGltcG9ydCBcInNvdXJjZS9wYWdlcy9jb250YWN0c1wiO1xuQGltcG9ydCBcInNvdXJjZS9wYWdlcy9zaG9wLWluZGV4XCI7XG5AaW1wb3J0IFwic291cmNlL3BhZ2VzL3Byb2R1Y3QtbGlzdGluZ1wiO1xuQGltcG9ydCBcInNvdXJjZS9wYWdlcy9jYXRhbG9nLXByb2R1Y3Qtdmlld1wiO1xuQGltcG9ydCBcInNvdXJjZS9wYWdlcy9jdXN0b20td29ya291dFwiO1xuQGltcG9ydCBcInNvdXJjZS9wYWdlcy92aWRlby1wcm9kdWN0LWxpc3RpbmdcIjtcbkBpbXBvcnQgXCJzb3VyY2UvcGFnZXMvc2hvcHBpbmctY2FydFwiO1xuQGltcG9ydCBcInNvdXJjZS9wYWdlcy9yZWdpc3RlclwiO1xuQGltcG9ydCBcInNvdXJjZS9wYWdlcy9jaGVja291dFwiO1xuQGltcG9ydCBcInNvdXJjZS9wYWdlcy9kYXNoYm9hcmRcIjtcbkBpbXBvcnQgXCJzb3VyY2UvcGFnZXMvcGF5bWVudC1tZXRob2RzXCI7XG5AaW1wb3J0IFwic291cmNlL3BhZ2VzL3ByaW50XCI7XG5AaW1wb3J0IFwic291cmNlL3BhZ2VzL3N0cmVhbWluZy1saWJyYXJ5XCI7XG5AaW1wb3J0IFwic291cmNlL3BhZ2VzL2Jsb2dcIjtcblxuLy8gUG9wdXBzXG5cbi8vIFByaW50IHN0eWxlXG5cbi8qIEFsd2F5cyBzZXQgdGhlIG1hcCBoZWlnaHQgZXhwbGljaXRseSB0byBkZWZpbmUgdGhlIHNpemUgb2YgdGhlIGRpdlxuICAgICAgKiBlbGVtZW50IHRoYXQgY29udGFpbnMgdGhlIG1hcC4gKi9cblxuLyogT3B0aW9uYWw6IE1ha2VzIHRoZSBzYW1wbGUgcGFnZSBmaWxsIHRoZSB3aW5kb3cuICovXG5cblxuIl0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 */
