@charset "UTF-8";
/* cabin-regular - latin */
@font-face {
  font-family: 'Cabin';
  font-style: normal;
  font-weight: 400;
  src: local("Cabin"), local("Cabin-Regular"), url("../webfonts/cabin-v11-latin-regular.woff2") format("woff2"), url("../webfonts/cabin-v11-latin-regular.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }

/* cabin-500 - latin */
@font-face {
  font-family: 'Cabin';
  font-style: normal;
  font-weight: 500;
  src: local("Cabin Medium"), local("Cabin-Medium"), url("../webfonts/cabin-v11-latin-500.woff2") format("woff2"), url("../webfonts/cabin-v11-latin-500.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }

/* cabin-600 - latin */
@font-face {
  font-family: 'Cabin';
  font-style: normal;
  font-weight: 600;
  src: local("Cabin SemiBold"), local("Cabin-SemiBold"), url("../webfonts/cabin-v11-latin-600.woff2") format("woff2"), url("../webfonts/cabin-v11-latin-600.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }

/* cabin-700 - latin */
@font-face {
  font-family: 'Cabin';
  font-style: normal;
  font-weight: 700;
  src: local("Cabin Bold"), local("Cabin-Bold"), url("../webfonts/cabin-v11-latin-700.woff2") format("woff2"), url("../webfonts/cabin-v11-latin-700.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }

/**
 * Foundation for Sites by ZURB
 * Version 6.3.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */
/* Document
       ========================================================================== */
/**
     * 1. Change the default font family in all browsers (opinionated).
     * 2. Correct the line height in all browsers.
     * 3. Prevent adjustments of font size after orientation changes in
     *    IE on Windows Phone and in iOS.
     */
html {
  font-family: sans-serif;
  /* 1 */
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */ }

/* Sections
       ========================================================================== */
/**
     * Remove the margin in all browsers (opinionated).
     */
body {
  margin: 0; }

/**
     * Add the correct display in IE 9-.
     */
article,
aside,
footer,
header,
nav,
section {
  display: block; }

/**
     * Correct the font size and margin on `h1` elements within `section` and
     * `article` contexts in Chrome, Firefox, and Safari.
     */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
figcaption,
figure {
  display: block; }

/**
     * Add the correct margin in IE 8.
     */
figure {
  margin: 1em 40px; }

/**
     * 1. Add the correct box sizing in Firefox.
     * 2. Show the overflow in Edge and IE.
     */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
     * Add the correct display in IE.
     */
main {
  display: block; }

/**
     * 1. Correct the inheritance and scaling of font size in all browsers.
     * 2. Correct the odd `em` font sizing in all browsers.
     */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/* Links
       ========================================================================== */
/**
     * 1. Remove the gray background on active links in IE 10.
     * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
     */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
     * Remove the outline on focused links when they are also active or hovered
     * in all browsers (opinionated).
     */
a:active,
a:hover {
  outline-width: 0; }

/* Text-level semantics
       ========================================================================== */
/**
     * 1. Remove the bottom border in Firefox 39-.
     * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
     */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
     * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
     */
b,
strong {
  font-weight: inherit; }

/**
     * Add the correct font weight in Chrome, Edge, and Safari.
     */
b,
strong {
  font-weight: bolder; }

/**
     * 1. Correct the inheritance and scaling of font size in all browsers.
     * 2. Correct the odd `em` font sizing in all browsers.
     */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
     * Add the correct font style in Android 4.3-.
     */
dfn {
  font-style: italic; }

/**
     * Add the correct background and color in IE 9-.
     */
mark {
  background-color: #ff0;
  color: #000; }

/**
     * Add the correct font size in all browsers.
     */
small {
  font-size: 80%; }

/**
     * Prevent `sub` and `sup` elements from affecting the line height in
     * all browsers.
     */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
audio,
video {
  display: inline-block; }

/**
     * Add the correct display in iOS 4-7.
     */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
     * Remove the border on images inside links in IE 10-.
     */
img {
  border-style: none; }

/**
     * Hide the overflow in IE.
     */
svg:not(:root) {
  overflow: hidden; }

/* Forms
       ========================================================================== */
/**
     * 1. Change the font styles in all browsers (opinionated).
     * 2. Remove the margin in Firefox and Safari.
     */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
     * Show the overflow in IE.
     */
button {
  overflow: visible; }

/**
     * Remove the inheritance of text transform in Edge, Firefox, and IE.
     * 1. Remove the inheritance of text transform in Firefox.
     */
button,
select {
  /* 1 */
  text-transform: none; }

/**
     * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
     *    controls in Android 4.
     * 2. Correct the inability to style clickable types in iOS and Safari.
     */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  /**
       * Remove the inner border and padding in Firefox.
       */
  /**
       * Restore the focus styles unset by the previous rule.
       */ }
  button::-moz-focus-inner,
  [type="button"]::-moz-focus-inner,
  [type="reset"]::-moz-focus-inner,
  [type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0; }
  button:-moz-focusring,
  [type="button"]:-moz-focusring,
  [type="reset"]:-moz-focusring,
  [type="submit"]:-moz-focusring {
    outline: 1px dotted ButtonText; }

/**
     * Show the overflow in Edge.
     */
input {
  overflow: visible; }

/**
     * 1. Add the correct box sizing in IE 10-.
     * 2. Remove the padding in IE 10-.
     */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
     * Correct the cursor style of increment and decrement buttons in Chrome.
     */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
     * 1. Correct the odd appearance in Chrome and Safari.
     * 2. Correct the outline style in Safari.
     */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
  /**
       * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
       */ }
  [type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
    -webkit-appearance: none; }

/**
     * 1. Correct the inability to style clickable types in iOS and Safari.
     * 2. Change font properties to `inherit` in Safari.
     */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/**
     * Change the border, margin, and padding in all browsers (opinionated).
     */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
     * 1. Correct the text wrapping in Edge and IE.
     * 2. Correct the color inheritance from `fieldset` elements in IE.
     * 3. Remove the padding so developers are not caught out when they zero out
     *    `fieldset` elements in all browsers.
     */
legend {
  box-sizing: border-box;
  /* 1 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  color: inherit;
  /* 2 */
  white-space: normal;
  /* 1 */ }

/**
     * 1. Add the correct display in IE 9-.
     * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
     */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
     * Remove the default vertical scrollbar in IE.
     */
textarea {
  overflow: auto; }

/* Interactive
       ========================================================================== */
/*
     * Add the correct display in Edge, IE, and Firefox.
     */
details {
  display: block; }

/*
     * Add the correct display in all browsers.
     */
summary {
  display: list-item; }

/*
     * Add the correct display in IE 9-.
     */
menu {
  display: block; }

/* Scripting
       ========================================================================== */
/**
     * Add the correct display in IE 9-.
     */
canvas {
  display: inline-block; }

/**
     * Add the correct display in IE.
     */
template {
  display: none; }

/* Hidden
       ========================================================================== */
/**
     * Add the correct display in IE 10-.
     */
[hidden] {
  display: none; }

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em"; }

html {
  box-sizing: border-box;
  font-size: 100%; }

*,
*::before,
*::after {
  box-sizing: inherit; }

body {
  margin: 0;
  padding: 0;
  background: #fff;
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #000;
  -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 {
  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 {
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1; }
  [data-whatinput='mouse'] button {
    outline: 0; }

pre {
  overflow: auto; }

.is-visible {
  display: block !important; }

.is-hidden {
  display: none !important; }

.row {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap; }
  .row .row {
    margin-right: -1.25rem;
    margin-left: -1.25rem; }
    @media print, screen and (min-width: 40em) {
      .row .row {
        margin-right: -1.25rem;
        margin-left: -1.25rem; } }
    @media print, screen and (min-width: 64em) {
      .row .row {
        margin-right: -0.625rem;
        margin-left: -0.625rem; } }
    .row .row.collapse {
      margin-right: 0;
      margin-left: 0; }
  .row.expanded {
    max-width: none; }
    .row.expanded .row {
      margin-right: auto;
      margin-left: auto; }
  .row:not(.expanded) .row {
    max-width: none; }
  .row.collapse > .column, .row.collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .row.is-collapse-child,
  .row.collapse > .column > .row,
  .row.collapse > .columns > .row {
    margin-right: 0;
    margin-left: 0; }

.column, .columns {
  -ms-flex: 1 1 0px;
      flex: 1 1 0px;
  padding-right: 1.25rem;
  padding-left: 1.25rem;
  min-width: initial; }
  @media print, screen and (min-width: 64em) {
    .column, .columns {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }

.row .column.row.row, .row .row.row.columns {
  margin-right: 0;
  margin-left: 0;
  padding-right: 0;
  padding-left: 0; }

.flex-container {
  display: -ms-flexbox;
  display: flex; }

.flex-child-auto {
  -ms-flex: 1 1 auto;
      flex: 1 1 auto; }

.flex-child-grow {
  -ms-flex: 1 0 auto;
      flex: 1 0 auto; }

.flex-child-shrink {
  -ms-flex: 0 1 auto;
      flex: 0 1 auto; }

.flex-dir-row {
  -ms-flex-direction: row;
      flex-direction: row; }

.flex-dir-row-reverse {
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }

.flex-dir-column {
  -ms-flex-direction: column;
      flex-direction: column; }

.flex-dir-column-reverse {
  -ms-flex-direction: column-reverse;
      flex-direction: column-reverse; }

.small-1 {
  -ms-flex: 0 0 8.33333%;
      flex: 0 0 8.33333%;
  max-width: 8.33333%; }

.small-offset-0 {
  margin-left: 0%; }

.small-2 {
  -ms-flex: 0 0 16.66667%;
      flex: 0 0 16.66667%;
  max-width: 16.66667%; }

.small-offset-1 {
  margin-left: 8.33333%; }

.small-3 {
  -ms-flex: 0 0 25%;
      flex: 0 0 25%;
  max-width: 25%; }

.small-offset-2 {
  margin-left: 16.66667%; }

.small-4 {
  -ms-flex: 0 0 33.33333%;
      flex: 0 0 33.33333%;
  max-width: 33.33333%; }

.small-offset-3 {
  margin-left: 25%; }

.small-5 {
  -ms-flex: 0 0 41.66667%;
      flex: 0 0 41.66667%;
  max-width: 41.66667%; }

.small-offset-4 {
  margin-left: 33.33333%; }

.small-6 {
  -ms-flex: 0 0 50%;
      flex: 0 0 50%;
  max-width: 50%; }

.small-offset-5 {
  margin-left: 41.66667%; }

.small-7 {
  -ms-flex: 0 0 58.33333%;
      flex: 0 0 58.33333%;
  max-width: 58.33333%; }

.small-offset-6 {
  margin-left: 50%; }

.small-8 {
  -ms-flex: 0 0 66.66667%;
      flex: 0 0 66.66667%;
  max-width: 66.66667%; }

.small-offset-7 {
  margin-left: 58.33333%; }

.small-9 {
  -ms-flex: 0 0 75%;
      flex: 0 0 75%;
  max-width: 75%; }

.small-offset-8 {
  margin-left: 66.66667%; }

.small-10 {
  -ms-flex: 0 0 83.33333%;
      flex: 0 0 83.33333%;
  max-width: 83.33333%; }

.small-offset-9 {
  margin-left: 75%; }

.small-11 {
  -ms-flex: 0 0 91.66667%;
      flex: 0 0 91.66667%;
  max-width: 91.66667%; }

.small-offset-10 {
  margin-left: 83.33333%; }

.small-12 {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%;
  max-width: 100%; }

.small-offset-11 {
  margin-left: 91.66667%; }

.small-order-1 {
  -ms-flex-order: 1;
      order: 1; }

.small-order-2 {
  -ms-flex-order: 2;
      order: 2; }

.small-order-3 {
  -ms-flex-order: 3;
      order: 3; }

.small-order-4 {
  -ms-flex-order: 4;
      order: 4; }

.small-order-5 {
  -ms-flex-order: 5;
      order: 5; }

.small-order-6 {
  -ms-flex-order: 6;
      order: 6; }

.small-up-1 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .small-up-1 > .column, .small-up-1 > .columns {
    -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 {
    -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 {
    -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 {
    -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 {
    -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 {
    -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 {
    -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 {
    -ms-flex: 0 0 12.5%;
        flex: 0 0 12.5%;
    max-width: 12.5%; }

.small-collapse > .column, .small-collapse > .columns {
  padding-right: 0;
  padding-left: 0; }

.small-uncollapse > .column, .small-uncollapse > .columns {
  padding-right: 1.25rem;
  padding-left: 1.25rem; }

@media print, screen and (min-width: 40em) {
  .medium-1 {
    -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .medium-offset-0 {
    margin-left: 0%; }
  .medium-2 {
    -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .medium-3 {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%; }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .medium-4 {
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .medium-offset-3 {
    margin-left: 25%; }
  .medium-5 {
    -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .medium-6 {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%; }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .medium-7 {
    -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .medium-offset-6 {
    margin-left: 50%; }
  .medium-8 {
    -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .medium-9 {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%; }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .medium-10 {
    -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .medium-offset-9 {
    margin-left: 75%; }
  .medium-11 {
    -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .medium-12 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%; }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .medium-order-1 {
    -ms-flex-order: 1;
        order: 1; }
  .medium-order-2 {
    -ms-flex-order: 2;
        order: 2; }
  .medium-order-3 {
    -ms-flex-order: 3;
        order: 3; }
  .medium-order-4 {
    -ms-flex-order: 4;
        order: 4; }
  .medium-order-5 {
    -ms-flex-order: 5;
        order: 5; }
  .medium-order-6 {
    -ms-flex-order: 6;
        order: 6; }
  .medium-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .medium-up-1 > .column, .medium-up-1 > .columns {
      -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 {
      -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 {
      -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 {
      -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 {
      -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 {
      -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 {
      -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 {
      -ms-flex: 0 0 12.5%;
          flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media print, screen and (min-width: 40em) and (min-width: 40em) {
  .medium-expand {
    -ms-flex: 1 1 0px;
        flex: 1 1 0px; }
  .medium-shrink {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto; }
  .medium-expand,
  .medium-shrink {
    max-width: none; } }

@media print, screen and (min-width: 40em) {
  .medium-flex-dir-row {
    -ms-flex-direction: row;
        flex-direction: row; }
  .medium-flex-dir-row-reverse {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
  .medium-flex-dir-column {
    -ms-flex-direction: column;
        flex-direction: column; }
  .medium-flex-dir-column-reverse {
    -ms-flex-direction: column-reverse;
        flex-direction: column-reverse; }
  .medium-flex-child-auto {
    -ms-flex: 1 1 auto;
        flex: 1 1 auto; }
  .medium-flex-child-grow {
    -ms-flex: 1 0 auto;
        flex: 1 0 auto; }
  .medium-flex-child-shrink {
    -ms-flex: 0 1 auto;
        flex: 0 1 auto; } }

.row.medium-unstack > .column, .row.medium-unstack > .columns {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%; }
  @media print, screen and (min-width: 40em) {
    .row.medium-unstack > .column, .row.medium-unstack > .columns {
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; } }

@media print, screen and (min-width: 40em) {
  .medium-collapse > .column, .medium-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .medium-uncollapse > .column, .medium-uncollapse > .columns {
    padding-right: 1.25rem;
    padding-left: 1.25rem; } }

@media print, screen and (min-width: 64em) {
  .large-1 {
    -ms-flex: 0 0 8.33333%;
        flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .large-offset-0 {
    margin-left: 0%; }
  .large-2 {
    -ms-flex: 0 0 16.66667%;
        flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .large-3 {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
    max-width: 25%; }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .large-4 {
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .large-offset-3 {
    margin-left: 25%; }
  .large-5 {
    -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .large-6 {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%; }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .large-7 {
    -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .large-offset-6 {
    margin-left: 50%; }
  .large-8 {
    -ms-flex: 0 0 66.66667%;
        flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .large-9 {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
    max-width: 75%; }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .large-10 {
    -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .large-offset-9 {
    margin-left: 75%; }
  .large-11 {
    -ms-flex: 0 0 91.66667%;
        flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .large-12 {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%; }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .large-order-1 {
    -ms-flex-order: 1;
        order: 1; }
  .large-order-2 {
    -ms-flex-order: 2;
        order: 2; }
  .large-order-3 {
    -ms-flex-order: 3;
        order: 3; }
  .large-order-4 {
    -ms-flex-order: 4;
        order: 4; }
  .large-order-5 {
    -ms-flex-order: 5;
        order: 5; }
  .large-order-6 {
    -ms-flex-order: 6;
        order: 6; }
  .large-up-1 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .large-up-1 > .column, .large-up-1 > .columns {
      -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 {
      -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 {
      -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 {
      -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 {
      -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 {
      -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 {
      -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 {
      -ms-flex: 0 0 12.5%;
          flex: 0 0 12.5%;
      max-width: 12.5%; } }

@media print, screen and (min-width: 64em) and (min-width: 64em) {
  .large-expand {
    -ms-flex: 1 1 0px;
        flex: 1 1 0px; }
  .large-shrink {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto; }
  .large-expand,
  .large-shrink {
    max-width: none; } }

@media print, screen and (min-width: 64em) {
  .large-flex-dir-row {
    -ms-flex-direction: row;
        flex-direction: row; }
  .large-flex-dir-row-reverse {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse; }
  .large-flex-dir-column {
    -ms-flex-direction: column;
        flex-direction: column; }
  .large-flex-dir-column-reverse {
    -ms-flex-direction: column-reverse;
        flex-direction: column-reverse; }
  .large-flex-child-auto {
    -ms-flex: 1 1 auto;
        flex: 1 1 auto; }
  .large-flex-child-grow {
    -ms-flex: 1 0 auto;
        flex: 1 0 auto; }
  .large-flex-child-shrink {
    -ms-flex: 0 1 auto;
        flex: 0 1 auto; } }

.row.large-unstack > .column, .row.large-unstack > .columns {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%; }
  @media print, screen and (min-width: 64em) {
    .row.large-unstack > .column, .row.large-unstack > .columns {
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; } }

@media print, screen and (min-width: 64em) {
  .large-collapse > .column, .large-collapse > .columns {
    padding-right: 0;
    padding-left: 0; }
  .large-uncollapse > .column, .large-uncollapse > .columns {
    padding-right: 0.625rem;
    padding-left: 0.625rem; } }

.shrink {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  max-width: 100%; }

.column-block {
  margin-bottom: 2.5rem; }
  .column-block > :last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 64em) {
    .column-block {
      margin-bottom: 1.25rem; }
      .column-block > :last-child {
        margin-bottom: 0; } }

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

p {
  margin-bottom: 1rem;
  font-size: inherit;
  line-height: 1.6;
  text-rendering: optimizeLegibility; }

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-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  color: inherit;
  text-rendering: optimizeLegibility; }
  h1 small,
  h2 small,
  h3 small,
  h4 small,
  h5 small,
  h6 small {
    line-height: 0;
    color: #cacaca; }

h1 {
  font-size: 2.375rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h2 {
  font-size: 1.5rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h3 {
  font-size: 1.25rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h4 {
  font-size: 1.125rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h5 {
  font-size: 1rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

h6 {
  font-size: 0.875rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem; }

@media print, screen and (min-width: 40em) {
  h1 {
    font-size: 2.375rem; }
  h2 {
    font-size: 1.375rem; }
  h3 {
    font-size: 2.25rem; }
  h4 {
    font-size: 1rem; }
  h5 {
    font-size: 1rem; }
  h6 {
    font-size: 0.875rem; } }

a {
  line-height: inherit;
  color: #f98d29;
  text-decoration: none;
  cursor: pointer; }
  a:hover, a:focus {
    color: #26a3dc; }
  a img {
    border: 0; }

hr {
  clear: both;
  max-width: 73.625rem;
  height: 0;
  margin: 1.25rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #e6e7e8;
  border-left: 0; }

ul,
ol,
dl {
  margin-bottom: 1rem;
  list-style-position: outside;
  line-height: 1.6; }

li {
  font-size: inherit; }

ul {
  margin-left: 1.25rem;
  list-style-type: disc; }

ol {
  margin-left: 1.25rem; }

ul ul, ol ul, ul ol, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0; }

dl {
  margin-bottom: 1rem; }
  dl dt {
    margin-bottom: 0.3rem;
    font-weight: bold; }

blockquote {
  margin: 0 0 1rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #e6e7e8; }
  blockquote, blockquote p {
    line-height: 1.6;
    color: #8a8a8a; }

cite {
  display: block;
  font-size: 0.8125rem;
  color: #8a8a8a; }
  cite:before {
    content: "— "; }

abbr {
  border-bottom: 1px dotted #000;
  color: #000;
  cursor: help; }

figure {
  margin: 0; }

code {
  padding: 0.125rem 0.3125rem 0.0625rem;
  border: 1px solid #e6e7e8;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #000; }

kbd {
  margin: 0;
  padding: 0.125rem 0.25rem 0;
  background-color: #e6e6e6;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #000; }

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: normal;
  line-height: 1.4;
  color: #8a8a8a; }

.lead {
  font-size: 125%;
  line-height: 1.6; }

.stat {
  font-size: 2.5rem;
  line-height: 1; }
  p + .stat {
    margin-top: -1rem; }

.no-bullet {
  margin-left: 0;
  list-style: none; }

.text-left {
  text-align: left; }

.text-right {
  text-align: right; }

.text-center {
  text-align: center; }

.text-justify {
  text-align: justify; }

@media print, screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left; }
  .medium-text-right {
    text-align: right; }
  .medium-text-center {
    text-align: center; }
  .medium-text-justify {
    text-align: justify; } }

@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left; }
  .large-text-right {
    text-align: right; }
  .large-text-center {
    text-align: center; }
  .large-text-justify {
    text-align: justify; } }

.show-for-print {
  display: none !important; }

@media print {
  * {
    background: transparent !important;
    box-shadow: none !important;
    color: black !important;
    text-shadow: none !important; }
  .show-for-print {
    display: block !important; }
  .hide-for-print {
    display: none !important; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  .ir a:after,
  a[href^='javascript:']:after,
  a[href^='#']:after {
    content: ''; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  pre,
  blockquote {
    border: 1px solid #8a8a8a;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .print-break-inside {
    page-break-inside: auto; } }

.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.85em 1em;
  -webkit-appearance: none;
  border: 1px solid transparent;
  border-radius: 0;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-size: 1rem;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #f98d29;
  color: #fff; }
  [data-whatinput='mouse'] .button {
    outline: 0; }
  .button:hover, .button:focus {
    background-color: #26a3dc;
    color: #fff; }
  .button.tiny {
    font-size: 0.7rem; }
  .button.small {
    font-size: 0.85rem; }
  .button.large {
    font-size: 1.25rem; }
  .button.expanded {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  .button.primary {
    background-color: #f98d29;
    color: #000; }
    .button.primary:hover, .button.primary:focus {
      background-color: #e27006;
      color: #000; }
  .button.secondary {
    background-color: #26a3dc;
    color: #000; }
    .button.secondary:hover, .button.secondary:focus {
      background-color: #1d83b2;
      color: #000; }
  .button.success {
    background-color: #3adb76;
    color: #000; }
    .button.success:hover, .button.success:focus {
      background-color: #22bb5b;
      color: #000; }
  .button.warning {
    background-color: #f98d29;
    color: #000; }
    .button.warning:hover, .button.warning:focus {
      background-color: #e27006;
      color: #000; }
  .button.alert {
    background-color: #cc4b37;
    color: #000; }
    .button.alert:hover, .button.alert:focus {
      background-color: #a53b2a;
      color: #000; }
  .button.hollow {
    border: 1px solid #f98d29;
    color: #f98d29; }
    .button.hollow, .button.hollow:hover, .button.hollow:focus {
      background-color: transparent; }
    .button.hollow:hover, .button.hollow:focus {
      border-color: #8d4604;
      color: #8d4604; }
    .button.hollow.primary {
      border: 1px solid #f98d29;
      color: #f98d29; }
      .button.hollow.primary:hover, .button.hollow.primary:focus {
        border-color: #8d4604;
        color: #8d4604; }
    .button.hollow.secondary {
      border: 1px solid #26a3dc;
      color: #26a3dc; }
      .button.hollow.secondary:hover, .button.hollow.secondary:focus {
        border-color: #12526f;
        color: #12526f; }
    .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 #f98d29;
      color: #f98d29; }
      .button.hollow.warning:hover, .button.hollow.warning:focus {
        border-color: #8d4604;
        color: #8d4604; }
    .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: #f98d29;
      color: #fff; }
    .button.disabled.primary, .button[disabled].primary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.primary, .button.disabled.primary:hover, .button.disabled.primary:focus, .button[disabled].primary, .button[disabled].primary:hover, .button[disabled].primary:focus {
        background-color: #f98d29;
        color: #000; }
    .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: #26a3dc;
        color: #000; }
    .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: #000; }
    .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: #f98d29;
        color: #000; }
    .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: #000; }
  .button.dropdown::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.4em;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #fff transparent transparent;
    position: relative;
    top: 0.4em;
    display: inline-block;
    float: right;
    margin-left: 1em; }
  .button.dropdown.hollow::after {
    border-top-color: #f98d29; }
  .button.dropdown.hollow.primary::after {
    border-top-color: #f98d29; }
  .button.dropdown.hollow.secondary::after {
    border-top-color: #26a3dc; }
  .button.dropdown.hollow.success::after {
    border-top-color: #3adb76; }
  .button.dropdown.hollow.warning::after {
    border-top-color: #f98d29; }
  .button.dropdown.hollow.alert::after {
    border-top-color: #cc4b37; }
  .button.arrow-only::after {
    top: -0.1em;
    float: none;
    margin-left: 0; }

.accordion {
  margin-left: 0;
  background: #fff;
  list-style-type: none; }

.accordion-item:first-child > :first-child {
  border-radius: 0 0 0 0; }

.accordion-item:last-child > :last-child {
  border-radius: 0 0 0 0; }

.accordion-title {
  position: relative;
  display: block;
  padding: 1.25rem 1rem;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  font-size: 0.75rem;
  line-height: 1;
  color: #f98d29; }
  :last-child:not(.is-active) > .accordion-title {
    border-bottom: 1px solid #e6e6e6;
    border-radius: 0 0 0 0; }
  .accordion-title:hover, .accordion-title:focus {
    background-color: #e6e6e6; }
  .accordion-title::before {
    position: absolute;
    top: 50%;
    right: 1rem;
    margin-top: -0.5rem;
    content: '+'; }
  .is-active > .accordion-title::before {
    content: '\2013'; }

.accordion-content {
  display: none;
  padding: 1rem;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  background-color: #fff;
  color: #000; }
  :last-child > .accordion-content:last-child {
    border-bottom: 1px solid #e6e6e6; }

.button-group {
  margin-bottom: 1rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -ms-flex-align: stretch;
      align-items: stretch; }
  .button-group::before, .button-group::after {
    display: table;
    content: ' ';
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-order: 1;
        order: 1; }
  .button-group::after {
    clear: both; }
  .button-group .button {
    margin: 0;
    margin-right: 1px;
    margin-bottom: 1px;
    font-size: 1rem;
    -ms-flex: 0 0 auto;
        flex: 0 0 auto; }
    .button-group .button:last-child {
      margin-right: 0; }
  .button-group.tiny .button {
    font-size: 0.7rem; }
  .button-group.small .button {
    font-size: 0.85rem; }
  .button-group.large .button {
    font-size: 1.25rem; }
  .button-group.expanded .button {
    -ms-flex: 1 1 0px;
        flex: 1 1 0px; }
  .button-group.primary .button {
    background-color: #f98d29;
    color: #000; }
    .button-group.primary .button:hover, .button-group.primary .button:focus {
      background-color: #e27006;
      color: #000; }
  .button-group.secondary .button {
    background-color: #26a3dc;
    color: #000; }
    .button-group.secondary .button:hover, .button-group.secondary .button:focus {
      background-color: #1d83b2;
      color: #000; }
  .button-group.success .button {
    background-color: #3adb76;
    color: #000; }
    .button-group.success .button:hover, .button-group.success .button:focus {
      background-color: #22bb5b;
      color: #000; }
  .button-group.warning .button {
    background-color: #f98d29;
    color: #000; }
    .button-group.warning .button:hover, .button-group.warning .button:focus {
      background-color: #e27006;
      color: #000; }
  .button-group.alert .button {
    background-color: #cc4b37;
    color: #000; }
    .button-group.alert .button:hover, .button-group.alert .button:focus {
      background-color: #a53b2a;
      color: #000; }
  .button-group.stacked, .button-group.stacked-for-small, .button-group.stacked-for-medium {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button {
      -ms-flex: 0 0 100%;
          flex: 0 0 100%; }
      .button-group.stacked .button:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-medium .button:last-child {
        margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .button-group.stacked-for-small .button {
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
      margin-bottom: 0; } }
  @media print, screen and (min-width: 64em) {
    .button-group.stacked-for-medium .button {
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
      margin-bottom: 0; } }
  @media screen and (max-width: 39.9375em) {
    .button-group.stacked-for-small.expanded {
      display: block; }
      .button-group.stacked-for-small.expanded .button {
        display: block;
        margin-right: 0; } }

.menu {
  margin: 0;
  list-style-type: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -ms-flex-align: center;
      align-items: center;
  width: 100%; }
  .menu > li {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto; }
    [data-whatinput='mouse'] .menu > li {
      outline: 0; }
  .menu > li > a {
    display: block;
    padding: 0;
    line-height: 1; }
  .menu input,
  .menu select,
  .menu a,
  .menu button {
    margin-bottom: 0; }
  .menu > li > a {
    display: -ms-flexbox;
    display: flex; }
  .menu > li > a {
    -ms-flex-flow: row nowrap;
        flex-flow: row nowrap; }
    .menu > li > a img,
    .menu > li > a i,
    .menu > li > a svg {
      margin-right: 0.25rem; }
  .menu, .menu.horizontal {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap; }
    .menu > li, .menu.horizontal > li {
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }
  .menu.expanded > li {
    -ms-flex: 1 1 0px;
        flex: 1 1 0px; }
  .menu.expanded > li:first-child:last-child {
    width: 100%; }
  .menu.vertical {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .menu.vertical > li {
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
      max-width: 100%; }
    .menu.vertical > li > a {
      -ms-flex-pack: start;
          justify-content: flex-start;
      -ms-flex-align: start;
          align-items: flex-start; }
  @media print, screen and (min-width: 40em) {
    .menu.medium-horizontal {
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
      .menu.medium-horizontal > li {
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
    .menu.medium-expanded > li {
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; }
    .menu.medium-expanded > li:first-child:last-child {
      width: 100%; }
    .menu.medium-vertical {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .menu.medium-vertical > li {
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
        max-width: 100%; }
      .menu.medium-vertical > li > a {
        -ms-flex-pack: start;
            justify-content: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; } }
  @media print, screen and (min-width: 64em) {
    .menu.large-horizontal {
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
      .menu.large-horizontal > li {
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
    .menu.large-expanded > li {
      -ms-flex: 1 1 0px;
          flex: 1 1 0px; }
    .menu.large-expanded > li:first-child:last-child {
      width: 100%; }
    .menu.large-vertical {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .menu.large-vertical > li {
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
        max-width: 100%; }
      .menu.large-vertical > li > a {
        -ms-flex-pack: start;
            justify-content: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; } }
  .menu.simple li {
    display: inline-block;
    vertical-align: top;
    line-height: 1; }
  .menu.simple a {
    padding: 0; }
  .menu.simple li {
    margin-left: 0;
    margin-right: 0; }
  .menu.simple.align-right li {
    margin-right: 0;
    margin-left: 0; }
  .menu.align-right {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .menu.icon-top > li > a {
    -ms-flex-flow: column nowrap;
        flex-flow: column nowrap; }
    .menu.icon-top > li > a img,
    .menu.icon-top > li > a i,
    .menu.icon-top > li > a svg {
      -ms-flex-item-align: stretch;
          -ms-grid-row-align: stretch;
          align-self: stretch;
      margin-bottom: 0.25rem;
      text-align: center; }
  .menu.icon-top.vertical a > span {
    margin: auto; }
  .menu.nested {
    margin-left: 1rem; }
  .menu .active > a {
    background: #f98d29;
    color: #fff; }
  .menu.menu-bordered li {
    border: 1px solid #e6e6e6; }
    .menu.menu-bordered li:not(:first-child) {
      border-top: 0; }
  .menu.menu-hover li:hover {
    background-color: #e6e6e6; }

.menu-text {
  padding-top: 0;
  padding-bottom: 0;
  padding: 0;
  font-weight: bold;
  line-height: 1;
  color: inherit; }

.menu-centered {
  text-align: center; }
  .menu-centered > .menu {
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: start;
        align-items: flex-start; }

.no-js [data-responsive-menu] ul {
  display: none; }

.menu-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer; }
  .menu-icon::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #fff;
    box-shadow: 0 7px 0 #fff, 0 14px 0 #fff;
    content: ''; }
  .menu-icon:hover::after {
    background: #cacaca;
    box-shadow: 0 7px 0 #cacaca, 0 14px 0 #cacaca; }

.menu-icon.dark {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer; }
  .menu-icon.dark::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 2px;
    background: #000;
    box-shadow: 0 7px 0 #000, 0 14px 0 #000;
    content: ''; }
  .menu-icon.dark:hover::after {
    background: #8a8a8a;
    box-shadow: 0 7px 0 #8a8a8a, 0 14px 0 #8a8a8a; }

.orbit {
  position: relative; }

.orbit-container {
  position: relative;
  height: 0;
  margin: 0;
  list-style: none;
  overflow: hidden; }

.orbit-slide {
  width: 100%; }
  .orbit-slide.no-motionui.is-active {
    top: 0;
    left: 0; }

.orbit-figure {
  margin: 0; }

.orbit-image {
  width: 100%;
  max-width: 100%;
  margin: 0; }

.orbit-caption {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: 0;
  padding: 1rem;
  background-color: rgba(0, 0, 0, 0.5);
  color: #fff; }

.orbit-previous, .orbit-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  padding: 1rem;
  color: #fff; }
  [data-whatinput='mouse'] .orbit-previous, [data-whatinput='mouse'] .orbit-next {
    outline: 0; }
  .orbit-previous:hover, .orbit-next:hover, .orbit-previous:active, .orbit-next:active, .orbit-previous:focus, .orbit-next:focus {
    background-color: rgba(0, 0, 0, 0.5); }

.orbit-previous {
  left: 0; }

.orbit-next {
  left: auto;
  right: 0; }

.orbit-bullets {
  position: relative;
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
  text-align: center; }
  [data-whatinput='mouse'] .orbit-bullets {
    outline: 0; }
  .orbit-bullets button {
    width: 1.2rem;
    height: 1.2rem;
    margin: 0.1rem;
    border-radius: 50%;
    background-color: #cacaca; }
    .orbit-bullets button:hover {
      background-color: #8a8a8a; }
    .orbit-bullets button.is-active {
      background-color: #8a8a8a; }

.pagination {
  margin-left: 0;
  margin-bottom: 1rem; }
  .pagination::before, .pagination::after {
    display: table;
    content: ' ';
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-order: 1;
        order: 1; }
  .pagination::after {
    clear: both; }
  .pagination li {
    margin-right: 0.0625rem;
    border-radius: 0;
    font-size: 0.875rem;
    display: none; }
    .pagination li:last-child, .pagination li:first-child {
      display: inline-block; }
    @media print, screen and (min-width: 40em) {
      .pagination li {
        display: inline-block; } }
  .pagination a,
  .pagination button {
    display: block;
    padding: 0.1875rem 0.625rem;
    border-radius: 0;
    color: #000; }
    .pagination a:hover,
    .pagination button:hover {
      background: #e6e6e6; }
  .pagination .current {
    padding: 0.1875rem 0.625rem;
    background: #f98d29;
    color: #fff;
    cursor: default; }
  .pagination .disabled {
    padding: 0.1875rem 0.625rem;
    color: #cacaca;
    cursor: not-allowed; }
    .pagination .disabled:hover {
      background: transparent; }
  .pagination .ellipsis::after {
    padding: 0.1875rem 0.625rem;
    content: '\2026';
    color: #000; }

.pagination-previous a::before,
.pagination-previous.disabled::before {
  display: inline-block;
  margin-right: 0.5rem;
  content: '\00ab'; }

.pagination-next a::after,
.pagination-next.disabled::after {
  display: inline-block;
  margin-left: 0.5rem;
  content: '\00bb'; }

.slider {
  position: relative;
  height: 0.5rem;
  margin-top: 1.25rem;
  margin-bottom: 2.25rem;
  background-color: #e6e6e6;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: none;
      touch-action: none; }

.slider-fill {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  max-width: 100%;
  height: 0.5rem;
  background-color: #cacaca;
  transition: all 0.2s ease-in-out; }
  .slider-fill.is-dragging {
    transition: all 0s linear; }

.slider-handle {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  position: absolute;
  left: 0;
  z-index: 1;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 0;
  background-color: #f98d29;
  transition: all 0.2s ease-in-out;
  -ms-touch-action: manipulation;
      touch-action: manipulation; }
  [data-whatinput='mouse'] .slider-handle {
    outline: 0; }
  .slider-handle:hover {
    background-color: #f07707; }
  .slider-handle.is-dragging {
    transition: all 0s linear; }

.slider.disabled,
.slider[disabled] {
  opacity: 0.25;
  cursor: not-allowed; }

.slider.vertical {
  display: inline-block;
  width: 0.5rem;
  height: 12.5rem;
  margin: 0 1.25rem;
  transform: scale(1, -1); }
  .slider.vertical .slider-fill {
    top: 0;
    width: 0.5rem;
    max-height: 100%; }
  .slider.vertical .slider-handle {
    position: absolute;
    top: 0;
    left: 50%;
    width: 1.4rem;
    height: 1.4rem;
    transform: translateX(-50%); }

.sticky-container {
  position: relative; }

.sticky {
  position: relative;
  z-index: 0;
  transform: translate3d(0, 0, 0); }

.sticky.is-stuck {
  position: fixed;
  z-index: 5; }
  .sticky.is-stuck.is-at-top {
    top: 0; }
  .sticky.is-stuck.is-at-bottom {
    bottom: 0; }

.sticky.is-anchored {
  position: relative;
  right: auto;
  left: auto; }
  .sticky.is-anchored.is-at-bottom {
    bottom: 0; }

.tabs {
  margin: 0;
  border: 1px solid transparent;
  background: #f5f5f5;
  list-style-type: none; }
  .tabs::before, .tabs::after {
    display: table;
    content: ' ';
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-order: 1;
        order: 1; }
  .tabs::after {
    clear: both; }

.tabs.vertical > li {
  display: block;
  float: none;
  width: auto; }

.tabs.simple > li > a {
  padding: 0; }
  .tabs.simple > li > a:hover {
    background: transparent; }

.tabs.primary {
  background: #f98d29; }
  .tabs.primary > li > a {
    color: #000; }
    .tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
      background: #f9851b; }

.tabs-title {
  float: left; }
  .tabs-title > a {
    display: block;
    padding: 16px 20px;
    font-size: 16px;
    line-height: 1;
    color: #0066a1; }
    .tabs-title > a:hover {
      background: #26a3dc;
      color: #00588a; }
    .tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
      background: #f98d29;
      color: #fff; }

.tabs-content {
  border: 1px solid transparent;
  border-top: 0;
  background: #fff;
  color: #000;
  transition: all 0.5s ease; }

.tabs-content.vertical {
  border: 1px solid transparent;
  border-left: 0; }

.tabs-panel {
  display: none;
  padding: 0; }
  .tabs-panel[aria-hidden="false"] {
    display: block; }

.title-bar {
  padding: 0.5rem;
  background: #000;
  color: #fff;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center; }
  .title-bar .menu-icon {
    margin-left: 0.25rem;
    margin-right: 0.25rem; }

.title-bar-left,
.title-bar-right {
  -ms-flex: 1 1 0px;
      flex: 1 1 0px; }

.title-bar-right {
  text-align: right; }

.title-bar-title {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold; }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

@media screen and (max-width: 39.9375em) {
  .hide-for-small-only {
    display: none !important; } }

@media screen and (max-width: 0em), screen and (min-width: 40em) {
  .show-for-small-only {
    display: none !important; } }

@media print, screen and (min-width: 40em) {
  .hide-for-medium {
    display: none !important; } }

@media screen and (max-width: 39.9375em) {
  .show-for-medium {
    display: none !important; } }

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .hide-for-medium-only {
    display: none !important; } }

@media screen and (max-width: 39.9375em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important; } }

@media print, screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important; } }

@media screen and (max-width: 63.9375em) {
  .show-for-large {
    display: none !important; } }

@media screen and (min-width: 64em) and (max-width: 74.9375em) {
  .hide-for-large-only {
    display: none !important; } }

@media screen and (max-width: 63.9375em), screen and (min-width: 75em) {
  .show-for-large-only {
    display: none !important; } }

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0); }

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto; }

.show-for-landscape,
.hide-for-portrait {
  display: block !important; }
  @media screen and (orientation: landscape) {
    .show-for-landscape,
    .hide-for-portrait {
      display: block !important; } }
  @media screen and (orientation: portrait) {
    .show-for-landscape,
    .hide-for-portrait {
      display: none !important; } }

.hide-for-landscape,
.show-for-portrait {
  display: none !important; }
  @media screen and (orientation: landscape) {
    .hide-for-landscape,
    .show-for-portrait {
      display: none !important; } }
  @media screen and (orientation: portrait) {
    .hide-for-landscape,
    .show-for-portrait {
      display: block !important; } }

.float-left {
  float: left; }

.float-right {
  float: right; }

.float-center {
  display: block;
  margin-right: auto;
  margin-left: auto; }

.clearfix::before, .clearfix::after {
  display: table;
  content: ' ';
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
  -ms-flex-order: 1;
      order: 1; }

.clearfix::after {
  clear: both; }

.align-right {
  -ms-flex-pack: end;
      justify-content: flex-end; }

.align-center {
  -ms-flex-pack: center;
      justify-content: center; }

.align-justify {
  -ms-flex-pack: justify;
      justify-content: space-between; }

.align-spaced {
  -ms-flex-pack: distribute;
      justify-content: space-around; }

.align-top {
  -ms-flex-align: start;
      align-items: flex-start; }

.align-self-top {
  -ms-flex-item-align: start;
      align-self: flex-start; }

.align-bottom {
  -ms-flex-align: end;
      align-items: flex-end; }

.align-self-bottom {
  -ms-flex-item-align: end;
      align-self: flex-end; }

.align-middle {
  -ms-flex-align: center;
      align-items: center; }

.align-self-middle {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center; }

.align-stretch {
  -ms-flex-align: stretch;
      align-items: stretch; }

.align-self-stretch {
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch; }

.align-center-middle {
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-line-pack: center;
      align-content: center; }

.small-order-1 {
  -ms-flex-order: 1;
      order: 1; }

.small-order-2 {
  -ms-flex-order: 2;
      order: 2; }

.small-order-3 {
  -ms-flex-order: 3;
      order: 3; }

.small-order-4 {
  -ms-flex-order: 4;
      order: 4; }

.small-order-5 {
  -ms-flex-order: 5;
      order: 5; }

.small-order-6 {
  -ms-flex-order: 6;
      order: 6; }

@media print, screen and (min-width: 40em) {
  .medium-order-1 {
    -ms-flex-order: 1;
        order: 1; }
  .medium-order-2 {
    -ms-flex-order: 2;
        order: 2; }
  .medium-order-3 {
    -ms-flex-order: 3;
        order: 3; }
  .medium-order-4 {
    -ms-flex-order: 4;
        order: 4; }
  .medium-order-5 {
    -ms-flex-order: 5;
        order: 5; }
  .medium-order-6 {
    -ms-flex-order: 6;
        order: 6; } }

@media print, screen and (min-width: 64em) {
  .large-order-1 {
    -ms-flex-order: 1;
        order: 1; }
  .large-order-2 {
    -ms-flex-order: 2;
        order: 2; }
  .large-order-3 {
    -ms-flex-order: 3;
        order: 3; }
  .large-order-4 {
    -ms-flex-order: 4;
        order: 4; }
  .large-order-5 {
    -ms-flex-order: 5;
        order: 5; }
  .large-order-6 {
    -ms-flex-order: 6;
        order: 6; } }

.slide-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: translateY(-100%);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-down.mui-enter.mui-enter-active {
  transform: translateY(0); }

.slide-in-left.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: translateX(-100%);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-left.mui-enter.mui-enter-active {
  transform: translateX(0); }

.slide-in-up.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: translateY(100%);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-up.mui-enter.mui-enter-active {
  transform: translateY(0); }

.slide-in-right.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: translateX(100%);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-in-right.mui-enter.mui-enter-active {
  transform: translateX(0); }

.slide-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: translateY(0);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-down.mui-leave.mui-leave-active {
  transform: translateY(100%); }

.slide-out-right.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: translateX(0);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-right.mui-leave.mui-leave-active {
  transform: translateX(100%); }

.slide-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: translateY(0);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-up.mui-leave.mui-leave-active {
  transform: translateY(-100%); }

.slide-out-left.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: translateX(0);
  transition-property: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }

.slide-out-left.mui-leave.mui-leave-active {
  transform: translateX(-100%); }

.fade-in.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  opacity: 0;
  transition-property: opacity; }

.fade-in.mui-enter.mui-enter-active {
  opacity: 1; }

.fade-out.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  opacity: 1;
  transition-property: opacity; }

.fade-out.mui-leave.mui-leave-active {
  opacity: 0; }

.hinge-in-from-top.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: perspective(2000px) rotateX(-90deg);
  transform-origin: top;
  transition-property: transform, opacity;
  opacity: 0; }

.hinge-in-from-top.mui-enter.mui-enter-active {
  transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-right.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: perspective(2000px) rotateY(-90deg);
  transform-origin: right;
  transition-property: transform, opacity;
  opacity: 0; }

.hinge-in-from-right.mui-enter.mui-enter-active {
  transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-bottom.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: perspective(2000px) rotateX(90deg);
  transform-origin: bottom;
  transition-property: transform, opacity;
  opacity: 0; }

.hinge-in-from-bottom.mui-enter.mui-enter-active {
  transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-left.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: perspective(2000px) rotateY(90deg);
  transform-origin: left;
  transition-property: transform, opacity;
  opacity: 0; }

.hinge-in-from-left.mui-enter.mui-enter-active {
  transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-x.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: perspective(2000px) rotateX(-90deg);
  transform-origin: center;
  transition-property: transform, opacity;
  opacity: 0; }

.hinge-in-from-middle-x.mui-enter.mui-enter-active {
  transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-in-from-middle-y.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: perspective(2000px) rotateY(-90deg);
  transform-origin: center;
  transition-property: transform, opacity;
  opacity: 0; }

.hinge-in-from-middle-y.mui-enter.mui-enter-active {
  transform: perspective(2000px) rotate(0deg);
  opacity: 1; }

.hinge-out-from-top.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: perspective(2000px) rotate(0deg);
  transform-origin: top;
  transition-property: transform, opacity;
  opacity: 1; }

.hinge-out-from-top.mui-leave.mui-leave-active {
  transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-right.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: perspective(2000px) rotate(0deg);
  transform-origin: right;
  transition-property: transform, opacity;
  opacity: 1; }

.hinge-out-from-right.mui-leave.mui-leave-active {
  transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.hinge-out-from-bottom.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: perspective(2000px) rotate(0deg);
  transform-origin: bottom;
  transition-property: transform, opacity;
  opacity: 1; }

.hinge-out-from-bottom.mui-leave.mui-leave-active {
  transform: perspective(2000px) rotateX(90deg);
  opacity: 0; }

.hinge-out-from-left.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: perspective(2000px) rotate(0deg);
  transform-origin: left;
  transition-property: transform, opacity;
  opacity: 1; }

.hinge-out-from-left.mui-leave.mui-leave-active {
  transform: perspective(2000px) rotateY(90deg);
  opacity: 0; }

.hinge-out-from-middle-x.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: perspective(2000px) rotate(0deg);
  transform-origin: center;
  transition-property: transform, opacity;
  opacity: 1; }

.hinge-out-from-middle-x.mui-leave.mui-leave-active {
  transform: perspective(2000px) rotateX(-90deg);
  opacity: 0; }

.hinge-out-from-middle-y.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: perspective(2000px) rotate(0deg);
  transform-origin: center;
  transition-property: transform, opacity;
  opacity: 1; }

.hinge-out-from-middle-y.mui-leave.mui-leave-active {
  transform: perspective(2000px) rotateY(-90deg);
  opacity: 0; }

.scale-in-up.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: scale(0.5);
  transition-property: transform, opacity;
  opacity: 0; }

.scale-in-up.mui-enter.mui-enter-active {
  transform: scale(1);
  opacity: 1; }

.scale-in-down.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: scale(1.5);
  transition-property: transform, opacity;
  opacity: 0; }

.scale-in-down.mui-enter.mui-enter-active {
  transform: scale(1);
  opacity: 1; }

.scale-out-up.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: scale(1);
  transition-property: transform, opacity;
  opacity: 1; }

.scale-out-up.mui-leave.mui-leave-active {
  transform: scale(1.5);
  opacity: 0; }

.scale-out-down.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: scale(1);
  transition-property: transform, opacity;
  opacity: 1; }

.scale-out-down.mui-leave.mui-leave-active {
  transform: scale(0.5);
  opacity: 0; }

.spin-in.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: rotate(-0.75turn);
  transition-property: transform, opacity;
  opacity: 0; }

.spin-in.mui-enter.mui-enter-active {
  transform: rotate(0);
  opacity: 1; }

.spin-out.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: rotate(0);
  transition-property: transform, opacity;
  opacity: 1; }

.spin-out.mui-leave.mui-leave-active {
  transform: rotate(0.75turn);
  opacity: 0; }

.spin-in-ccw.mui-enter {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: rotate(0.75turn);
  transition-property: transform, opacity;
  opacity: 0; }

.spin-in-ccw.mui-enter.mui-enter-active {
  transform: rotate(0);
  opacity: 1; }

.spin-out-ccw.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear;
  transform: rotate(0);
  transition-property: transform, opacity;
  opacity: 1; }

.spin-out-ccw.mui-leave.mui-leave-active {
  transform: rotate(-0.75turn);
  opacity: 0; }

.slow {
  transition-duration: 750ms !important; }

.fast {
  transition-duration: 250ms !important; }

.linear {
  transition-timing-function: linear !important; }

.ease {
  transition-timing-function: ease !important; }

.ease-in {
  transition-timing-function: ease-in !important; }

.ease-out {
  transition-timing-function: ease-out !important; }

.ease-in-out {
  transition-timing-function: ease-in-out !important; }

.bounce-in {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  transition-delay: 300ms !important; }

.long-delay {
  transition-delay: 700ms !important; }

.shake {
  animation-name: shake-7; }

@keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    transform: translateX(7%); }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    transform: translateX(-7%); } }

.spin-cw {
  animation-name: spin-cw-1turn; }

@keyframes spin-cw-1turn {
  0% {
    transform: rotate(-1turn); }
  100% {
    transform: rotate(0); } }

.spin-ccw {
  animation-name: spin-cw-1turn; }

@keyframes spin-cw-1turn {
  0% {
    transform: rotate(0); }
  100% {
    transform: rotate(1turn); } }

.wiggle {
  animation-name: wiggle-7deg; }

@keyframes wiggle-7deg {
  40%, 50%, 60% {
    transform: rotate(7deg); }
  35%, 45%, 55%, 65% {
    transform: rotate(-7deg); }
  0%, 30%, 70%, 100% {
    transform: rotate(0); } }

.shake,
.spin-cw,
.spin-ccw,
.wiggle {
  animation-duration: 500ms; }

.infinite {
  animation-iteration-count: infinite; }

.slow {
  animation-duration: 750ms !important; }

.fast {
  animation-duration: 250ms !important; }

.linear {
  animation-timing-function: linear !important; }

.ease {
  animation-timing-function: ease !important; }

.ease-in {
  animation-timing-function: ease-in !important; }

.ease-out {
  animation-timing-function: ease-out !important; }

.ease-in-out {
  animation-timing-function: ease-in-out !important; }

.bounce-in {
  animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important; }

.bounce-out {
  animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important; }

.bounce-in-out {
  animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important; }

.short-delay {
  animation-delay: 300ms !important; }

.long-delay {
  animation-delay: 700ms !important; }

/* cabin-regular - latin */
@font-face {
  font-family: 'Cabin';
  font-style: normal;
  font-weight: 400;
  src: local("Cabin"), local("Cabin-Regular"), url("../webfonts/cabin-v11-latin-regular.woff2") format("woff2"), url("../webfonts/cabin-v11-latin-regular.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }

/* cabin-500 - latin */
@font-face {
  font-family: 'Cabin';
  font-style: normal;
  font-weight: 500;
  src: local("Cabin Medium"), local("Cabin-Medium"), url("../webfonts/cabin-v11-latin-500.woff2") format("woff2"), url("../webfonts/cabin-v11-latin-500.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }

/* cabin-600 - latin */
@font-face {
  font-family: 'Cabin';
  font-style: normal;
  font-weight: 600;
  src: local("Cabin SemiBold"), local("Cabin-SemiBold"), url("../webfonts/cabin-v11-latin-600.woff2") format("woff2"), url("../webfonts/cabin-v11-latin-600.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }

/* cabin-700 - latin */
@font-face {
  font-family: 'Cabin';
  font-style: normal;
  font-weight: 700;
  src: local("Cabin Bold"), local("Cabin-Bold"), url("../webfonts/cabin-v11-latin-700.woff2") format("woff2"), url("../webfonts/cabin-v11-latin-700.woff") format("woff");
  /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ }

/*
  This mixin can be used to set the object-fit:
  @include object-fit(contain);
  or object-fit and object-position:
  @include object-fit(cover, top);
*/
audio,
canvas,
embed,
iframe,
img,
object,
svg,
video {
  max-width: 100%; }

@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

.two-grid__wrap, .upcoming-events__listing {
  margin: 0 auto;
  max-width: 100%;
  padding-left: 20px;
  padding-right: 20px;
  width: 100%; }
  @media screen and (min-width: 768px) {
    .two-grid__wrap, .upcoming-events__listing {
      padding-left: 30px;
      padding-right: 30px; } }
  @media screen and (min-width: 1200px) {
    .two-grid__wrap, .upcoming-events__listing {
      max-width: 1200px; } }
  .two-grid__wrap-fluid {
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    width: 100%; }
  @media screen and (min-width: 768px) {
    .two-grid__wrap, .upcoming-events__listing {
      padding-left: 30px;
      padding-right: 30px; } }
  @media screen and (min-width: 480px) {
    .two-grid__wrap, .upcoming-events__listing {
      width: 100%;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-pack: justify;
          justify-content: space-between; }
      .two-grid__wrap:before, .upcoming-events__listing:before, .two-grid__wrap:after, .upcoming-events__listing:after {
        display: none; } }

.two-grid__item, .two-grid__item--two-thirds, .two-grid__item--one-third, .upcoming-events__item {
  width: 100%; }
  @media screen and (min-width: 768px) {
    .two-grid__item, .two-grid__item--two-thirds, .two-grid__item--one-third, .upcoming-events__item {
      margin-right: 40px;
      width: calc(50% - 20px); }
      .two-grid__item:nth-of-type(2n), .two-grid__item--two-thirds:nth-of-type(2n), .two-grid__item--one-third:nth-of-type(2n), .upcoming-events__item:nth-of-type(2n) {
        margin-right: 0; } }
  .two-grid__item--two-thirds {
    width: calc(60% - 40px); }
  .two-grid__item--one-third {
    width: calc(40%);
    margin-right: 0; }

@media screen and (min-width: 768px) {
  .three-grid__wrap, .tabs__columns .profiles__list, .post-listing__listing {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-align: stretch;
        align-items: stretch;
    -ms-flex-pack: center;
        justify-content: center; }
    .three-grid__wrap:before, .tabs__columns .profiles__list:before, .post-listing__listing:before, .three-grid__wrap:after, .tabs__columns .profiles__list:after, .post-listing__listing:after {
      display: none; } }

.three-grid__item, .post-listing__item {
  width: 100%; }
  @media screen and (min-width: 768px) {
    .three-grid__item, .post-listing__item {
      width: calc(33.3333% - 1rem);
      margin-bottom: 20px; } }
  @media screen and (min-width: 1024px) {
    .three-grid__item, .post-listing__item {
      width: calc(33.3333% - 1rem); } }
  @media screen and (min-width: 768px) {
    .three-grid__item.spread-two, .spread-two.post-listing__item {
      width: calc(66.6667% - 28px); } }

.four-grid, .profiles__wrap {
  position: relative; }
  .four-grid__wrap, .profiles__list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-align: stretch;
        align-items: stretch; }
  .four-grid__item, .profiles__item {
    display: block;
    margin-right: auto;
    height: auto;
    width: 100%; }
    @media screen and (min-width: 480px) {
      .four-grid__item, .profiles__item {
        display: inline-block; } }
    @media screen and (min-width: 670px) and (max-width: 767.9px) {
      .four-grid__item, .profiles__item {
        width: calc(50% - .5rem); }
        .four-grid__item:nth-of-type(2n), .profiles__item:nth-of-type(2n) {
          margin-right: 0; } }
    @media screen and (min-width: 768px) {
      .four-grid__item, .profiles__item {
        /* 			margin-right: 20px;
			margin-bottom: 20px; */ }
        .four-grid__item:last-of-type, .profiles__item:last-of-type {
          -ms-flex-item-align: start;
              align-self: flex-start; } }
    @media screen and (min-width: 768px) and (max-width: 1023.9px) {
      .four-grid__item, .profiles__item {
        width: calc(50% - 1rem); }
        .four-grid__item:nth-of-type(3n), .profiles__item:nth-of-type(3n) {
          /* margin-right: 0; */ } }
    @media screen and (min-width: 1024px) {
      .four-grid__item, .profiles__item {
        width: calc(25% - 1rem); }
        .four-grid__item:nth-of-type(4n), .profiles__item:nth-of-type(4n) {
          margin-right: 0; }
        .four-grid__item:last-of-type, .profiles__item:last-of-type {
          margin-left: 0; } }
    @media screen and (min-width: 1200px) {
      .four-grid__item, .profiles__item {
        /* margin-right: 30px;
			margin-bottom: 30px; */
        width: calc(25% - 1rem); } }
  @media screen and (max-width: 479.9px) {
    .four-grid.mobile-two .four-grid__item, .mobile-two.profiles__wrap .four-grid__item, .four-grid.mobile-two .profiles__item, .mobile-two.profiles__wrap .profiles__item {
      width: calc(50% - 5px); }
      .four-grid.mobile-two .four-grid__item:nth-of-type(2n), .mobile-two.profiles__wrap .four-grid__item:nth-of-type(2n), .four-grid.mobile-two .profiles__item:nth-of-type(2n), .mobile-two.profiles__wrap .profiles__item:nth-of-type(2n) {
        margin-right: 0; } }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }
  @media screen and (min-width: 768px) {
    .slick-track .carousel__title {
      background: transparent; }
      .slick-track .carousel__title:hover, .slick-track .carousel__title:focus {
        background-color: transparent; } }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./../img/ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face {
  font-family: "slick";
  src: url("/assets/webfonts/../webfonts/slick.eot");
  src: url("/assets/webfonts/../webfonts/slick.eot?#iefix") format("embedded-opentype"), url("/assets/webfonts/../webfonts/slick.woff") format("woff"), url("/assets/webfonts/../webfonts/slick.ttf") format("truetype"), url("/assets/webfonts/../webfonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal; }

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }
  .slick-prev:before,
  .slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -25px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -25px; }
  .slick-prev:before {
    content: "←"; }
    [dir="rtl"] .slick-prev:before {
      content: "→"; }

.slick-next {
  right: -25px; }
  [dir="rtl"] .slick-next {
    left: -25px;
    right: auto; }
  .slick-next:before {
    content: "→"; }
    [dir="rtl"] .slick-next:before {
      content: "←"; }

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "•";
        width: 20px;
        height: 20px;
        font-family: "slick";
        font-size: 6px;
        line-height: 20px;
        text-align: center;
        color: black;
        opacity: 0.25;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: black;
      opacity: 0.75; }

.accordion {
  padding-bottom: 2rem; }
  .accordion__item.active .accordion__contact::before {
    content: '\2212'; }
  .accordion__contact {
    width: 100%;
    border-bottom: solid 2px #e6e7e8;
    text-align: left;
    padding: 13px 3px 13px 41px;
    cursor: pointer;
    color: #0066a1;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.375rem;
    position: relative; }
    .accordion__contact::before {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 400;
      width: 28px;
      height: 28px;
      border-radius: 100%;
      background-color: #f98d29;
      content: '+';
      display: inline-block;
      margin-right: 13px;
      text-align: center;
      color: #fff;
      font-size: 2rem;
      line-height: 1px;
      padding-top: 11px;
      font-weight: 700;
      position: absolute;
      top: 10px;
      left: 0; }
      .foundation .accordion__contact::before {
        background-color: #0e92a2; }
  .accordion__content {
    display: none;
    padding-top: 15px; }
    .accordion__content.rtf p, .accordion__content.flexlist__excerpt p {
      margin-bottom: 0; }
    .accordion__content p {
      margin-bottom: 0;
      padding-bottom: 26px; }
      .accordion__content p:last-of-type {
        padding-bottom: 0; }
      .accordion__content p a.btn {
        margin-right: 10px; }

.additional-feature {
  padding: 30px 0 35px; }
  @media screen and (min-width: 768px) {
    .additional-feature {
      padding: 40px 0 45px; } }
  @media screen and (min-width: 960px) {
    .additional-feature {
      padding: 60px 0 65px; } }
  .additional-feature__wrap {
    margin: 0 auto;
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
    max-width: 640px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column; }
    @media screen and (min-width: 768px) {
      .additional-feature__wrap {
        padding-left: 30px;
        padding-right: 30px; } }
    @media screen and (min-width: 1200px) {
      .additional-feature__wrap {
        max-width: 1200px; } }
    .additional-feature__wrap-fluid {
      max-width: 100%;
      padding-left: 20px;
      padding-right: 20px;
      width: 100%; }
    @media screen and (min-width: 768px) {
      .additional-feature__wrap {
        padding-left: 30px;
        padding-right: 30px; } }
    @media screen and (min-width: 768px) {
      .additional-feature__wrap {
        -ms-flex-direction: row;
            flex-direction: row;
        -ms-flex-pack: justify;
            justify-content: space-between;
        max-width: 1016px; } }
  .additional-feature__content {
    -ms-flex-order: 1;
        order: 1; }
    @media screen and (min-width: 768px) {
      .additional-feature__content {
        -ms-flex-order: 0;
            order: 0;
        width: calc(50% - 2rem); } }
  .additional-feature__title {
    color: #0066a1;
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 1.375rem;
    line-height: 1.375rem;
    margin-bottom: 1.5rem; }
    .foundation .additional-feature__title {
      color: #ae9065; }
  .additional-feature__excerpt {
    color: black;
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: .875rem;
    line-height: 1.375rem;
    margin-bottom: 2rem; }
  .additional-feature__link {
    background-color: #f98d29;
    color: white;
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.750rem;
    text-transform: uppercase;
    display: inline-block;
    padding: 14px 30px;
    transition: background .4s ease-out; }
    .foundation .additional-feature__link {
      background-color: #26a3dc; }
    .additional-feature__link:hover, .additional-feature__link:focus {
      color: white;
      background: #94d60a;
      transition: background .24s ease-out; }
  .additional-feature__image {
    -ms-flex-order: 0;
        order: 0;
    margin-bottom: 2rem; }
    @media screen and (min-width: 768px) {
      .additional-feature__image {
        -ms-flex-order: 1;
            order: 1;
        margin-bottom: 0;
        width: calc(50% - 2rem); } }
    .additional-feature__image img {
      display: block;
      width: 100%;
      height: auto; }

.alert {
  background: #d3d3d3; }
  .alert--announcement {
    background-color: #fec896; }
  .alert--emergency {
    background-color: #f9dede; }
  .alert--info {
    background-color: #dfebf3; }
  .alert__container {
    max-width: 73.625rem;
    margin-right: auto;
    margin-left: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap; }
  .alert__content {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
    padding-right: 1.25rem;
    padding-left: 1.25rem;
    max-width: 100%;
    padding-top: 16px;
    padding-bottom: 16px;
    position: relative; }
    @media print, screen and (min-width: 64em) {
      .alert__content {
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  .alert__svg {
    left: 20px;
    position: absolute;
    top: 14px; }
    .alert--announcement .alert__svg {
      height: 25px;
      width: 22px; }
    .alert--emergency .alert__svg {
      height: 25px;
      width: 27px; }
    .alert--info .alert__svg {
      height: 25px;
      width: 24px; }
  .alert__title {
    margin-right: 40px; }
    @media print, screen and (min-width: 40em) {
      .alert__title {
        margin-right: 52px; } }
  .alert--announcement .alert__title,
  .alert--emergency .alert__title,
  .alert--info .alert__title, .alert--announcement .alert__text,
  .alert--emergency .alert__text,
  .alert--info .alert__text {
    margin-left: 40px; }
    @media print, screen and (min-width: 40em) {
      .alert--announcement .alert__title,
      .alert--emergency .alert__title,
      .alert--info .alert__title, .alert--announcement .alert__text,
      .alert--emergency .alert__text,
      .alert--info .alert__text {
        margin-left: 52px; } }
  .alert__title {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 500;
    color: #000;
    display: inline-block;
    font-size: 18px;
    line-height: 1.2;
    margin-bottom: 0;
    position: relative;
    cursor: pointer; }
    .alert__title::after {
      position: absolute;
      right: -30px;
      top: 0;
      height: 20px;
      width: 20px;
      content: '+';
      background-color: rgba(255, 255, 255, 0.75);
      display: block;
      font-size: 30px;
      text-align: center;
      line-height: 18px; }
      @media screen and (max-width: 39.9375em) {
        .alert__title::after {
          top: -2px; } }
    .alert__title.is-toggled::after {
      content: '-';
      line-height: 20px; }
  .alert__text {
    font-size: 16px;
    padding-top: 0;
    line-height: 1.4;
    max-height: 0;
    overflow: hidden;
    transition: max-height .4s ease, padding-top .4s linear; }
    .alert__text.is-expanded {
      max-height: 300px;
      padding-top: 15px; }
    .alert__text a {
      color: #0066a1;
      display: inline-block;
      font-weight: bold;
      line-height: 1.4; }
      .alert__text a:after {
        content: '\00a0\203A'; }
    .alert__text p {
      margin-bottom: 7px;
      line-height: 1.4; }
  .alert .rtf, .alert .flexlist__excerpt {
    margin-bottom: 0; }

.background--blue {
  background-color: #1466a1; }

.background--padding {
  padding: 72px 0; }

@media screen and (max-width: 63.9375em) {
  .band {
    background-color: #f5f5f5;
    text-align: center; } }

@media print, screen and (min-width: 64em) {
  .band {
    position: relative; } }

@media print, screen and (min-width: 64em) {
  .band__image-wrapper {
    position: absolute;
    top: 0 0 0 0;
    height: 100%;
    width: 100%; } }

.band__image {
  height: 100%;
  width: 100%;
  font-family: 'object-fit: cover;';
  object-fit: cover; }

.band__container {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  -ms-flex-align: center;
      align-items: center;
  padding-top: 40px;
  padding-bottom: 40px;
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .band__container {
      position: relative; } }

.band__title {
  line-height: 1.2; }

@media screen and (max-width: 63.9375em) {
  .band__box {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
    padding-right: 1.25rem;
    padding-left: 1.25rem;
    max-width: 100%; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .band__box {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }

@media print, screen and (min-width: 64em) {
  .band__box {
    box-shadow: 0 10px 57px 0 rgba(35, 31, 32, 0.08);
    background-color: #fff;
    padding-top: 40px;
    padding-bottom: 40px;
    z-index: 100; } }

@media print, screen and (min-width: 64em) {
  .band__box {
    -ms-flex: 0 0 33.33333%;
        flex: 0 0 33.33333%;
    max-width: 33.33333%;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    max-width: 33.33333%; } }

@media screen and (min-width: 64em) and (max-width: 74.9375em) {
  .band__box {
    margin-left: 8.33333%; } }

.band__title {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 24px; }
  @media screen and (max-width: 63.9375em) {
    .band__title {
      margin-bottom: 16px; } }
  @media print, screen and (min-width: 64em) {
    .band__title {
      margin-bottom: 18px; } }

.band__address, .band__hours {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 26px; }

@media print, screen and (min-width: 64em) {
  .band__link {
    color: #000; } }

.band__img-link {
  position: relative;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  cursor: pointer; }
  @media print, screen and (min-width: 64em) {
    .band__img-link {
      position: absolute; } }

.band__button {
  margin-top: 1rem; }

.bar {
  background-color: #0066a1;
  text-align: center; }
  .foundation .bar {
    background-color: #073872; }
  @media screen and (max-width: 63.9375em) {
    .bar {
      padding: 33px 0; } }
  @media print, screen and (min-width: 64em) {
    .bar {
      padding: 40px 0; } }
  .bar__container {
    max-width: 73.625rem;
    margin-right: auto;
    margin-left: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-align: center;
        align-items: center; }
    @media print, screen and (min-width: 64em) {
      .bar__container {
        position: relative; } }
  .bar__content {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
    padding-right: 1.25rem;
    padding-left: 1.25rem;
    max-width: 100%; }
    @media print, screen and (min-width: 64em) {
      .bar__content {
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
  .bar__title {
    color: #fff;
    font-size: 24px;
    line-height: 1.2;
    margin-bottom: 20px; }

.carousel__title,
.btn,
.btn:visited {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: #f98d29;
  border: 0;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 16px;
  line-height: 1.3;
  outline: none;
  padding: 18px 20px;
  position: relative;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 250ms ease; }
  .foundation .carousel__title, .foundation
  .btn, .foundation
  .btn:visited {
    background-color: #26a3dc; }
  @media screen and (max-width: 39.9375em) {
    .carousel__title,
    .btn,
    .btn:visited {
      display: block;
      width: 100%; } }
  .carousel__title:hover, .carousel__title:active, .carousel__title:focus,
  .btn:hover,
  .btn:active,
  .btn:focus,
  .btn:visited:hover,
  .btn:visited:active,
  .btn:visited:focus {
    background-color: #94d60a;
    color: #fff; }
    .foundation .carousel__title:hover, .foundation .carousel__title:active, .foundation .carousel__title:focus, .foundation
    .btn:hover, .foundation
    .btn:active, .foundation
    .btn:focus, .foundation
    .btn:visited:hover, .foundation
    .btn:visited:active, .foundation
    .btn:visited:focus {
      background-color: #26a3dc; }

.clear {
  color: #0066a1;
  cursor: pointer;
  transition: color .4s ease-out; }
  .clear:hover, .clear:focus {
    color: #26a3dc;
    transition: color .25s ease-out; }

.callout {
  padding: 88px 0 24px;
  position: relative;
  width: 340px; }
  @media screen and (min-width: 40em) {
    .callout.callout--left {
      float: left;
      margin-right: 32px; } }
  @media screen and (min-width: 40em) {
    .callout.callout--right {
      float: right;
      margin-left: 32px; } }
  .callout.callout--wide {
    width: 100%; }
  .callout.callout--strong p {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    color: #0066a1; }
  .callout p {
    font-size: 25px;
    font-weight: 600;
    line-height: 35px;
    text-transform: uppercase; }
  .callout::before {
    background-image: url("/MicrositeTemplates/assets/img/svg/callout-quote.svg");
    background-repeat: no-repeat;
    content: '';
    height: 54px;
    position: absolute;
    top: 10px;
    width: 73px; }

.callout__sub {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  color: #8a8a8a;
  font-size: 15px;
  position: relative;
  text-transform: uppercase;
  top: -5px; }

@media screen and (min-width: 75em) {
  .carousel {
    margin-left: 76px;
    margin-right: 76px; } }

.carousel .slick-list {
  padding: 20px 0; }
  @media print, screen and (min-width: 64em) {
    .carousel .slick-list {
      margin-left: 20px;
      margin-right: 20px; } }
  @media screen and (min-width: 75em) {
    .carousel .slick-list {
      margin-left: 40px;
      margin-right: 40px; } }

.carousel__slide {
  text-align: center; }
  .carousel__slide:hover, .carousel__slide:focus {
    outline: none; }
  @media print, screen and (min-width: 64em) {
    .carousel__slide:hover .carousel__image-wrapper {
      transform: scale(0.9); }
    .dh .carousel__slide:hover .carousel__title {
      color: #26a3dc; }
    .dh .carousel__slide:hover .carousel__cta::after {
      left: 4px; } }

@media screen and (max-width: 63.9375em) {
  .carousel__title {
    margin-top: 20px; } }

@media print, screen and (min-width: 40em) {
  .carousel__title {
    display: inline-block; } }

@media print, screen and (min-width: 64em) {
  .carousel__title {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    color: #0066a1;
    font-size: 24px;
    padding: 0;
    text-align: center;
    text-transform: none; }
    .carousel__title:hover {
      background-color: transparent; }
    .carousel__title:hover {
      color: #26a3dc; } }

.dh .carousel__title {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600; }
  @media print, screen and (min-width: 40em) {
    .dh .carousel__title {
      background-color: transparent;
      color: #0066a1;
      font-size: 24px;
      padding: 0;
      text-align: center;
      text-transform: none; }
      .dh .carousel__title:hover {
        background-color: transparent; }
      .dh .carousel__title:hover {
        color: #26a3dc; } }

.carousel__text {
  color: #000;
  padding: 0 20px; }
  @media screen and (max-width: 39.9375em) {
    .carousel__text {
      display: none; } }
  .dh .carousel__text p {
    margin: 0;
    padding-bottom: 20px; }

.carousel__link {
  display: block; }
  .carousel__link:focus {
    outline: none; }

.carousel__cta {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  color: #f48c3b;
  text-transform: uppercase; }
  .carousel__cta::after {
    background: url("/micrositetemplates/assets/img/svg/icon-chevron-orange-e.svg") center no-repeat;
    background-size: 6px 10px;
    bottom: 1px;
    color: transparent;
    content: '\0a00';
    display: inline;
    font-family: Arial, sans-serif;
    font-size: 12px;
    height: 10px;
    left: 0;
    margin-left: 5px;
    position: relative;
    transition: left .3s ease;
    vertical-align: baseline;
    width: 6px; }
  @media screen and (min-width: 64em) {
    .carousel__cta:hover::after, .carousel__cta:focus::after {
      left: 4px; } }
  @media screen and (max-width: 39.9375em) {
    .carousel__cta {
      display: none; } }

.carousel__image-wrapper {
  position: relative;
  transform: scale(0.85);
  transition: transform 500ms ease; }
  @media print, screen and (min-width: 64em) {
    .carousel__image-wrapper {
      margin-bottom: 20px; } }

.carousel__plus {
  display: none; }
  @media screen and (max-width: 63.9375em) {
    .carousel__plus {
      display: none; } }
  @media print, screen and (min-width: 64em) {
    .carousel__plus {
      height: 37px;
      width: 37px;
      left: 25%;
      position: absolute;
      top: 0; }
      .heart-vascular .carousel__plus {
        display: none; } }

.carousel__image {
  border-radius: 50%;
  display: inline-block !important; }

.carousel__arrow {
  height: 30px;
  width: 20px;
  color: #f98d29;
  position: absolute;
  top: 36%;
  z-index: 1;
  cursor: pointer; }
  .carousel__arrow--left {
    left: 10px; }
    @media screen and (max-width: 39.9375em) {
      .carousel__arrow--left {
        left: -10px; } }
  .carousel__arrow--right {
    right: 10px;
    transform: scaleX(-1); }
    @media screen and (max-width: 39.9375em) {
      .carousel__arrow--right {
        right: -10px; } }
  .carousel__arrow :hover {
    color: #26a3dc; }

.content--split .content__container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center; }
  @media screen and (min-width: 960px) {
    .content--split .content__container {
      -ms-flex-direction: row;
          flex-direction: row;
      -ms-flex-pack: justify;
          justify-content: space-between; } }
  @media screen and (max-width: 959.9px) {
    .content--split .content__container.sidebar-active {
      -ms-flex-align: start;
          align-items: flex-start;
      -ms-flex-direction: row;
          flex-direction: row;
      -ms-flex-pack: start;
          justify-content: flex-start;
      overflow-x: hidden;
      padding-left: 1rem;
      padding-right: 1rem;
      position: relative; }
      .content--split .content__container.sidebar-active .content,
      .content--split .content__container.sidebar-active .tabs {
        float: right;
        min-width: 100%; }
      .content--split .content__container.sidebar-active .sidebar {
        display: block;
        left: 0;
        min-width: 100%;
        position: relative;
        top: 0;
        width: 100%; } }
    @media screen and (max-width: 959.9px) and (min-width: 670px) {
      .content--split .content__container.sidebar-active .sidebar {
        min-width: 240px;
        width: 240px; } }

@media screen and (min-width: 960px) {
  .content--split .content {
    width: calc(100% - 308px); } }

@media screen and (max-width: 63.9375em) {
  .dh .content--split .content {
    width: 100%; } }

@media screen and (min-width: 64em) {
  .dh .content--split .content {
    padding-left: 25px;
    width: calc(100% - 240px); } }

.content--split .content--main {
  margin-bottom: 5rem;
  padding-left: 0;
  padding-right: 0;
  padding-top: 0; }
  @media screen and (max-width: 63.9375em) {
    .content--split .content--main {
      padding: 0 20px; } }

@media screen and (min-width: 960px) {
  .content--split .content__container {
    padding-top: 26px; }
    .dh .content--split .content__container {
      padding-top: 40px; } }

.content--split .content__copy {
  -ms-flex-order: 1;
      order: 1;
  padding-right: 20%;
  width: 100%; }
  @media screen and (min-width: 960px) {
    .content--split .content__copy {
      -ms-flex-order: 0;
          order: 0;
      padding-right: 0;
      width: calc(100% - 308px); } }
  @media screen and (max-width: 63.9375em) {
    .content--split .content__copy {
      padding-right: 1.5rem; } }
  @media screen and (min-width: 960px) {
    .content--split .content__copy--full {
      width: 100%; } }

@media screen and (min-width: 768px) {
  .content--split .content__image-wrapper, .content--split .content__image-wrapper--right {
    display: inline-block;
    min-width: 240px;
    width: 40%; } }

@media screen and (min-width: 960px) {
  .content--split .content__image-wrapper, .content--split .content__image-wrapper--right {
    width: 60%; } }

@media screen and (max-width: 959.9px) {
  .content--split .content__image-wrapper--right {
    display: block;
    float: none;
    margin-left: auto;
    margin-right: auto;
    -ms-flex-order: 0;
        order: 0;
    text-align: center;
    width: 100%; } }

@media screen and (min-width: 768px) {
  .content--split .content__image-wrapper--right {
    min-width: 240px; } }

@media screen and (min-width: 960px) {
  .content--split .tabs {
    width: calc(100% - 308px); } }

@media screen and (min-width: 1024px) {
  .content--split .tabs__nav {
    display: block;
    margin-top: 0;
    padding-left: 20px; } }

.content--split .tabs__copy {
  padding-right: 20%;
  width: 100%; }
  @media screen and (max-width: 63.9375em) {
    .content--split .tabs__copy {
      padding-right: 0; } }

.content__container {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto;
  padding-top: 25px; }
  .content__container::after, .content__container::before {
    content: '';
    display: table; }
  .content__container::after {
    clear: both; }

.content__image-wrapper, .content__image-wrapper--right {
  margin-bottom: 20px; }
  @media screen and (max-width: 63.9375em) {
    .content__image-wrapper, .content__image-wrapper--right {
      width: 100%;
      float: left;
      padding-right: 1.25rem;
      padding-left: 1.25rem;
      text-align: center; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .content__image-wrapper, .content__image-wrapper--right {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (max-width: 63.9375em) {
      .content__image-wrapper:last-child:not(:first-child), .content__image-wrapper--right:last-child:not(:first-child) {
        float: right; } }
  @media print, screen and (min-width: 64em) {
    .content__image-wrapper, .content__image-wrapper--right {
      width: 33.33333%;
      float: left;
      padding-right: 1.25rem;
      padding-left: 1.25rem; }
      .content__image-wrapper:last-child:not(:first-child), .content__image-wrapper--right:last-child:not(:first-child) {
        float: right; } }
  .content__image-wrapper .content__plus, .content__image-wrapper--right .content__plus {
    display: none;
    position: absolute; }
    @media screen and (max-width: 63.9375em) {
      .content__image-wrapper .content__plus, .content__image-wrapper--right .content__plus {
        height: 34px;
        width: 34px;
        left: 35px;
        top: 35px; } }
    @media print, screen and (min-width: 64em) {
      .content__image-wrapper .content__plus, .content__image-wrapper--right .content__plus {
        height: 53px;
        width: 53px;
        left: 35px;
        top: 45px; } }
    .urgent-care .content__image-wrapper .content__plus, .urgent-care .content__image-wrapper--right .content__plus {
      display: block; }
  .content__image-wrapper--right {
    float: right; }

.content__image-inner {
  display: inline-block;
  position: relative; }

.content__image {
  border: solid 15px #fff;
  border-radius: 50%;
  box-sizing: border-box;
  display: inline-block; }
  @media screen and (max-width: 63.9375em) {
    .content__image {
      height: 240px;
      width: 240px;
      display: block; } }
  @media screen and (min-width: 960px) {
    .content__image {
      border-size: 30px; } }

@media screen and (max-width: 63.9375em) {
  .content__copy {
    width: 100%;
    float: left;
    padding-right: 1.25rem;
    padding-left: 1.25rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .content__copy {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }

@media screen and (max-width: 63.9375em) {
    .content__copy:last-child:not(:first-child) {
      float: right; } }

@media print, screen and (min-width: 64em) {
  .content__copy {
    width: 66.66667%;
    float: left;
    padding-right: 1.25rem;
    padding-left: 1.25rem; }
    .content__copy:last-child:not(:first-child) {
      float: right; } }

.content__copy--full {
  width: 100%;
  float: left;
  padding-right: 1.25rem;
  padding-left: 1.25rem; }
  @media print, screen and (min-width: 64em) {
    .content__copy--full {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  .content__copy--full:last-child:not(:first-child) {
    float: right; }
  .content__copy--full > .rtf:first-child, .content__copy--full > .flexlist__excerpt:first-child {
    margin-bottom: 40px; }

.content__title {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  color: #0066a1;
  font-size: 22px;
  margin-bottom: 20px; }
  .content__title--caps {
    text-transform: uppercase; }
  .foundation .content__title {
    color: #ae9065; }
  @media screen and (max-width: 39.9375em) {
    .dh .content__title {
      font-size: 26px;
      text-align: center; } }
  @media screen and (min-width: 40em) {
    .dh .content__title {
      font-size: 32px; } }
  @media print, screen and (min-width: 64em) {
    .content__title {
      font-size: 22px; } }

.content-block--dark {
  background-color: #0066a1; }

.content-block__container {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap; }
  @media print, screen and (min-width: 64em) {
    .content-block__container {
      position: relative; } }

@media screen and (max-width: 63.9375em) {
  .content-block__image-wrapper {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
    padding-right: 0;
    padding-left: 0;
    max-width: 100%; }
    .content-block__image-wrapper img {
      width: 100%; } }

@media print, screen and (min-width: 64em) {
  .content-block__image-wrapper {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
    max-width: 50%;
    padding-right: 0;
    padding-left: 0;
    max-width: 50%;
    overflow: hidden;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-item-align: stretch;
        align-self: stretch; }
    .content-block--reversed .content-block__image-wrapper {
      -ms-flex-order: 2;
          order: 2; } }

@media screen and (min-width: 75em) {
  .content-block--light .content-block__image-wrapper {
    margin-left: 16.66667%; } }

@media print, screen and (min-width: 64em) {
  .content-block__picture {
    display: -ms-flexbox;
    display: flex;
    overflow: hidden; } }

@media print, screen and (min-width: 64em) {
  .content-block__image {
    object-fit: cover; } }

@media screen and (max-width: 63.9375em) {
  .content-block__content {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
    padding-right: 1.25rem;
    padding-left: 1.25rem;
    max-width: 100%;
    padding-top: 30px;
    padding-bottom: 30px; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .content-block__content {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }

@media screen and (max-width: 63.9375em) {
    .content-block--light .content-block__content {
      text-align: center; } }

@media print, screen and (min-width: 64em) {
  .content-block__content {
    width: 50%;
    float: left;
    padding-right: 0;
    padding-left: 0;
    -ms-flex-item-align: center;
        -ms-grid-row-align: center;
        align-self: center;
    padding: 30px; }
    .content-block__content:last-child:not(:first-child) {
      float: right; }
    .content-block--reversed .content-block__content {
      -ms-flex-order: 1;
          order: 1; } }

@media screen and (min-width: 75em) {
  .content-block__content {
    padding-top: 40px;
    padding-bottom: 40px; } }
  @media screen and (min-width: 75em) and (min-width: 75em) {
    .content-block__content {
      width: 33.33333%;
      float: left;
      padding-right: 0;
      padding-left: 0;
      padding-right: 40px; }
      .content-block__content:last-child:not(:first-child) {
        float: right; } }

.content-block--dark .content-block__content {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  color: #fff; }
  @media screen and (min-width: 75em) {
    .content-block--dark .content-block__content {
      width: 41.66667%;
      float: left;
      padding-right: 0;
      padding-left: 0;
      padding-left: 70px;
      padding-right: 40px; }
      .content-block--dark .content-block__content:last-child:not(:first-child) {
        float: right; } }

@media print, screen and (min-width: 64em) {
  .content-block--light .content-block__content {
    padding-left: 10px; } }

.content-block__content a:not(.btn):hover {
  text-decoration: underline; }

.content-block__content p,
.content-block__content ul {
  margin-bottom: 32px;
  text-align: left; }

@media screen and (max-width: 63.9375em) {
  .content-block__content li,
  .content-block__content p {
    font-size: 16px; } }

@media print, screen and (min-width: 64em) {
  .content-block__content li,
  .content-block__content p {
    font-size: 14px; } }

.content-block--dark .content-block__content li, .content-block--dark
.content-block__content p {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  background-color: #0066a1;
  color: #fff; }
  @media screen and (max-width: 63.9375em) {
    .content-block--dark .content-block__content li, .content-block--dark
    .content-block__content p {
      font-size: 14px; } }
  @media print, screen and (min-width: 64em) {
    .content-block--dark .content-block__content li, .content-block--dark
    .content-block__content p {
      font-size: 16px; } }

.content-block__title {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 24px;
  line-height: 1;
  margin-bottom: 18px; }
  .content-block--dark .content-block__title {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    color: #fff; }

.cta-list-block {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 3rem;
  padding-top: 3rem; }
  .cta-list-block::after, .cta-list-block::before {
    content: '';
    display: table; }
  .cta-list-block::after {
    clear: both; }
  @media screen and (max-width: 63.9375em) {
    .cta-list-block {
      text-align: center; } }
  @media screen and (min-width: 64em) {
    .cta-list-block {
      padding-left: 5rem;
      padding-right: 5rem; } }

@media screen and (max-width: 63.9375em) {
  .cta-list-block__inner {
    padding-left: 30px;
    padding-right: 30px; } }

.cta-list-block__heading {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  color: #1466a1;
  text-transform: uppercase; }
  @media screen and (max-width: 63.9375em) {
    .cta-list-block__heading {
      font-size: 22px; } }
  @media screen and (min-width: 64em) {
    .cta-list-block__heading {
      font-size: 26px; } }

.cta-list-block__text {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400; }
  @media screen and (max-width: 63.9375em) {
    .cta-list-block__text {
      font-size: 20px; } }
  @media screen and (min-width: 64em) {
    .cta-list-block__text {
      font-size: 26px; } }

.cta-list-block__cta-heading {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  color: #0066a1;
  margin-top: 2.5rem; }
  @media screen and (max-width: 63.9375em) {
    .cta-list-block__cta-heading {
      font-size: 20px; } }
  @media screen and (min-width: 64em) {
    .cta-list-block__cta-heading {
      font-size: 22px; } }

.cta-list-block__cta-list {
  list-style: none;
  margin-left: 0;
  margin-top: 1rem; }
  .cta-list-block__cta-list li a {
    color: #1466a1; }
    .cta-list-block__cta-list li a::after {
      background: url("/micrositetemplates/assets/img/svg/icon-chevron-blue-e.svg") center no-repeat;
      background-size: 6px 10px;
      bottom: 1px;
      color: transparent;
      content: '\0a00';
      display: inline;
      font-family: Arial, sans-serif;
      font-size: 12px;
      height: 10px;
      left: 2px;
      margin-left: 5px;
      position: relative;
      transition: left .3s ease;
      vertical-align: baseline;
      width: 6px; }
    @media screen and (min-width: 64em) {
      .cta-list-block__cta-list li a:hover::after, .cta-list-block__cta-list li a:focus::after {
        left: 6px; } }
    .cta-list-block__cta-list li a:hover {
      color: #26a3dc; }
  @media screen and (max-width: 63.9375em) {
    .cta-list-block__cta-list li + li {
      border-top: 2px solid #e0e0e0;
      margin-top: 1.5rem;
      padding-top: 1.5rem; }
    .cta-list-block__cta-list li:not(:first-child) {
      margin-top: 1rem; } }
  @media screen and (min-width: 64em) {
    .cta-list-block__cta-list {
      display: -ms-flexbox;
      display: flex; }
      .cta-list-block__cta-list li {
        display: inline-block;
        -ms-flex: 0 1 33%;
            flex: 0 1 33%; }
        .cta-list-block__cta-list li:not(:first-child) {
          border-left: 1px solid #e0e0e0;
          margin-left: 3%;
          padding-left: 3%; }
        .cta-list-block__cta-list li a {
          color: #1466a1; }
          .cta-list-block__cta-list li a::after {
            background: url("/micrositetemplates/assets/img/svg/icon-chevron-blue-e.svg") center no-repeat;
            background-size: 6px 10px;
            bottom: 1px;
            color: transparent;
            content: '\0a00';
            display: inline;
            font-family: Arial, sans-serif;
            font-size: 12px;
            height: 10px;
            left: 2px;
            margin-left: 5px;
            position: relative;
            transition: left .3s ease;
            vertical-align: baseline;
            width: 6px; } }
      @media screen and (min-width: 64em) and (min-width: 64em) {
        .cta-list-block__cta-list li a:hover::after, .cta-list-block__cta-list li a:focus::after {
          left: 6px; } }

@media screen and (max-width: 39.9375em) {
  .events__container--centered {
    text-align: center; } }

.events__text {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: 16px; }

.events__link {
  color: #0066a1; }

.events__img {
  margin-top: 3px; }

.events__registration-btn {
  margin-bottom: 25px; }
  .events__registration-btn .btn {
    padding-left: 30px;
    padding-right: 30px; }

.events__registration {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: 18px 18px;
  color: #8bb740;
  display: inline-block;
  font-size: 16px;
  margin-bottom: 25px;
  position: relative;
  text-transform: uppercase;
  top: -7px; }
  .events__registration--open {
    background-image: url("/MicrositeTemplates/assets/img/svg/icon-checkmark-green.svg");
    padding-left: 25px;
    position: relative; }
  .events__registration--closed {
    color: #929a9d; }

.events__disclaimer {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  border-top: 1px solid #d2d2d2;
  font-size: 14px;
  font-style: italic;
  margin-top: 20px;
  padding-top: 15px; }

.doctor-search__container {
  background-color: #eee; }
  .doctor-search__container .doctor-search__inner-container {
    padding: 60px 0 40px; }

.search-title__main-search {
  color: #0066a1;
  padding: 0 8px; }
  @media screen and (max-width: 39.9375em) {
    .search-title__main-search {
      margin: 0 auto; } }
  @media screen and (max-width: 63.9375em) {
    .search-title__main-search {
      padding: 0 20px; } }

.doctor-search__inner-container .doctor-search__only-show {
  font-size: 14px;
  margin-top: 15px; }
  @media screen and (max-width: 39.9375em) {
    .doctor-search__inner-container .doctor-search__only-show {
      margin-top: 20px; } }
  .doctor-search__inner-container .doctor-search__only-show input {
    margin-right: 4px; }

@media (max-width: 640px) {
  .doctor-search__inner-container .search-box__search-container-col-r {
    margin-top: 15px; } }

@media screen and (max-width: 63.9375em) {
  .doctor-search-lastname__container {
    margin-top: 45px; } }

@media screen and (min-width: 40em) {
  .doctor-search-lastname__container {
    padding-left: 30px; } }

.doctor-search-lastname__container .title-lastname {
  color: #000; }

.doctor-search-lastname__container ul {
  margin: 0 auto;
  width: 100%; }
  @media (max-width: 1024px) {
    .doctor-search-lastname__container ul {
      text-align: center; } }
  .doctor-search-lastname__container ul li {
    display: inline-block;
    margin: 6px 2px; }
  .doctor-search-lastname__container ul a {
    background-color: #fff;
    border-radius: 50%;
    color: #0066a1;
    display: block;
    font-size: 1em;
    font-weight: 700;
    height: 34px;
    padding: 5px;
    text-align: center;
    width: 34px; }
    .doctor-search-lastname__container ul a:hover, .doctor-search-lastname__container ul a.is-selected {
      background-color: #0066a1;
      color: #fff; }

.doctor-tabs__container {
  background-color: #eee;
  padding-bottom: 40px; }
  .doctor-tabs__container .doctor-tabs__inner-container {
    margin-bottom: 15px; }

.doctor-tabs__filters-buttons.large-12.columns {
  -ms-flex: none;
      flex: none;
  margin-left: 25px;
  margin-right: 25px;
  width: calc(100% - 50px); }

@media screen and (max-width: 63.9375em) {
  .doctor-tabs__filters-buttons .large-3.small-12.columns {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%; } }

@media screen and (min-width: 64em) {
  .doctor-tabs__filters-buttons .large-3.small-12.columns {
    -ms-flex: 0 0 21%;
        flex: 0 0 21%; } }

@media (max-width: 1024px) {
  .doctor-tabs__filters-buttons .large-9.columns {
    margin-bottom: 5px;
    margin-top: 25px; } }

.doctor-tabs__filters-buttons .large-9.columns h4 {
  font-size: .9em;
  margin-bottom: 8px; }

.doctor-tabs__filters-buttons ul {
  margin: 0; }
  @media (max-width: 1024px) {
    .doctor-tabs__filters-buttons ul {
      text-align: center; } }
  @media (max-width: 1024px) {
    .doctor-tabs__filters-buttons ul li {
      margin: 10px; } }

.doctor-tabs__filters-buttons a {
  display: block; }

.doctor-tabs__filters-buttons:nth-of-type(1) {
  margin-left: 0; }

.doctor-tabs__filters-buttons:nth-last-of-type(1) {
  margin-right: 0; }
  @media (max-width: 1024px) {
    .doctor-tabs__filters-buttons:nth-last-of-type(1) {
      margin-right: 10px; } }

.doctor-tabs__filters-buttons.current-selection {
  border-top: 1px solid #d2d2d2;
  margin-top: 15px;
  padding-top: 40px;
  text-align: center; }
  @media (max-width: 1024px) {
    .doctor-tabs__filters-buttons.current-selection {
      border-top: 0;
      padding-top: 0; } }
  @media screen and (min-width: 64em) and (max-width: 74.9375em) {
    .doctor-tabs__filters-buttons.current-selection {
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
      margin-left: 25px;
      margin-right: 25px; } }

.doctor-tabs__filters-buttons.__container-content-inner {
  float: right;
  width: 75%; }

.fad-search__filter-btn {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 500;
  background: url("/MicrositeTemplates/assets/img/svg/icon-close-circle-blue.svg") no-repeat right 12px center;
  border: 1px solid #0066a1;
  border-radius: 20px;
  color: #0066a1;
  display: inline-block;
  font-size: 16px;
  padding: 7px 35px 7px 15px;
  transition: background-color .25s ease; }
  .fad-search__filter-btn:hover {
    background-color: #0066a1;
    background-image: url("/MicrositeTemplates/assets/img/svg/icon-close-circle-white.svg");
    color: #fff;
    cursor: pointer; }
  .doctor-tabs__filters-buttons--selected .fad-search__filter-btn {
    display: inline-block;
    line-height: 1em;
    margin-right: 10px; }
  .doctor-tabs__filters-buttons--unapplied .fad-search__filter-btn {
    margin-bottom: 20px;
    margin-right: 20px; }

.doctor-tabs__filters-container {
  background-color: #fff;
  display: none;
  padding: 35px 45px; }
  @media (max-width: 1024px) {
    .doctor-tabs__filters-container {
      background-color: #eee;
      height: 100%;
      left: 0;
      overflow-y: auto;
      padding: 30px 35px;
      position: fixed;
      top: 0;
      width: 100%;
      z-index: 9998; } }
  .doctor-tabs__filters-container .doctor-tabs__close-filter-modal {
    display: none; }
    @media (max-width: 1024px) {
      .doctor-tabs__filters-container .doctor-tabs__close-filter-modal {
        color: #0066a1;
        display: inline-block;
        font-weight: 700;
        margin: 0 0 20px;
        padding: 0 0 0 18px;
        position: relative; }
        .doctor-tabs__filters-container .doctor-tabs__close-filter-modal::after {
          background-image: url("/MicrositeTemplates/assets/img/arrow-left-blue.png");
          background-position: left center;
          background-repeat: no-repeat;
          content: '';
          height: 100%;
          left: 0;
          position: absolute;
          top: 0;
          width: 100%; } }
  .doctor-tabs__filters-container.open {
    display: block; }
  @media screen and (min-width: 64em) {
    .doctor-tabs__filters-container .doctor-tabs__filters-container-inner {
      display: -ms-flexbox;
      display: flex;
      margin-left: -3.33%; } }
  @media screen and (min-width: 64em) {
    .doctor-tabs__filters-container .doctor-tabs__filters-container-inner .multiselect-container {
      -ms-flex: 0 1 30%;
          flex: 0 1 30%;
      margin-left: 3.05%; } }
  .doctor-tabs__filters-container .doctor-tabs__filter-select {
    background-color: #fff;
    border: 1px solid #d2d2d2;
    display: none;
    max-height: 150px;
    overflow-y: scroll;
    padding: 5px 10px;
    width: 100%;
    z-index: 1; }
    .doctor-tabs__filters-container .doctor-tabs__filter-select.open {
      display: block;
      left: 15px;
      position: absolute;
      right: 15px;
      top: 63px;
      width: auto; }
    .doctor-tabs__filters-container .doctor-tabs__filter-select ul {
      margin: 0; }
      .doctor-tabs__filters-container .doctor-tabs__filter-select ul li {
        content: '';
        display: block;
        height: 0;
        clear: both;
        list-style: none;
        padding: 7px 0; }
        .doctor-tabs__filters-container .doctor-tabs__filter-select ul li input {
          float: left; }
        .doctor-tabs__filters-container .doctor-tabs__filter-select ul li label {
          border-radius: 15px;
          display: block;
          float: left;
          margin: -6px 0 0 5px;
          padding: 0 15px;
          width: 91.5%; }
          .doctor-tabs__filters-container .doctor-tabs__filter-select ul li label:hover {
            background-color: transparent; }
  .doctor-tabs__filters-container .multiselect-container {
    display: inline-block;
    margin-bottom: 15px;
    padding: 15px;
    position: relative;
    width: 100%; }
  .doctor-tabs__filters-container .doctor-tabs__filter-select-container {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background: url("/MicrositeTemplates/assets/img/arrow-down-white.png") 96% center no-repeat #0066a1;
    border: 0;
    color: #fff;
    padding: 12px 15px;
    position: relative;
    width: 100%; }
    .doctor-tabs__filters-container .doctor-tabs__filter-select-container:hover {
      cursor: pointer; }
    .doctor-tabs__filters-container .doctor-tabs__filter-select-container.open {
      background-image: url("/MicrositeTemplates/assets/img/arrow-up-white.png"); }

.doctor-filter__inner {
  margin-top: 35px;
  text-align: center; }
  .doctor-filter__inner .doctor-tabs__apply-filter {
    background-color: #00afd7;
    border: 0;
    color: #fff;
    display: block;
    font-weight: 400;
    margin: 0 auto;
    padding: 15px 25px;
    position: relative;
    text-transform: uppercase;
    transition: background-color .25s ease-out;
    width: 185px;
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700; }
    @media (max-width: 1024px) {
      .doctor-filter__inner .doctor-tabs__apply-filter {
        background-color: #f48c3b;
        width: 100%; } }
    .doctor-filter__inner .doctor-tabs__apply-filter:hover {
      background-color: #94d60a;
      color: #fff;
      cursor: pointer; }

.doctor-tabs__filters-toggle {
  background-color: #94d60a;
  color: #fff;
  font-weight: 900;
  height: 60px;
  min-width: 220px;
  padding: 18px 40px 18px 20px;
  position: relative;
  text-align: left;
  text-transform: uppercase;
  transition: background-color .25s ease-out, height .25s ease-out;
  width: 100%; }
  .doctor-tabs__filters-toggle::before {
    background-image: url("/MicrositeTemplates/assets/img/svg/icon-chevron-white-s.svg");
    background-position: 90% center;
    background-repeat: no-repeat;
    content: '';
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%; }
    @media screen and (max-width: 63.9375em) {
      .doctor-tabs__filters-toggle::before {
        background-image: url("/MicrositeTemplates/assets/img/arrow-right-white.png");
        background-position: 97% center; } }
  .doctor-tabs__filters-toggle.is-open {
    height: 75px; }
    .doctor-tabs__filters-toggle.is-open::before {
      background-image: url("/MicrositeTemplates/assets/img/svg/icon-chevron-white-n.svg"); }
      @media screen and (max-width: 63.9375em) {
        .doctor-tabs__filters-toggle.is-open::before {
          background-image: url("/MicrositeTemplates/assets/img/arrow-right-white.png"); } }

.fad-search .search-box__search-container .fad-search__search-input,
.doctor-search .search-box__search-container .fad-search__search-input {
  background-image: url("/micrositetemplates/assets/img/svg/icon-search-flat-black.svg");
  background-position: 15px center;
  background-repeat: no-repeat;
  padding: 0; }

.primary-navigation__item .fad-search {
  width: 100%; }

@media screen and (max-width: 63.9375em) {
  .fad-search .search-box__search-container .fad-search__search-input {
    background-size: 21px 21px;
    -ms-flex-pack: start;
        justify-content: flex-start;
    padding-left: 45px; } }

@media screen and (min-width: 64em) {
  .fad-search .search-box__search-container .fad-search__search-input {
    background-size: 21px 22px;
    padding-left: 50px; } }

@media screen and (max-width: 39.9375em) {
  .doctor-search .search-box__search-container .fad-search__search-input {
    background-size: 17px 17px;
    font-size: 16px;
    padding-left: 42px; } }

@media screen and (max-width: 63.9375em) {
  .doctor-search .search-box__search-container .fad-search__search-input {
    -ms-flex-pack: start;
        justify-content: flex-start; } }

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .doctor-search .search-box__search-container .fad-search__search-input {
    background-size: 19px 19px;
    font-size: 18px;
    padding-left: 45px; } }

@media screen and (min-width: 64em) {
  .doctor-search .search-box__search-container .fad-search__search-input {
    background-size: 17px 17px;
    font-size: 16px;
    padding-left: 42px; } }

.fad-search__inner-container {
  padding: 50px 0; }
  .fad-search__inner-container .search-input-field {
    -ms-flex: none;
        flex: none;
    max-width: none;
    width: 100%; }
  .fad-search__inner-container p {
    margin-bottom: 0; }

.fad-search__navigation-container {
  padding: 0; }
  .fad-search__navigation-container.open {
    display: block; }

.fad-search__container {
  margin: 0 auto;
  max-width: 1000px;
  padding: 0 20px; }

.fad-search__rule {
  border-top: 2px solid #fff;
  height: 1px;
  width: 100%; }

.fad-search-lastname__container .title-lastname {
  color: #000; }

.fad-search-lastname__container ul {
  margin: 0 auto;
  margin-left: 0; }
  @media (max-width: 1024px) {
    .fad-search-lastname__container ul {
      text-align: center; } }
  .fad-search-lastname__container ul li {
    display: inline-block;
    margin: 7px 11px; }
    .fad-search-lastname__container ul li a {
      background-color: #fff;
      border-radius: 50%;
      color: #0066a1;
      display: block;
      font-size: 1.2em;
      font-weight: 700;
      height: 45px;
      padding: 8px;
      text-align: center;
      width: 45px; }
      .fad-search-lastname__container ul li a:hover {
        background-color: #0066a1;
        color: #fff; }

.search-box__container .search-content__container {
  margin-left: auto;
  margin-right: auto;
  margin-top: 35px;
  text-align: center; }
  @media (max-width: 1024px) {
    .search-box__container .search-content__container {
      text-align: center; } }

@media (max-width: 640px) {
  .search-box__container .search-box__search-container-col-r {
    margin-top: 15px; } }

.fad-search-results {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto;
  max-width: 73.625rem;
  padding: 45px 0 10px;
  width: 100%; }
  .fad-search-results::after, .fad-search-results::before {
    content: '';
    display: table; }
  .fad-search-results::after {
    clear: both; }
  .fad-search-results .search-results__result-count {
    border-bottom: 0;
    margin: 0; }
    @media screen and (max-width: 39.9375em) {
      .fad-search-results .search-results__result-count {
        text-align: center; } }

@media screen and (max-width: 39.9375em) {
  .fad-search-results__result-item-link {
    display: none; } }

@media screen and (min-width: 40em) {
  .fad-search-results__result-item-link {
    bottom: 0;
    color: #000;
    display: block;
    left: 0;
    position: absolute;
    right: 0;
    top: 0; }
    .fad-search-results__result-item-link:hover, .fad-search-results__result-item-link:focus, .fad-search-results__result-item-link:active {
      color: #000; } }

.fad-search-results__result-item {
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.2);
  font-size: 1.15em;
  font-weight: 700;
  margin-bottom: 45px;
  position: relative;
  transition: border 200ms ease-out; }
  .fad-search-results__result-item::after {
    content: '';
    display: block;
    height: 0;
    clear: both; }
  .fad-search-results__result-item:hover .hover-border {
    width: 22px; }
    .fad-search-results__result-item:hover .hover-border .arrow-left::after {
      background-image: url("/MicrositeTemplates/assets/img/arrow-right-white.png");
      background-position: center center;
      background-repeat: no-repeat;
      content: '';
      height: 100%;
      left: 0;
      position: absolute;
      top: 0;
      width: 100%; }
  .fad-search-results__result-item.fad-search-results__result-item--physician .hover-border {
    background-color: #f98d29; }
  .fad-search-results__result-item.fad-search-results__result-item--physician .mobile-button {
    background-color: #f98d29; }
  .fad-search-results__result-item.fad-search-results__result-item--practice .hover-border {
    background-color: #93c243; }
  .fad-search-results__result-item.fad-search-results__result-item--practice .mobile-button {
    background-color: #93c243; }
  .fad-search-results__result-item .fad-search-results__logo {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    background-position: left center;
    background-repeat: no-repeat;
    display: block; }
    @media screen and (max-width: 39.9375em) {
      .fad-search-results__result-item .fad-search-results__logo {
        background-size: 15px 12px;
        font-size: 12px;
        padding-left: 20px; } }
    @media screen and (max-width: 63.9375em) {
      .fad-search-results__result-item .fad-search-results__logo {
        margin-bottom: 7px; } }
    @media screen and (min-width: 40em) {
      .fad-search-results__result-item .fad-search-results__logo {
        background-size: 20px;
        font-size: 16px;
        padding-left: 30px; } }
    @media screen and (min-width: 64em) {
      .fad-search-results__result-item .fad-search-results__logo {
        position: relative;
        top: -20px; } }
  .fad-search-results__result-item .content-container {
    float: left; }
    @media screen and (max-width: 39.9375em) {
      .fad-search-results__result-item .content-container {
        width: 60%; } }
    @media screen and (max-width: 63.9375em) {
      .fad-search-results__result-item .content-container {
        padding: 0 0 10px 25px; } }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .fad-search-results__result-item .content-container {
        width: 65%; } }
    @media screen and (min-width: 64em) {
      .fad-search-results__result-item .content-container {
        padding: 10px 35px;
        width: 75%; } }
    .fad-search-results__result-item .content-container .content-container-row .fad-search-results__specialty-container {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 600;
      float: left;
      width: 50%; }
      @media screen and (max-width: 39.9375em) {
        .fad-search-results__result-item .content-container .content-container-row .fad-search-results__specialty-container {
          float: none;
          font-size: 15px;
          width: 100%; } }
      @media screen and (min-width: 40em) {
        .fad-search-results__result-item .content-container .content-container-row .fad-search-results__specialty-container {
          font-size: 22px; } }
      @media screen and (min-width: 40em) {
        .fad-search-results__result-item .content-container .content-container-row .fad-search-results__specialty-container .fad-search-results__specialty {
          display: block; } }
      .fad-search-results__result-item .content-container .content-container-row .fad-search-results__specialty-container .fad-search-results__specialty-comma:last-of-type {
        display: none; }
    .fad-search-results__result-item .content-container .content-container-row .fad-search-results__location-container {
      float: left;
      width: 50%; }
      @media screen and (max-width: 39.9375em) {
        .fad-search-results__result-item .content-container .content-container-row .fad-search-results__location-container {
          float: none;
          margin-top: 5px;
          width: 100%; } }
  @media screen and (min-width: 40em) {
    .fad-search-results__result-item .fad-search-results__specialty-comma {
      display: none; } }
  .fad-search-results__result-item .doylestown-logo {
    margin: -11px 0 10px; }
  .fad-search-results__result-item .img-container {
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    float: left; }
    @media screen and (max-width: 39.9375em) {
      .fad-search-results__result-item .img-container {
        -ms-flex: 0 1 115px;
            flex: 0 1 115px;
        height: 115px; } }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .fad-search-results__result-item .img-container {
        height: 175px;
        width: 175px; } }
    @media screen and (min-width: 64em) {
      .fad-search-results__result-item .img-container {
        height: 275px;
        width: 25%; } }
  @media screen and (max-width: 39.9375em) {
    .fad-search-results__result-item .fad-search-results__result-item-img-content-row {
      display: -ms-flexbox;
      display: flex; } }
  @media screen and (max-width: 63.9375em) {
    .fad-search-results__result-item .fad-search-results__result-item-img-content-row {
      padding: 10px 15px 15px; } }
  @media screen and (max-width: 39.9375em) {
    .fad-search-results__result-item .fad-search-results__result-item-img-content-row > .content-container {
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
      padding-left: 15px;
      padding-top: 0; } }
  .fad-search-results__result-item .hover-border {
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    transition: width .2s;
    width: 8px; }
    @media screen and (max-width: 39.9375em) {
      .fad-search-results__result-item .hover-border {
        display: none; } }
  .fad-search-results__result-item p {
    margin: 0; }
  .fad-search-results__result-item .row-area::after {
    content: '';
    display: block;
    height: 0;
    clear: both; }
  .fad-search-results__result-item .fad-search-results__result-item-title-row {
    float: right;
    width: 75%; }
    @media (max-width: 1024px) {
      .fad-search-results__result-item .fad-search-results__result-item-title-row {
        float: none;
        width: 100%; } }
  @media screen and (max-width: 39.9375em) {
    .fad-search-results__result-item .fad-search-results__result-item-title-container {
      padding: 10px 35px 0 15px; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .fad-search-results__result-item .fad-search-results__result-item-title-container {
      padding: 15px 35px 10px 15px; } }
  @media screen and (min-width: 64em) {
    .fad-search-results__result-item .fad-search-results__result-item-title-container {
      padding: 15px 35px 10px; } }
  .fad-search-results__result-item .fad-search-results__result-item-title-container .fad-search-results__result-item-title {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    color: #0066a1;
    margin-right: 25px;
    text-transform: uppercase; }
    @media screen and (max-width: 39.9375em) {
      .fad-search-results__result-item .fad-search-results__result-item-title-container .fad-search-results__result-item-title {
        font-size: 18px; } }
    @media screen and (min-width: 40em) {
      .fad-search-results__result-item .fad-search-results__result-item-title-container .fad-search-results__result-item-title {
        font-size: 26px; } }
  .fad-search-results__result-item .fad-search-results__result-item-title-container .search-title__type {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    color: #929a9d;
    letter-spacing: .05em;
    text-transform: uppercase; }
    @media screen and (max-width: 39.9375em) {
      .fad-search-results__result-item .fad-search-results__result-item-title-container .search-title__type {
        font-size: 10px;
        margin-left: 15px; } }
    @media screen and (min-width: 40em) {
      .fad-search-results__result-item .fad-search-results__result-item-title-container .search-title__type {
        font-size: 16px;
        margin-left: 25px; } }
  .fad-search-results__result-item .__container-content-inner {
    margin-top: 11px;
    position: absolute;
    right: 0;
    width: 75%; }
    @media (max-width: 1024px) {
      .fad-search-results__result-item .__container-content-inner {
        padding: 10px 15px;
        position: static;
        width: 100%; } }
    @media (max-width: 640px) {
      .fad-search-results__result-item .__container-content-inner {
        margin: 0;
        position: static;
        width: 100%; } }
    .fad-search-results__result-item .__container-content-inner .medium-12.columns {
      text-transform: uppercase; }

p.fad-search-results__phone-link {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  background-image: url("/MicrositeTemplates/assets/img/icon-phone.png");
  background-position: 0 center;
  background-repeat: no-repeat;
  display: none;
  font-size: 18px;
  margin-top: 10px;
  padding: 0 0 0 25px; }
  @media screen and (min-width: 40em) {
    p.fad-search-results__phone-link.fad-search-results__phone-link--desktop {
      display: block; } }
  p.fad-search-results__phone-link.fad-search-results__phone-link--mobile {
    color: #1466a1;
    transition: color .2s ease; }
    @media screen and (max-width: 39.9375em) {
      p.fad-search-results__phone-link.fad-search-results__phone-link--mobile {
        background-position: top 4px left;
        background-size: 12px;
        display: block;
        font-size: 12px;
        padding: 0 0 0 22px; } }

.fad-search-results__container {
  margin-top: 15px; }
  .fad-search-results__container .fad-search-results__location-container .fad-search-results__city-state {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    padding: 0 0 0 22px; }
    @media screen and (max-width: 39.9375em) {
      .fad-search-results__container .fad-search-results__location-container .fad-search-results__city-state {
        font-size: 12px; } }
    @media screen and (min-width: 40em) {
      .fad-search-results__container .fad-search-results__location-container .fad-search-results__city-state {
        font-size: 18px; } }
  .fad-search-results__container .fad-search-results__location-container .more-location {
    color: #929a9d; }
  .fad-search-results__container .fad-search-results__location-container .fad-search-results__location {
    background-image: url("/MicrositeTemplates/assets/img/icon-location.png");
    background-repeat: no-repeat;
    padding: 0 0 0 22px; }
    @media screen and (max-width: 39.9375em) {
      .fad-search-results__container .fad-search-results__location-container .fad-search-results__location {
        background-position: top 3px left;
        background-size: 10px;
        font-size: 12px; } }
    @media screen and (min-width: 40em) {
      .fad-search-results__container .fad-search-results__location-container .fad-search-results__location {
        background-position: 0 5px;
        font-size: 18px; } }

.fad-search-results__mobile-btn-container {
  display: none; }
  @media screen and (max-width: 39.9375em) {
    .fad-search-results__mobile-btn-container {
      display: block;
      font-size: 14px;
      margin-top: 0; } }
  .fad-search-results__mobile-btn-container .mobile-button {
    color: #fff;
    display: block;
    font-weight: 900;
    padding: 15px 50px;
    position: relative;
    text-align: center;
    text-transform: uppercase;
    transition: background-color .25s ease-out; }
    .fad-search-results__mobile-btn-container .mobile-button .carrot-right {
      background-image: url("/MicrositeTemplates/assets/img/arrow-right-white.png");
      background-repeat: no-repeat;
      display: inline-block;
      height: 13px;
      margin-left: 25px;
      width: 9px; }

.fb-comments {
  margin-top: 30px; }

.fb-comments__wrap {
  max-width: 650px; }

.feature-grid {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap; }
  .dh .feature-grid {
    margin-top: 4rem; }

.feature-grid__item {
  position: relative; }
  .feature-grid__item::after {
    background: url("/micrositetemplates/assets/img/svg/icon-circle-arrow-white-e.svg") center no-repeat;
    background-size: 40px 40px;
    content: '';
    height: 40px;
    position: absolute;
    width: 40px; }
  @media screen and (max-width: 39.9375em) {
    .feature-grid__item {
      -ms-flex: 0 1 100%;
          flex: 0 1 100%;
      min-height: 350px; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .feature-grid__item {
      -ms-flex: 0 1 50%;
          flex: 0 1 50%;
      height: 300px; }
      .feature-grid__item:nth-child(1) {
        -ms-flex-order: 1;
            order: 1; }
      .feature-grid__item:nth-child(2) {
        -ms-flex-order: 2;
            order: 2; }
      .feature-grid__item:nth-child(3) {
        -ms-flex-order: 4;
            order: 4; }
      .feature-grid__item:nth-child(4) {
        -ms-flex-order: 3;
            order: 3; }
      .feature-grid__item:nth-child(5) {
        -ms-flex-order: 5;
            order: 5; }
      .feature-grid__item:nth-child(6) {
        -ms-flex-order: 6;
            order: 6; } }
  @media screen and (min-width: 64em) {
    .feature-grid__item {
      -ms-flex: 0 1 33.333%;
          flex: 0 1 33.333%;
      height: 400px; } }
  .feature-grid__item::before {
    background-blend-mode: multiply;
    background-color: #000;
    bottom: 0;
    content: '';
    left: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    transition: opacity 1s ease;
    top: 0;
    z-index: 1; }
  .feature-grid__item::after {
    z-index: 2;
    transition: transform .2s ease; }
    @media screen and (max-width: 39.9375em) {
      .feature-grid__item::after {
        bottom: 50px;
        left: calc(50% - 15px); } }
    @media screen and (min-width: 40em) {
      .feature-grid__item::after {
        bottom: 30px;
        right: 30px; } }
  .feature-grid__item:hover::before {
    opacity: .15; }
  .feature-grid__item:hover::after {
    transform: translateX(10px); }
  .feature-grid__item--img {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat; }
    .feature-grid__item--img::before {
      opacity: 0.25; }
    .feature-grid__item--img:hover::before {
      opacity: .4; }
  .feature-grid__item--green {
    background-color: #93c243; }
  .feature-grid__item--purple {
    background-color: #623f90; }
  .feature-grid__item--blue {
    background-color: #00afd7; }

.feature-grid__item-link {
  display: block;
  height: 100%;
  position: relative;
  width: 100%;
  z-index: 2; }

.feature-grid__item-contain {
  height: 100%;
  padding: 30px;
  width: 100%; }
  @media screen and (max-width: 39.9375em) {
    .feature-grid__item-contain {
      -ms-flex-line-pack: center;
          align-content: center;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-pack: center;
          justify-content: center;
      padding-bottom: 100px;
      text-align: center; } }

.feature-grid__item-type,
.feature-grid__item-title {
  color: #fff;
  position: relative;
  z-index: 2; }

.feature-grid__item-type {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  text-transform: uppercase; }
  @media screen and (max-width: 39.9375em) {
    .feature-grid__item-type {
      font-size: 14px; } }
  @media screen and (min-width: 40em) {
    .feature-grid__item-type {
      font-size: 16px; } }

.feature-grid__item-title {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600; }
  @media screen and (max-width: 39.9375em) {
    .feature-grid__item-title {
      font-size: 24px; } }
  @media screen and (min-width: 40em) {
    .feature-grid__item-title {
      font-size: 32px; } }

.featured-events {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto;
  text-align: center; }
  .featured-events::after, .featured-events::before {
    content: '';
    display: table; }
  .featured-events::after {
    clear: both; }
  @media screen and (max-width: 39.9375em) {
    .dh .featured-events {
      margin-top: 2rem; } }
  @media screen and (min-width: 40em) {
    .dh .featured-events {
      margin-top: 4rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .featured-events {
      padding: 0 2rem; } }
  @media screen and (min-width: 64em) {
    .featured-events {
      padding: 0 4rem; } }

.featured-events__title {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  text-transform: uppercase; }
  @media screen and (max-width: 63.9375em) {
    .featured-events__title {
      font-size: 26px;
      padding: 0 20px; } }
  @media screen and (min-width: 64em) {
    .featured-events__title {
      font-size: 32px; } }

.featured-events__subtitle {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  color: #000;
  font-size: 16px;
  padding: 0 20px; }

.featured-events__events {
  margin-top: 2rem; }
  @media screen and (min-width: 40em) {
    .featured-events__events {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center; } }

.featured-events__event {
  background-color: #0066a1;
  transition: background-color .5s ease; }
  .featured-events__event:hover {
    background-color: #005686; }
    .featured-events__event:hover .featured-events__event-image::after {
      opacity: 1; }
  @media screen and (max-width: 39.9375em) {
    .featured-events__event {
      margin-left: auto;
      margin-right: auto;
      margin-top: 2rem;
      padding-bottom: 70px;
      position: relative;
      width: 90%; }
      .featured-events__event::after {
        background: url("/micrositetemplates/assets/img/svg/icon-circle-arrow-white-e.svg") center no-repeat;
        background-size: 40px 40px;
        content: '';
        height: 40px;
        position: absolute;
        width: 40px; }
      .featured-events__event:hover::after {
        transform: translateX(10px); }
      .featured-events__event::after {
        bottom: 40px;
        content: '';
        display: block;
        height: 40px;
        position: absolute;
        left: calc(50% - 20px);
        transition: transform .2s ease;
        width: 40px; } }
  @media screen and (min-width: 40em) {
    .featured-events__event {
      -ms-flex: 0 1 45%;
          flex: 0 1 45%; }
      .featured-events__event:last-child {
        margin-left: 2rem; } }

.featured-events__event-link {
  display: block;
  height: 100%; }

.featured-events__event-image {
  overflow: hidden;
  position: relative; }
  .featured-events__event-image::before, .featured-events__event-image::after {
    display: block;
    content: '';
    left: 0;
    position: absolute;
    z-index: 2; }
  .featured-events__event-image::before {
    box-shadow: -50px 70px 170px 20px rgba(0, 0, 0, 0.5);
    top: -100px;
    height: 100px;
    width: 300px; }
  .featured-events__event-image::after {
    background-color: rgba(0, 0, 0, 0.1);
    bottom: 0;
    opacity: 0;
    top: 0;
    transition: opacity .5s ease;
    right: 0; }
  .featured-events__event-image img {
    position: relative;
    z-index: 1; }

.featured-events__event-type {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  color: #fff;
  position: absolute;
  left: 25px;
  text-transform: uppercase;
  top: 20px;
  z-index: 2; }
  @media screen and (max-width: 63.9375em) {
    .featured-events__event-type {
      font-size: 22px;
      left: 0;
      text-align: center;
      width: 100%; } }
  @media screen and (min-width: 64em) {
    .featured-events__event-type {
      font-size: 26px; } }

.featured-events__event-info {
  color: #fff;
  padding: 20px 25px; }
  @media screen and (max-width: 39.9375em) {
    .featured-events__event-info {
      text-align: center; } }
  @media screen and (min-width: 40em) {
    .featured-events__event-info {
      text-align: left; } }

.featured-events__event-title,
.featured-events__event-date,
.featured-events__event-description {
  margin-bottom: 6px; }

.featured-events__event-title {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  text-transform: uppercase; }

.featured-events__event-date {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600; }

.featured-events__cta {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  display: block;
  margin-top: 2rem;
  text-transform: uppercase; }
  .featured-events__cta::after {
    background: url("/micrositetemplates/assets/img/svg/icon-chevron-orange-e.svg") center no-repeat;
    background-size: 6px 10px;
    bottom: 1px;
    color: transparent;
    content: '\0a00';
    display: inline;
    font-family: Arial, sans-serif;
    font-size: 12px;
    height: 10px;
    left: 0;
    margin-left: 5px;
    position: relative;
    transition: left .3s ease;
    vertical-align: baseline;
    width: 6px; }
  @media screen and (min-width: 64em) {
    .featured-events__cta:hover::after, .featured-events__cta:focus::after {
      left: 4px; } }
  .featured-events__cta:hover {
    color: #f98d29; }

.figure.figure--main {
  margin: 0; }

.figure__caption {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  color: #8a8a8a;
  font-size: 14px;
  font-style: italic;
  margin-top: 1rem; }

.figure__video {
  padding-bottom: 56.2719812%;
  position: relative; }
  .figure__video iframe,
  .figure__video video {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%; }

.filter__heading {
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 2rem;
  margin-top: 2rem;
  width: 100%; }
  .filter__heading p {
    -ms-flex: 0 0 130px;
        flex: 0 0 130px;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 0;
    width: 130px; }
  .filter__heading .filter__heading-rule {
    border-top: 1px solid #d3d3d3;
    -ms-flex: 1 0 auto;
        flex: 1 0 auto;
    height: 1px;
    position: relative;
    top: 13px; }

.filter__row {
  display: -ms-flexbox;
  display: flex; }
  @media screen and (max-width: 39.9375em) {
    .filter__row {
      -ms-flex-direction: column;
          flex-direction: column; } }

.filter {
  margin-right: 70px;
  width: 50%; }
  @media screen and (max-width: 39.9375em) {
    .filter {
      margin-right: 0;
      width: 100%; } }
  .filter:nth-child(2n) {
    margin-right: 0; }
  .filter .filter__input {
    font-size: 16px;
    padding: 0;
    padding-left: 42px; }
  .filter .form__select {
    width: 100%; }
    .dh .filter .form__select {
      height: 55px; }

.filter__submit {
  margin-bottom: 32px;
  width: 214px; }

.footer__upper {
  background-color: #f5f5f5; }

@media screen and (max-width: 63.9375em) {
  .footer__upper-container {
    padding-top: 30px;
    padding-bottom: 30px; } }

@media print, screen and (min-width: 64em) {
  .footer__upper-container {
    padding-top: 40px;
    padding-bottom: 20px; } }

@media screen and (max-width: 1023.9px) {
  .footer__upper-inner {
    text-align: center; } }

@media screen and (max-width: 63.9375em) {
  .footer__upper-inner {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%;
    padding-right: 1.25rem;
    padding-left: 1.25rem;
    max-width: 100%; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .footer__upper-inner {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }

@media print, screen and (min-width: 64em) {
  .footer__upper-inner {
    max-width: 73.625rem;
    margin-right: auto;
    margin-left: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap; } }

@media screen and (max-width: 39.9375em) {
  .footer__branding {
    padding-left: 30px; }
    .dh .footer__branding {
      padding-left: 0; } }

@media screen and (max-width: 63.9375em) {
  .footer__branding {
    margin-bottom: 20px; } }

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .footer__branding {
    text-align: center; } }

@media print, screen and (min-width: 64em) {
  .footer__branding {
    width: 25%;
    float: left;
    padding-right: 1.25rem;
    padding-left: 1.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .footer__branding {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }

@media print, screen and (min-width: 64em) {
    .footer__branding:last-child:not(:first-child) {
      float: right; } }

@media print, screen and (min-width: 64em) {
  .footer__branding__wrap {
    display: inline-block;
    padding-right: 18px; } }

@media print, screen and (min-width: 64em) {
  .footer__urgent-care, .footer__logo {
    display: block; } }

.footer__urgent-care {
  height: 66px;
  width: 240px; }

.footer__logo {
  height: 26px;
  width: 152px; }

@media screen and (max-width: 63.9375em) {
  .footer__address {
    display: none; } }

@media print, screen and (min-width: 64em) {
  .footer__address {
    margin-top: 25px; } }

@media print, screen and (min-width: 64em) {
  .footer__navigation {
    width: 20.83333%;
    float: left;
    padding-right: 1.25rem;
    padding-left: 1.25rem; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .footer__navigation {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }

@media print, screen and (min-width: 64em) {
    .footer__navigation:last-child:not(:first-child) {
      float: right; } }

.footer__navigation a:hover {
  color: #0066a1;
  text-decoration: underline; }

@media print, screen and (min-width: 64em) {
  .footer__navigation {
    padding-top: 25px;
    position: relative; }
    .footer__navigation::before {
      background-color: #0e92a2;
      content: '';
      display: block;
      height: 4px;
      left: 10px;
      position: absolute;
      top: 3px;
      width: 54px; }
    .dh .footer__navigation {
      padding-top: 0; }
      .dh .footer__navigation::before {
        display: none; } }

.footer__navigation-list {
  list-style-type: none;
  margin-bottom: 0;
  margin-left: 0;
  padding-left: 0;
  margin-bottom: 25px; }

.footer__navigation-item {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600; }
  @media screen and (max-width: 63.9375em) {
    .footer__navigation-item {
      font-size: 18px; } }
  @media print, screen and (min-width: 64em) {
    .footer__navigation-item {
      font-size: 13px; } }
  @media screen and (max-width: 63.9375em) {
    .footer__navigation-item {
      margin-bottom: 6px;
      text-align: center; } }
  @media screen and (min-width: 64em) {
    .footer__navigation-item {
      margin-bottom: 4px; } }
  .dh .footer__navigation-item {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 400; }
    .dh .footer__navigation-item a {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 700; }
    @media screen and (max-width: 63.9375em) {
      .dh .footer__navigation-item {
        font-size: 15px; } }

.footer__navigation-link {
  color: #0066a1; }

.footer__contact {
  margin-bottom: 20px; }
  @media print, screen and (min-width: 64em) {
    .footer__contact {
      width: 33.33333%;
      float: left;
      padding-right: 1.25rem;
      padding-left: 1.25rem;
      font-size: 13px;
      line-height: 2;
      margin-bottom: 0;
      padding-left: 1rem !important; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .footer__contact {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
      .footer__contact:last-child:not(:first-child) {
        float: right; } }
  @media screen and (max-width: 63.9375em) {
    .dh .footer__contact {
      margin-bottom: 30px; } }
  .footer__contact__title {
    color: #0066a1;
    font-weight: 700;
    margin-bottom: .5rem;
    text-align: center; }
    @media print, screen and (min-width: 64em) {
      .footer__contact__title {
        text-align: left; } }
    .dh .footer__contact__title {
      color: #000;
      text-transform: uppercase; }
      @media screen and (max-width: 63.9375em) {
        .dh .footer__contact__title {
          margin-bottom: 12px; } }
  .footer__contact__excerpt {
    font-size: 12px;
    text-align: center; }
    @media print, screen and (min-width: 64em) {
      .footer__contact__excerpt {
        text-align: left; } }

@media screen and (max-width: 63.9375em) {
  .footer__navigation--contact > p,
  .footer__navigation--contact > a {
    font-size: 15px; } }

@media print, screen and (min-width: 64em) {
  .footer__navigation--contact > p,
  .footer__navigation--contact > a {
    font-size: 13px; } }

@media screen and (max-width: 63.9375em) {
  .footer__navigation--contact > p,
  .footer__navigation--contact > a {
    margin-bottom: 6px;
    text-align: center; } }

@media screen and (min-width: 64em) {
  .footer__navigation--contact > p,
  .footer__navigation--contact > a {
    margin-bottom: 4px; } }

.footer__navigation--contact a {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  display: block; }

.footer__form {
  width: 100%;
  margin-bottom: 28px;
  text-align: center; }
  @media print, screen and (min-width: 64em) {
    .footer__form {
      text-align: left; } }
  .footer__form__input {
    background: white;
    width: 155px;
    height: 30px;
    box-sizing: border-box;
    border: solid 1px #e6e1e2;
    padding: 0 10px; }
  .footer__form__btn {
    font-size: 0.750rem;
    line-height: .750rem;
    padding: 9px 15px;
    vertical-align: bottom;
    display: inline-block;
    width: auto; }

.footer__contact-link {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  color: #0066a1; }

@media print, screen and (min-width: 64em) {
  .footer__social {
    /* @include grid-column(3); */ } }

.footer__social-list {
  list-style-type: none;
  margin-bottom: 0;
  margin-left: 0;
  padding-left: 0;
  -ms-flex-align: center;
      align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: center;
      justify-content: center;
  margin-bottom: 20px; }
  @media print, screen and (min-width: 64em) {
    .footer__social-list {
      display: -ms-inline-flexbox;
      display: inline-flex; } }

.footer__social-item {
  display: inline-block;
  padding-left: 12px;
  padding-right: 12px;
  text-align: center; }
  .footer__social-item:first-of-type {
    padding-left: 0; }
  .footer__social-item:last-of-type {
    padding-right: 0; }
  @media screen and (min-width: 40em) {
    .footer__social-item {
      padding-left: 8px;
      padding-right: 8px; } }

.footer__social-link {
  color: #0066a1;
  display: block;
  transition: color 250ms ease-out; }
  @media screen and (max-width: 63.9375em) {
    .footer__social-link--facebook {
      height: 25px;
      width: 12px; } }
  @media print, screen and (min-width: 64em) {
    .footer__social-link--facebook {
      height: 20px;
      width: 10px; } }
  @media screen and (max-width: 63.9375em) {
    .footer__social-link--yelp {
      height: 25px;
      width: 25px; } }
  @media print, screen and (min-width: 64em) {
    .footer__social-link--yelp {
      height: 20px;
      width: 20px; } }
  @media screen and (max-width: 63.9375em) {
    .footer__social-link--twitter {
      height: 25px;
      width: 20px; } }
  @media print, screen and (min-width: 64em) {
    .footer__social-link--twitter {
      height: 16px;
      width: 20px; } }
  @media screen and (max-width: 63.9375em) {
    .footer__social-link--google-plus {
      height: 20px;
      width: 31px; } }
  @media print, screen and (min-width: 64em) {
    .footer__social-link--google-plus {
      height: 16px;
      width: 25px; } }
  @media screen and (max-width: 63.9375em) {
    .footer__social-link--pinterest, .footer__social-link--youtube, .footer__social-link--instagram {
      height: 25px;
      width: 20px; } }
  @media print, screen and (min-width: 64em) {
    .footer__social-link--pinterest, .footer__social-link--youtube, .footer__social-link--instagram {
      height: 20px;
      width: 16px; } }

.footer__social-logo {
  height: 100%; }

.footer__lower {
  background-color: #efecec; }

@media screen and (max-width: 63.9375em) {
  .footer__lower-container {
    padding-top: 32px;
    padding-bottom: 35px; } }

@media print, screen and (min-width: 64em) {
  .footer__lower-container {
    max-width: 73.625rem;
    margin-right: auto;
    margin-left: auto;
    padding: 18px; }
    .footer__lower-container::after, .footer__lower-container::before {
      content: '';
      display: table; }
    .footer__lower-container::after {
      clear: both; } }

.footer__lower-inner {
  display: -ms-flexbox;
  display: flex; }
  @media screen and (max-width: 63.9375em) {
    .footer__lower-inner {
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
      max-width: 100%;
      padding-right: 1.25rem;
      padding-left: 1.25rem;
      max-width: 100%;
      -ms-flex-direction: column;
          flex-direction: column; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .footer__lower-inner {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .footer__lower-inner {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-pack: justify;
          justify-content: space-between; } }

@media screen and (max-width: 63.9375em) {
  .footer__copyright {
    font-size: 12px;
    -ms-flex-order: 2;
        order: 2;
    text-align: center; } }

@media print, screen and (min-width: 64em) {
  .footer__copyright {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    font-size: 11px;
    -ms-flex-pack: justify;
        justify-content: space-between; } }

@media screen and (max-width: 63.9375em) {
  .dh .footer__copyright {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 10px; } }

@media screen and (min-width: 64em) {
  .dh .footer__copyright {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 13px; } }

@media screen and (max-width: 63.9375em) {
  .footer__legal-navigation {
    margin-bottom: 16px;
    -ms-flex-order: 1;
        order: 1;
    text-align: center; } }

.footer__legal-navigation-list {
  list-style-type: none;
  margin-bottom: 0;
  margin-left: 0;
  padding-left: 0; }
  @media print, screen and (min-width: 64em) {
    .footer__legal-navigation-list {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-pack: end;
          justify-content: flex-end; } }

@media screen and (max-width: 63.9375em) {
  .footer__legal-navigation-item {
    margin-bottom: 6px; } }

@media print, screen and (min-width: 64em) {
  .footer__legal-navigation-item:last-of-type a {
    padding-right: 0; } }

.footer__legal-navigation-link {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  color: #0066a1; }
  @media screen and (max-width: 63.9375em) {
    .footer__legal-navigation-link {
      font-size: 18px; } }
  @media print, screen and (min-width: 64em) {
    .footer__legal-navigation-link {
      font-size: 11px;
      display: block;
      padding: 0 15px; } }
  .footer__legal-navigation-link:hover {
    color: #0066a1;
    text-decoration: underline; }
  .dh .footer__legal-navigation-link {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 13px; }
    @media screen and (max-width: 63.9375em) {
      .dh .footer__legal-navigation-link {
        font-size: 12px; } }

.form, .form--event-filter {
  position: relative; }
  .form--event-filter {
    border-bottom: solid 1px #d3d3d3;
    margin-bottom: 30px;
    padding-bottom: 30px; }
  .form__input {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    border: solid 1px #d3d3d3;
    border-radius: 3px;
    color: #8a8a8a;
    font-size: 1rem;
    height: 50px;
    margin-bottom: 1.5rem;
    padding: 0 15px;
    width: 100%; }
  .form__select {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: transparent;
    background-image: url("../../assets/img/select-arrow.png");
    background-position: calc(100% - 16px) center;
    background-repeat: no-repeat;
    border: solid 1px #d3d3d3;
    border-radius: 3px;
    display: block;
    height: 50px;
    margin-bottom: 20px;
    padding-left: 10px;
    text-overflow: '';
    text-transform: uppercase;
    width: 100%; }
    .form__select:hover {
      cursor: pointer; }
    @media screen and (min-width: 960px) {
      .form__select {
        width: 400px; } }
    .form__select option {
      padding: 0 15px; }

select::-ms-expand {
  display: none; }

.dh .form--filters fieldset {
  margin-bottom: 24px; }

.dh .form--filters label {
  border: 1px solid #d3d3d3;
  border-radius: 3px;
  color: #8a8a8a; }

.dh .form--box {
  background-color: #e6e7e8;
  box-shadow: 0 0 60px 5px rgba(0, 0, 0, 0.1); }
  @media screen and (max-width: 39.9375em) {
    .dh .form--box {
      border: 12px solid #fff; } }
  @media screen and (min-width: 40em) {
    .dh .form--box {
      border: 15px solid #fff;
      max-width: 800px; } }
  .dh .form--box fieldset {
    margin: 0; }

.dh .form--filters aside,
.dh .form--box aside {
  font-size: 14px;
  font-style: italic; }

.dh .form--filters h4,
.dh .form--box h4 {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  color: #0066a1;
  font-size: 16px; }

.dh .form--filters fieldset,
.dh .form--box fieldset {
  border: 0;
  padding: 0; }

.dh .form--filters form > *,
.dh .form--box form > * {
  margin-bottom: 2rem; }

@media screen and (max-width: 39.9375em) {
  .dh .form--filters form > .fieldset--margin-bottom-sm,
  .dh .form--box form > .fieldset--margin-bottom-sm {
    margin-bottom: .9rem; } }

.dh .form--filters form > *:last-child,
.dh .form--box form > *:last-child {
  margin-bottom: 0; }

.dh .form--filters input,
.dh .form--filters textarea,
.dh .form--box input,
.dh .form--box textarea {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  border: 0; }

.dh .form--filters input[type='text'], .dh .form--filters input[type='number'], .dh .form--filters input[type='email'],
.dh .form--box input[type='text'],
.dh .form--box input[type='number'],
.dh .form--box input[type='email'] {
  height: 55px;
  padding: 0 10px;
  width: 100%; }
  .dh .form--filters input[type='text']::-webkit-input-placeholder, .dh .form--filters input[type='number']::-webkit-input-placeholder, .dh .form--filters input[type='email']::-webkit-input-placeholder,
  .dh .form--box input[type='text']::-webkit-input-placeholder,
  .dh .form--box input[type='number']::-webkit-input-placeholder,
  .dh .form--box input[type='email']::-webkit-input-placeholder {
    color: #929a9d; }
  .dh .form--filters input[type='text']:-ms-input-placeholder, .dh .form--filters input[type='number']:-ms-input-placeholder, .dh .form--filters input[type='email']:-ms-input-placeholder,
  .dh .form--box input[type='text']:-ms-input-placeholder,
  .dh .form--box input[type='number']:-ms-input-placeholder,
  .dh .form--box input[type='email']:-ms-input-placeholder {
    color: #929a9d; }
  .dh .form--filters input[type='text']::placeholder, .dh .form--filters input[type='number']::placeholder, .dh .form--filters input[type='email']::placeholder,
  .dh .form--box input[type='text']::placeholder,
  .dh .form--box input[type='number']::placeholder,
  .dh .form--box input[type='email']::placeholder {
    color: #929a9d; }

.dh .form--filters input[type='radio'].is-invalid-input + span, .dh .form--filters input[type='checkbox'].is-invalid-input + span,
.dh .form--box input[type='radio'].is-invalid-input + span,
.dh .form--box input[type='checkbox'].is-invalid-input + span {
  color: #d94b3d; }

.dh .form--filters input[type='radio']:hover, .dh .form--filters input[type='checkbox']:hover,
.dh .form--box input[type='radio']:hover,
.dh .form--box input[type='checkbox']:hover {
  cursor: pointer; }

.dh .form--filters input[type='checkbox'],
.dh .form--box input[type='checkbox'] {
  margin-right: 10px; }

.dh .form--filters textarea,
.dh .form--box textarea {
  padding: 0 10px;
  width: 100%; }
  .dh .form--filters textarea::-webkit-input-placeholder,
  .dh .form--box textarea::-webkit-input-placeholder {
    color: #929a9d; }
  .dh .form--filters textarea:-ms-input-placeholder,
  .dh .form--box textarea:-ms-input-placeholder {
    color: #929a9d; }
  .dh .form--filters textarea::placeholder,
  .dh .form--box textarea::placeholder {
    color: #929a9d; }

.dh .form--filters .form__textarea-wrap,
.dh .form--box .form__textarea-wrap {
  background-color: #fff;
  padding-top: 21px;
  width: 100%; }

.dh .form--filters .input-label,
.dh .form--box .input-label {
  display: block; }
  .dh .form--filters .input-label--inline,
  .dh .form--box .input-label--inline {
    -ms-flex-align: baseline;
        align-items: baseline;
    display: -ms-flexbox;
    display: flex;
    margin-right: 2rem; }
    @media screen and (max-width: 63.9375em) {
      .dh .form--filters .input-label--inline,
      .dh .form--box .input-label--inline {
        padding: 12px 0; } }
    @media screen and (min-width: 64em) {
      .dh .form--filters .input-label--inline,
      .dh .form--box .input-label--inline {
        float: left;
        height: 16px; } }
    .dh .form--filters .input-label--inline input[type='radio'],
    .dh .form--box .input-label--inline input[type='radio'] {
      height: 13px;
      margin: 0 10px 0 0;
      overflow: hidden;
      padding: 0;
      vertical-align: baseline;
      width: 13px; }
  .dh .form--filters .input-label--block + .input-label--block,
  .dh .form--box .input-label--block + .input-label--block {
    margin-top: .25rem; }
  @media screen and (min-width: 40em) {
    .dh .form--filters .input-label--short,
    .dh .form--box .input-label--short {
      width: 175px; } }
  .dh .form--filters .input-label--checkbox,
  .dh .form--box .input-label--checkbox {
    display: -ms-flexbox;
    display: flex; }
    .dh .form--filters .input-label--checkbox input,
    .dh .form--box .input-label--checkbox input {
      position: relative;
      top: 3px; }
    @media screen and (max-width: 63.9375em) {
      .dh .form--filters .input-label--checkbox,
      .dh .form--box .input-label--checkbox {
        padding: 12px 0; } }
  .dh .form--filters .input-label--placeholder span,
  .dh .form--box .input-label--placeholder span {
    font-size: 16px;
    top: 16px; }
  .dh .form--filters .input-label--placeholder textarea,
  .dh .form--box .input-label--placeholder textarea {
    outline: none;
    padding-top: 7px; }

.dh .form--filters .input-label--placeholder,
.dh .form--box .input-label--placeholder,
.dh .search-box .input-label--placeholder {
  display: block;
  position: relative; }
  .dh .form--filters .input-label--placeholder span,
  .dh .form--box .input-label--placeholder span,
  .dh .search-box .input-label--placeholder span {
    color: #929a9d;
    left: 20px;
    pointer-events: none;
    position: absolute;
    transition: left .2s ease, top .2s ease, font-size .2s ease; }
  .dh .form--filters .input-label--placeholder input,
  .dh .form--filters .input-label--placeholder textarea,
  .dh .form--box .input-label--placeholder input,
  .dh .form--box .input-label--placeholder textarea,
  .dh .search-box .input-label--placeholder input,
  .dh .search-box .input-label--placeholder textarea {
    font-size: 18px;
    padding-left: 20px;
    padding-right: 20px; }
  .dh .form--filters .input-label--placeholder input,
  .dh .form--box .input-label--placeholder input,
  .dh .search-box .input-label--placeholder input {
    padding-top: 7px; }
  .dh .form--filters .input-label--placeholder.is-active span,
  .dh .form--box .input-label--placeholder.is-active span,
  .dh .search-box .input-label--placeholder.is-active span {
    font-size: 11px;
    left: 5px;
    top: 5px; }
  .dh .form--filters .input-label--placeholder.is-active .form__asterisk,
  .dh .form--box .input-label--placeholder.is-active .form__asterisk,
  .dh .search-box .input-label--placeholder.is-active .form__asterisk {
    font-size: 10px;
    opacity: 0; }
  .dh .form--filters .input-label--placeholder.input-label--icon-search span,
  .dh .form--box .input-label--placeholder.input-label--icon-search span,
  .dh .search-box .input-label--placeholder.input-label--icon-search span {
    left: 45px; }
  .dh .form--filters .input-label--placeholder.input-label--icon-search input,
  .dh .form--box .input-label--placeholder.input-label--icon-search input,
  .dh .search-box .input-label--placeholder.input-label--icon-search input {
    background-image: url("/micrositetemplates/assets/img/svg/icon-search-flat-black.svg");
    background-position: 15px center;
    background-repeat: no-repeat;
    background-size: 17px 17px;
    padding-left: 45px; }

.dh .search-box .input-label--placeholder span {
  font-size: 20px;
  top: 12px; }

.dh .form__asterisk {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  color: #b70000;
  font-size: 16px;
  margin: 0 .1em;
  opacity: 1;
  position: relative;
  top: .02em;
  transition: opacity .2s ease, font-size .2s ease; }

.dh .form-error {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  background-color: #d94b3d;
  color: #fff;
  display: none;
  font-size: 14px;
  padding: 5px 10px; }
  @media screen and (max-width: 39.9375em) {
    .dh .form-error.is-visible {
      text-align: center; } }
  .search-box .dh .form-error.is-visible {
    margin-bottom: 1em; }

@media screen and (max-width: 39.9375em) {
  .dh .form__inner {
    padding: 15px; } }

@media screen and (min-width: 40em) {
  .dh .form__inner {
    padding: 30px; } }

.dh .btn.form__submit-btn {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  border: 0;
  padding-left: 50px;
  padding-right: 50px; }

.form__disclaimer.is-collapsed .form__disclaimer-toggle::after {
  background-image: url("/MicrositeTemplates/assets/img/svg/icon-plus.svg");
  background-size: 12px 12px; }

.form__disclaimer.is-collapsed .form__disclaimer-content-container {
  display: none; }

.form__disclaimer.is-expanded .form__disclaimer-toggle::after {
  background-image: url("/MicrositeTemplates/assets/img/svg/icon-minus.svg");
  background-size: 12px 3px; }

.form__disclaimer.is-expanded .form__disclaimer-content-container {
  display: block; }

.form__disclaimer-heading-container {
  margin-bottom: 8px; }
  @media screen and (min-width: 40em) {
    .form__disclaimer-heading-container {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between; } }

.form__disclaimer-toggle {
  display: inline-block;
  font-size: 13px;
  height: 30px;
  padding-right: 40px;
  position: relative; }
  .form__disclaimer-toggle::after {
    background-color: #fff;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 100%;
    content: '';
    display: block;
    height: 30px;
    position: absolute;
    right: 0;
    top: 0;
    width: 30px; }
  .form__disclaimer-toggle:hover {
    cursor: pointer; }

.form__disclaimer-text {
  font-size: 14px;
  font-style: italic; }

.hamburger {
  position: absolute;
  right: 20px;
  top: 13px;
  cursor: pointer;
  padding: 8px 4px;
  transition: -webkit-filter 200ms linear;
  transition: filter 200ms linear;
  transition: filter 200ms linear, -webkit-filter 200ms linear; }
  @media print, screen and (min-width: 64em) {
    .hamburger {
      display: none; } }
  .hamburger__outer {
    height: 17px;
    width: 24px;
    display: inline-block;
    position: relative; }
  .hamburger__inner {
    display: block;
    margin-top: 6px; }
    .is-open .hamburger__inner {
      transform: translate3d(0, 1px, 0) rotate(45deg); }
    .hamburger__inner, .hamburger__inner::before, .hamburger__inner::after {
      height: 3px;
      width: 24px;
      background-color: #f98d29;
      position: absolute;
      transition: transform 200ms ease, width 200ms ease; }
      .is-open .hamburger__inner, .is-open .hamburger__inner::before, .is-open .hamburger__inner::after {
        width: 24px; }
    .hamburger__inner::before, .hamburger__inner::after {
      content: '';
      display: block; }
    .hamburger__inner::before {
      top: -7px;
      transition: transform 200ms ease; }
      .is-open .hamburger__inner::before {
        opacity: 0;
        transform: rotate(-45deg) translate3d(-3.42857px, -4px, 0); }
    .hamburger__inner::after {
      bottom: -7px; }
      .is-open .hamburger__inner::after {
        top: 14px;
        transform: translate3d(0, -14px, 0) rotate(-90deg); }

.dh .header {
  box-shadow: 0 0 12px 2px rgba(0, 0, 0, 0.2);
  position: relative;
  z-index: 200; }

.header__main {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-align: center;
      align-items: center;
  height: 60px;
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .header__main {
      height: 100px; } }

@media screen and (max-width: 63.9375em) {
  .header__branding {
    -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
    max-width: 58.33333%;
    padding-right: 1.25rem;
    padding-left: 1.25rem;
    max-width: 58.33333%; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .header__branding {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }

@media print, screen and (min-width: 64em) {
  .header__branding {
    -ms-flex: 0 0 58.33333%;
        flex: 0 0 58.33333%;
    max-width: 58.33333%;
    padding-right: 1.25rem;
    padding-left: 1.25rem;
    max-width: 58.33333%; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .header__branding {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }

@media screen and (max-width: 63.9375em) {
  .header__home-link {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; } }

@media print, screen and (min-width: 64em) {
  .header__home-link {
    display: block; } }

@media print, screen and (min-width: 64em) {
  .header__logo, .header__urgent-care {
    display: inline-block; } }

@media screen and (max-width: 63.9375em) {
  .header__logo {
    -ms-flex-order: 2;
        order: 2;
    height: 18px;
    width: 102px; } }

@media print, screen and (min-width: 64em) {
  .header__logo {
    height: 52px;
    width: 318px; } }

@media screen and (max-width: 63.9375em) {
  .header__urgent-care {
    -ms-flex-order: 1;
        order: 1;
    margin-bottom: 2px; } }

@media print, screen and (min-width: 64em) {
  .header__urgent-care {
    max-width: 535px;
    margin-left: 10px; } }

@media screen and (max-width: 63.9375em) {
  .header__heart-vascular {
    -ms-flex-order: 1;
        order: 1;
    margin-bottom: 2px; } }

@media print, screen and (min-width: 64em) {
  .header__heart-vascular {
    max-width: 300px;
    margin-left: 10px; } }

@media screen and (max-width: 63.9375em) {
  .header__welcome {
    display: none; } }

@media print, screen and (min-width: 64em) {
  .header__welcome {
    -ms-flex: 0 0 41.66667%;
        flex: 0 0 41.66667%;
    max-width: 41.66667%;
    padding-right: 1.25rem;
    padding-left: 1.25rem;
    max-width: 41.66667%;
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    color: #0066a1;
    font-size: 24px;
    padding-top: 8px;
    text-align: right; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .header__welcome {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }

.header__welcome-link {
  color: #f98d29; }

@media screen and (max-width: 63.9375em) {
  .header__dh {
    -ms-flex-order: 1;
        order: 1;
    height: 33px;
    width: 200px;
    margin-bottom: 2px; } }

@media print, screen and (min-width: 64em) {
  .header__dh {
    height: 59px;
    width: 355px;
    max-width: 355px;
    margin-left: 10px; } }

.hero {
  position: relative;
  min-height: 270px; }
  .hero--slider {
    text-align: center; }
  .hero\--slider .hero__container {
    position: relative;
    height: 0;
    margin: 0;
    list-style: none;
    overflow: hidden; }
    @media screen and (min-width: 768px) {
      .hero\--slider .hero__container {
        max-height: 640px; } }
  @media screen and (max-width: 63.9375em) {
    .hero__share {
      display: none; } }
  @media print, screen and (min-width: 64em) {
    .hero__share {
      max-width: 73.625rem;
      margin-right: auto;
      margin-left: auto;
      position: relative;
      z-index: 100; }
      .hero__share::after, .hero__share::before {
        content: '';
        display: table; }
      .hero__share::after {
        clear: both; } }
  .hero--clear, .hero--banner {
    background: #1c3e6b;
    background: linear-gradient(45deg, #1c3e6b 0%, #136ba9 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1c3e6b', endColorstr='#136ba9',GradientType=1 ); }
  .hero--banner {
    background: #042e55;
    background: linear-gradient(45deg, #042e55 0%, #5b91b9 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#042e55', endColorstr='#5b91b9',GradientType=1 );
    height: 172px;
    min-height: 172px; }
    @media screen and (max-width: 749px) {
      .hero--banner {
        height: 100px;
        min-height: 100px; } }
    @media screen and (max-width: 749px) {
      .hero--banner .hero__wrapper,
      .hero--banner .hero__container,
      .hero--banner .hero__content,
      .hero--banner .hero__slide,
      .hero--banner .hero__bg-image-container,
      .hero--banner .hero__bg-image {
        height: 100px !important;
        min-height: 100px !important; } }
    @media screen and (min-width: 750px) {
      .hero--banner .hero__wrapper,
      .hero--banner .hero__container,
      .hero--banner .hero__content,
      .hero--banner .hero__slide,
      .hero--banner .hero__bg-image-container,
      .hero--banner .hero__bg-image {
        height: 172px !important;
        min-height: 172px !important; } }
    .hero--banner .hero__content {
      position: relative; }
      .hero--banner .hero__content::before {
        background-image: url("/MicrositeTemplates/assets/img/svg/banner-check.svg");
        content: '';
        height: 385px;
        opacity: .05;
        position: absolute;
        right: 0;
        top: -80px;
        width: 493px; }
  .hero__slide {
    width: 100%;
    position: relative;
    text-align: left; }
    .hero__slide.no-motionui.is-active {
      top: 0;
      left: 0; }
  .hero__wrapper {
    overflow: hidden;
    position: relative;
    height: 353px; }
    @media print, screen and (min-width: 40em) {
      .hero__wrapper {
        overflow: hidden; } }
    #main .hero__wrapper {
      height: 353px; }
      @media print, screen and (min-width: 40em) {
        #main .hero__wrapper {
          height: 462px; }
          #main .hero__wrapper img {
            display: block;
            height: auto;
            max-width: none;
            width: auto;
            min-width: 100%;
            min-height: 100%;
            position: relative;
            transform: translateX(-50%);
            left: 50%; } }
    @media screen and (max-width: 39.9375em) {
      .hero\--clear .hero__wrapper {
        height: 353px; } }
    @media print, screen and (min-width: 40em) {
      .hero\--clear .hero__wrapper {
        height: 270px;
        max-height: 270px; } }
  .hero__image {
    width: 100%;
    max-width: 100%;
    margin: 0; }
    .hero\--wide .hero__image {
      font-family: 'object-fit: cover;';
      object-fit: cover;
      height: auto;
      max-width: none;
      width: auto;
      height: auto;
      min-height: 100%;
      min-width: 100%;
      max-width: none; }
      @media screen and (max-width: 39.9375em) {
        .hero\--wide .hero__image {
          width: auto;
          min-width: 100%;
          min-height: 353px; } }
      @media print, screen and (min-width: 40em) {
        .hero\--wide .hero__image {
          min-height: 270px;
          max-height: 320px; } }
    .hero\--clear .hero__image {
      font-family: 'object-fit: cover;';
      object-fit: cover;
      width: auto;
      height: auto; }
      @media screen and (max-width: 39.9375em) {
        .hero\--clear .hero__image {
          height: 100%; } }
      @media print, screen and (min-width: 40em) {
        .hero\--clear .hero__image {
          float: right;
          padding-right: 5%;
          max-height: 320px; } }
  .hero__bg-image {
    background-repeat: no-repeat;
    background-size: cover;
    display: none;
    height: 100%;
    position: absolute;
    width: 100%; }
    .hero__bg-image--sm {
      background-position: center; }
      @media screen and (max-width: 749px) {
        .hero__bg-image--sm {
          display: block; } }
    .hero__bg-image--md {
      background-position: left; }
      @media screen and (max-width: 1024px) and (min-width: 750px) {
        .hero__bg-image--md {
          display: block; } }
    .hero__bg-image--lg {
      background-position: center; }
      @media screen and (min-width: 1025px) {
        .hero__bg-image--lg {
          display: block; } }
  .hero__content {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex; }
    @media screen and (max-width: 63.9375em) {
      .hero__content {
        bottom: 0;
        left: 0;
        position: absolute;
        right: 0;
        top: 0; } }
    @media print, screen and (min-width: 64em) {
      .hero__content {
        bottom: 0;
        color: #fff;
        position: absolute;
        top: 0;
        width: 100%; } }
  .hero__content-outer {
    max-width: 73.625rem;
    margin-right: auto;
    margin-left: auto;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    -ms-flex-align: center;
        align-items: center;
    width: 100%; }
    .hero\--narrow .hero__content-outer {
      height: calc(100% - 57px); }
  @media screen and (max-width: 39.9375em) {
    .hero__content-inner {
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
      max-width: 100%;
      padding-right: 1.25rem;
      padding-left: 1.25rem;
      max-width: 100%;
      padding-bottom: 30px;
      padding-top: 20px; } }
  @media screen and (max-width: 39.9375em) and (min-width: 64em) {
    .hero__content-inner {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 40em) {
    .hero\--narrow .hero__content-inner {
      -ms-flex: 0 0 41.66667%;
          flex: 0 0 41.66667%;
      max-width: 41.66667%;
      padding-right: 0.625rem;
      padding-left: 0.625rem;
      max-width: 41.66667%;
      padding-top: 20px;
      padding-bottom: 20px; }
    .hero\--wide .hero__content-inner, .hero\--clear .hero__content-inner {
      -ms-flex: 0 0 91.66667%;
          flex: 0 0 91.66667%;
      max-width: 91.66667%;
      padding-right: 1.25rem;
      padding-left: 1.25rem;
      max-width: 91.66667%; } }
  @media print, screen and (min-width: 40em) and (min-width: 64em) {
    .hero\--wide .hero__content-inner, .hero\--clear .hero__content-inner {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .hero\--narrow .hero__content-inner {
      padding-right: 40px; }
    .hero\--wide .hero__content-inner, .hero\--clear .hero__content-inner {
      -ms-flex: 0 0 66.66667%;
          flex: 0 0 66.66667%;
      max-width: 66.66667%;
      padding-right: 1.25rem;
      padding-left: 1.25rem;
      max-width: 66.66667%; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .hero\--wide .hero__content-inner, .hero\--clear .hero__content-inner {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 75em) {
    .hero\--narrow .hero__content-inner {
      padding-right: 80px; }
    .hero\--wide .hero__content-inner, .hero\--clear .hero__content-inner {
      -ms-flex: 0 0 58.33333%;
          flex: 0 0 58.33333%;
      max-width: 58.33333%;
      padding-right: 1.25rem;
      padding-left: 1.25rem;
      max-width: 58.33333%; } }
  @media screen and (min-width: 75em) and (min-width: 64em) {
    .hero\--wide .hero__content-inner, .hero\--clear .hero__content-inner {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 768px) {
    .hero__content-inner {
      padding-top: 18px; } }
  .dh .hero__content-inner {
    max-width: 100%; }
    @media screen and (max-width: 39.9375em) {
      .dh .hero__content-inner {
        padding: 0 20px; } }
    @media screen and (max-width: 63.9375em) {
      .dh .hero__content-inner {
        margin-top: -50px;
        padding-left: 20px; } }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .dh .hero__content-inner {
        padding-top: 0; } }
    @media screen and (max-width: 1024px) and (min-width: 750px) {
      .dh .hero__content-inner {
        -ms-flex: none !important;
            flex: none !important;
        padding-right: 0 !important;
        width: 350px !important; } }
    @media screen and (min-width: 40em) {
      .dh .hero__content-inner {
        display: block;
        -ms-flex: 1 0 100%;
            flex: 1 0 100%;
        width: 100%; } }
  @media screen and (max-width: 63.9375em) {
    .hero--banner .hero__content-inner {
      margin-top: 0;
      padding-left: 20px; } }
  @media screen and (min-width: 64em) {
    .hero--banner .hero__content-inner {
      padding-right: 60% !important; } }
  .hero__title {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    color: #fff;
    line-height: 1;
    margin-bottom: 16px;
    text-transform: uppercase; }
    .hero\--wide .hero__title, .hero\--clear .hero__title {
      font-size: 38px; }
    .hero\--narrow .hero__title {
      font-size: 36px; }
      @media screen and (min-width: 480px) {
        .hero\--narrow .hero__title {
          font-size: 48px; } }
      @media screen and (min-width: 40em) and (max-width: 63.9375em) {
        .hero\--narrow .hero__title {
          font-size: 44px;
          margin-bottom: 10px; } }
      @media screen and (min-width: 64em) and (max-width: 74.9375em) {
        .hero\--narrow .hero__title {
          font-size: 40px; } }
      @media screen and (min-width: 75em) {
        .hero\--narrow .hero__title {
          font-size: 54px; } }
    @media screen and (max-width: 39.9375em) {
      .dh .hero__title {
        font-size: 28px; } }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .dh .hero__title {
        font-size: 30px; } }
    @media screen and (min-width: 64em) {
      .dh .hero__title {
        font-size: 34px; } }
    @media screen and (max-width: 63.9375em) {
      .hero--banner .hero__title {
        margin-bottom: 0; } }
  .hero__hilite {
    color: #94d60a; }
  .hero__subheading {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    color: #fff;
    line-height: 1; }
    @media screen and (max-width: 74.9375em) {
      .hero__subheading {
        font-size: 18px; }
        .hero\--slider .hero__subheading {
          display: none; } }
    @media screen and (min-width: 75em) {
      .hero__subheading {
        font-size: 22px; } }
    .dh .hero__subheading {
      display: block;
      line-height: 1.6em; }
      @media screen and (max-width: 39.9375em) {
        .dh .hero__subheading {
          font-size: 16px; } }
      @media screen and (min-width: 40em) and (max-width: 63.9375em) {
        .dh .hero__subheading {
          font-size: 16px; } }
      @media screen and (min-width: 64em) {
        .dh .hero__subheading {
          font-size: 18px; } }
  .hero__service-line {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    color: #fff;
    line-height: 1;
    margin-bottom: 8px; }
    @media screen and (max-width: 74.9375em) {
      .hero__service-line {
        font-size: 18px; }
        .hero\--slider .hero__service-line {
          display: none; } }
    @media screen and (min-width: 75em) {
      .hero__service-line {
        font-size: 22px; } }
  .hero__description {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    color: #fff;
    font-size: 14px;
    line-height: 1.4;
    margin-bottom: 0; }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .hero__description {
        line-height: 1.2; } }
    .hero__description a:not(.btn):hover {
      text-decoration: underline; }
  .hero__button {
    margin-top: 16px; }
    .dh .hero__button {
      margin-top: 25px; }
      @media screen and (max-width: 749px) {
        .dh .hero__button .btn {
          display: block;
          font-size: 16px;
          line-height: 1.6em;
          padding: 13px 18px;
          width: 100%; } }
  .hero__navigation {
    max-width: 73.625rem;
    margin-right: auto;
    margin-left: auto;
    position: relative;
    text-align: center;
    z-index: 100; }
    .hero__navigation::after, .hero__navigation::before {
      content: '';
      display: table; }
    .hero__navigation::after {
      clear: both; }
    @media screen and (max-width: 749px) {
      .dh .hero__navigation {
        position: inherit !important; } }
  .hero__navigation-container {
    border: 1px solid #fff;
    border-radius: 20px;
    padding: 0 33px;
    position: absolute;
    text-align: center; }
    @media screen and (max-width: 39.9375em) {
      .hero__navigation-container {
        bottom: 25px;
        left: 50%;
        margin-left: -105px; } }
    @media print, screen and (min-width: 40em) {
      .hero__navigation-container {
        bottom: 25px;
        left: 10px; } }
    @media print, screen and (min-width: 64em) {
      .hero__navigation-container {
        bottom: 25px;
        left: 10px; } }
    @media screen and (min-width: 75em) {
      .hero__navigation-container {
        bottom: 30px; } }
    @media screen and (max-width: 749px) {
      .dh .hero__navigation-container {
        bottom: 25px;
        left: 50%;
        margin-left: -105px; } }
    @media screen and (max-width: 1024px) and (min-width: 750px) {
      .dh .hero__navigation-container {
        left: 20px; } }
  .hero__next, .hero__previous {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    padding: 1rem;
    color: #fff;
    cursor: pointer;
    padding: 0;
    top: 7px;
    transform: none; }
    [data-whatinput='mouse'] .hero__next, [data-whatinput='mouse'] .hero__previous {
      outline: 0; }
    .hero__next:hover, .hero__next:active, .hero__next:focus, .hero__previous:hover, .hero__previous:active, .hero__previous:focus {
      background-color: rgba(0, 0, 0, 0.5); }
    .hero__next:hover, .hero__previous:hover {
      background-color: transparent; }
  .hero__next {
    left: auto;
    right: 0;
    right: 13px;
    transform: scaleX(-1); }
  .hero__previous {
    left: 0;
    left: 13px; }
  .hero__arrow {
    height: 18px;
    width: 12px;
    color: #fff; }
    .hero__next:hover .hero__arrow,
    .hero__previous:hover .hero__arrow {
      color: #26a3dc; }
  .hero__dots {
    position: relative;
    margin-top: 0.8rem;
    margin-bottom: 0.8rem;
    text-align: center;
    line-height: 1;
    margin: 0;
    padding: 0; }
    [data-whatinput='mouse'] .hero__dots {
      outline: 0; }
    .hero__dots button {
      width: 1.2rem;
      height: 1.2rem;
      margin: 0.1rem;
      border-radius: 50%;
      background-color: #cacaca; }
      .hero__dots button:hover {
        background-color: #8a8a8a; }
      .hero__dots button.is-active {
        background-color: #8a8a8a; }
    .hero__dots button {
      background-color: #f98d29;
      cursor: pointer;
      height: 10px;
      margin: 11px 12px;
      width: 10px; }
      @media print, screen and (min-width: 40em) {
        .hero__dots button {
          margin-left: 4px;
          margin-right: 4px; } }
      .hero__dots button.is-active {
        background-color: #26a3dc;
        cursor: default;
        pointer-events: none; }
      .hero__dots button:hover {
        background-color: #26a3dc; }
    @media screen and (max-width: 749px) {
      .dh .hero__dots button {
        margin: 11px 12px; } }

.dh .hero--banner .hero__share + .hero__wrapper,
.dh .hero--clear .hero__share + .hero__wrapper {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0; }

@media screen and (max-width: 749px) {
  .hero--carousel .hero__container,
  .hero--carousel .hero__content,
  .hero--carousel .hero__slide,
  .hero--carousel .hero__bg-image-container,
  .hero--carousel .hero__bg-image {
    min-height: 500px !important; } }

@media screen and (max-width: 1024px) and (min-width: 750px) {
  .hero--carousel .hero__container,
  .hero--carousel .hero__content,
  .hero--carousel .hero__slide,
  .hero--carousel .hero__bg-image-container,
  .hero--carousel .hero__bg-image {
    min-height: 500px !important; } }

@media screen and (min-width: 1025px) {
  .hero--carousel .hero__container,
  .hero--carousel .hero__content,
  .hero--carousel .hero__slide,
  .hero--carousel .hero__bg-image-container,
  .hero--carousel .hero__bg-image {
    min-height: 600px !important; } }

@media screen and (min-width: 768px) {
  .hero--carousel--slider .hero--carousel .hero__container {
    height: 100% !important; } }

.hero--carousel .hero__slide {
  height: 100%;
  max-height: 640px; }

.hero--carousel .hero__bg-image-container {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0; }

.hero--carousel .hero__content {
  background: rgba(0, 103, 160, 0.825);
  bottom: 0;
  height: 100%;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%; }
  @media screen and (min-width: 768px) {
    .hero--carousel .hero__content {
      min-width: 460px;
      position: relative;
      width: 50%; } }
  @media screen and (min-width: 1024px) {
    .hero--carousel .hero__content {
      width: 33%; } }

.hero--carousel .hero__content-outer {
  padding-left: 15px;
  padding-right: 15px; }
  @media screen and (min-width: 768px) {
    .hero--carousel .hero__content-outer {
      padding: 32px 35px 64px; } }

.hero--carousel .hero__content-inner {
  max-width: 100%; }
  @media screen and (max-width: 39.9375em) {
    .hero--carousel .hero__content-inner {
      padding: 0 20px; } }
  @media screen and (max-width: 63.9375em) {
    .hero--carousel .hero__content-inner {
      margin-top: 0;
      padding-left: 20px;
      padding-right: 20px; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .hero--carousel .hero__content-inner {
      padding-top: 0; } }
  @media screen and (min-width: 768px) {
    .hero--carousel .hero__content-inner {
      padding-top: 18px; } }
  @media screen and (max-width: 1024px) and (min-width: 750px) {
    .hero--carousel .hero__content-inner {
      -ms-flex: none !important;
          flex: none !important;
      padding-right: 0 !important;
      width: 350px !important; } }
  @media screen and (min-width: 40em) {
    .hero--carousel .hero__content-inner {
      display: block;
      -ms-flex: 1 0 100%;
          flex: 1 0 100%;
      width: 100%; } }
  @media screen and (min-width: 64em) {
    .hero--carousel .hero__content-inner {
      padding-right: 0; } }

@media screen and (max-width: 39.9375em) {
  .hero--carousel .hero__title {
    font-size: 28px; } }

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .hero--carousel .hero__title {
    font-size: 30px; } }

@media screen and (min-width: 64em) {
  .hero--carousel .hero__title {
    font-size: 34px; } }

.hero--carousel .hero__subheading {
  display: block;
  line-height: 1.6em; }
  @media screen and (max-width: 39.9375em) {
    .hero--carousel .hero__subheading {
      font-size: 16px; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .hero--carousel .hero__subheading {
      font-size: 16px; } }
  @media screen and (min-width: 64em) {
    .hero--carousel .hero__subheading {
      font-size: 18px; } }

.hero--carousel .hero__navigation {
  height: 100px;
  margin-top: -100px;
  max-width: none;
  position: static;
  width: 100%; }
  @media screen and (min-width: 1024px) {
    .hero--carousel .hero__navigation .hero__navigation-container {
      left: 50px; } }

.hero-thumb {
  background-color: #0066a1;
  color: #fff;
  min-height: 250px;
  position: relative; }
  @media screen and (max-width: 39.9375em) {
    .hero-thumb--practice {
      padding: 50px 30px;
      text-align: center; } }
  @media screen and (max-width: 63.9375em) {
    .hero-thumb--provider {
      padding: 50px 30px;
      text-align: center; } }
  .hero-thumb--provider .hero-thumb__inner {
    max-width: 73.625rem;
    margin-right: auto;
    margin-left: auto; }
    .hero-thumb--provider .hero-thumb__inner::after, .hero-thumb--provider .hero-thumb__inner::before {
      content: '';
      display: table; }
    .hero-thumb--provider .hero-thumb__inner::after {
      clear: both; }
    @media screen and (min-width: 64em) {
      .hero-thumb--provider .hero-thumb__inner {
        display: -ms-flexbox;
        display: flex; } }

.hero-thumb__img {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover; }
  @media screen and (max-width: 39.9375em) {
    .hero-thumb--practice .hero-thumb__img {
      height: 250px;
      left: 0;
      position: absolute;
      right: 0;
      top: 0; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .hero-thumb--practice .hero-thumb__img {
      float: left;
      height: 250px;
      margin-left: 30px;
      margin-top: 50px;
      width: 250px; } }
  @media screen and (min-width: 64em) {
    .hero-thumb--practice .hero-thumb__img {
      bottom: 0;
      height: 100%;
      position: absolute;
      top: 0;
      width: 400px; } }
  @media screen and (max-width: 63.9375em) {
    .hero-thumb--provider .hero-thumb__img {
      height: 250px;
      margin: 0 auto;
      width: 250px; } }
  @media screen and (min-width: 64em) {
    .hero-thumb--provider .hero-thumb__img {
      -ms-flex: 0 0 260px;
          flex: 0 0 260px;
      height: 260px;
      margin-bottom: 50px;
      margin-top: 50px;
      width: 260px; } }

.hero-thumb__content {
  overflow: hidden; }
  @media screen and (max-width: 39.9375em) {
    .hero-thumb--practice .hero-thumb__content {
      margin-top: 250px; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .hero-thumb--practice .hero-thumb__content {
      margin-left: 275px;
      padding: 40px 30px; } }
  @media screen and (min-width: 64em) {
    .hero-thumb--practice .hero-thumb__content {
      margin-left: 400px;
      padding: 50px 30px; } }
  .hero-thumb--provider .hero-thumb__content {
    -ms-flex: 1 1 auto;
        flex: 1 1 auto;
    overflow: visible;
    position: relative; }
    @media screen and (max-width: 63.9375em) {
      .hero-thumb--provider .hero-thumb__content {
        margin-top: 2rem; } }
    @media screen and (min-width: 64em) {
      .hero-thumb--provider .hero-thumb__content {
        margin-left: 0;
        padding: 50px 30px; } }

.hero-thumb__heading {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  text-transform: uppercase; }
  @media screen and (max-width: 63.9375em) {
    .hero-thumb__heading {
      font-size: 26px;
      line-height: 1.2; } }
  @media screen and (min-width: 64em) {
    .hero-thumb__heading {
      font-size: 34px; } }
  .hero-thumb--provider .hero-thumb__heading {
    margin-bottom: -3px;
    position: relative;
    top: -10px; }
    @media screen and (min-width: 64em) {
      .hero-thumb--provider .hero-thumb__heading {
        width: calc(100% - 335px); } }
  .hero-thumb__heading.hero-thumb__heading--link a {
    color: #fff; }
    .hero-thumb__heading.hero-thumb__heading--link a::after {
      background-image: url("/MicrositeTemplates/assets/img/svg/icon-ext-link-white.svg");
      background-position: center;
      background-repeat: no-repeat;
      background-size: 14px 12px;
      color: transparent;
      content: '\0a00';
      display: inline;
      height: 12px;
      left: 3px;
      position: relative;
      top: -11px;
      vertical-align: baseline;
      width: 14px; }

.hero-thumb__subheading {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  display: inline-block;
  position: relative; }
  @media screen and (max-width: 63.9375em) {
    .hero-thumb__subheading {
      font-size: 14px;
      margin-bottom: 0;
      padding-left: 23px; } }
  @media screen and (min-width: 64em) {
    .hero-thumb__subheading {
      font-size: 20px;
      padding-left: 30px; } }
  .hero-thumb__subheading::before {
    background-image: url("/micrositetemplates/assets/img/svg/icon-doylestown.svg");
    background-repeat: no-repeat;
    background-size: 22px 28px;
    content: '';
    display: block;
    left: 0;
    position: absolute; }
    @media screen and (max-width: 63.9375em) {
      .hero-thumb__subheading::before {
        background-size: 20px 16px;
        height: 16px;
        top: 0;
        width: 20px; } }
    @media screen and (min-width: 64em) {
      .hero-thumb__subheading::before {
        background-size: 20px 16px;
        height: 16px;
        top: 7px;
        width: 20px; } }

@media screen and (max-width: 63.9375em) {
  .hero-thumb__subheading-tooltip {
    display: none; } }

@media screen and (min-width: 64em) {
  .hero-thumb__col-2 {
    display: -ms-flexbox;
    display: flex; } }

.hero-thumb__col-l,
.hero-thumb__col-r {
  -ms-flex: 0 1 50%;
      flex: 0 1 50%; }

.hero-thumb__col-l {
  padding-right: 2%; }

.hero-thumb__col-r {
  position: relative; }
  .hero-thumb__col-r.hero-thumb__col-r--sidebar {
    -ms-flex: 0 0 350px;
        flex: 0 0 350px; }
  @media screen and (max-width: 63.9375em) {
    .hero-thumb__col-r {
      margin-top: 1.5rem;
      padding-top: 1.5rem; }
      .hero-thumb__col-r::before {
        border-bottom: 1px solid #fff;
        content: '';
        display: block;
        height: 1px;
        position: absolute;
        top: 0;
        width: 70px; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .hero-thumb__col-r::before {
      left: 0; } }
  @media screen and (max-width: 39.9375em) {
    .hero-thumb--practice .hero-thumb__col-r::before {
      left: calc(50% - 35px); } }
  @media screen and (max-width: 63.9375em) {
    .hero-thumb--provider .hero-thumb__col-r::before {
      left: calc(50% - 35px); } }

.hero-thumb__col-l--with-rule {
  padding-top: 25px;
  position: relative; }
  .hero-thumb__col-l--with-rule::before {
    border-bottom: 3px solid #fff;
    content: '';
    display: block;
    height: 1px;
    left: 0;
    position: absolute;
    top: 0;
    width: 70px; }
  @media screen and (max-width: 63.9375em) {
    .hero-thumb__col-l--with-rule {
      margin-top: 1.5rem; } }
  @media screen and (max-width: 39.9375em) {
    .hero-thumb--practice .hero-thumb__col-l--with-rule::before {
      left: calc(50% - 35px); } }
  @media screen and (max-width: 63.9375em) {
    .hero-thumb--provider .hero-thumb__col-l--with-rule::before {
      left: calc(50% - 35px); } }

.hero-thumb__col-l-text {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400; }
  @media screen and (max-width: 63.9375em) {
    .hero-thumb__col-l-text {
      font-size: 20px;
      line-height: 1.4; } }
  @media screen and (min-width: 64em) {
    .hero-thumb__col-l-text {
      font-size: 26px; } }

.hero-thumb__col-l-subsection-heading {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 16px;
  margin-bottom: 2px;
  text-transform: uppercase; }
  @media screen and (max-width: 63.9375em) {
    .hero-thumb__col-l-subsection-heading {
      font-size: 12px; } }

.hero-thumb__col-l-subsection-text {
  color: #49f1ff;
  font-size: 16px; }
  .hero-thumb__col-l-subsection-text a {
    color: #49f1ff; }
    .hero-thumb__col-l-subsection-text a:hover {
      color: #49f1ff;
      text-decoration: underline; }
  .hero-thumb--practice .hero-thumb__col-l-subsection-text {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700; }
    @media screen and (max-width: 63.9375em) {
      .hero-thumb--practice .hero-thumb__col-l-subsection-text {
        font-size: 14px; } }
  .hero-thumb--provider .hero-thumb__col-l-subsection-text {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600; }

.hero-thumb__col-r-heading {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 16px;
  color: #fff;
  text-transform: uppercase; }
  @media screen and (max-width: 63.9375em) {
    .hero-thumb__col-r-heading {
      font-size: 12px; } }

.hero-thumb__col-r-list {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  list-style: none;
  margin-left: 0; }
  @media screen and (max-width: 63.9375em) {
    .hero-thumb__col-r-list {
      font-size: 18px;
      margin-bottom: .5rem; } }
  @media screen and (min-width: 64em) {
    .hero-thumb__col-r-list {
      font-size: 22px; } }

@media screen and (max-width: 63.9375em) {
  .hero-thumb__btn {
    margin-top: 15px; } }

@media screen and (min-width: 64em) {
  .hero-thumb__btn {
    margin-top: 1rem; } }

@media screen and (max-width: 63.9375em) {
  .hero-thumb__sidebar {
    color: #fff; } }

@media screen and (min-width: 64em) {
  .hero-thumb__sidebar {
    background-color: #fff;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
    color: #000;
    position: absolute;
    right: 0;
    top: 50px;
    width: 350px; } }

@media screen and (min-width: 64em) {
  .hero-thumb__sidebar-inner {
    padding: 20px; } }

.hero-thumb__sidebar-list {
  list-style: none;
  margin: 0; }

.hero-thumb__sidebar-list-item {
  position: relative; }
  .hero-thumb__sidebar-list-item + .hero-thumb__sidebar-list-item {
    margin-top: 1.5rem;
    padding-top: 1.5rem; }
    .hero-thumb__sidebar-list-item + .hero-thumb__sidebar-list-item::before {
      border-bottom: 1px solid #fff;
      content: '';
      display: block;
      height: 1px;
      left: calc(50% - 35px);
      position: absolute;
      top: 0;
      width: 70px; }

.hero-thumb__sidebar-list-item-subheading,
.hero-thumb__sidebar-list-item-address,
.hero-thumb__sidebar-list-item-link,
.hero-thumb__sidebar-list-item-text {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 16px; }

.hero-thumb__sidebar-list-item-heading {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  font-size: 22px; }
  @media screen and (max-width: 63.9375em) {
    .hero-thumb__sidebar-list-item-heading {
      color: #fff; } }
  @media screen and (min-width: 64em) {
    .hero-thumb__sidebar-list-item-heading {
      color: #0066a1; } }

.hero-thumb__sidebar-list-item-subheading {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  margin-top: 1.75rem;
  text-transform: uppercase; }
  @media screen and (max-width: 63.9375em) {
    .hero-thumb__sidebar-list-item-subheading {
      color: #fff;
      font-size: 14px; } }
  @media screen and (min-width: 64em) {
    .hero-thumb__sidebar-list-item-subheading {
      color: #000; } }

@media screen and (max-width: 63.9375em) {
  .hero-thumb__sidebar-list-item-link {
    color: #49f1ff; }
    .hero-thumb__sidebar-list-item-link::after {
      background: url("/micrositetemplates/assets/img/svg/icon-chevron-cyan-e.svg") center no-repeat;
      background-size: 5px 8px;
      bottom: 1px;
      color: transparent;
      content: '\0a00';
      display: inline;
      font-family: Arial, sans-serif;
      font-size: 12px;
      height: 8px;
      left: 1px;
      margin-left: 5px;
      position: relative;
      transition: left .3s ease;
      vertical-align: baseline;
      width: 5px; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .hero-thumb__sidebar-list-item-link:hover::after, .hero-thumb__sidebar-list-item-link:focus::after {
      left: 5px; } }

@media screen and (max-width: 63.9375em) {
    .hero-thumb__sidebar-list-item-link:hover {
      color: #49f1ff; } }

@media screen and (min-width: 64em) {
  .hero-thumb__sidebar-list-item-link {
    color: #0066a1; }
    .hero-thumb__sidebar-list-item-link::after {
      background: url("/micrositetemplates/assets/img/svg/icon-chevron-blue-e.svg") center no-repeat;
      background-size: 5px 8px;
      bottom: 1px;
      color: transparent;
      content: '\0a00';
      display: inline;
      font-family: Arial, sans-serif;
      font-size: 12px;
      height: 8px;
      left: 1px;
      margin-left: 5px;
      position: relative;
      transition: left .3s ease;
      vertical-align: baseline;
      width: 5px; } }
  @media screen and (min-width: 64em) and (min-width: 64em) {
    .hero-thumb__sidebar-list-item-link:hover::after, .hero-thumb__sidebar-list-item-link:focus::after {
      left: 5px; } }

.hero-thumb__sidebar-list-item-text {
  margin-bottom: .2em; }
  .hero-thumb__sidebar-list-item-text:first-of-type {
    margin-top: 1rem; }
  .hero-thumb__sidebar-list-item-text span {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700; }

.hero-thumb__sidebar-list-item-phone-cta {
  margin-top: 15px; }
  @media screen and (max-width: 63.9375em) {
    .hero-thumb__sidebar-list-item-phone-cta.hero-thumb__sidebar-list-item-phone-cta--desktop {
      display: none; } }
  @media screen and (min-width: 64em) {
    .hero-thumb__sidebar-list-item-phone-cta.hero-thumb__sidebar-list-item-phone-cta--desktop {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 700;
      background-image: url("/MicrositeTemplates/assets/img/svg/icon-phone-orange.svg");
      background-position: left center;
      background-repeat: no-repeat;
      background-size: 18px 18px;
      border-bottom: 4px solid #e0e0e0;
      border-top: 2px solid #e0e0e0;
      color: #f98d29;
      font-size: 22px;
      padding: 10px 0 10px 30px; } }
  @media screen and (min-width: 64em) {
    .hero-thumb__sidebar-list-item-phone-cta.hero-thumb__sidebar-list-item-phone-cta--mobile {
      display: none; } }

@font-face {
  font-family: 'icomoon';
  src: url("../webfonts/icomoon/icomoon.eot?5wqc2a");
  src: url("../webfonts/icomoon/icomoon.eot?5wqc2a#iefix") format("embedded-opentype"), url("../webfonts/icomoon/icomoon.ttf?5wqc2a") format("truetype"), url("../webfonts/icomoon/icomoon.woff?5wqc2a") format("woff"), url("../webfonts/icomoon/icomoon.svg?5wqc2a#icomoon") format("svg");
  font-weight: normal;
  font-style: normal; }

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }
  [class^="icon-"]:before, [class^="icon-"]:after, [class*=" icon-"]:before, [class*=" icon-"]:after {
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1; }

.icon-close:before {
  content: ""; }

.icon-search:before {
  content: ""; }

.icon-twitter:before {
  content: ""; }

.icon-facebook:before {
  content: ""; }

.icon-google-plus:before {
  content: ""; }

.icon-angle-left:before {
  content: ""; }

.icon-angle-right:before {
  content: ""; }

.icon-youtube:before {
  content: ""; }

.icon-pinterest:before {
  content: ""; }

.icon-calendar:before {
  content: ""; }

.icon-gift:before {
  content: ""; }

.icon-medical-folder:before {
  content: ""; }

.icon-stethoscope:before {
  content: ""; }

.flexlist {
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 1rem; }
  @media screen and (min-width: 64em) {
    .flexlist {
      padding-left: 0;
      padding-right: 0; } }
  .flexlist h3 a,
  .flexlist p a {
    color: #0066a1;
    font-size: 16px;
    text-decoration: underline; }
    .flexlist h3 a:hover,
    .flexlist p a:hover {
      color: #26a3dc; }
  .flexlist .rtf, .flexlist .flexlist__excerpt {
    margin-bottom: 30px; }
  .flexlist__wrap {
    list-style-type: none;
    margin-left: 0; }
  .flexlist__item {
    background: whitesmoke;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
        justify-content: flex-end;
    margin-bottom: 2rem;
    padding: 45px 35px; }
    @media screen and (max-width: 669.9px) {
      .flexlist__item {
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-pack: start;
            justify-content: flex-start;
        margin-left: auto;
        margin-right: auto;
        max-width: 320px;
        text-align: center; } }
    .flexlist--news .flexlist__item {
      margin-bottom: 0;
      padding: 24px 28px; }
      @media screen and (max-width: 39.9375em) {
        .flexlist--news .flexlist__item {
          margin-bottom: 1rem;
          max-width: 100%;
          padding: 16px 0; } }
      .flexlist--news .flexlist__item:nth-child(2n) {
        background: none;
        border-left: 1px solid #e6e7e8;
        border-right: 1px solid #e6e7e8; }
        @media screen and (max-width: 39.9375em) {
          .flexlist--news .flexlist__item:nth-child(2n) {
            background: whitesmoke;
            border-left: 0;
            border-right: 0; } }
      .flexlist--news .flexlist__item:last-child {
        border-bottom: 1px solid #e6e7e8; }
      .flexlist--news .flexlist__item .flexlist__type,
      .flexlist--news .flexlist__item .flexlist__date {
        color: #000;
        display: inline-block;
        font-weight: bold;
        text-transform: uppercase;
        width: auto; }
      .flexlist--news .flexlist__item .flexlist__type {
        padding-right: 5px; }
      .flexlist--news .flexlist__item .flexlist__date {
        padding-left: 5px; }
      .flexlist--news .flexlist__item .flexlist__excerpt {
        margin-bottom: 1rem; }
        .dh .flexlist--news .flexlist__item .flexlist__excerpt {
          margin-bottom: .5rem; }
      .flexlist--news .flexlist__item .flexlist__tag {
        color: #0066a1; }
        .flexlist--news .flexlist__item .flexlist__tag::after {
          color: #000;
          content: ',';
          margin-right: 3px; }
        .flexlist--news .flexlist__item .flexlist__tag:last-child::after {
          content: ''; }
        .flexlist--news .flexlist__item .flexlist__tag:hover {
          color: #26a3dc; }
    .flexlist--news-feature .flexlist__item:last-child {
      border-bottom: 0; }
  @media screen and (min-width: 670px) {
    .flexlist__thumbnail + .flexlist__content {
      width: calc(100% - 219px); } }
  .flexlist__content {
    -ms-flex: 1 1 auto;
    max-width: 100%;
    position: relative;
    width: 100%; }
    @media screen and (max-width: 39.9375em) {
      .flexlist--news .flexlist__content {
        padding: 1rem 1rem 0; } }
  .flexlist__thumbnail {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    float: left;
    margin-right: 1.5rem;
    max-width: 195px; }
    @media screen and (max-width: 669.9px) {
      .flexlist__thumbnail {
        display: block;
        float: none;
        margin-bottom: 1rem;
        margin-right: 0;
        max-width: none; } }
    .flexlist__thumbnail img {
      height: auto;
      width: 100%; }
    @media screen and (max-width: 39.9375em) {
      .flexlist--news .flexlist__thumbnail {
        margin-left: auto;
        margin-right: auto;
        max-width: 150px; } }
    @media screen and (min-width: 40em) {
      .flexlist--news .flexlist__thumbnail {
        height: 160px;
        width: 160px; } }
  .flexlist__title {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    color: #0066a1;
    font-size: 1.375rem;
    line-height: 1.75rem;
    margin-bottom: 1rem; }
    .flexlist__title a {
      color: #0066a1; }
      .flexlist__title a:hover {
        text-decoration: underline; }
    .flexlist__title:last-child {
      margin-bottom: 0; }
    .flexlist--news .flexlist__title {
      margin-bottom: .5rem; }
  .flexlist__registration, .flexlist__registration--open, .flexlist__registration--closed {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: .875rem;
    line-height: 1.375rem;
    margin-bottom: 0; }
    .flexlist__registration--open::before, .flexlist__registration--closed::before {
      border-radius: 100%;
      box-sizing: border-box;
      color: #fff;
      display: inline-block;
      font-size: .65rem;
      height: 14px;
      line-height: 1;
      margin-right: 10px;
      margin-top: 1rem;
      padding-top: 3px;
      text-align: center;
      width: 14px; }
    .flexlist__registration--open {
      color: #627d34; }
      .flexlist__registration--open::before {
        background: #627d34;
        content: '\2713'; }
    .flexlist__registration--closed {
      color: #d94b3d; }
      .flexlist__registration--closed::before {
        background: #d94b3d;
        content: "";
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        speak: none;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        font-size: .35rem; }
  .flexlist__address, .flexlist__address--short {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    color: #000;
    font-size: .875rem;
    line-height: 1.375rem;
    margin-bottom: 1rem; }
    .flexlist__address--short {
      margin-top: -1rem; }
      @media screen and (min-width: 768px) {
        .flexlist__address--short {
          width: calc(100% - 130px); } }
  .flexlist__date {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    color: #634a76;
    display: block;
    font-size: .938rem;
    line-height: 1.375rem;
    margin-bottom: 1rem;
    text-transform: uppercase; }
    @media screen and (min-width: 768px) {
      .flexlist__date {
        width: calc(100% - 130px); } }
    .flexlist--news .flexlist__date {
      margin-bottom: .5rem; }
  .flexlist__item .flexlist__excerpt {
    margin-bottom: 0; }
  .flexlist__excerpt p:last-of-type {
    margin-bottom: 0; }
  .flexlist__register-link {
    font-size: .875rem;
    margin-top: 1rem; }
    .flexlist__register-link a {
      color: #26a3dc;
      display: inline-block;
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 600; }
      .flexlist__register-link a:hover {
        text-decoration: underline; }
      .flexlist__register-link a::before {
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        speak: none;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        background: #26a3dc;
        border-radius: 100%;
        color: #fff;
        content: "";
        display: inline-block;
        font-weight: 70;
        height: 24px;
        margin-right: 12px;
        padding-top: 4px;
        text-align: center;
        width: 24px; }

.location-box {
  border: 1px solid #d2d2d2;
  margin-bottom: 2rem;
  position: relative; }

@media screen and (max-width: 39.9375em) {
  .location-box__inner {
    padding: 12px;
    text-align: center; } }

@media screen and (min-width: 40em) {
  .location-box__inner {
    padding: 20px;
    padding-right: 43%; } }

.location-box__title {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  color: #1466a1; }
  @media screen and (max-width: 39.9375em) {
    .location-box__title {
      font-size: 20px; } }
  @media screen and (min-width: 40em) {
    .location-box__title {
      font-size: 26px; } }

.location-box__date {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  text-transform: uppercase; }
  @media screen and (max-width: 39.9375em) {
    .location-box__date {
      font-size: 14px;
      margin-bottom: 10px; }
      .location-box__date span {
        display: block; }
        .location-box__date span.location-box__date-pipe {
          display: none; } }
  @media screen and (min-width: 40em) {
    .location-box__date {
      font-size: 16px; } }
  @media screen and (max-width: 39.9375em) {
    .location-box__date span {
      display: block; } }

.location-box__location-name {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  color: #000; }
  @media screen and (max-width: 39.9375em) {
    .location-box__location-name {
      font-size: 14px;
      margin-bottom: 5px; } }
  @media screen and (min-width: 40em) {
    .location-box__location-name {
      font-size: 18px; } }

.location-box__location-address {
  font-style: normal; }
  .location-box__location-address.location-box__location-address--mobile a {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    color: #0066a1; }
  @media screen and (min-width: 64em) {
    .location-box__location-address.location-box__location-address--mobile {
      display: none; } }
  @media screen and (max-width: 63.9375em) {
    .location-box__location-address.location-box__location-address--desktop {
      display: none; } }
  @media screen and (max-width: 39.9375em) {
    .location-box__location-address {
      font-size: 12px; } }
  @media screen and (min-width: 40em) {
    .location-box__location-address {
      font-size: 16px; } }

.location-box__map {
  background-color: #d2d2d2; }
  @media screen and (max-width: 39.9375em) {
    .location-box__map {
      height: 150px;
      width: 100%; } }
  @media screen and (min-width: 40em) {
    .location-box__map {
      bottom: 0;
      height: 100%;
      position: absolute;
      right: 0;
      top: 0;
      width: 40%; } }

.location-list .rtf, .location-list .flexlist__excerpt {
  clear: both;
  margin-bottom: 0; }
  @media screen and (max-width: 63.9375em) {
    .location-list .rtf, .location-list .flexlist__excerpt {
      font-size: 12px; } }
  @media screen and (min-width: 64em) {
    .location-list .rtf, .location-list .flexlist__excerpt {
      font-size: 16px; } }

.location-list__item {
  padding: 4rem 0; }
  .location-list__item:nth-child(odd) {
    background-color: #eee; }
    .location-list__item:nth-child(odd) .location-list__item-inner {
      position: relative; }
      .location-list__item:nth-child(odd) .location-list__item-inner::before {
        border-top: 10px solid #0066a1;
        content: '';
        display: block;
        height: 1px;
        left: 30px;
        position: absolute;
        top: -4rem;
        width: 60px; }

.location-list__item-inner {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto;
  padding-left: 30px;
  padding-right: 30px; }
  .location-list__item-inner::after, .location-list__item-inner::before {
    content: '';
    display: table; }
  .location-list__item-inner::after {
    clear: both; }

@media screen and (max-width: 63.9375em) {
  .location-list__content {
    margin-left: 0; } }

.location-list__item-heading {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  color: #000;
  font-size: 34px;
  margin-bottom: 0;
  position: relative;
  text-transform: uppercase;
  top: -10px; }
  @media screen and (max-width: 63.9375em) {
    .location-list__item-heading.location-list__item-heading--desktop {
      display: none; } }
  .location-list__item-heading.location-list__item-heading--mobile {
    margin-bottom: .5rem;
    margin-left: 0;
    font-size: 18px; }
    @media screen and (min-width: 64em) {
      .location-list__item-heading.location-list__item-heading--mobile {
        display: none; } }

.location-list__phone-cta.location-list__phone-cta--desktop {
  background-color: #fff;
  float: right;
  margin-bottom: 1rem;
  margin-left: 1rem;
  padding: 13px;
  position: relative;
  text-align: center; }
  .location-list__phone-cta.location-list__phone-cta--desktop::before {
    border-top: 4px solid #e0e0e0;
    content: '';
    display: block;
    height: 1px;
    left: 1rem;
    position: absolute;
    right: 1rem;
    top: 22px; }
  @media screen and (max-width: 39.9375em) {
    .location-list__phone-cta.location-list__phone-cta--desktop {
      display: none; } }

.location-list__phone-cta.location-list__phone-cta--mobile {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 16px;
  margin-top: 2rem; }
  @media screen and (min-width: 40em) {
    .location-list__phone-cta.location-list__phone-cta--mobile {
      display: none; } }

.location-list__phone-cta-heading {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  background-color: #fff;
  display: inline-block;
  font-size: 20px;
  height: 25px;
  line-height: 1.2;
  margin: 0 auto;
  padding: 2px 7px;
  position: relative;
  text-align: center;
  top: -3px;
  z-index: 1; }

.location-list__phone-cta-number {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  color: #f98d29;
  font-size: 32px;
  line-height: 1.2;
  margin: 0;
  padding-bottom: 8px;
  position: relative;
  top: -5px; }
  .location-list__phone-cta-number::after {
    border-top: 2px solid #e0e0e0;
    bottom: 0;
    content: '';
    display: block;
    left: 0;
    height: 1px;
    position: absolute;
    right: 0;
    width: 100%; }

.location-list__item-subheading {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  margin: -5px 0 6px; }
  @media screen and (max-width: 63.9375em) {
    .location-list__item-subheading {
      font-size: 16px; } }
  @media screen and (min-width: 64em) {
    .location-list__item-subheading {
      font-size: 20px; } }

.location-list__address {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.3; }
  @media screen and (max-width: 63.9375em) {
    .location-list__address {
      font-size: 16px; } }
  @media screen and (min-width: 64em) {
    .location-list__address {
      font-size: 20px; } }

.location-list__text-link {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  color: #0066a1;
  display: inline-block;
  margin-top: .5rem;
  margin-bottom: .7rem; }
  .location-list__text-link::after {
    background: url("/micrositetemplates/assets/img/svg/icon-chevron-blue-e.svg") center no-repeat;
    background-size: 5px 8px;
    bottom: 1px;
    color: transparent;
    content: '\0a00';
    display: inline;
    font-family: Arial, sans-serif;
    font-size: 12px;
    height: 8px;
    left: 1px;
    margin-left: 5px;
    position: relative;
    transition: left .3s ease;
    vertical-align: baseline;
    width: 5px; }
  @media screen and (min-width: 64em) {
    .location-list__text-link:hover::after, .location-list__text-link:focus::after {
      left: 5px; } }
  @media screen and (max-width: 63.9375em) {
    .location-list__text-link {
      font-size: 14px; } }
  @media screen and (min-width: 64em) {
    .location-list__text-link {
      font-size: 16px; } }

.location-list__category-text {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  margin-bottom: 7px; }
  .location-list__category-text span {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700; }
  @media screen and (max-width: 63.9375em) {
    .location-list__category-text {
      font-size: 12px; } }
  @media screen and (min-width: 64em) {
    .location-list__category-text {
      font-size: 16px; } }
  @media screen and (max-width: 63.9375em) {
    .location-list__category-text.locations-list__category-text--desktop {
      display: none; } }
  @media screen and (min-width: 64em) {
    .location-list__category-text.locations-list__category-text--mobile {
      display: none; } }
  .location-list__category-text.locations-list__category-text--mobile a {
    color: #0066a1; }

.locations-list__category-text--inline {
  display: inline-block;
  margin-right: 1rem; }

.location-list__additional-text-heading {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  color: #000;
  clear: both;
  font-size: 16px;
  margin-top: 2rem;
  text-transform: uppercase; }
  @media screen and (max-width: 63.9375em) {
    .location-list__additional-text-heading {
      font-size: 12px; } }
  @media screen and (min-width: 64em) {
    .location-list__additional-text-heading {
      font-size: 16px; } }

.location-list__physicians-list {
  list-style: none;
  margin-bottom: 0;
  margin-left: 0; }
  .location-list__physicians-list li {
    display: block;
    -ms-flex: 0 1 31%;
        flex: 0 1 31%;
    margin-top: .5em;
    padding-right: 2%; }
    .location-list__physicians-list li a {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 600;
      color: #0066a1; }
      .location-list__physicians-list li a:hover {
        color: #26a3dc; }
  @media screen and (max-width: 63.9375em) {
    .location-list__physicians-list li a {
      font-size: 14px; } }
  @media screen and (min-width: 64em) {
    .location-list__physicians-list {
      column-count: 3; }
      .location-list__physicians-list li {
        display: inline-block;
        line-height: 1.3em;
        margin-top: .75em;
        width: 100%; }
        .location-list__physicians-list li a {
          font-size: 18px; } }

.news__title {
  color: #0066a1;
  font-size: 34px;
  margin-bottom: 12px;
  text-transform: none; }

.news__categories {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 500;
  margin-bottom: 24px; }
  .news__categories a {
    color: #0066a1;
    margin-left: 8px; }

.news__data {
  font-weight: bold;
  margin-bottom: 20px;
  text-transform: uppercase; }

.news__date {
  margin-left: 5px; }

.news__type {
  margin-right: 5px; }

.news__boilerplate {
  margin-top: 40px; }

@media screen and (max-width: 63.9375em) {
  .flexlist--news + .pagination {
    text-align: center; } }

.doctor-results .pagination,
.fad-search-results .pagination {
  text-align: center; }

.search-results .pagination {
  margin-top: 2rem; }

.pagination__wrap {
  display: inline-block;
  margin-left: 0;
  text-align: center; }
  @media screen and (min-width: 768px) {
    .pagination__wrap {
      text-align: left; } }

.pagination li {
  display: inline-block; }

.pagination__item, .pagination__item--first, .pagination__item--last, .pagination__item--next, .pagination__item--prev, .pagination__item--active {
  display: inline-block;
  margin: 0; }
  .pagination__item a, .pagination__item--first a, .pagination__item--last a, .pagination__item--next a, .pagination__item--prev a, .pagination__item--active a {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    border-radius: 100%;
    color: #1466a1;
    font-size: 1rem;
    height: 35px;
    padding-top: 4px;
    text-align: center;
    width: 35px; }
    @media screen and (min-width: 768px) {
      .pagination__item a, .pagination__item--first a, .pagination__item--last a, .pagination__item--next a, .pagination__item--prev a, .pagination__item--active a {
        height: 40px;
        padding-top: 8px;
        width: 40px; } }
    @media screen and (min-width: 64em) {
      .pagination__item a:hover, .pagination__item--first a:hover, .pagination__item--last a:hover, .pagination__item--next a:hover, .pagination__item--prev a:hover, .pagination__item--active a:hover, .pagination__item a:focus, .pagination__item--first a:focus, .pagination__item--last a:focus, .pagination__item--next a:focus, .pagination__item--prev a:focus, .pagination__item--active a:focus {
        background: transparent; } }
  .pagination__item--first {
    margin-left: 0; }
    .pagination__item--first a::before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      speak: none;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      content: "";
      font-weight: 700; }
  .pagination__item--last {
    margin-right: 0; }
    .pagination__item--last a::before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      speak: none;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      content: "";
      font-weight: 700; }
  .pagination__item--next a::before {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "";
    font-weight: 700; }
  .pagination__item--prev a::before {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "";
    font-weight: 700; }
  .pagination__item--active a {
    background: #1466a1;
    color: #fff;
    transition: background .4s ease-out; }
    .pagination__item--active a:hover, .pagination__item--active a:focus {
      background: #0e92a2;
      color: #fff;
      transition: background .24s ease-out; }

.pagination__hud {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  color: #5a5555;
  font-size: .875rem;
  line-height: 1.375em;
  margin-bottom: 22px; }
  .pagination__hud span {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    color: #010101; }

.st-ui-container-footer_bar {
  margin-bottom: 2rem;
  margin-top: 2rem; }

.st-search-pagination .st-query-present .st-ui-pagination-link {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  border-radius: 100%;
  color: #1466a1;
  display: inline-block;
  font-size: 1rem;
  padding-left: 10px;
  padding-right: 10px;
  text-align: center;
  text-transform: uppercase; }
  @media screen and (max-width: 63.9375em) {
    .st-search-pagination .st-query-present .st-ui-pagination-link {
      height: 30px;
      min-width: 30px;
      padding-top: 3px; } }
  @media screen and (min-width: 64em) {
    .st-search-pagination .st-query-present .st-ui-pagination-link {
      height: 40px;
      min-width: 40px;
      padding-top: 8px; }
      .st-search-pagination .st-query-present .st-ui-pagination-link:hover, .st-search-pagination .st-query-present .st-ui-pagination-link:focus {
        background-color: transparent;
        color: #26a3dc; } }
  .st-search-pagination .st-query-present .st-ui-pagination-link.active {
    background-color: #1466a1;
    color: #fff;
    transition: background .4s ease-out; }
    @media screen and (min-width: 64em) {
      .st-search-pagination .st-query-present .st-ui-pagination-link.active:hover, .st-search-pagination .st-query-present .st-ui-pagination-link.active:focus {
        background: #0e92a2;
        color: #fff;
        transition: background .24s ease-out; } }

.st-search-pagination .st-query-present .st-ui-arrow {
  display: none; }

.primary-navigation {
  position: relative; }
  @media screen and (max-width: 63.9375em) {
    .primary-navigation {
      background-color: #fff; } }
  @media print, screen and (min-width: 64em) {
    .primary-navigation {
      border-top: 2px solid #e6e7e8; } }
  @media screen and (max-width: 63.9375em) {
    .primary-navigation__wrapper {
      animation: fadeIn 1s ease-in;
      animation-duration: 0.5s;
      animation-fill-mode: both;
      padding-bottom: 22px;
      width: 100%; } }
  @media screen and (max-width: 63.9375em) {
    .primary-navigation__wrapper {
      padding-bottom: 0; } }
  @media print, screen and (min-width: 64em) {
    .primary-navigation__wrapper {
      max-width: 73.625rem;
      margin-right: auto;
      margin-left: auto;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; } }
  .primary-navigation__list {
    list-style-type: none;
    margin-bottom: 0;
    margin-left: 0;
    padding-left: 0;
    background-color: #fff; }
    @media print, screen and (min-width: 64em) {
      .primary-navigation__list {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -ms-flex-pack: justify;
            justify-content: space-between;
        margin: 0 auto;
        width: 98%; } }
    @media screen and (min-width: 40em) {
      .dh .primary-navigation__list {
        -ms-flex-pack: distribute;
            justify-content: space-around; } }
  @media screen and (max-width: 63.9375em) {
    .primary-navigation__item {
      border-top: 2px solid #e6e7e8; } }
  @media print, screen and (min-width: 64em) {
    .primary-navigation__item {
      text-align: center; } }
  @media screen and (max-width: 63.9375em) {
    .primary-navigation__item--has-button {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: center;
          justify-content: center; } }
  @media print, screen and (min-width: 64em) {
    .primary-navigation__item--has-button {
      display: none; } }
  .primary-navigation__item--fad .primary-navigation__l2 {
    background-color: #eee;
    padding: 0; }
  .primary-navigation__item--fad .primary-navigation__l2-contain {
    max-width: initial;
    padding: 0; }
  .primary-navigation__item--flyout .primary-navigation__l2 {
    display: none; }
  .primary-navigation__item--flyout.is-open .primary-navigation__l2 {
    display: block; }
  @media screen and (max-width: 63.9375em) {
    .primary-navigation__item--flyout.is-collapsed .primary-navigation__l2 {
      display: none !important; }
    .primary-navigation__item--flyout.is-collapsed .primary-navigation__link::after {
      background: url("/micrositetemplates/assets/img/svg/icon-chevron-blue-s.svg") center no-repeat;
      background-size: 10px 6px;
      bottom: 1px;
      color: transparent;
      content: '\0a00';
      display: inline;
      font-family: Arial, sans-serif;
      font-size: 12px;
      height: 6px;
      left: 1px;
      margin-left: 5px;
      position: relative;
      transition: left .3s ease;
      vertical-align: baseline;
      width: 10px; } }

@media screen and (max-width: 63.9375em) and (min-width: 64em) {
  .primary-navigation__item--flyout.is-collapsed .primary-navigation__link:hover::after, .primary-navigation__item--flyout.is-collapsed .primary-navigation__link:focus::after {
    left: 5px; } }
  @media screen and (max-width: 63.9375em) {
    .primary-navigation__item--flyout.is-expanded .primary-navigation__l2 {
      display: block !important; }
    .primary-navigation__item--flyout.is-expanded .primary-navigation__link::after {
      background: url("/micrositetemplates/assets/img/svg/icon-chevron-blue-n.svg") center no-repeat;
      background-size: 10px 6px;
      bottom: 1px;
      color: transparent;
      content: '\0a00';
      display: inline;
      font-family: Arial, sans-serif;
      font-size: 12px;
      height: 6px;
      left: 1px;
      margin-left: 5px;
      position: relative;
      transition: left .3s ease;
      vertical-align: baseline;
      width: 10px; } }

@media screen and (max-width: 63.9375em) and (min-width: 64em) {
  .primary-navigation__item--flyout.is-expanded .primary-navigation__link:hover::after, .primary-navigation__item--flyout.is-expanded .primary-navigation__link:focus::after {
    left: 5px; } }
  @media screen and (max-width: 63.9375em) {
    .primary-navigation__item--flyout.is-collapsed .primary-navigation__link, .primary-navigation__item--flyout.is-expanded .primary-navigation__link {
      position: relative; }
      .primary-navigation__item--flyout.is-collapsed .primary-navigation__link::after, .primary-navigation__item--flyout.is-expanded .primary-navigation__link::after {
        left: initial;
        position: absolute;
        right: 20px;
        top: 17px; }
      .primary-navigation__item--flyout.is-collapsed .primary-navigation__link:hover::after, .primary-navigation__item--flyout.is-expanded .primary-navigation__link:hover::after {
        left: initial; } }
  @media screen and (min-width: 64em) {
    .primary-navigation__item--flyout:hover .primary-navigation__l2 {
      display: block; } }
  .primary-navigation__link {
    display: inline-block; }
    .primary-navigation__link, .primary-navigation__link:hover {
      color: #0066a1; }
    @media screen and (max-width: 63.9375em) {
      .dh .primary-navigation__link {
        font-size: 16px;
        width: 100%; } }
    @media screen and (min-width: 64em) {
      .dh .primary-navigation__link:hover {
        color: #26a3dc; } }
    @media screen and (max-width: 63.9375em) {
      .primary-navigation__link {
        font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
        font-style: normal;
        font-weight: 600;
        font-size: 20px;
        padding: 7px 20px; } }
    @media print, screen and (min-width: 64em) {
      .primary-navigation__link {
        font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
        font-style: normal;
        font-weight: 700;
        border-bottom: 4px solid #fff;
        font-size: 18px;
        padding: 12px 5px; }
        .heart-vascular .primary-navigation__link {
          font-size: 20px; }
        .primary-navigation__link:hover, .primary-navigation__link:focus {
          border-bottom-color: #f98d29; }
          .foundation .primary-navigation__link:hover, .foundation .primary-navigation__link:focus {
            border-bottom-color: #26a3dc; }
        .primary-navigation__link.is-active {
          border-bottom-color: #f98d29;
          cursor: default; }
          .foundation .primary-navigation__link.is-active {
            border-bottom-color: #b89d78; } }
    .primary-navigation__link--button {
      background-color: #f98d29;
      color: #fff;
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 700;
      font-size: 16px;
      margin: 20px 20px 0;
      text-align: center;
      text-transform: uppercase; }
      .primary-navigation__link--button:hover, .primary-navigation__link--button:focus {
        background-color: #26a3dc;
        color: #fff; }
      @media screen and (max-width: 39.9375em) {
        .primary-navigation__link--button {
          display: block;
          width: 100%; } }
      @media print, screen and (min-width: 64em) {
        .primary-navigation__link--button {
          display: none; } }

.primary-navigation__l2 {
  background-color: #fff; }
  @media screen and (max-width: 63.9375em) {
    .primary-navigation__l2 {
      box-shadow: inset 0 13px 20px -8px rgba(0, 0, 0, 0.3);
      padding-top: 7px; } }
  @media screen and (min-width: 64em) {
    .primary-navigation__l2 {
      border-top: 2px solid #e6e7e8;
      box-shadow: 0 15px 28px 0 rgba(0, 0, 0, 0.25);
      left: 0;
      min-height: 100px;
      padding: 2rem 1.5rem;
      position: absolute;
      right: 0;
      text-align: left;
      top: 56px;
      width: 100%;
      z-index: 200; } }

.primary-navigation__l2-contain {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto; }
  .primary-navigation__l2-contain::after, .primary-navigation__l2-contain::before {
    content: '';
    display: table; }
  .primary-navigation__l2-contain::after {
    clear: both; }

.primary-navigation__l2-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
      justify-content: flex-start; }

@media screen and (max-width: 63.9375em) {
  .primary-navigation__l2-col-l {
    display: none; } }

@media screen and (min-width: 64em) {
  .primary-navigation__l2-col-l {
    -ms-flex: 0 1 27%;
        flex: 0 1 27%;
    margin-right: 6%; }
    .primary-navigation__l2-col-l h3 {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 700;
      color: #0066a1;
      font-size: 26px; } }

.primary-navigation__item-text {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400; }

.primary-navigation__search {
  margin-top: 25px;
  position: relative; }
  .primary-navigation__search label {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px; }
  .primary-navigation__search .primary-navigation__search-input {
    background-color: #f5f5f5;
    border: 0;
    border-radius: 0;
    color: #73797c;
    height: 40px;
    padding: 0 10px;
    width: calc(100% - 45px); }
    .primary-navigation__search .primary-navigation__search-input::-webkit-input-placeholder {
      color: #929a9d; }
    .primary-navigation__search .primary-navigation__search-input:-ms-input-placeholder {
      color: #929a9d; }
    .primary-navigation__search .primary-navigation__search-input::placeholder {
      color: #929a9d; }

.primary-navigation__search-submit {
  height: 40px;
  position: absolute;
  right: 0;
  width: 40px; }
  .primary-navigation__search-submit .primary-navigation__search-submit-btn,
  .primary-navigation__search-submit .primary-navigation__search-submit-icon {
    border-radius: 0;
    position: absolute; }
  .primary-navigation__search-submit .primary-navigation__search-submit-btn {
    background-color: #f48c3b;
    border: 0;
    color: transparent;
    height: 40px;
    padding: 0;
    transition: background-color 250ms ease;
    width: 40px;
    cursor: pointer; }
    .primary-navigation__search-submit .primary-navigation__search-submit-btn::before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      speak: none;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      content: ""; }
    .primary-navigation__search-submit .primary-navigation__search-submit-btn:hover {
      background-color: #94d60a; }
    @media screen and (min-width: 64em) {
      .primary-navigation__search-submit .primary-navigation__search-submit-btn:hover {
        background-color: #94d60a;
        cursor: pointer; } }
  .primary-navigation__search-submit .primary-navigation__search-submit-icon {
    color: #fff;
    left: 13px;
    pointer-events: none;
    top: 8px;
    pointer-events: none; }

.dh .primary-navigation__search-submit-btn:hover {
  background-color: #94d60a; }

@media screen and (max-width: 63.9375em) {
  .primary-navigation__l2-col-r {
    width: 100%; } }

@media screen and (min-width: 64em) {
  .primary-navigation__l2-col-r {
    -ms-flex: 0 1 67%;
        flex: 0 1 67%; } }

.primary-navigation__l2-links {
  list-style: none;
  margin-left: 0; }
  @media screen and (min-width: 64em) {
    .primary-navigation__l2-links {
      column-count: 2;
      line-height: 1.2em; } }

@media screen and (max-width: 63.9375em) {
  .primary-navigation__l2-item {
    border-top: 1px solid #e6e7e8;
    padding: 5px 20px; }
    .primary-navigation__l2-item:first-child {
      border: 0; }
    .primary-navigation__l2-item:last-child {
      border-bottom: 1px solid #e6e7e8; } }

@media screen and (min-width: 64em) {
  .primary-navigation__l2-item {
    display: inline-block;
    margin-bottom: 10px;
    width: 100%; } }

@media screen and (max-width: 63.9375em) {
  .primary-navigation__l2-item a {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    color: #007abd;
    font-size: 16px; } }

@media screen and (min-width: 64em) {
  .primary-navigation__l2-item a {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    color: #0066a1; } }

.primary-navigation__l2-btn-container {
  margin-top: 10px;
  padding: 0 20px;
  width: 100%; }

@media screen and (max-width: 63.9375em) {
  .primary-navigation__l2-btn {
    display: block;
    margin: 20px 0;
    width: inherit; } }

@media screen and (min-width: 40em) {
  .primary-navigation__l2-btn--mobile {
    display: none; } }

.primary-navigation__l2-btn--desktop {
  margin-left: 51%;
  padding: 10px 20px; }
  @media screen and (max-width: 39.9375em) {
    .primary-navigation__l2-btn--desktop {
      display: none; } }

.profiles {
  background-color: #f7f6f1;
  padding: 30px 0 35px; }
  @media screen and (min-width: 768px) {
    .profiles {
      padding: 40px 0 45px; } }
  @media screen and (min-width: 960px) {
    .profiles {
      padding: 60px 0 65px; } }
  .profiles__wrap {
    max-width: 73.625rem;
    margin-right: auto;
    margin-left: auto;
    padding: 0 1.25rem; }
    .profiles__wrap::after, .profiles__wrap::before {
      content: '';
      display: table; }
    .profiles__wrap::after {
      clear: both; }
    @media screen and (max-width: 74.9375em) {
      .profiles__wrap {
        padding: 0 70px; } }
    @media screen and (min-width: 40em) {
      .profiles__wrap {
        max-width: 768px; } }
    @media screen and (min-width: 64em) {
      .profiles__wrap {
        max-width: 960px; } }
  .profiles__title {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    color: #0066a1;
    font-size: 1.375em;
    line-height: 1.375em;
    margin-bottom: 30px;
    text-align: center;
    text-transform: uppercase; }
    .foundation .profiles__title {
      color: #ae9065; }
    @media screen and (min-width: 768px) {
      .profiles__title {
        margin-bottom: 45px;
        text-align: left; } }
  .profiles__list {
    -ms-flex-pack: start;
        justify-content: flex-start;
    list-style: none;
    margin: 0 auto; }
    .tabs__columns .profiles__list {
      -ms-flex-pack: center;
          justify-content: center; }
  .profiles__item {
    -ms-flex-item-align: start;
        align-self: flex-start;
    margin-bottom: 1rem;
    margin-right: 1rem;
    position: relative; }
    @media screen and (min-width: 670px) {
      .profiles__item:last-of-type {
        margin-right: 0; } }
    @media screen and (max-width: 669.9px) {
      .profiles__item:last-of-type {
        margin-right: auto; } }
    @media screen and (max-width: 669.9px) {
      .profiles__item {
        margin: 0 auto 1rem;
        max-width: 300px; } }
    @media screen and (min-width: 1024px) {
      .profiles__item {
        margin-right: 1.333rem; } }
    .profiles__item:hover, .profiles__item:focus {
      cursor: pointer; }
      .profiles__item:hover .profiles__item__overlay, .profiles__item:focus .profiles__item__overlay {
        height: 100%;
        transition: height .24s ease-out; }
      .profiles__item:hover .profiles__item__text-small, .profiles__item:focus .profiles__item__text-small {
        display: none; }
      .profiles__item:hover .profiles__item__text-large, .profiles__item:focus .profiles__item__text-large {
        display: block; }
    .profiles__item__image {
      position: relative;
      z-index: 1; }
      .profiles__item__image img {
        height: auto;
        width: 100%; }
    .profiles__item__overlay {
      background: rgba(20, 102, 161, 0.85);
      bottom: 0;
      height: 25%;
      left: 0;
      position: absolute;
      transition: height 0.24s cubic-bezier(0.175, 0.885, 0.32, 1.275);
      width: 100%;
      z-index: 2; }
      .foundation .profiles__item__overlay {
        background: rgba(0, 43, 70, 0.85); }
    .profiles__item__text-wrap {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      height: 100%;
      -ms-flex-pack: center;
          justify-content: center;
      padding: 0 1rem;
      width: 100%; }
    .profiles__item__text-small p,
    .profiles__item__text-small h4, .profiles__item__text-large p,
    .profiles__item__text-large h4 {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 400;
      color: whitesmoke;
      font-size: .875rem;
      line-height: 1.063rem;
      margin-bottom: .875rem;
      text-align: center; }
      .profiles__item__text-small p.title, .profiles__item__text-small p.name,
      .profiles__item__text-small h4.title,
      .profiles__item__text-small h4.name, .profiles__item__text-large p.title, .profiles__item__text-large p.name,
      .profiles__item__text-large h4.title,
      .profiles__item__text-large h4.name {
        font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
        font-style: normal;
        font-weight: 700; }
      .profiles__item__text-small p:last-of-type,
      .profiles__item__text-small h4:last-of-type, .profiles__item__text-large p:last-of-type,
      .profiles__item__text-large h4:last-of-type {
        margin-bottom: 0; }
    .profiles__item__text-small h4, .profiles__item__text-large h4 {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 700; }
    .profiles__item__text-small p {
      margin-bottom: 0; }
    .profiles__item__text-large {
      display: none;
      overflow: hidden; }
      .profiles__item__text-large p span {
        font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
        font-style: normal;
        font-weight: 700;
        color: #49f1fe;
        display: inline-block;
        vertical-align: middle; }
        .profiles__item__text-large p span:hover, .profiles__item__text-large p span:focus {
          text-decoration: underline; }
        .profiles__item__text-large p span::after {
          /* use !important to prevent issues with browser extensions that change fonts */
          font-family: 'icomoon' !important;
          speak: none;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: "";
          display: inline-block;
          font-size: 1.25rem;
          text-align: center;
          vertical-align: bottom;
          width: 20px; }
  .tabs .profiles {
    background-color: transparent;
    padding-left: 1.25rem;
    padding-top: 20px; }
    .tabs .profiles:first-child {
      padding-top: 0; }
    .tabs .profiles .profiles__wrap {
      padding: 0; }
  .content .profiles {
    background-color: transparent;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 20px; }
    @media screen and (min-width: 768px) {
      .content .profiles {
        padding-left: 2rem;
        padding-right: 0; } }
    @media screen and (min-width: 960px) {
      .content .profiles {
        padding: 40px 0 45px 2rem; } }
    .content .profiles:first-child {
      padding-top: 0; }
    .content .profiles .profiles__wrap {
      padding: 0; }

.dh .content .profiles {
  padding-left: 0; }
  @media screen and (max-width: 63.9375em) {
    .dh .content .profiles.profiles--mixed .profiles__list {
      -ms-flex-pack: center;
          justify-content: center; } }
  @media screen and (max-width: 39.9375em) {
    .dh .content .profiles.profiles--mixed .profiles__item {
      -ms-flex: 0 0 260px;
          flex: 0 0 260px;
      height: 260px;
      margin: 0 1.5rem 1.5rem 1rem; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .dh .content .profiles.profiles--mixed .profiles__item {
      -ms-flex: 0 0 250px;
          flex: 0 0 250px;
      height: 250px;
      margin: 0 1.5rem 1.5rem 0; } }
  @media screen and (min-width: 64em) {
    .dh .content .profiles.profiles--mixed .profiles__item {
      -ms-flex: 0 0 210px;
          flex: 0 0 210px;
      height: 210px;
      margin: 0 1rem 1rem 0; } }
  .dh .content .profiles.profiles--mixed .profiles__item__bg-image {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100%;
    width: 100%; }

.dh .content .profiles__item.profiles__item--img-only {
  transition: opacity .3s ease; }
  @media screen and (min-width: 64em) {
    .dh .content .profiles__item.profiles__item--img-only:hover, .dh .content .profiles__item.profiles__item--img-only:focus {
      opacity: .8; } }

.dh .content .profiles__item.profiles__item--text-only {
  height: 212px; }
  .dh .content .profiles__item.profiles__item--text-only .profiles__item__overlay {
    height: 100%; }
  .dh .content .profiles__item.profiles__item--text-only .profiles__item__text-small {
    display: none; }
  .dh .content .profiles__item.profiles__item--text-only .profiles__item__text-large {
    display: block; }

.provider-profile {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 50px;
  padding-left: 30px;
  padding-right: 30%;
  padding-top: 50px; }
  .provider-profile::after, .provider-profile::before {
    content: '';
    display: table; }
  .provider-profile::after {
    clear: both; }
  @media screen and (max-width: 63.9375em) {
    .provider-profile {
      padding: 50px 30px; } }
  .provider-profile > *:first-child {
    margin-top: 0;
    padding-top: 0; }
  .provider-profile > h2 {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    color: #0066a1;
    font-size: 22px;
    margin-top: 1.5rem; }
  .provider-profile > p {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.4;
    margin-bottom: .5rem; }
    .provider-profile > p > span {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 600; }
  .provider-profile > a {
    color: #0066a1;
    font-size: 20px; }
    .provider-profile > a::after {
      background: url("/micrositetemplates/assets/img/svg/icon-chevron-blue-e.svg") center no-repeat;
      background-size: 5px 8px;
      bottom: 1px;
      color: transparent;
      content: '\0a00';
      display: inline;
      font-family: Arial, sans-serif;
      font-size: 12px;
      height: 8px;
      left: 1px;
      margin-left: 5px;
      position: relative;
      transition: left .3s ease;
      vertical-align: baseline;
      width: 5px; }
    @media screen and (min-width: 64em) {
      .provider-profile > a:hover::after, .provider-profile > a:focus::after {
        left: 5px; } }

.post-listing, .post-listing--alt {
  padding: 30px 0 35px; }
  @media screen and (min-width: 768px) {
    .post-listing, .post-listing--alt {
      padding: 40px 0 45px; } }
  @media screen and (min-width: 960px) {
    .post-listing, .post-listing--alt {
      padding: 60px 0 65px; } }
  .dh .post-listing .post-listing__wrap, .dh .post-listing--alt .post-listing__wrap {
    max-width: 73.625rem;
    margin-right: auto;
    margin-left: auto; }
    .dh .post-listing .post-listing__wrap::after, .dh .post-listing--alt .post-listing__wrap::after, .dh .post-listing .post-listing__wrap::before, .dh .post-listing--alt .post-listing__wrap::before {
      content: '';
      display: table; }
    .dh .post-listing .post-listing__wrap::after, .dh .post-listing--alt .post-listing__wrap::after {
      clear: both; }
  .dh .post-listing.post-listing--gray-bg, .dh .post-listing--gray-bg.post-listing--alt {
    background-color: #f5f5f5;
    max-width: none;
    padding: 50px 30px;
    width: 100%; }
    @media screen and (max-width: 63.9375em) {
      .dh .post-listing.post-listing--gray-bg, .dh .post-listing--gray-bg.post-listing--alt {
        margin: 0; } }
  .dh .post-listing.post-listing--border-top .post-listing__wrap, .dh .post-listing--border-top.post-listing--alt .post-listing__wrap {
    max-width: 73.625rem;
    margin-right: auto;
    margin-left: auto; }
    .dh .post-listing.post-listing--border-top .post-listing__wrap::after, .dh .post-listing--border-top.post-listing--alt .post-listing__wrap::after, .dh .post-listing.post-listing--border-top .post-listing__wrap::before, .dh .post-listing--border-top.post-listing--alt .post-listing__wrap::before {
      content: '';
      display: table; }
    .dh .post-listing.post-listing--border-top .post-listing__wrap::after, .dh .post-listing--border-top.post-listing--alt .post-listing__wrap::after {
      clear: both; }
  @media screen and (max-width: 63.9375em) {
    .dh .post-listing.post-listing--border-top, .dh .post-listing--border-top.post-listing--alt {
      margin: 0 30px;
      padding: 50px 0; } }
  .post-listing--border-top {
    border-top: 1px solid #e0e0e0; }
  .post-listing--alt {
    background: linear-gradient(to bottom, #e9e9e9 0%, #f7f6f1 10%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ }
  .post-listing__wrap {
    margin: 0 auto;
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
    max-width: 1016px; }
    @media screen and (min-width: 768px) {
      .post-listing__wrap {
        padding-left: 30px;
        padding-right: 30px; } }
    @media screen and (min-width: 1200px) {
      .post-listing__wrap {
        max-width: 1200px; } }
    .post-listing__wrap-fluid {
      max-width: 100%;
      padding-left: 20px;
      padding-right: 20px;
      width: 100%; }
    @media screen and (min-width: 768px) {
      .post-listing__wrap {
        padding-left: 30px;
        padding-right: 30px; } }
    @media screen and (min-width: 64em) {
      .post-listing__wrap {
        max-width: 1016px; } }
    .dh .post-listing__wrap {
      margin: 0;
      max-width: none;
      padding: 0 30px; }
  .post-listing__listing {
    margin: 0 auto 40px;
    max-width: 480px; }
    @media screen and (max-width: 768px) {
      .post-listing__listing {
        padding: 0 50px; } }
    @media screen and (min-width: 768px) {
      .post-listing__listing {
        padding: 0 2rem;
        max-width: 956px;
        -ms-flex-pack: justify;
            justify-content: space-between; } }
    .dh .post-listing__listing {
      margin: 0;
      max-width: none;
      padding: 0 4rem; }
      @media screen and (max-width: 63.9375em) {
        .dh .post-listing__listing {
          padding: 0; } }
  .post-listing__item {
    margin-bottom: 4rem; }
    @media screen and (min-width: 64em) {
      .post-listing__item {
        width: calc(33.3333% - 37.333px); } }
    .post-listing__item:last-of-type {
      margin-bottom: 0; }
    @media screen and (min-width: 768px) {
      .post-listing__item {
        margin-bottom: 0; } }
    .post-listing__item__thumbnail {
      overflow: hidden;
      border-radius: 100%;
      margin-bottom: 42px; }
      .post-listing__item__thumbnail img {
        width: 100%;
        height: auto;
        display: block; }
    .post-listing__item__title {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 700;
      font-size: .875rem;
      line-height: 1.375em;
      margin-bottom: 1rem; }
      .post-listing__item__title a {
        color: #0066a1; }
      .dh .post-listing__item__title {
        font-size: 16px; }
    .post-listing__item__excerpt {
      color: black;
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 400;
      font-size: .875rem;
      line-height: 1.375em;
      margin-bottom: 0; }
      .dh .post-listing__item__excerpt {
        font-size: 1rem; }
    .post-listing__item__link {
      color: #0e92a2;
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 700;
      font-size: .875rem;
      line-height: 1.325rem;
      display: inline-block;
      margin-top: 1rem; }
      .post-listing__item__link:hover, .post-listing__item__link:focus {
        text-decoration: underline;
        color: #0e92a2; }
      .post-listing__item__link:after {
        display: inline-block;
        font-size: 1rem;
        color: #0e92a2;
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        speak: none;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        content: "";
        font-weight: 700;
        margin-left: .5rem;
        vertical-align: text-top; }
  .post-listing__title {
    color: #0066a1;
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 1.188em;
    line-height: 1.188em;
    margin-bottom: 35px;
    text-transform: uppercase; }
    .foundation .post-listing__title {
      color: #ae9065; }
    @media screen and (max-width: 63.9375em) {
      .dh .post-listing__title {
        font-size: 22px;
        text-align: center; } }
    @media screen and (min-width: 64em) {
      .dh .post-listing__title {
        font-size: 26px; } }
  .post-listing__link {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 0.938em;
    line-height: 1.375em;
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex; }
    @media screen and (min-width: 768px) {
      .post-listing__link {
        padding-left: 2rem; } }
    .post-listing__link a {
      color: #0e92a2;
      display: inline-block; }
      .post-listing__link a:hover, .post-listing__link a:focus {
        text-decoration: underline;
        color: #0e92a2; }
      .post-listing__link a:before {
        display: inline-block;
        width: 27px;
        height: 27px;
        padding-top: 5px;
        background: #0e92a2;
        text-align: center;
        font-size: 1rem;
        color: white;
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        speak: none;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        content: "";
        font-weight: 700;
        border-radius: 100%;
        margin-right: 10px; }
    .dh .post-listing__link a {
      color: #f98d29;
      font-size: 16px;
      margin: 40px auto 0;
      text-align: center;
      text-transform: uppercase; }
      .dh .post-listing__link a::after {
        background: url("/micrositetemplates/assets/img/svg/icon-chevron-orange-e.svg") center no-repeat;
        background-size: 6px 10px;
        bottom: 2px;
        color: transparent;
        content: '\0a00';
        display: inline;
        font-family: Arial, sans-serif;
        font-size: 12px;
        height: 10px;
        left: 0;
        margin-left: 5px;
        position: relative;
        transition: left .3s ease;
        vertical-align: baseline;
        width: 6px; }
      @media screen and (min-width: 64em) {
        .dh .post-listing__link a:hover::after, .dh .post-listing__link a:focus::after {
          left: 4px; } }
      .dh .post-listing__link a:hover, .dh .post-listing__link a:focus {
        text-decoration: none; }
      .dh .post-listing__link a::before {
        display: none; }

input[type=range] {
  height: 29px;
  -webkit-appearance: none;
  margin: 10px 0;
  width: 100%; }

input[type=range]:focus {
  outline: none; }

input[type=range]::-webkit-slider-runnable-track {
  width: 100%;
  height: 1px;
  cursor: pointer;
  animate: 0.2s;
  box-shadow: 0px 0px 0px #000000;
  background: #D2D2D2;
  border-radius: 1px;
  border: 0px solid #000000; }

input[type=range]::-webkit-slider-thumb {
  box-shadow: 0px 0px 0px #000000;
  border: 0px solid #2497E3;
  height: 23px;
  width: 23px;
  border-radius: 12px;
  background: #00AFD7;
  cursor: pointer;
  -webkit-appearance: none;
  margin-top: -11px; }

input[type=range]:focus::-webkit-slider-runnable-track {
  background: #D2D2D2; }

input[type=range]::-moz-range-track {
  width: 100%;
  height: 1px;
  cursor: pointer;
  animate: 0.2s;
  box-shadow: 0px 0px 0px #000000;
  background: #D2D2D2;
  border-radius: 1px;
  border: 0px solid #000000; }

input[type=range]::-moz-range-thumb {
  box-shadow: 0px 0px 0px #000000;
  border: 0px solid #2497E3;
  height: 23px;
  width: 23px;
  border-radius: 12px;
  background: #00AFD7;
  cursor: pointer; }

input[type=range]::-ms-track {
  width: 100%;
  height: 1px;
  cursor: pointer;
  animate: 0.2s;
  background: transparent;
  border-color: transparent;
  color: transparent; }

input[type=range]::-ms-fill-lower {
  background: #D2D2D2;
  border: 0px solid #000000;
  border-radius: 2px;
  box-shadow: 0px 0px 0px #000000; }

input[type=range]::-ms-fill-upper {
  background: #D2D2D2;
  border: 0px solid #000000;
  border-radius: 2px;
  box-shadow: 0px 0px 0px #000000; }

input[type=range]::-ms-thumb {
  margin-top: 1px;
  box-shadow: 0px 0px 0px #000000;
  border: 0px solid #2497E3;
  height: 23px;
  width: 23px;
  border-radius: 12px;
  background: #00AFD7;
  cursor: pointer; }

input[type=range]:focus::-ms-fill-lower {
  background: #D2D2D2; }

input[type=range]:focus::-ms-fill-upper {
  background: #D2D2D2; }

.rtf, .flexlist__excerpt {
  margin-bottom: 50px; }
  @media screen and (max-width: 63.9375em) {
    .rtf, .flexlist__excerpt {
      font-size: 16px; } }
  @media print, screen and (min-width: 64em) {
    .rtf, .flexlist__excerpt {
      font-size: 14px; } }
  @media screen and (max-width: 39.9375em) {
    .dh .rtf, .dh .flexlist__excerpt {
      font-size: 14px; } }
  @media screen and (min-width: 40em) {
    .dh .rtf, .dh .flexlist__excerpt {
      font-size: 16px; } }
  .dh .rtf > *:last-child, .dh .flexlist__excerpt > *:last-child {
    margin-bottom: 0; }
  .content--main .rtf, .content--main .flexlist__excerpt {
    margin-top: 2rem; }
  .rtf h3, .flexlist__excerpt h3 {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    padding-bottom: 5px; }
    @media screen and (max-width: 63.9375em) {
      .rtf h3, .flexlist__excerpt h3 {
        font-size: 18px; } }
    @media print, screen and (min-width: 64em) {
      .rtf h3, .flexlist__excerpt h3 {
        font-size: 16px; } }
    .rtf h3 a, .flexlist__excerpt h3 a {
      text-decoration: underline; }
  .rtf p, .flexlist__excerpt p,
  .rtf .p,
  .flexlist__excerpt .p,
  .rtf ul,
  .flexlist__excerpt ul {
    margin-bottom: 26px; }
    .dh .rtf p, .dh .flexlist__excerpt p, .dh .rtf .p, .dh .flexlist__excerpt .p, .dh .rtf ul, .dh .flexlist__excerpt ul {
      margin-bottom: 1rem; }
  .rtf ol, .flexlist__excerpt ol {
    list-style: decimal;
    padding-left: 18px; }
    .rtf ol ol, .flexlist__excerpt ol ol {
      list-style: lower-alpha; }
  .rtf ul li, .flexlist__excerpt ul li,
  .rtf ol li,
  .flexlist__excerpt ol li {
    line-height: 1.4;
    margin-bottom: 5px; }
    @media print, screen and (min-width: 64em) {
      .rtf ul li, .flexlist__excerpt ul li,
      .rtf ol li,
      .flexlist__excerpt ol li {
        margin-bottom: 8px; } }
  
  .rtf ul,
  .flexlist__excerpt ul {
    margin-left: 16px;
    margin-top: 16px; }
    .rtf ul li, .flexlist__excerpt ul li {
      padding-left: 12px; }
  .rtf ul ul, .flexlist__excerpt ul ul {
    margin-top: 0; }
    .rtf ul ul li, .flexlist__excerpt ul ul li {
      margin: 6px 0 6px 12px;
      padding-left: 20px; }
  .rtf .ul-cols-2, .flexlist__excerpt .ul-cols-2,
  .rtf .ol-cols-2,
  .flexlist__excerpt .ol-cols-2 {
    margin: 1em 0 1em 1em; }
    .rtf .ul-cols-2 ul, .flexlist__excerpt .ul-cols-2 ul,
    .rtf .ol-cols-2 ul,
    .flexlist__excerpt .ol-cols-2 ul {
      margin-top: 0; }
      .rtf .ul-cols-2 ul li:first-child, .flexlist__excerpt .ul-cols-2 ul li:first-child,
      .rtf .ol-cols-2 ul li:first-child,
      .flexlist__excerpt .ol-cols-2 ul li:first-child {
        margin-top: 0; }
  @media print, screen and (min-width: 64em) {
    .rtf .rtf-multi-col-2-cols, .flexlist__excerpt .rtf-multi-col-2-cols {
      column-count: 2;
      column-gap: 100px;
      column-width: 250px; }
      .rtf .rtf-multi-col-2-cols li, .flexlist__excerpt .rtf-multi-col-2-cols li {
        width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .rtf .rtf-multi-col-3-cols, .flexlist__excerpt .rtf-multi-col-3-cols {
      column-count: 3;
      column-gap: 65px;
      column-width: 150px; }
      .rtf .rtf-multi-col-3-cols li, .flexlist__excerpt .rtf-multi-col-3-cols li {
        width: 100%; } }
  .rtf a, .flexlist__excerpt a {
    color: #0066a1; }
  .rtf a.btn, .flexlist__excerpt a.btn {
    color: #fff; }

.search-box {
  padding: 0 1.25rem; }
  @media screen and (max-width: 39.9375em) {
    .dh .search-box {
      margin-top: 2rem; } }
  @media screen and (min-width: 40em) {
    .dh .search-box {
      margin-top: 4rem; } }
  .search-box.search-box--background {
    margin-top: 0; }

.search-box__contain {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto; }
  .search-box__contain::after, .search-box__contain::before {
    content: '';
    display: table; }
  .search-box__contain::after {
    clear: both; }

.search-box__outer {
  background-color: #fff;
  box-shadow: 0 0 60px 5px rgba(0, 0, 0, 0.1);
  padding: 15px; }

.search-box__inner {
  background-color: #e0e0e0; }
  @media screen and (max-width: 63.9375em) {
    .search-box__inner {
      padding: 20px; } }
  @media screen and (min-width: 64em) {
    .search-box__inner {
      padding: 40px; } }

.search-box__title {
  font-size: 26px;
  position: relative;
  text-transform: uppercase; }
  @media screen and (max-width: 39.9375em) {
    .search-box__title {
      padding-top: 50px;
      text-align: center; } }
  @media screen and (min-width: 40em) {
    .search-box__title {
      padding-left: 50px; } }
  @media screen and (max-width: 39.9375em) {
    .search-box__title--search::after {
      background: url("/micrositetemplates/assets/img/svg/icon-search.svg") center no-repeat;
      background-size: 40px 40px;
      content: '';
      height: 40px;
      position: absolute;
      width: 40px; }
    .search-box__title--search::after {
      left: calc(50% - 20px);
      top: 0; } }
  @media screen and (min-width: 40em) {
    .search-box__title--search::after {
      background: url("/micrositetemplates/assets/img/svg/icon-search.svg") center no-repeat;
      background-size: 35px 35px;
      content: '';
      height: 35px;
      position: absolute;
      width: 35px; }
    .search-box__title--search::after {
      left: 0; } }
  .search-box__title--newsletter::after {
    background: url("/micrositetemplates/assets/img/svg/icon-newsletter.svg") center no-repeat;
    background-size: 35px 35px;
    content: '';
    height: 35px;
    position: absolute;
    width: 35px; }
  @media screen and (max-width: 39.9375em) {
    .search-box__title--newsletter::after {
      left: calc(50% - 17px);
      top: 0; } }
  @media screen and (min-width: 40em) {
    .search-box__title--newsletter::after {
      left: 0;
      top: -2px; } }
  .search-box__title span {
    color: #26a3dc; }

.search-box__search-container {
  border: 0;
  -ms-flex-flow: row nowrap;
      flex-flow: row nowrap;
  margin: 1.5rem 0 0;
  padding: 0; }
  @media screen and (min-width: 40em) {
    .search-box__search-container {
      display: -ms-flexbox;
      display: flex; } }
  .search-box__search-container label {
    display: none; }
  .search-box__search-container fieldset {
    border: 0;
    margin: 0;
    padding: 0; }
  @media screen and (max-width: 63.9375em) {
    .search-box__search-container .search-box__search-input,
    .search-box__search-container .search-box__search-submit {
      height: 45px; } }
  @media screen and (min-width: 64em) {
    .search-box__search-container .search-box__search-input,
    .search-box__search-container .search-box__search-submit {
      height: 55px; } }
  @media screen and (min-width: 40em) {
    .search-box__search-container .search-box__search-container-col-l {
      -ms-flex: 1 1 100%;
          flex: 1 1 100%; } }
  @media screen and (max-width: 39.9375em) {
    .search-box__search-container .search-box__search-container-col-r,
    .search-box__search-container .search-box__search-submit {
      display: block;
      width: 100%; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .search-box__search-container .search-box__search-container-col-r,
    .search-box__search-container .search-box__search-submit {
      -ms-flex: 0 0 95px;
          flex: 0 0 95px;
      width: 95px; } }
  @media screen and (min-width: 64em) {
    .search-box__search-container .search-box__search-container-col-r,
    .search-box__search-container .search-box__search-submit {
      -ms-flex: 0 0 120px;
          flex: 0 0 120px;
      font-size: 16px;
      width: 120px; } }
  .search-box__search-container .search-box__search-input {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    border: 0;
    padding: 0 10px;
    width: 100%; }
    .search-box__search-container .search-box__search-input::-webkit-input-placeholder {
      color: #929a9d; }
    .search-box__search-container .search-box__search-input:-ms-input-placeholder {
      color: #929a9d; }
    .search-box__search-container .search-box__search-input::placeholder {
      color: #929a9d; }
    @media screen and (max-width: 39.9375em) {
      .search-box__search-container .search-box__search-input {
        display: block;
        width: 100%; } }
    @media screen and (max-width: 63.9375em) {
      .search-box__search-container .search-box__search-input {
        font-size: 14px; } }
    @media screen and (min-width: 64em) {
      .search-box__search-container .search-box__search-input {
        font-size: 20px; } }
  .search-box__search-container .search-box__search-submit {
    background-color: #f48c3b;
    border: 0;
    color: #fff;
    font-weight: bold;
    text-transform: uppercase;
    transition: background-color .25s ease-out; }
    .search-box__search-container .search-box__search-submit:hover {
      background-color: #94d60a;
      cursor: pointer; }
    .dh .search-box__search-container .search-box__search-submit {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 700; }

.search-box__text {
  margin-top: 1.5rem;
  max-width: 760px; }
  @media screen and (max-width: 39.9375em) {
    .search-box__text {
      text-align: center; } }
  .search-box__text > *:last-child {
    margin-bottom: 0; }

.search-global {
  background-color: #eee;
  min-height: 100px;
  width: 100%; }

.search-global__inner {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto;
  height: 100%;
  max-width: 60rem;
  padding: 4em 0; }
  .search-global__inner::after, .search-global__inner::before {
    content: '';
    display: table; }
  .search-global__inner::after {
    clear: both; }
  @media screen and (max-width: 63.9375em) {
    .search-global__inner {
      padding-left: 30px;
      padding-right: 30px; } }

.search-global__title {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  color: #1466a1;
  font-size: 32px;
  margin-bottom: 24px;
  text-transform: uppercase; }

@media screen and (min-width: 64em) {
  .search-global__form {
    display: -ms-flexbox;
    display: flex; } }

.search-global__search-icon {
  position: relative; }
  .search-global__search-icon::before {
    position: absolute; }
  @media screen and (max-width: 63.9375em) {
    .search-global__search-icon::before {
      font-size: 18px;
      left: 14px;
      top: 14px; } }
  @media screen and (min-width: 64em) {
    .search-global__search-icon::before {
      font-size: 24px;
      left: 15px;
      top: 16px; } }

.search-global__input {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  border: 0 !important; }
  @media screen and (max-width: 63.9375em) {
    .search-global__input {
      font-size: 20px;
      height: 47px !important;
      padding-left: 40px !important;
      width: 100% !important;
      background: #fff 8px 8px url() !important;
      box-sizing: inherit !important;
      border: none !important;
      border-radius: 0px !important; } }
  @media screen and (min-width: 64em) {
    .search-global__input {
      -ms-flex: 1 1 auto !important;
          flex: 1 1 auto !important;
      font-size: 29px !important;
      height: 56px !important;
      padding-left: 50px !important;
      padding-top: 0px !important;
      padding-bottom: 0px !important;
      border-radius: 0px !important;
      border: none !important;
      background: #fff 8px 8px url() !important; } }

.search-global__submit {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  background-color: #f98d29;
  border: 0;
  color: #fff;
  font-size: 16px;
  text-transform: uppercase; }
  @media screen and (max-width: 63.9375em) {
    .search-global__submit {
      margin-top: 1rem;
      padding: 14px 20px;
      width: 100%; } }
  @media screen and (min-width: 64em) {
    .search-global__submit {
      -ms-flex: 0 0 150px;
          flex: 0 0 150px;
      height: 56px; } }

.search-results {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto;
  max-width: 60rem;
  padding: 1rem 0; }
  .search-results::after, .search-results::before {
    content: '';
    display: table; }
  .search-results::after {
    clear: both; }
  @media screen and (max-width: 63.9375em) {
    .search-results {
      padding: 1rem 30px; } }
  .search-results .st-search-container .st-search-summary .st-query-present {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    border-bottom: 2px solid #e6e7e8;
    font-size: 16px;
    margin-bottom: 2rem;
    margin-top: 2rem;
    padding-bottom: 7px; }
    .search-results .st-search-container .st-search-summary .st-query-present strong {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 600; }
  .search-results .st-search-container .st-search-results .__swiftype_result {
    border: 0;
    margin-top: 1.5rem;
    padding: 3px 18px 0 0; }
    .search-results .st-search-container .st-search-results .__swiftype_result::before {
      display: none; }
  .search-results .st-search-container .st-search-results .st-ui-type-heading {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    color: #0066a1;
    margin-bottom: 0;
    max-height: none;
    overflow: auto;
    transition: opacity 250ms ease;
    white-space: normal; }
    @media screen and (max-width: 39.9375em) {
      .search-results .st-search-container .st-search-results .st-ui-type-heading {
        font-size: 19px; } }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .search-results .st-search-container .st-search-results .st-ui-type-heading {
        font-size: 23px; } }
    @media screen and (min-width: 64em) {
      .search-results .st-search-container .st-search-results .st-ui-type-heading {
        font-size: 26px; } }
    .search-results .st-search-container .st-search-results .st-ui-type-heading em {
      background-color: transparent !important;
      box-shadow: none;
      color: #f98d29; }
    @media screen and (min-width: 64em) {
      .search-results .st-search-container .st-search-results .st-ui-type-heading:hover, .search-results .st-search-container .st-search-results .st-ui-type-heading:focus {
        opacity: .7; } }
  .search-results .st-search-container .st-search-results .st-ui-type-detail {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    color: #000;
    font-size: 16px;
    margin-top: 5px;
    max-height: none; }

@media screen and (max-width: 39.9375em) {
  .dh .services {
    margin-top: 2rem; } }

@media screen and (min-width: 40em) {
  .dh .services {
    margin-top: 4rem; } }

.services__container {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto;
  text-align: center; }
  .services__container::after, .services__container::before {
    content: '';
    display: table; }
  .services__container::after {
    clear: both; }
  @media screen and (max-width: 39.9375em) {
    .services__container {
      padding-top: 25px; } }

.services__content {
  -ms-flex: 0 0 100%;
      flex: 0 0 100%;
  max-width: 100%;
  padding-right: 1.25rem;
  padding-left: 1.25rem;
  max-width: 100%; }
  @media print, screen and (min-width: 64em) {
    .services__content {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }

.services__title {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  text-align: center; }
  @media screen and (max-width: 63.9375em) {
    .services__title {
      font-size: 20px; } }
  @media print, screen and (min-width: 64em) {
    .services__title {
      font-size: 24px;
      margin-bottom: 48px; } }
  .dh .services__title {
    text-transform: uppercase; }
    @media screen and (max-width: 63.9375em) {
      .dh .services__title {
        font-size: 28px; } }
    @media print, screen and (min-width: 64em) {
      .dh .services__title {
        font-size: 32px;
        margin-bottom: 20px; } }

.heart-vascular .services, .urgent-care .services {
  padding-bottom: 1rem; }
  @media print, screen and (min-width: 40em) {
    .heart-vascular .services, .urgent-care .services {
      padding-top: 1rem; } }
  @media print, screen and (min-width: 64em) {
    .heart-vascular .services, .urgent-care .services {
      padding-top: 3rem;
      padding-bottom: 1.5rem; } }

.services__subtitle {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  color: #000;
  font-size: 16px;
  padding: 0 40px; }

.services__btn {
  margin-top: 20px; }
  @media screen and (max-width: 39.9375em) {
    .dh .services__btn {
      background-color: #26a3dc;
      margin-top: 0; } }

.dh .services .carousel__arrow--left {
  left: 5px; }

.dh .services .carousel__arrow--right {
  right: 5px; }

.share {
  background-color: #f5f5f5; }
  @media screen and (max-width: 63.9375em) {
    .share {
      max-width: 73.625rem;
      margin-right: auto;
      margin-left: auto;
      border-bottom: 2px solid #fff;
      padding-bottom: 20px;
      padding-top: 20px; }
      .share::after, .share::before {
        content: '';
        display: table; }
      .share::after {
        clear: both; } }
  @media print, screen and (min-width: 64em) {
    .share {
      padding: 6px 21px 10px;
      position: absolute; }
      .share--for-medium-down {
        display: none; }
      .hero .share {
        box-shadow: inset 0 22px 22px -22px rgba(0, 0, 0, 0.3);
        position: absolute;
        right: 0;
        top: 0; } }
  @media screen and (max-width: 63.9375em) {
    .share__container {
      width: 100%;
      float: left;
      padding-right: 1.25rem;
      padding-left: 1.25rem; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .share__container {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (max-width: 63.9375em) {
      .share__container:last-child:not(:first-child) {
        float: right; } }
  .share__title {
    color: #000;
    font-size: 14px;
    text-align: center;
    text-transform: uppercase; }
    @media screen and (max-width: 63.9375em) {
      .share__title {
        margin-bottom: 14px; } }
    @media print, screen and (min-width: 64em) {
      .share__title {
        display: inline-block;
        margin-bottom: 0;
        vertical-align: middle; } }
  @media screen and (max-width: 63.9375em) {
    .share__navigation {
      margin-left: 0;
      margin-right: 0; } }
  @media print, screen and (min-width: 64em) {
    .share__navigation {
      display: inline-block;
      vertical-align: middle; } }
  .share__list {
    list-style-type: none;
    margin-bottom: 0;
    margin-left: 0;
    padding-left: 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: center;
        justify-content: center; }
  .share__item {
    display: inline-block;
    padding-left: 4px;
    padding-right: 4px;
    text-align: center; }
    .share__item:first-of-type {
      padding-left: 0; }
    .share__item:last-of-type {
      padding-right: 0; }
    .hero .share__item {
      padding-left: 0;
      padding-right: 0; }
    @media screen and (min-width: 40em) {
      .share__item {
        padding-left: 6px;
        padding-right: 6px; } }
    @media print, screen and (min-width: 64em) {
      .share__item {
        margin-left: 8px;
        vertical-align: middle; } }
  .share__link {
    background-color: #f98d29;
    border-radius: 50%;
    color: #fff;
    display: block;
    position: relative;
    transition: background-color 250ms ease-out; }
    @media screen and (max-width: 63.9375em) {
      .share__link {
        height: 36px;
        width: 36px; } }
    @media print, screen and (min-width: 64em) {
      .share__link {
        height: 20px;
        width: 20px; } }
    .share__link:hover {
      background-color: #26a3dc;
      color: #fff; }
  .share__logo {
    height: 100%;
    left: 50%;
    position: absolute;
    right: 50%; }
    @media screen and (max-width: 63.9375em) {
      .share__link--yelp .share__logo {
        height: 22px;
        width: 22px;
        margin-left: -11px;
        margin-top: 6px; } }
    @media print, screen and (min-width: 64em) {
      .share__link--yelp .share__logo {
        height: 14px;
        width: 14px;
        margin-left: -7px;
        margin-top: 3px; } }
    @media screen and (max-width: 63.9375em) {
      .share__link--facebook .share__logo {
        height: 22px;
        width: 11px;
        margin-left: -5px;
        margin-top: 5px; } }
    @media print, screen and (min-width: 64em) {
      .share__link--facebook .share__logo {
        height: 12px;
        width: 6px;
        margin-left: -3px;
        margin-top: 4px; } }
    @media screen and (max-width: 63.9375em) {
      .share__link--twitter .share__logo {
        height: 16px;
        width: 19px;
        margin-left: -9px;
        margin-top: 10px; } }
    @media print, screen and (min-width: 64em) {
      .share__link--twitter .share__logo {
        height: 10px;
        width: 10px;
        margin-left: -5px;
        margin-top: 5px; } }
    @media screen and (max-width: 63.9375em) {
      .share__link--google-plus .share__logo {
        height: 18px;
        width: 28px;
        margin-left: -14px;
        margin-top: 9px; } }
    @media print, screen and (min-width: 64em) {
      .share__link--google-plus .share__logo {
        height: 10px;
        width: 16px;
        margin-left: -8px;
        margin-top: 5px; } }
    @media screen and (max-width: 63.9375em) {
      .share__link--linkedin .share__logo {
        height: 18px;
        width: 28px;
        margin-left: -14px;
        margin-top: 9px; } }
    @media print, screen and (min-width: 64em) {
      .share__link--linkedin .share__logo {
        height: 10px;
        width: 9px;
        margin-left: -4px;
        margin-top: 5px; } }
    @media screen and (max-width: 63.9375em) {
      .share__link--email .share__logo {
        height: 18px;
        width: 22px;
        margin-left: -11px;
        margin-top: 9px; } }
    @media print, screen and (min-width: 64em) {
      .share__link--email .share__logo {
        height: 10px;
        width: 12px;
        margin-left: -6px;
        margin-top: 5px; } }

.dh .share {
  background-color: transparent;
  padding: 0;
  position: relative;
  text-align: right;
  width: 100%; }

.dh .share__inner {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto; }
  .dh .share__inner::after, .dh .share__inner::before {
    content: '';
    display: table; }
  .dh .share__inner::after {
    clear: both; }

.dh .share__container {
  background-color: #f5f5f5;
  display: inline-block; }
  @media screen and (max-width: 63.9375em) {
    .dh .share__container {
      padding: 18px; } }
  @media screen and (min-width: 64em) {
    .dh .share__container {
      padding: 12px 18px; } }

@media screen and (max-width: 63.9375em) {
  .dh .share__title {
    margin-bottom: 5px; } }

.dh .share__navigation {
  margin-left: 6px; }

@media screen and (min-width: 64em) {
  .dh .share__item {
    margin-left: 2px;
    padding-right: 0; } }

@media screen and (max-width: 63.9375em) {
  .dh .share__link {
    height: 30px;
    width: 30px; } }

@media screen and (max-width: 63.9375em) {
  .dh .share__link--facebook .share__logo {
    height: 17px;
    width: 9px;
    margin-left: -5px;
    margin-top: 6px; } }

@media screen and (max-width: 63.9375em) {
  .dh .share__link--twitter .share__logo {
    height: 13px;
    width: 16px;
    margin-left: -8px;
    margin-top: 9px; } }

@media screen and (max-width: 63.9375em) {
  .dh .share__link--linkedin .share__logo {
    height: 14px;
    width: 22px;
    margin-left: -11px;
    margin-top: 7px; } }

@media screen and (max-width: 63.9375em) {
  .dh .share__link--email .share__logo {
    height: 15px;
    width: 18px;
    margin-left: -9px;
    margin-top: 8px; } }

.slider--daterange {
  background-color: #d3d3d3;
  background-color: #fff;
  height: 1px;
  margin-top: 20px;
  position: relative; }
  .slider--daterange::before, .slider--daterange::after {
    border-left: 1px solid #d3d3d3;
    content: '';
    height: 35px;
    position: absolute;
    top: -17px;
    width: 1px; }
  .slider--daterange::before {
    left: 12px; }
  .slider--daterange::after {
    right: 12px; }
  .slider--daterange .slider-rule {
    background-color: #d3d3d3;
    height: 1px;
    left: 12px;
    position: absolute;
    right: 12px;
    top: 1px; }
  .slider--daterange .slider-handle {
    background-color: #00afd7;
    background-image: url("/MicrositeTemplates/assets/img/svg/icon-slider-arrows-white.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 12px 9px;
    border-radius: 100%;
    height: 24px;
    width: 24px; }
  .slider--daterange .slider-fill {
    background-color: #00afd7;
    height: 2px; }
  .slider--daterange .slider__values {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 12px;
    padding-top: 14px;
    text-align: center;
    text-transform: uppercase; }

.sidebar {
  display: none;
  -ms-flex-order: 0;
      order: 0;
  padding-bottom: 2rem;
  width: 240px; }
  @media screen and (min-width: 960px) {
    .sidebar {
      display: block; } }
  .dh .sidebar {
    padding-top: 5px; }
    @media screen and (max-width: 63.9375em) {
      .dh .sidebar {
        display: none; } }
    @media screen and (min-width: 64em) {
      .dh .sidebar {
        display: block; } }
  .sidebar__page-title, .sidebar__page-title--expandable {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    background-color: #073872;
    color: #fff;
    font-size: 1rem;
    line-height: 1.325rem;
    margin-bottom: 0;
    padding: 17px 1rem;
    text-transform: uppercase; }
    .sidebar__page-title--expandable {
      position: relative; }
      .sidebar__page-title--expandable .sidebar__toggle::after {
        content: '+'; }
      .sidebar__page-title--expandable.active .sidebar__toggle::after {
        content: '-'; }
    .foundation .sidebar__page-title, .foundation .sidebar__page-title--expandable {
      background-color: #ae9065; }
    .sidebar__page-title a, .sidebar__page-title--expandable a {
      color: #fff; }
  .sidebar__menu {
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-width: 0 0 1px;
    margin-bottom: 1.5rem; }
    .sidebar__menu__list {
      list-style: none;
      margin-bottom: 0;
      margin-left: 0; }
    .sidebar__menu__item, .sidebar__menu__item--expand {
      position: relative; }
      .sidebar__menu__item::after, .sidebar__menu__item--expand::after {
        background: rgba(0, 0, 0, 0.1);
        bottom: 0;
        content: '';
        display: block;
        height: 1px;
        left: 1rem;
        position: absolute;
        width: calc(100% - 2rem); }
      .sidebar__menu__item:last-of-type::after, .sidebar__menu__item--expand:last-of-type::after {
        display: none; }
      .sidebar__menu__item.active, .active.sidebar__menu__item--expand {
        background: #1466a1; }
        .sidebar__menu__item.active .sidebar__menu__padding > a, .active.sidebar__menu__item--expand .sidebar__menu__padding > a {
          color: #fff; }
          .sidebar__menu__item.active .sidebar__menu__padding > a::after, .active.sidebar__menu__item--expand .sidebar__menu__padding > a::after {
            color: #fff; }
        .sidebar__menu__item.active .sidebar__menu__toggle, .active.sidebar__menu__item--expand .sidebar__menu__toggle {
          color: #fff; }
          .sidebar__menu__item.active .sidebar__menu__toggle:hover, .active.sidebar__menu__item--expand .sidebar__menu__toggle:hover, .sidebar__menu__item.active .sidebar__menu__toggle:focus, .active.sidebar__menu__item--expand .sidebar__menu__toggle:focus {
            color: #1466a1; }
          .sidebar__menu__item.active .sidebar__menu__toggle::after, .active.sidebar__menu__item--expand .sidebar__menu__toggle::after {
            content: '-'; }
    .sidebar__menu__padding {
      border: 1px solid rgba(0, 0, 0, 0.1);
      border-width: 0 1px;
      display: block;
      padding: 0 1rem;
      position: relative;
      transition: background .4s ease-out, border .4s ease-out; }
      .sidebar__menu__padding:hover, .sidebar__menu__padding:focus {
        background: #1466a1;
        transition: background .24s ease-out, border .24s ease-out; }
        .sidebar__menu__padding:hover > a, .sidebar__menu__padding:focus > a {
          color: #fff;
          transition: color .24s ease-out, border .24s ease-out; }
          .sidebar__menu__padding:hover > a::after, .sidebar__menu__padding:focus > a::after {
            color: #fff;
            transition: color .24s ease-out, border .24s ease-out; }
        .sidebar__menu__padding:hover .sidebar__menu__toggle, .sidebar__menu__padding:focus .sidebar__menu__toggle {
          color: #fff; }
          .sidebar__menu__padding:hover .sidebar__menu__toggle:hover, .sidebar__menu__padding:hover .sidebar__menu__toggle:focus, .sidebar__menu__padding:focus .sidebar__menu__toggle:hover, .sidebar__menu__padding:focus .sidebar__menu__toggle:focus {
            color: #1466a1; }
      .sidebar__menu__padding > a {
        font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
        font-style: normal;
        font-weight: 700;
        color: #1466a1;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
            flex-direction: column;
        font-size: .875rem;
        height: 50px;
        -ms-flex-pack: center;
            justify-content: center;
        line-height: 1.325rem;
        padding-right: 1.5rem;
        position: relative;
        transition: color .4s ease-out;
        width: 100%; }
    .sidebar__menu__toggle {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 500;
      background: transparent;
      border-radius: 100%;
      color: #1466a1;
      cursor: pointer;
      font-size: 2rem;
      height: 24px;
      position: absolute;
      right: 10px;
      text-align: center;
      top: 50%;
      transform: translateY(-50%);
      transition: background .4s ease-out, color .4s ease-out;
      width: 24px;
      z-index: 1; }
      .sidebar__menu__toggle::after {
        content: '+';
        display: inline-block;
        height: 100%;
        left: 0;
        line-height: 0;
        padding-top: 10px;
        position: absolute;
        top: 0;
        width: 100%; }
      .sidebar__menu__toggle:hover, .sidebar__menu__toggle:focus {
        background: #fff;
        transition: background .25s ease-out, color .25s ease-out; }
  .sidebar__sub-menu {
    background: #fff;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-width: 0 1px;
    display: none;
    list-style: none;
    margin-left: 0;
    padding-left: 3rem;
    position: relative; }
    .sidebar__sub-menu__item {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 500;
      font-size: .857rem;
      line-height: 1.325rem;
      padding: 10px 0;
      position: relative; }
      .sidebar__sub-menu__item a {
        color: #333;
        display: block;
        padding-right: 3rem;
        transition: color .4s ease-out; }
        .sidebar__sub-menu__item a:hover, .sidebar__sub-menu__item a:focus {
          color: #f98d29;
          transition: color .24s ease-out; }
          .foundation .sidebar__sub-menu__item a:hover, .foundation .sidebar__sub-menu__item a:focus {
            color: #26a3dc; }
      .sidebar__sub-menu__item.active > a {
        color: #f98d29; }
      .sidebar__sub-menu__item.open .sidebar__sub-menu__toggle::after {
        content: '-'; }
      .sidebar__sub-menu__item > .sidebar__sub-menu {
        border: 0;
        display: none;
        padding-left: 1.5rem;
        padding-top: .5rem; }
    .sidebar__sub-menu__toggle {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 500;
      color: #1466a1;
      cursor: pointer;
      font-size: 2rem;
      height: 24px;
      line-height: 24px;
      position: absolute;
      right: 20px;
      top: 6px;
      width: 24px; }
      .sidebar__sub-menu__toggle::after {
        content: '+';
        display: block; }
  .sidebar__cta {
    background: whitesmoke;
    position: relative; }
    .foundation .sidebar__cta {
      background: #f7f6f1; }
    .sidebar__cta::before {
      background-color: #f98d29;
      content: '';
      display: block;
      height: 4px;
      left: calc(50% - 30px);
      position: absolute;
      top: 0;
      width: 60px;
      z-index: 1; }
      .foundation .sidebar__cta::before {
        background-color: #0e92a2; }
    .sidebar__cta__item {
      -ms-flex-align: center;
          align-items: center;
      display: -ms-flexbox;
      display: flex;
      height: 70px;
      -ms-flex-pack: justify;
          justify-content: space-between;
      position: relative; }
      .sidebar__cta__item::after {
        background: rgba(0, 0, 0, 0.1);
        bottom: 0;
        content: '';
        display: block;
        height: 1px;
        left: 1.5rem;
        position: absolute;
        width: calc(100% - 3rem); }
      .sidebar__cta__item:last-of-type::after {
        display: none; }
      .sidebar__cta__item a {
        font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
        font-style: normal;
        font-weight: 500;
        color: #0066a1;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
            flex-direction: column;
        font-size: 0.938em;
        height: 100%;
        -ms-flex-pack: center;
            justify-content: center;
        line-height: 1.125em;
        padding-left: 5.5rem;
        padding-right: 2.5rem;
        transition: background .4s ease-out, color .4s ease-out;
        width: 100%; }
        .sidebar__cta__item a:hover, .sidebar__cta__item a:focus {
          background: #1466a1;
          color: #fff;
          transition: background .24s ease-out, color .24s ease-out; }
          .sidebar__cta__item a:hover::before, .sidebar__cta__item a:focus::before {
            background: transparent;
            color: #fff;
            transition: background .24s ease-out, color .24s ease-out; }
          .foundation .sidebar__cta__item a:hover, .foundation .sidebar__cta__item a:focus {
            background: #ae9065; }
            .foundation .sidebar__cta__item a:hover::before, .foundation .sidebar__cta__item a:focus::before {
              color: #fff; }
        .sidebar__cta__item a::before {
          background: #fff;
          border-radius: 100%;
          color: #f98d29;
          font-size: 2rem;
          height: 3rem;
          left: 20px;
          padding-top: 7px;
          position: absolute;
          text-align: center;
          top: calc(50% - 1.5rem);
          transition: background .4s ease-out, color .4s ease-out;
          width: 3rem; }
          .foundation .sidebar__cta__item a::before {
            color: #0e92a2; }
      .sidebar__cta__item.active a {
        background: #1466a1;
        color: #fff; }
        .foundation .sidebar__cta__item.active a {
          background: #ae9065; }
        .sidebar__cta__item.active a::before {
          background: transparent;
          color: #fff;
          transition: background .24s ease-out, color .24s ease-out; }
  .sidebar__call {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 500;
    color: #060606;
    font-size: 0.938rem;
    line-height: 1.5rem;
    margin-bottom: 30px;
    text-align: center; }
    .dh .sidebar__call {
      margin-bottom: 18px; }
  .sidebar__tel {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    color: #0165a1;
    display: block;
    font-size: 1.375rem; }
  .sidebar__toggle {
    background: #fff;
    border-radius: 100%;
    box-sizing: border-box;
    height: 24px;
    position: absolute;
    right: 10px;
    top: calc(50% - 12px);
    transition: background .4s ease-out;
    width: 24px; }
    .sidebar__toggle::after {
      color: #1466a1;
      content: '–';
      cursor: pointer;
      display: inline-block;
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 0;
      padding-top: 8px;
      transition: color .4s ease-out; }
    .sidebar__toggle:hover, .sidebar__toggle:focus {
      background: #073872;
      transition: background .24s ease-out; }
      .sidebar__toggle:hover::after, .sidebar__toggle:focus::after {
        color: #fff;
        transition: color .24s ease-out; }
  .sidebar__mobile-switch {
    display: block;
    padding: 1rem; }
    @media screen and (min-width: 960px) {
      .sidebar__mobile-switch {
        display: none; } }
    .sidebar__mobile-switch__btn {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 700;
      background-color: #0066a1;
      background-image: url("../img/icon-arrow-white-w-med.svg");
      background-position: 10% 50%;
      background-repeat: no-repeat;
      color: #fff;
      cursor: pointer;
      display: inline-block;
      font-size: .875rem;
      line-height: 1rem;
      padding: 8px 10px 8px 34px;
      text-align: left;
      transition: background-color .4s ease-out;
      width: 125px; }
      .sidebar__mobile-switch__btn:hover, .sidebar__mobile-switch__btn:focus {
        background-color: #002b46;
        transition: background-color .25s ease-out; }
      .sidebar__mobile-switch__btn.active {
        background-image: url("../img/icon-menu-open-sm.svg");
        background-position: 8% 50%; }

.story-cta {
  position: relative; }
  @media screen and (max-width: 39.9375em) {
    .dh .story-cta {
      margin-top: 2rem; } }
  @media screen and (min-width: 40em) {
    .dh .story-cta {
      margin-top: 4rem; } }

.story-cta__story,
.story-cta__story-link,
.story-cta__img-container,
.story-cta__img,
.story-cta__contain,
.story-cta__story-quote {
  height: 100%; }

.story-cta__story-link {
  display: block;
  position: relative; }
  .story-cta__story-link:hover .story-cta__story-quote-link::after {
    left: 4px; }

@media screen and (max-width: 39.9375em) {
  .story-cta__img-container,
  .story-cta__story-quote {
    min-height: 320px; } }

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .story-cta__img-container,
  .story-cta__story-quote {
    min-height: 370px; } }

@media screen and (min-width: 64em) {
  .story-cta__img-container,
  .story-cta__story-quote {
    min-height: 420px; } }

.story-cta__img-container {
  width: 100%;
  position: absolute; }
  .story-cta__img-container::before {
    background-color: #fff;
    bottom: 0;
    content: '';
    display: block;
    left: 0;
    opacity: 0;
    position: absolute;
    right: 0;
    top: 0;
    transition: opacity 2s ease; }
  .story-cta__img-container:hover::before {
    opacity: .2; }

.story-cta__img {
  background-position: right;
  background-repeat: no-repeat;
  background-size: cover;
  bottom: 0;
  display: none;
  left: 0;
  position: absolute;
  right: 0;
  top: 0; }
  @media screen and (max-width: 39.9375em) {
    .story-cta__img--sm {
      display: block; } }
  @media screen and (min-width: 40em) and (max-width: 63.9375em) {
    .story-cta__img--md {
      display: block; } }
  @media screen and (min-width: 64em) {
    .story-cta__img--lg {
      display: block; } }

.story-cta__contain {
  max-width: 73.625rem;
  margin-right: auto;
  margin-left: auto;
  padding: 20px; }
  .story-cta__contain::after, .story-cta__contain::before {
    content: '';
    display: table; }
  .story-cta__contain::after {
    clear: both; }

.story-cta__story-quote {
  position: relative;
  z-index: 2; }
  @media screen and (max-width: 39.9375em) {
    .story-cta__story-quote {
      padding-bottom: 80px; } }
  @media screen and (max-width: 63.9375em) {
    .story-cta__story-quote {
      display: block;
      width: 100%; } }
  @media screen and (min-width: 64em) {
    .story-cta__story-quote {
      display: inline-block;
      width: 65%; } }

.story-cta__story-quote-text {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600; }
  @media screen and (max-width: 39.9375em) {
    .story-cta__story-quote-text {
      font-size: 22px;
      width: 70%; }
      .story-cta__story-quote-text span {
        font-size: 14px; } }
  @media screen and (min-width: 40em) {
    .story-cta__story-quote-text {
      font-size: 30px;
      width: 50%; }
      .story-cta__story-quote-text span {
        font-size: 16px; } }
  .story-cta__story-quote-text span {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    text-transform: uppercase; }

.story-cta__story-quote-link {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  display: inline-block;
  text-transform: uppercase; }
  @media screen and (max-width: 39.9375em) {
    .story-cta__story-quote-link {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 700;
      -moz-osx-font-smoothing: grayscale;
      -webkit-font-smoothing: antialiased;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      background-color: #f98d29;
      border: 0;
      bottom: 0;
      color: #fff;
      cursor: pointer;
      display: block;
      font-size: 16px;
      left: 0;
      line-height: 1.3;
      outline: none;
      padding: 18px 20px;
      position: absolute;
      right: 0;
      text-align: center;
      text-decoration: none;
      text-transform: uppercase;
      transition: background-color 250ms ease; }
      .foundation .story-cta__story-quote-link {
        background-color: #26a3dc; }
      .story-cta__story-quote-link:hover, .story-cta__story-quote-link:active, .story-cta__story-quote-link:focus {
        color: #fff;
        background-color: #94d60a; }
        .foundation .story-cta__story-quote-link:hover, .foundation .story-cta__story-quote-link:active, .foundation .story-cta__story-quote-link:focus {
          background-color: #26a3dc; } }
  @media screen and (min-width: 40em) {
    .story-cta__story-quote-link {
      border-top: 2px solid #fff;
      color: #f48c3b;
      margin-top: 2rem;
      padding-right: 4rem;
      padding-top: 1rem; }
      .story-cta__story-quote-link::after {
        background: url("/micrositetemplates/assets/img/svg/icon-chevron-orange-e.svg") center no-repeat;
        background-size: 6px 10px;
        bottom: 1px;
        color: transparent;
        content: '\0a00';
        display: inline;
        font-family: Arial, sans-serif;
        font-size: 12px;
        height: 10px;
        left: 0;
        margin-left: 5px;
        position: relative;
        transition: left .3s ease;
        vertical-align: baseline;
        width: 6px; } }
  @media screen and (min-width: 40em) and (min-width: 64em) {
    .story-cta__story-quote-link:hover::after, .story-cta__story-quote-link:focus::after {
      left: 4px; } }

@media screen and (max-width: 63.9375em) {
  .story-cta__ctas {
    display: -ms-flexbox;
    display: flex;
    width: 100%; } }

@media screen and (min-width: 64em) {
  .story-cta__ctas {
    display: inline-block;
    bottom: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 35%; } }

.story-cta__cta {
  color: #fff;
  height: 50%;
  text-align: center;
  padding: 10px 30px; }
  @media screen and (max-width: 63.9375em) {
    .story-cta__cta {
      -ms-flex-align: center;
          align-items: center;
      display: -ms-flexbox;
      display: flex;
      -ms-flex: 0 1 50%;
          flex: 0 1 50%;
      height: 65px;
      position: relative; }
      .story-cta__cta p {
        display: none; }
      .story-cta__cta a::after {
        background: url("/micrositetemplates/assets/img/svg/icon-chevron-white-e.svg") center no-repeat;
        background-size: 6px 10px;
        bottom: 1px;
        color: transparent;
        content: '\0a00';
        display: inline;
        font-family: Arial, sans-serif;
        font-size: 12px;
        height: 10px;
        left: 2px;
        margin-left: 5px;
        position: relative;
        transition: left .3s ease;
        vertical-align: baseline;
        width: 6px; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .story-cta__cta a:hover::after, .story-cta__cta a:focus::after {
      left: 6px; } }
  @media screen and (max-width: 63.9375em) {
      .story-cta__cta .btn {
        background-color: transparent;
        bottom: 0;
        color: #fff;
        left: 0;
        position: absolute;
        right: 0;
        top: 3px; } }
  @media screen and (min-width: 64em) {
    .story-cta__cta {
      -ms-flex-align: center;
          align-items: center;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-flow: column;
          flex-flow: column;
      -ms-flex-pack: center;
          justify-content: center; }
      .story-cta__cta *:not(.btn) {
        width: 100%; } }
  .story-cta__cta--top {
    background-color: rgba(28, 109, 153, 0.925); }
  .story-cta__cta--bottom {
    background-color: rgba(4, 46, 95, 0.925); }

.dh table {
  border-bottom: 2px solid #97acc2; }
  .dh table tr td:first-child:nth-last-child(1),
  .dh table tr td:first-child:nth-last-child(1) ~ td {
    width: 100%; }
  .dh table tr th:first-child:nth-last-child(1),
  .dh table tr th:first-child:nth-last-child(1) ~ th {
    width: 100%; }
  .dh table tr td:first-child:nth-last-child(2),
  .dh table tr td:first-child:nth-last-child(2) ~ td {
    width: 50%; }
  .dh table tr th:first-child:nth-last-child(2),
  .dh table tr th:first-child:nth-last-child(2) ~ th {
    width: 50%; }
  .dh table tr td:first-child:nth-last-child(3),
  .dh table tr td:first-child:nth-last-child(3) ~ td {
    width: 33.33333%; }
  .dh table tr th:first-child:nth-last-child(3),
  .dh table tr th:first-child:nth-last-child(3) ~ th {
    width: 33.33333%; }
  .dh table tr td:first-child:nth-last-child(4),
  .dh table tr td:first-child:nth-last-child(4) ~ td {
    width: 25%; }
  .dh table tr th:first-child:nth-last-child(4),
  .dh table tr th:first-child:nth-last-child(4) ~ th {
    width: 25%; }
  .dh table tr td:first-child:nth-last-child(5),
  .dh table tr td:first-child:nth-last-child(5) ~ td {
    width: 20%; }
  .dh table tr th:first-child:nth-last-child(5),
  .dh table tr th:first-child:nth-last-child(5) ~ th {
    width: 20%; }
  .dh table tr td:first-child:nth-last-child(6),
  .dh table tr td:first-child:nth-last-child(6) ~ td {
    width: 16.66667%; }
  .dh table tr th:first-child:nth-last-child(6),
  .dh table tr th:first-child:nth-last-child(6) ~ th {
    width: 16.66667%; }
  .dh table tr td:first-child:nth-last-child(7),
  .dh table tr td:first-child:nth-last-child(7) ~ td {
    width: 14.28571%; }
  .dh table tr th:first-child:nth-last-child(7),
  .dh table tr th:first-child:nth-last-child(7) ~ th {
    width: 14.28571%; }
  .dh table a {
    color: #0066a1; }
    @media screen and (min-width: 64em) {
      .dh table a:hover, .dh table a:focus {
        color: #26a3dc; } }
  .dh table th {
    text-align: left; }

.dh .table {
  border-collapse: collapse;
  caption-side: bottom;
  font-size: 14px;
  max-width: 100%;
  width: 100%; }
  .dh .table th,
  .dh .table td {
    line-height: 1.2;
    min-width: 155px;
    padding: 16px 20px 12px;
    position: static; }
  .dh .table th {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 15px;
    text-align: left;
    vertical-align: middle; }
  .dh .table td {
    vertical-align: top; }
  .dh .table > thead {
    background-color: #eee;
    border-bottom: 4px solid #113e73; }
    .dh .table > thead th {
      color: #113e73;
      text-transform: uppercase;
      vertical-align: bottom; }
      .dh .table > thead th + th {
        border-left: 0;
        border-right: 0; }
      .dh .table > thead th:first-child {
        border-right: 0; }
  .dh .table > tbody + tbody {
    border-top: 2px solid #97acc2; }
  .dh .table .table {
    background-color: inherit; }
  .dh .table .table__caption {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    caption-side: bottom;
    color: #8a8a8a;
    font-size: 14px;
    font-style: italic;
    margin-top: 15px;
    text-align: left; }
  .dh .table.table--striped > tbody > tr:nth-child(even) > td,
  .dh .table.table--striped > tbody > tr:nth-child(even) > th {
    background-color: #f3f3f4; }
  .dh .table.table--directory > thead > tr > th,
  .dh .table.table--directory > thead > tr > td,
  .dh .table.table--directory > tbody > tr > th,
  .dh .table.table--directory > tbody > tr > td {
    width: auto !important; }
  .dh .table.table--directory > thead > tr > th:last-child,
  .dh .table.table--directory > thead > tr > td:last-child,
  .dh .table.table--directory > tbody > tr > th:last-child,
  .dh .table.table--directory > tbody > tr > td:last-child {
    text-align: center; }

.dh .table--responsive {
  margin: 3rem 0;
  overflow-x: auto; }
  .dh .table--responsive:first-child {
    margin-top: 0; }

.tabs {
  background-color: #fff;
  border: 0; }
  @media screen and (min-width: 960px) {
    .tabs {
      -ms-flex-order: 1;
          order: 1; } }
  @media print, screen and (min-width: 64em) {
    .tabs__container {
      max-width: 73.625rem;
      margin-right: auto;
      margin-left: auto; }
      .tabs__container::after, .tabs__container::before {
        content: '';
        display: table; }
      .tabs__container::after {
        clear: both; } }
  @media print, screen and (min-width: 64em) {
    .tabs__wrapper {
      width: 100%;
      float: left;
      padding-right: 1.25rem;
      padding-left: 1.25rem;
      text-align: center; } }
  @media print, screen and (min-width: 64em) and (min-width: 64em) {
    .tabs__wrapper {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
      .tabs__wrapper:last-child:not(:first-child) {
        float: right; } }
  @media screen and (max-width: 63.9375em) {
    .tabs__nav {
      display: none; } }
  @media print, screen and (min-width: 64em) {
    .tabs__nav {
      margin: 0;
      border: 1px solid transparent;
      background: #f5f5f5;
      list-style-type: none;
      border: 0;
      background-color: #fff;
      display: inline-block;
      margin: 18px 0 30px;
      list-style: none;
      text-align: center; }
      .tabs__nav::after, .tabs__nav::before {
        content: '';
        display: table; }
      .tabs__nav::after {
        clear: both; } }
  @media print, screen and (min-width: 64em) {
    .tabs__nav-item {
      float: left;
      display: inline;
      margin-right: 15px; }
      .tabs__nav-item > a {
        display: block;
        padding: 16px 20px;
        font-size: 16px;
        line-height: 1;
        color: #0066a1; }
        .tabs__nav-item > a:hover {
          background: #26a3dc;
          color: #00588a; }
        .tabs__nav-item > a:focus, .tabs__nav-item > a[aria-selected='true'] {
          background: #f98d29;
          color: #fff; }
      .tabs__nav-item:last-child {
        margin-right: 0; }
      .tabs__nav-item > a:focus, .tabs__nav-item > a[aria-selected='true'], .tabs__nav-item > a:hover {
        background: #f98d29; }
        .foundation .tabs__nav-item > a:focus, .foundation .tabs__nav-item > a[aria-selected='true'], .foundation .tabs__nav-item > a:hover {
          background: #26a3dc; } }
  @media print, screen and (min-width: 64em) {
    .tabs__nav-link {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 700;
      background-color: #f5f5f5;
      font-size: 16px;
      display: inline-block;
      text-transform: uppercase;
      transition: color 250ms ease-out, background-color 250ms ease-out; }
      .is-active .tabs__nav-link {
        pointer-events: none; }
      .tabs__nav-link:hover {
        color: #fff !important; } }
  @media screen and (max-width: 63.9375em) {
    .tabs__toggle-link {
      font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-style: normal;
      font-weight: 600;
      color: #0066a1;
      font-size: 24px;
      line-height: 1.2 !important;
      margin-right: 40px;
      padding: 27px 20px !important;
      position: relative; }
      .tabs__toggle-link:hover, .tabs__toggle-link:active, .tabs__toggle-link:focus {
        color: #0066a1; }
      .tabs__toggle-link::before {
        height: 6px;
        width: 25px;
        background-color: #f98d29;
        content: '';
        opacity: 0;
        position: absolute;
        right: 20px;
        top: 38px;
        transition: opacity 250ms ease; }
        .heart-vascular .tabs__toggle-link::before {
          height: 28px;
          width: 28px;
          position: absolute;
          right: 18px;
          top: calc(50% - 14px);
          display: block;
          color: white;
          font-size: 2.2rem;
          line-height: 24px;
          border-radius: 100%;
          background: #f98d29;
          font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
          font-style: normal;
          font-weight: 500;
          text-align: center;
          content: "+";
          opacity: 1;
          transition: background .4s ease-out, color .4s ease-out; } }
  @media print, screen and (min-width: 64em) {
    .tabs__toggle-link {
      display: none; } }
  @media screen and (max-width: 63.9375em) {
    .tabs__toggle-link .tabs__plus {
      height: 24px;
      width: 24px;
      position: absolute;
      right: 20px;
      top: 28px;
      transition: opacity 250ms ease; } }
  @media print, screen and (min-width: 64em) {
    .tabs__toggle-link .tabs__plus {
      display: none; } }
  .heart-vascular .tabs__toggle-link > .tabs__plus {
    display: none; }
  .tabs__content {
    list-style-type: none;
    margin-bottom: 0;
    margin-left: 0;
    padding-left: 0; }
    @media screen and (max-width: 63.9375em) {
      .tabs__content {
        margin: 0;
        list-style-type: none;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
        -ms-flex-align: center;
            align-items: center;
        width: 100%;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
        .tabs__content > li {
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
          [data-whatinput='mouse'] .tabs__content > li {
            outline: 0; }
        .tabs__content > li > a {
          display: block;
          padding: 0;
          line-height: 1; }
        .tabs__content input,
        .tabs__content select,
        .tabs__content a,
        .tabs__content button {
          margin-bottom: 0; }
        .tabs__content > li {
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
          max-width: 100%; }
        .tabs__content > li > a {
          -ms-flex-pack: start;
              justify-content: flex-start;
          -ms-flex-align: start;
              align-items: flex-start; } }
    @media print, screen and (min-width: 64em) {
      .tabs__content {
        border: 1px solid transparent;
        border-top: 0;
        background: #fff;
        color: #000;
        transition: all 0.5s ease;
        border: 0 !important;
        text-align: left; } }
  @media screen and (max-width: 63.9375em) {
    .tabs__panel {
      border-bottom: 2px solid #e6e7e8;
      display: block !important;
      height: auto !important;
      position: relative; }
      .tabs__panel[aria-expanded='true'] .tabs__toggle-link .tabs__plus {
        opacity: 0; }
      .tabs__panel[aria-expanded='true'] .tabs__toggle-link::before {
        opacity: 1; }
      .tabs__panel:last-child {
        border-bottom: 0; }
      .heart-vascular .tabs__panel[aria-expanded='true'] .tabs__toggle-link::before {
        content: "-";
        background: white;
        color: #f98d29; } }
  @media print, screen and (min-width: 64em) {
    .tabs__panel {
      display: none;
      padding: 0; }
      .tabs__panel[aria-hidden="false"] {
        display: block; } }
  .tabs__panel > ul {
    list-style-type: none;
    margin-bottom: 0;
    margin-left: 0;
    padding-left: 0; }
    @media screen and (max-width: 63.9375em) {
      .tabs__panel > ul {
        max-width: 73.625rem;
        margin-right: auto;
        margin-left: auto; }
        .tabs__panel > ul::after, .tabs__panel > ul::before {
          content: '';
          display: table; }
        .tabs__panel > ul::after {
          clear: both; } }
    @media print, screen and (min-width: 64em) {
      .tabs__panel > ul {
        display: block !important; } }
    @media screen and (max-width: 63.9375em) {
      .tabs__panel > ul li {
        width: 100%;
        float: left;
        padding-right: 1.25rem;
        padding-left: 1.25rem;
        float: none; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .tabs__panel > ul li {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
    @media screen and (max-width: 63.9375em) {
        .tabs__panel > ul li:last-child:not(:first-child) {
          float: right; }
        .tabs__panel > ul li:last-child:not(:first-child) {
          float: none; } }
  @media print, screen and (min-width: 64em) {
    .tabs__columns {
      max-width: 73.625rem;
      margin-right: auto;
      margin-left: auto; }
      .tabs__columns::after, .tabs__columns::before {
        content: '';
        display: table; }
      .tabs__columns::after {
        clear: both; } }
  .tabs__image-wrapper {
    margin-bottom: 20px;
    text-align: center; }
    @media print, screen and (min-width: 64em) {
      .tabs__image-wrapper {
        width: 33.33333%;
        float: left;
        padding-right: 1.25rem;
        padding-left: 1.25rem; }
        .tabs__image-wrapper:last-child:not(:first-child) {
          float: right; } }
    .tabs__image-wrapper .tabs__plus {
      position: absolute; }
      @media screen and (max-width: 63.9375em) {
        .tabs__image-wrapper .tabs__plus {
          height: 34px;
          width: 34px;
          left: 35px;
          top: 45px; } }
      @media print, screen and (min-width: 64em) {
        .tabs__image-wrapper .tabs__plus {
          height: 53px;
          width: 53px;
          left: 35px;
          top: 35px; } }
  .tabs__image-inner {
    display: inline-block;
    position: relative; }
  .tabs__image {
    border-radius: 50%;
    display: inline-block !important;
    border: solid 30px white;
    box-sizing: border-box; }
    @media screen and (max-width: 63.9375em) {
      .tabs__image {
        height: 240px;
        width: 240px; } }
  @media print, screen and (min-width: 64em) {
    .tabs__copy {
      width: 66.66667%;
      float: left;
      padding-right: 1.25rem;
      padding-left: 1.25rem; }
      .tabs__copy:last-child:not(:first-child) {
        float: right; } }
  .tabs__title {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    color: #0066a1;
    margin-bottom: 20px; }
    .foundation .tabs__title {
      color: #ae9065; }
    @media screen and (max-width: 63.9375em) {
      .tabs__title {
        display: none; } }
    @media print, screen and (min-width: 64em) {
      .tabs__title {
        font-size: 22px; } }

.tiles {
  background-color: #f5f5f5; }
  @media screen and (max-width: 63.9375em) {
    .tiles {
      padding-top: 40px; } }
  @media print, screen and (min-width: 64em) {
    .tiles {
      padding-top: 55px; } }
  .tiles__container {
    max-width: 73.625rem;
    margin-right: auto;
    margin-left: auto; }
    .tiles__container::after, .tiles__container::before {
      content: '';
      display: table; }
    .tiles__container::after {
      clear: both; }
    @media print, screen and (min-width: 64em) {
      .tiles__container {
        position: relative; } }
  @media screen and (max-width: 74.9375em) {
    .tiles__content {
      width: 100%;
      float: left;
      padding-right: 1.25rem;
      padding-left: 1.25rem; } }
  @media screen and (max-width: 74.9375em) and (min-width: 64em) {
    .tiles__content {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (max-width: 74.9375em) {
      .tiles__content:last-child:not(:first-child) {
        float: right; } }
  @media screen and (min-width: 75em) {
    .tiles__content {
      width: 50%;
      float: left;
      padding-right: 1.25rem;
      padding-left: 1.25rem;
      margin-left: 25%;
      margin-bottom: 32px; } }
  @media screen and (min-width: 75em) and (min-width: 64em) {
    .tiles__content {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 75em) {
      .tiles__content:last-child:not(:first-child) {
        float: right; } }
  .tiles__title {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    color: #0066a1;
    line-height: 1.1;
    margin-bottom: 20px;
    text-align: center;
    text-transform: uppercase; }
    @media screen and (max-width: 63.9375em) {
      .tiles__title {
        font-size: 24px; } }
    @media print, screen and (min-width: 64em) {
      .tiles__title {
        font-size: 28px; } }
  .tiles__description {
    text-align: center; }
    @media screen and (max-width: 63.9375em) {
      .tiles__description {
        font-size: 16px;
        margin-bottom: 50px; } }
    @media print, screen and (min-width: 64em) {
      .tiles__description {
        font-size: 14px;
        margin-bottom: 56px; } }
    .tiles__description a:hover {
      text-decoration: underline; }
  .tiles__list {
    background-color: #fff;
    clear: both;
    box-sizing: border-box;
    -ms-flex: 1 0 auto; }
    @media screen and (max-width: 63.9375em) {
      .tiles__list {
        margin: 0;
        list-style-type: none;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
        -ms-flex-align: center;
            align-items: center;
        width: 100%;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
        .tiles__list > li {
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
          [data-whatinput='mouse'] .tiles__list > li {
            outline: 0; }
        .tiles__list > li > a {
          display: block;
          padding: 0;
          line-height: 1; }
        .tiles__list input,
        .tiles__list select,
        .tiles__list a,
        .tiles__list button {
          margin-bottom: 0; }
        .tiles__list > li {
          -ms-flex: 0 0 100%;
              flex: 0 0 100%;
          max-width: 100%; }
        .tiles__list > li > a {
          -ms-flex-pack: start;
              justify-content: flex-start;
          -ms-flex-align: start;
              align-items: flex-start; } }
    @media print, screen and (min-width: 64em) {
      .tiles__list {
        list-style-type: none;
        margin-bottom: 0;
        margin-left: 0;
        padding-left: 0;
        display: -ms-flexbox;
        display: flex;
        margin-left: auto;
        margin-right: auto;
        width: 100%; } }
    @media screen and (min-width: 75em) {
      .tiles__list {
        max-width: 1000px; } }
  .tiles__item {
    box-sizing: border-box; }
    @media screen and (max-width: 63.9375em) {
      .tiles__item {
        border-bottom: 2px solid #e6e7e8;
        position: relative; }
        .tiles__item[aria-expanded='true'] .tiles__plus {
          opacity: 0; }
        .tiles__item[aria-expanded='true'] .tiles__toggle-link::before {
          opacity: 1; }
        .tiles__item[aria-expanded='true'] .tiles__toggl {
          background: white;
          color: #f98d29; }
          .tiles__item[aria-expanded='true'] .tiles__toggl:before {
            content: "-"; }
        .tiles__item:last-child {
          border-bottom: 0; } }
    @media print, screen and (min-width: 64em) {
      .tiles__item {
        box-shadow: 0 10px 57px 0 rgba(35, 31, 32, 0.08);
        padding: 40px 42px; }
        .tiles__item:first-child {
          background-color: #fff;
          -ms-flex: 1 1 35.6%;
              flex: 1 1 35.6%;
          margin-top: -34px;
          padding-top: 54px;
          -ms-flex-order: 2;
              order: 2;
          z-index: 2; }
        .tiles__item:nth-child(2), .tiles__item:last-child {
          -ms-flex: 1 1 32.2%;
              flex: 1 1 32.2%; }
        .tiles__item:nth-child(2) {
          -ms-flex-order: 1;
              order: 1; }
        .tiles__item:last-child {
          -ms-flex-order: 3;
              order: 3; } }
  .tiles__toggle-link {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    color: #0066a1; }
    @media screen and (max-width: 63.9375em) {
      .tiles__toggle-link {
        padding: 27px 20px !important; }
        .tiles__toggle-link:hover, .tiles__toggle-link:active, .tiles__toggle-link:focus {
          color: #0066a1; } }
    @media print, screen and (min-width: 64em) {
      .tiles__toggle-link {
        cursor: default;
        display: inline-block;
        margin-bottom: 8px; } }
    @media screen and (max-width: 63.9375em) {
      .tiles__toggle-link::before {
        height: 6px;
        width: 25px;
        background-color: #f98d29;
        content: '';
        opacity: 0;
        position: absolute;
        right: 20px;
        top: 42px;
        transition: opacity 250ms ease; } }
  .tiles__sub-title {
    font-size: 24px;
    margin-bottom: 0; }
    @media screen and (max-width: 63.9375em) {
      .tiles__sub-title {
        margin-right: 40px; } }
  @media screen and (max-width: 63.9375em) {
    .tiles__plus {
      height: 24px;
      width: 24px;
      position: absolute;
      right: 20px;
      top: 32px;
      transition: opacity 250ms ease; } }
  @media print, screen and (min-width: 64em) {
    .tiles__plus {
      display: none; } }
  @media screen and (max-width: 63.9375em) {
    .tiles__urgent-care {
      height: 20px;
      width: 205px; } }
  @media print, screen and (min-width: 64em) {
    .tiles__urgent-care {
      height: 24px;
      width: 252px; } }
  .tiles__sub-list {
    list-style-type: none;
    margin-bottom: 0;
    margin-left: 0;
    padding-left: 0; }
    @media screen and (max-width: 63.9375em) {
      .tiles__sub-list {
        max-width: 73.625rem;
        margin-right: auto;
        margin-left: auto;
        margin-bottom: 40px; }
        .tiles__sub-list::after, .tiles__sub-list::before {
          content: '';
          display: table; }
        .tiles__sub-list::after {
          clear: both; } }
  .tiles__sub-item a:hover {
    text-decoration: underline; }
  @media screen and (max-width: 63.9375em) {
    .tiles__sub-item {
      width: 100%;
      float: left;
      padding-right: 1.25rem;
      padding-left: 1.25rem;
      padding-left: 20px;
      padding-right: 20px; } }
  @media screen and (max-width: 63.9375em) and (min-width: 64em) {
    .tiles__sub-item {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (max-width: 63.9375em) {
      .tiles__sub-item:last-child:not(:first-child) {
        float: right; } }
  @media print, screen and (min-width: 64em) {
    .tiles__sub-item {
      font-size: 14px; } }
  .tiles__toggl {
    height: 28px;
    width: 28px;
    position: absolute;
    right: 18px;
    top: 32px;
    display: block;
    color: white;
    font-size: 2.2rem;
    line-height: 24px;
    border-radius: 100%;
    background: #f98d29;
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 500;
    text-align: center;
    transition: background .4s ease-out, color .4s ease-out; }
    @media print, screen and (min-width: 64em) {
      .tiles__toggl {
        display: none; } }
    .tiles__toggl:before {
      content: "+"; }

.tooltip {
  display: inline; }
  @media screen and (min-width: 64em) {
    .tooltip {
      position: relative; } }

.tooltip__toggle {
  background-position: center;
  background-repeat: no-repeat;
  background-size: 5px 12px;
  content: '\0a00';
  display: inline-block;
  height: 14px;
  left: 3px;
  position: relative;
  top: -5px;
  vertical-align: baseline;
  width: 6px; }
  .tooltip__toggle:hover {
    cursor: pointer; }
  .tooltip__toggle.tooltip__toggle--white {
    background-image: url("/micrositetemplates/assets/img/svg/icon-info-white.svg"); }
  .tooltip__toggle.tooltip__toggle--blue {
    background-image: url("/MicrositeTemplates/assets/img/svg/icon-info-blue.svg"); }

.tooltip__popup {
  background-color: #fff;
  border-bottom: 2px solid #1cb0d5;
  box-shadow: 0 0 20px 5px rgba(0, 0, 0, 0.15);
  display: none;
  position: absolute;
  z-index: 100; }
  @media screen and (max-width: 63.9375em) {
    .tooltip__popup {
      left: 20px;
      margin-top: 20px;
      right: 20px; } }
  @media screen and (min-width: 64em) {
    .tooltip__popup {
      left: -31px;
      top: 30px;
      width: 425px; } }
  .tooltip__popup::after {
    border-bottom: 10px solid #fff;
    border-left: 18px solid transparent;
    border-right: 18px solid transparent;
    content: '';
    display: block;
    height: 0;
    position: absolute;
    top: -10px;
    width: 0; }
    @media screen and (max-width: 39.9375em) {
      .tooltip__popup::after {
        left: calc(50% - 18px); } }
    @media screen and (min-width: 40em) and (max-width: 63.9375em) {
      .tooltip__popup::after {
        left: calc(50% - 18px); } }
    @media screen and (min-width: 64em) {
      .tooltip__popup::after {
        left: 20px; } }
  .tooltip__popup.is-open {
    display: block; }

.tooltip__btn-close {
  background-image: url("/micrositetemplates/assets/img/svg/icon-close-cyan.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 15px 15px;
  height: 15px;
  position: absolute;
  right: 8px;
  top: 8px;
  width: 15px; }
  @media screen and (min-width: 64em) {
    .tooltip__btn-close:hover {
      cursor: pointer; } }

.tooltip__popup-inner {
  color: #000;
  padding: 20px; }
  .tooltip__popup-inner > *:last-child {
    margin-bottom: 0; }

.tooltip__popup-title {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 22px;
  margin-bottom: 0; }

a {
  color: #f98d29;
  transition: color 250ms ease; }
  a:hover {
    color: #26a3dc; }

.link-chevron--blue {
  color: #49f1ff; }
  .link-chevron--blue::after {
    background: url("/micrositetemplates/assets/img/svg/icon-chevron-blue-e.svg") center no-repeat;
    background-size: 5px 8px;
    bottom: 1px;
    color: transparent;
    content: '\0a00';
    display: inline;
    font-family: Arial, sans-serif;
    font-size: 12px;
    height: 8px;
    left: 1px;
    margin-left: 5px;
    position: relative;
    transition: left .3s ease;
    vertical-align: baseline;
    width: 5px; }
  @media screen and (min-width: 64em) {
    .link-chevron--blue:hover::after, .link-chevron--blue:focus::after {
      left: 5px; } }
  @media screen and (min-width: 64em) {
    .link-chevron--blue:hover, .link-chevron--blue:focus {
      color: #26a3dc; } }

.hr {
  color: #e6e7e8;
  margin: 2.75rem 0; }

.button {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  text-transform: uppercase; }

h1 {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  color: #fff;
  text-transform: uppercase; }

h2,
.h2 {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  color: #0066a1; }

h3,
.h3 {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 600;
  color: #0066a1; }

.content > .rtf > h1, .content > .flexlist__excerpt > h1,
.content .content__copy--full > .rtf > h1,
.content .content__copy--full > .flexlist__excerpt > h1,
.content .tabs__copy > .rtf > h1,
.content .tabs__copy > .flexlist__excerpt > h1,
.content__container > .rtf > h1,
.content__container > .flexlist__excerpt > h1,
.content__container .content__copy--full > .rtf > h1,
.content__container .content__copy--full > .flexlist__excerpt > h1,
.content__container .tabs__copy > .rtf > h1,
.content__container .tabs__copy > .flexlist__excerpt > h1 {
  color: #0066a1;
  font-size: 34px; }
  .content > .rtf > h1 a, .content > .flexlist__excerpt > h1 a,
  .content .content__copy--full > .rtf > h1 a,
  .content .content__copy--full > .flexlist__excerpt > h1 a,
  .content .tabs__copy > .rtf > h1 a,
  .content .tabs__copy > .flexlist__excerpt > h1 a,
  .content__container > .rtf > h1 a,
  .content__container > .flexlist__excerpt > h1 a,
  .content__container .content__copy--full > .rtf > h1 a,
  .content__container .content__copy--full > .flexlist__excerpt > h1 a,
  .content__container .tabs__copy > .rtf > h1 a,
  .content__container .tabs__copy > .flexlist__excerpt > h1 a {
    color: #0066a1;
    font-size: 34px; }

.content > .rtf > h2, .content > .flexlist__excerpt > h2,
.content > .rtf > .h2,
.content > .flexlist__excerpt > .h2,
.content .content__copy--full > .rtf > h2,
.content .content__copy--full > .flexlist__excerpt > h2,
.content .content__copy--full > .rtf > .h2,
.content .content__copy--full > .flexlist__excerpt > .h2,
.content .tabs__copy > .rtf > h2,
.content .tabs__copy > .flexlist__excerpt > h2,
.content .tabs__copy > .rtf > .h2,
.content .tabs__copy > .flexlist__excerpt > .h2,
.content__container > .rtf > h2,
.content__container > .flexlist__excerpt > h2,
.content__container > .rtf > .h2,
.content__container > .flexlist__excerpt > .h2,
.content__container .content__copy--full > .rtf > h2,
.content__container .content__copy--full > .flexlist__excerpt > h2,
.content__container .content__copy--full > .rtf > .h2,
.content__container .content__copy--full > .flexlist__excerpt > .h2,
.content__container .tabs__copy > .rtf > h2,
.content__container .tabs__copy > .flexlist__excerpt > h2,
.content__container .tabs__copy > .rtf > .h2,
.content__container .tabs__copy > .flexlist__excerpt > .h2 {
  font-size: 30px; }
  .content > .rtf > h2 a, .content > .flexlist__excerpt > h2 a,
  .content > .rtf > .h2 a,
  .content > .flexlist__excerpt > .h2 a,
  .content .content__copy--full > .rtf > h2 a,
  .content .content__copy--full > .flexlist__excerpt > h2 a,
  .content .content__copy--full > .rtf > .h2 a,
  .content .content__copy--full > .flexlist__excerpt > .h2 a,
  .content .tabs__copy > .rtf > h2 a,
  .content .tabs__copy > .flexlist__excerpt > h2 a,
  .content .tabs__copy > .rtf > .h2 a,
  .content .tabs__copy > .flexlist__excerpt > .h2 a,
  .content__container > .rtf > h2 a,
  .content__container > .flexlist__excerpt > h2 a,
  .content__container > .rtf > .h2 a,
  .content__container > .flexlist__excerpt > .h2 a,
  .content__container .content__copy--full > .rtf > h2 a,
  .content__container .content__copy--full > .flexlist__excerpt > h2 a,
  .content__container .content__copy--full > .rtf > .h2 a,
  .content__container .content__copy--full > .flexlist__excerpt > .h2 a,
  .content__container .tabs__copy > .rtf > h2 a,
  .content__container .tabs__copy > .flexlist__excerpt > h2 a,
  .content__container .tabs__copy > .rtf > .h2 a,
  .content__container .tabs__copy > .flexlist__excerpt > .h2 a {
    font-size: 30px; }

.content > .rtf > h3, .content > .flexlist__excerpt > h3,
.content > .rtf > .h3,
.content > .flexlist__excerpt > .h3,
.content .content__copy--full > .rtf > h3,
.content .content__copy--full > .flexlist__excerpt > h3,
.content .content__copy--full > .rtf > .h3,
.content .content__copy--full > .flexlist__excerpt > .h3,
.content .tabs__copy > .rtf > h3,
.content .tabs__copy > .flexlist__excerpt > h3,
.content .tabs__copy > .rtf > .h3,
.content .tabs__copy > .flexlist__excerpt > .h3,
.content__container > .rtf > h3,
.content__container > .flexlist__excerpt > h3,
.content__container > .rtf > .h3,
.content__container > .flexlist__excerpt > .h3,
.content__container .content__copy--full > .rtf > h3,
.content__container .content__copy--full > .flexlist__excerpt > h3,
.content__container .content__copy--full > .rtf > .h3,
.content__container .content__copy--full > .flexlist__excerpt > .h3,
.content__container .tabs__copy > .rtf > h3,
.content__container .tabs__copy > .flexlist__excerpt > h3,
.content__container .tabs__copy > .rtf > .h3,
.content__container .tabs__copy > .flexlist__excerpt > .h3 {
  font-size: 26px; }
  .content > .rtf > h3 a, .content > .flexlist__excerpt > h3 a,
  .content > .rtf > .h3 a,
  .content > .flexlist__excerpt > .h3 a,
  .content .content__copy--full > .rtf > h3 a,
  .content .content__copy--full > .flexlist__excerpt > h3 a,
  .content .content__copy--full > .rtf > .h3 a,
  .content .content__copy--full > .flexlist__excerpt > .h3 a,
  .content .tabs__copy > .rtf > h3 a,
  .content .tabs__copy > .flexlist__excerpt > h3 a,
  .content .tabs__copy > .rtf > .h3 a,
  .content .tabs__copy > .flexlist__excerpt > .h3 a,
  .content__container > .rtf > h3 a,
  .content__container > .flexlist__excerpt > h3 a,
  .content__container > .rtf > .h3 a,
  .content__container > .flexlist__excerpt > .h3 a,
  .content__container .content__copy--full > .rtf > h3 a,
  .content__container .content__copy--full > .flexlist__excerpt > h3 a,
  .content__container .content__copy--full > .rtf > .h3 a,
  .content__container .content__copy--full > .flexlist__excerpt > .h3 a,
  .content__container .tabs__copy > .rtf > h3 a,
  .content__container .tabs__copy > .flexlist__excerpt > h3 a,
  .content__container .tabs__copy > .rtf > .h3 a,
  .content__container .tabs__copy > .flexlist__excerpt > .h3 a {
    font-size: 26px; }

.content > .rtf > h4, .content > .flexlist__excerpt > h4,
.content > .rtf > .h4,
.content > .flexlist__excerpt > .h4,
.content .content__copy--full > .rtf > h4,
.content .content__copy--full > .flexlist__excerpt > h4,
.content .content__copy--full > .rtf > .h4,
.content .content__copy--full > .flexlist__excerpt > .h4,
.content .tabs__copy > .rtf > h4,
.content .tabs__copy > .flexlist__excerpt > h4,
.content .tabs__copy > .rtf > .h4,
.content .tabs__copy > .flexlist__excerpt > .h4,
.content__container > .rtf > h4,
.content__container > .flexlist__excerpt > h4,
.content__container > .rtf > .h4,
.content__container > .flexlist__excerpt > .h4,
.content__container .content__copy--full > .rtf > h4,
.content__container .content__copy--full > .flexlist__excerpt > h4,
.content__container .content__copy--full > .rtf > .h4,
.content__container .content__copy--full > .flexlist__excerpt > .h4,
.content__container .tabs__copy > .rtf > h4,
.content__container .tabs__copy > .flexlist__excerpt > h4,
.content__container .tabs__copy > .rtf > .h4,
.content__container .tabs__copy > .flexlist__excerpt > .h4 {
  color: #0066a1;
  font-size: 22px; }
  .content > .rtf > h4 a, .content > .flexlist__excerpt > h4 a,
  .content > .rtf > .h4 a,
  .content > .flexlist__excerpt > .h4 a,
  .content .content__copy--full > .rtf > h4 a,
  .content .content__copy--full > .flexlist__excerpt > h4 a,
  .content .content__copy--full > .rtf > .h4 a,
  .content .content__copy--full > .flexlist__excerpt > .h4 a,
  .content .tabs__copy > .rtf > h4 a,
  .content .tabs__copy > .flexlist__excerpt > h4 a,
  .content .tabs__copy > .rtf > .h4 a,
  .content .tabs__copy > .flexlist__excerpt > .h4 a,
  .content__container > .rtf > h4 a,
  .content__container > .flexlist__excerpt > h4 a,
  .content__container > .rtf > .h4 a,
  .content__container > .flexlist__excerpt > .h4 a,
  .content__container .content__copy--full > .rtf > h4 a,
  .content__container .content__copy--full > .flexlist__excerpt > h4 a,
  .content__container .content__copy--full > .rtf > .h4 a,
  .content__container .content__copy--full > .flexlist__excerpt > .h4 a,
  .content__container .tabs__copy > .rtf > h4 a,
  .content__container .tabs__copy > .flexlist__excerpt > h4 a,
  .content__container .tabs__copy > .rtf > .h4 a,
  .content__container .tabs__copy > .flexlist__excerpt > .h4 a {
    color: #0066a1;
    font-size: 22px; }

.content > .rtf > h5, .content > .flexlist__excerpt > h5,
.content > .rtf > .h5,
.content > .flexlist__excerpt > .h5,
.content .content__copy--full > .rtf > h5,
.content .content__copy--full > .flexlist__excerpt > h5,
.content .content__copy--full > .rtf > .h5,
.content .content__copy--full > .flexlist__excerpt > .h5,
.content .tabs__copy > .rtf > h5,
.content .tabs__copy > .flexlist__excerpt > h5,
.content .tabs__copy > .rtf > .h5,
.content .tabs__copy > .flexlist__excerpt > .h5,
.content__container > .rtf > h5,
.content__container > .flexlist__excerpt > h5,
.content__container > .rtf > .h5,
.content__container > .flexlist__excerpt > .h5,
.content__container .content__copy--full > .rtf > h5,
.content__container .content__copy--full > .flexlist__excerpt > h5,
.content__container .content__copy--full > .rtf > .h5,
.content__container .content__copy--full > .flexlist__excerpt > .h5,
.content__container .tabs__copy > .rtf > h5,
.content__container .tabs__copy > .flexlist__excerpt > h5,
.content__container .tabs__copy > .rtf > .h5,
.content__container .tabs__copy > .flexlist__excerpt > .h5 {
  color: #0066a1;
  font-size: 18px; }
  .content > .rtf > h5 a, .content > .flexlist__excerpt > h5 a,
  .content > .rtf > .h5 a,
  .content > .flexlist__excerpt > .h5 a,
  .content .content__copy--full > .rtf > h5 a,
  .content .content__copy--full > .flexlist__excerpt > h5 a,
  .content .content__copy--full > .rtf > .h5 a,
  .content .content__copy--full > .flexlist__excerpt > .h5 a,
  .content .tabs__copy > .rtf > h5 a,
  .content .tabs__copy > .flexlist__excerpt > h5 a,
  .content .tabs__copy > .rtf > .h5 a,
  .content .tabs__copy > .flexlist__excerpt > .h5 a,
  .content__container > .rtf > h5 a,
  .content__container > .flexlist__excerpt > h5 a,
  .content__container > .rtf > .h5 a,
  .content__container > .flexlist__excerpt > .h5 a,
  .content__container .content__copy--full > .rtf > h5 a,
  .content__container .content__copy--full > .flexlist__excerpt > h5 a,
  .content__container .content__copy--full > .rtf > .h5 a,
  .content__container .content__copy--full > .flexlist__excerpt > .h5 a,
  .content__container .tabs__copy > .rtf > h5 a,
  .content__container .tabs__copy > .flexlist__excerpt > h5 a,
  .content__container .tabs__copy > .rtf > .h5 a,
  .content__container .tabs__copy > .flexlist__excerpt > .h5 a {
    color: #0066a1;
    font-size: 18px; }

.content > .rtf > h6, .content > .flexlist__excerpt > h6,
.content > .rtf > .h6,
.content > .flexlist__excerpt > .h6,
.content .content__copy--full > .rtf > h6,
.content .content__copy--full > .flexlist__excerpt > h6,
.content .content__copy--full > .rtf > .h6,
.content .content__copy--full > .flexlist__excerpt > .h6,
.content .tabs__copy > .rtf > h6,
.content .tabs__copy > .flexlist__excerpt > h6,
.content .tabs__copy > .rtf > .h6,
.content .tabs__copy > .flexlist__excerpt > .h6,
.content__container > .rtf > h6,
.content__container > .flexlist__excerpt > h6,
.content__container > .rtf > .h6,
.content__container > .flexlist__excerpt > .h6,
.content__container .content__copy--full > .rtf > h6,
.content__container .content__copy--full > .flexlist__excerpt > h6,
.content__container .content__copy--full > .rtf > .h6,
.content__container .content__copy--full > .flexlist__excerpt > .h6,
.content__container .tabs__copy > .rtf > h6,
.content__container .tabs__copy > .flexlist__excerpt > h6,
.content__container .tabs__copy > .rtf > .h6,
.content__container .tabs__copy > .flexlist__excerpt > .h6 {
  font-size: 16px; }
  .content > .rtf > h6 a, .content > .flexlist__excerpt > h6 a,
  .content > .rtf > .h6 a,
  .content > .flexlist__excerpt > .h6 a,
  .content .content__copy--full > .rtf > h6 a,
  .content .content__copy--full > .flexlist__excerpt > h6 a,
  .content .content__copy--full > .rtf > .h6 a,
  .content .content__copy--full > .flexlist__excerpt > .h6 a,
  .content .tabs__copy > .rtf > h6 a,
  .content .tabs__copy > .flexlist__excerpt > h6 a,
  .content .tabs__copy > .rtf > .h6 a,
  .content .tabs__copy > .flexlist__excerpt > .h6 a,
  .content__container > .rtf > h6 a,
  .content__container > .flexlist__excerpt > h6 a,
  .content__container > .rtf > .h6 a,
  .content__container > .flexlist__excerpt > .h6 a,
  .content__container .content__copy--full > .rtf > h6 a,
  .content__container .content__copy--full > .flexlist__excerpt > h6 a,
  .content__container .content__copy--full > .rtf > .h6 a,
  .content__container .content__copy--full > .flexlist__excerpt > .h6 a,
  .content__container .tabs__copy > .rtf > h6 a,
  .content__container .tabs__copy > .flexlist__excerpt > h6 a,
  .content__container .tabs__copy > .rtf > .h6 a,
  .content__container .tabs__copy > .flexlist__excerpt > .h6 a {
    font-size: 16px; }

.dh h6,
.dh .h6 {
  font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: 700;
  margin-top: 1.75rem; }
  @media screen and (max-width: 39.9375em) {
    .dh h6,
    .dh .h6 {
      font-size: 14px; } }
  @media screen and (min-width: 40em) {
    .dh h6,
    .dh .h6 {
      font-size: 16px; } }

.upcoming-events {
  background: #f7f6f1;
  padding: 30px 0 35px; }
  .upcoming-events--white-bg {
    background-color: #fff; }
  .upcoming-events--wildsand-bg {
    background-color: #f5f5f5; }
  @media screen and (min-width: 768px) {
    .upcoming-events {
      padding: 40px 0 45px; } }
  @media screen and (min-width: 960px) {
    .upcoming-events {
      padding: 60px 0 65px; } }
  .upcoming-events__wrap {
    margin: 0 auto;
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
    max-width: 1016px; }
    @media screen and (min-width: 768px) {
      .upcoming-events__wrap {
        padding-left: 30px;
        padding-right: 30px; } }
    @media screen and (min-width: 1200px) {
      .upcoming-events__wrap {
        max-width: 1200px; } }
    .upcoming-events__wrap-fluid {
      max-width: 100%;
      padding-left: 20px;
      padding-right: 20px;
      width: 100%; }
    @media screen and (min-width: 768px) {
      .upcoming-events__wrap {
        padding-left: 30px;
        padding-right: 30px; } }
    @media screen and (min-width: 64em) {
      .upcoming-events__wrap {
        max-width: 1016px; } }
  .upcoming-events__title {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    color: #0066a1;
    font-size: 1.375em;
    line-height: 1.375em;
    margin-bottom: 30px;
    text-align: center;
    text-transform: uppercase; }
    .foundation .upcoming-events__title {
      color: #ae9065; }
    @media screen and (max-width: 63.9375em) {
      .dh .upcoming-events__title {
        font-size: 22px;
        text-align: center; } }
    @media screen and (min-width: 64em) {
      .dh .upcoming-events__title {
        font-size: 26px; } }
    @media screen and (min-width: 768px) {
      .upcoming-events__title {
        margin-bottom: 45px;
        text-align: left; } }
  .upcoming-events__listing {
    list-style: none;
    margin: 0 auto 40px;
    max-width: 480px;
    padding: 0; }
    @media screen and (min-width: 480px) {
      .upcoming-events__listing {
        padding: 0 50px; } }
    @media screen and (min-width: 768px) {
      .upcoming-events__listing {
        margin-bottom: 0;
        max-width: 892px;
        padding: 0 2rem; } }
    @media screen and (min-width: 768px) {
      .dh .upcoming-events__listing {
        padding: 0 1rem; } }
  .upcoming-events__item {
    margin-bottom: 3rem;
    padding-left: 98px;
    position: relative; }
    @media screen and (min-width: 768px) {
      .upcoming-events__item {
        margin-right: 0; } }
  .upcoming-events__big-date {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    background: #9779ac;
    border-radius: 100%;
    color: whitesmoke;
    display: block;
    font-size: 1.125em;
    height: 80px;
    left: 0;
    line-height: 1.375rem;
    padding: 19px 20px;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    top: 0;
    width: 80px; }
    .foundation .upcoming-events__big-date {
      background: #4d5c6e; }
    .dh .upcoming-events__big-date {
      background: #93c243;
      font-size: 16px; }
    .upcoming-events__big-date .num {
      display: block;
      font-size: 1.375rem; }
  .upcoming-events__event-name {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: .875rem;
    line-height: 1.325rem;
    margin-bottom: 1rem;
    padding-top: 1rem; }
    .upcoming-events__event-name a {
      color: #1466a1; }
      @media screen and (min-width: 64em) {
        .upcoming-events__event-name a:hover {
          color: #26a3dc; } }
    .dh .upcoming-events__event-name {
      font-size: 16px; }
  .dh .upcoming-events__full-date {
    color: #000; }
  .upcoming-events__full-date, .upcoming-events__address {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    color: #634a76;
    display: block;
    font-size: .875rem;
    line-height: 1.325rem;
    margin-bottom: 1rem; }
    .foundation .upcoming-events__full-date, .foundation .upcoming-events__address {
      color: #000; }
    .dh .upcoming-events__full-date, .dh .upcoming-events__address {
      font-size: 16px; }
  .upcoming-events__address {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    margin-bottom: 0; }
    .dh .upcoming-events__address {
      color: #000; }
  .upcoming-events__link {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex;
    font-size: 0.938em;
    line-height: 1.375em; }
    @media screen and (min-width: 768px) {
      .upcoming-events__link {
        padding-left: 2rem; } }
    .upcoming-events__link a {
      color: #0e92a2;
      display: inline-block; }
      .upcoming-events__link a:hover, .upcoming-events__link a:focus {
        color: #0e92a2;
        text-decoration: underline; }
      .upcoming-events__link a::before {
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        speak: none;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        background: #0e92a2;
        border-radius: 100%;
        color: #fff;
        content: "";
        display: inline-block;
        font-size: 1rem;
        font-weight: 700;
        height: 27px;
        margin-right: 10px;
        padding-top: 5px;
        text-align: center;
        width: 27px; }
    .dh .upcoming-events__link a {
      color: #f98d29;
      font-size: 16px;
      margin: 0 auto;
      text-align: center;
      text-transform: uppercase; }
      .dh .upcoming-events__link a::after {
        background: url("/micrositetemplates/assets/img/svg/icon-chevron-orange-e.svg") center no-repeat;
        background-size: 6px 10px;
        bottom: 2px;
        color: transparent;
        content: '\0a00';
        display: inline;
        font-family: Arial, sans-serif;
        font-size: 12px;
        height: 10px;
        left: 0;
        margin-left: 5px;
        position: relative;
        transition: left .3s ease;
        vertical-align: baseline;
        width: 6px; }
      @media screen and (min-width: 64em) {
        .dh .upcoming-events__link a:hover::after, .dh .upcoming-events__link a:focus::after {
          left: 4px; } }
      .dh .upcoming-events__link a:hover, .dh .upcoming-events__link a:focus {
        text-decoration: none; }
      .dh .upcoming-events__link a::before {
        display: none; }

.utility-navigation {
  background-color: #f5f5f5; }
  @media screen and (max-width: 63.9375em) {
    .utility-navigation {
      display: none; } }
  .utility-navigation__container {
    max-width: 73.625rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 1.25rem;
    padding-left: 1.25rem; }
    .utility-navigation__container::after, .utility-navigation__container::before {
      content: '';
      display: table; }
    .utility-navigation__container::after {
      clear: both; }
    @media print, screen and (min-width: 64em) {
      .utility-navigation__container {
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
    .utility-navigation__container:last-child:not(:first-child) {
      float: right; }
    .utility-navigation__container, .utility-navigation__container:last-child {
      float: none; }
  .utility-navigation__list {
    width: 100%;
    float: left;
    padding-right: 1.25rem;
    padding-left: 1.25rem;
    margin: 0;
    list-style-type: none;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -ms-flex-align: center;
        align-items: center;
    width: 100%;
    -ms-flex-pack: end;
        justify-content: flex-end; }
    @media print, screen and (min-width: 64em) {
      .utility-navigation__list {
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
    .utility-navigation__list:last-child:not(:first-child) {
      float: right; }
    .utility-navigation__list > li {
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }
      [data-whatinput='mouse'] .utility-navigation__list > li {
        outline: 0; }
    .utility-navigation__list > li > a {
      display: block;
      padding: 0;
      line-height: 1; }
    .utility-navigation__list input,
    .utility-navigation__list select,
    .utility-navigation__list a,
    .utility-navigation__list button {
      margin-bottom: 0; }
  .utility-navigation__item {
    padding: 13px 7px; }
    .utility-navigation__item--search {
      padding: 0; }
  .utility-navigation__link {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 700;
    border-bottom: 1px solid transparent;
    font-size: 13px; }
    .utility-navigation__link, .utility-navigation__link:hover, .utility-navigation__link:active, .utility-navigation__link:focus {
      color: #0066a1; }
    .utility-navigation__link:hover, .utility-navigation__link:active, .utility-navigation__link:focus {
      border-bottom-color: #0066a1; }
    .utility-navigation__item:first-child .utility-navigation__link, .utility-navigation__item:first-child .utility-navigation__link:hover, .utility-navigation__item:first-child .utility-navigation__link:active, .utility-navigation__item:first-child .utility-navigation__link:focus {
      color: #000; }
    .utility-navigation__item:first-child .utility-navigation__link:hover, .utility-navigation__item:first-child .utility-navigation__link:active, .utility-navigation__item:first-child .utility-navigation__link:focus {
      border-bottom-color: #000; }
  .utility-navigation__search {
    background: #f98d29;
    color: #fff;
    cursor: pointer;
    font-size: 1.2rem;
    margin-left: 7px;
    padding: 9px 0;
    transition: background .25s ease-out;
    width: 40px; }
    .utility-navigation__search::before {
      /* use !important to prevent issues with browser extensions that change fonts */
      font-family: 'icomoon' !important;
      speak: none;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      text-transform: none;
      line-height: 1;
      /* Better Font Rendering =========== */
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      content: ""; }
    .utility-navigation__search:hover {
      background: #94d60a; }
    .utility-navigation__search.active {
      background: #0066a1; }
      .utility-navigation__search.active::before {
        content: ""; }
      .utility-navigation__search.active:hover, .utility-navigation__search.active:focus {
        background: #2a659c; }
    .utility-navigation__search__image {
      height: 22px;
      width: 22px; }

.dh .utility-navigation__item:first-child .utility-navigation__link {
  color: #0066a1; }

.utility-search {
  background: #0066a1; }
  @media screen and (max-width: 63.9375em) {
    .utility-search {
      display: none; } }
  .utility-search__wrap {
    max-width: 73.625rem;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
    float: left;
    padding-right: 1.25rem;
    padding-left: 1.25rem;
    display: none;
    padding-bottom: 40px;
    padding-top: 40px;
    text-align: center; }
    .utility-search__wrap::after, .utility-search__wrap::before {
      content: '';
      display: table; }
    .utility-search__wrap::after {
      clear: both; }
    @media print, screen and (min-width: 64em) {
      .utility-search__wrap {
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
    .utility-search__wrap:last-child:not(:first-child) {
      float: right; }
    .utility-search__wrap, .utility-search__wrap:last-child {
      float: none; }
  .utility-search .gsc-control-searchbox-only {
    height: 34px; }
  .utility-search form.gsc-search-box {
    display: inline-block;
    padding: 0;
    width: 75%; }
    .utility-search form.gsc-search-box table.gsc-search-box {
      margin-bottom: 0; }
    .utility-search form.gsc-search-box td.gsc-input {
      display: inline-block;
      float: left;
      height: 34px;
      padding: 0;
      width: calc(100% - 34px); }
      .utility-search form.gsc-search-box td.gsc-input .gsc-input-box {
        height: 100%;
        width: 100%; }
      .utility-search form.gsc-search-box td.gsc-input input {
        border: 0;
        height: 34px;
        padding: 0 10px;
        width: 100%; }
    .utility-search form.gsc-search-box .gsc-search-box tr {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: start;
          justify-content: flex-start; }
    .utility-search form.gsc-search-box td.gsc-search-button {
      display: inline-block;
      float: right;
      height: 34px;
      position: relative;
      width: 34px; }
      .utility-search form.gsc-search-box td.gsc-search-button::before {
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        speak: none;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        background-color: #f98d29;
        color: #fff;
        content: "";
        font-size: 1.2rem;
        height: 100%;
        left: 0;
        padding-top: 6px;
        position: absolute;
        top: 0;
        transition: background-color .25s ease-out;
        width: 100%;
        z-index: 0; }
        .utility-search form.gsc-search-box td.gsc-search-button::before:hover, .utility-search form.gsc-search-box td.gsc-search-button::before:focus {
          background-color: #94d60a; }
      .utility-search form.gsc-search-box td.gsc-search-button button.gsc-search-button-v2 {
        background: transparent;
        background-position: 50%;
        background-repeat: no-repeat;
        background-size: 50%;
        border: 0;
        border-radius: 0;
        content: '';
        cursor: pointer;
        display: block;
        height: 34px;
        margin: 0;
        max-width: 34px;
        min-width: 34px;
        overflow: hidden;
        padding: 0;
        position: relative;
        text-indent: 9999px;
        width: 34px;
        z-index: 1; }
        .utility-search form.gsc-search-box td.gsc-search-button button.gsc-search-button-v2 svg {
          display: none; }
    .utility-search form.gsc-search-box .gsc-clear-button {
      display: none; }
  .utility-search__field {
    border: solid 1px #f98d29;
    font-size: 12px;
    height: 34px;
    padding: 0 10px;
    width: calc(100% - 34px); }
  .utility-search__submit {
    background: #f98d29;
    float: right;
    height: 34px;
    transition: background .25s ease-out;
    width: 34px; }
    .utility-search__submit:hover, .utility-search__submit:focus {
      background: #94d60a; }
    .utility-search__submit img {
      height: 50%;
      width: 50%; }

.utility-search--mobile {
  background: #0066a1;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0);
  transition: box-shadow .25s ease-out; }
  .utility-search--mobile.active {
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.65); }
  @media print, screen and (min-width: 64em) {
    .utility-search--mobile {
      display: none; } }
  .utility-search--mobile .gsc-control-searchbox-only {
    height: 34px; }
  .utility-search--mobile form.gsc-search-box {
    display: inline-block;
    margin-bottom: 0;
    padding: 0; }
    .utility-search--mobile form.gsc-search-box table.gsc-search-box {
      margin-bottom: 0; }
    .utility-search--mobile form.gsc-search-box td.gsc-input {
      display: inline-block;
      float: left;
      height: 34px;
      padding: 0;
      width: calc(100% - 34px); }
      .utility-search--mobile form.gsc-search-box td.gsc-input .gsc-input-box {
        height: 100%; }
      .utility-search--mobile form.gsc-search-box td.gsc-input input {
        border: 0;
        height: 34px;
        padding: 0 10px;
        width: 100%; }
    .utility-search--mobile form.gsc-search-box tr {
      display: -ms-flexbox;
      display: flex; }
    .utility-search--mobile form.gsc-search-box td.gsc-search-button {
      display: inline-block;
      float: right;
      height: 34px;
      position: relative;
      width: 34px; }
      .utility-search--mobile form.gsc-search-box td.gsc-search-button::before {
        /* use !important to prevent issues with browser extensions that change fonts */
        font-family: 'icomoon' !important;
        speak: none;
        font-style: normal;
        font-weight: normal;
        font-variant: normal;
        text-transform: none;
        line-height: 1;
        /* Better Font Rendering =========== */
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
        background-color: #f98d29;
        color: #fff;
        content: "";
        font-size: 1.2rem;
        height: 100%;
        left: 0;
        padding-top: 6px;
        position: absolute;
        top: 0;
        transition: background-color .25s ease-out;
        width: 100%;
        z-index: 0; }
        .utility-search--mobile form.gsc-search-box td.gsc-search-button::before:hover, .utility-search--mobile form.gsc-search-box td.gsc-search-button::before:focus {
          background-color: #94d60a; }
      .utility-search--mobile form.gsc-search-box td.gsc-search-button button.gsc-search-button {
        background-color: #f98d29;
        background-image: url("/MicrositeTemplates/assets/img/svg/search.svg");
        background-position: 50%;
        background-repeat: no-repeat;
        background-size: 50%;
        border: 0;
        border-radius: 0;
        content: '';
        cursor: pointer;
        display: block;
        height: 34px;
        margin: 0;
        max-width: 34px;
        min-width: 34px;
        overflow: hidden;
        padding: 0;
        text-indent: 9999px;
        transition: background-color .25s ease-out;
        width: 34px; }
        .utility-search--mobile form.gsc-search-box td.gsc-search-button button.gsc-search-button:hover, .utility-search--mobile form.gsc-search-box td.gsc-search-button button.gsc-search-button:focus {
          background-color: #94d60a; }
        .utility-search--mobile form.gsc-search-box td.gsc-search-button button.gsc-search-button svg {
          display: none; }
    .utility-search--mobile form.gsc-search-box .gsc-clear-button {
      display: none; }

.utility-search__form {
  -ms-flex-align: center;
      align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: start;
      justify-content: flex-start;
  position: relative; }
  .utility-search__form .icon-search {
    background-color: #f98d29;
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100%;
    border: 0;
    border-radius: 0;
    box-sizing: border-box;
    color: #fff;
    cursor: pointer;
    height: 32px;
    padding: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 32px; }
    .utility-search__form .icon-search::before {
      position: relative;
      top: 5px; }
  .utility-search__form a.icon-search {
    pointer-events: none; }
  .utility-search__form .utility-search__input {
    background-image: none;
    border: 0;
    border-radius: 0;
    box-sizing: border-box;
    display: inline-block;
    height: 32px;
    padding: 0 1rem;
    width: calc(100% - 32px); }

.mobile-search {
  background: transparent;
  cursor: pointer;
  height: 50px;
  padding-bottom: 10px;
  position: absolute;
  right: 55px;
  top: 10px;
  width: 50px; }
  .mobile-search.active {
    background: #0066a1; }
    .mobile-search.active:hover, .mobile-search.active:focus {
      background: #2a659c; }
  @media print, screen and (min-width: 64em) {
    .mobile-search {
      display: none; } }
  .mobile-search__image {
    cursor: pointer;
    height: 60%;
    width: 60%; }

.utility-navigation--mobile {
  border-top: 2px solid #e6e7e8;
  display: none;
  padding: 10px 0; }
  .utility-navigation--mobile .utility-navigation__container {
    max-width: none;
    padding-left: 0;
    padding-right: 0; }
  .utility-navigation--mobile .utility-navigation__list {
    display: block;
    padding-left: 0;
    padding-right: 0; }
  .utility-navigation--mobile .utility-navigation__item {
    padding: 14px 20px; }
  .utility-navigation--mobile .utility-navigation__link {
    border-bottom: 0;
    font-size: 16px; }
    .utility-navigation--mobile .utility-navigation__link:hover, .utility-navigation--mobile .utility-navigation__link:active, .utility-navigation--mobile .utility-navigation__link:focus {
      border-bottom: 0;
      text-decoration: none; }
  @media screen and (max-width: 63.9375em) {
    .utility-navigation--mobile {
      display: block; } }

.wait-time {
  border-top: 2px solid #e6e7e8;
  margin-bottom: 20px;
  padding-top: 20px;
  text-align: center; }
  .wait-time__container {
    max-width: 73.625rem;
    margin-right: auto;
    margin-left: auto; }
    .wait-time__container::after, .wait-time__container::before {
      content: '';
      display: table; }
    .wait-time__container::after {
      clear: both; }
  .wait-time__copy {
    font-family: Cabin, "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-style: normal;
    font-weight: 600;
    width: 100%;
    float: left;
    padding-right: 1.25rem;
    padding-left: 1.25rem;
    color: #0066a1;
    line-height: 1.3; }
    @media print, screen and (min-width: 64em) {
      .wait-time__copy {
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
    .wait-time__copy:last-child:not(:first-child) {
      float: right; }
    @media screen and (max-width: 63.9375em) {
      .wait-time__copy {
        font-size: 20px; } }
    @media print, screen and (min-width: 64em) {
      .wait-time__copy {
        font-size: 22px;
        vertical-align: middle; } }
  @media screen and (max-width: 63.9375em) {
    .wait-time__button {
      margin-top: 20px; } }
  @media print, screen and (min-width: 40em) {
    .wait-time__button {
      margin-left: 20px; } }

@media print {
  *, *:before, *:after {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster: h5bp.com/s */
    box-shadow: none !important;
    text-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: '';
    font-weight: inherit; }
  abbr[title]:after {
    content: ''; }
  /*
     * Don't show links that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: ''; }
  pre,
  blockquote {
    page-break-inside: avoid; }
  thead {
    display: table-header-group;
    /* h5bp.com/t */ }
  tr,
  img,
  section {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .header__main {
    height: 60px; }
  img.header__urgent-care,
  img.header__heart-vascular {
    height: 40px; }
  .footer__upper-inner {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .footer__lower-inner {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .profiles__item {
    width: 22.5%; }
  .post-listing__listing,
  .upcoming-events__listing {
    max-width: none;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between; }
  .additional-feature__wrap {
    max-width: 980px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-pack: justify;
        justify-content: space-between; }
  .additional-feature__image {
    width: 45%;
    -ms-flex-order: 1;
        order: 1; }
  .additional-feature__content {
    width: 52%;
    -ms-flex-order: 0;
        order: 0; }
  .upcoming-events__listing {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .upcoming-events__item {
    width: 50%; }
  .post-listing__item {
    width: 30%; }
  .profiles__item__overlay {
    padding-top: 1rem;
    position: relative; }
  .alert,
  .utility-navigation,
  .primary-navigation,
  .hero .share,
  .carousel__arrow,
  .footer__contact,
  .footer__navigation,
  .footer__legal-navigation,
  .sidebar__mobile-switch,
  .post-listing__link,
  .upcoming-events__link,
  .pagination {
    display: none !important; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCJiYXNlL19mb250cy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy90YmctZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvdGJnLWZvdW5kYXRpb24tc2l0ZXMvX3ZlbmRvci9ub3JtYWxpemUtc2Nzcy9zYXNzL25vcm1hbGl6ZS9fbm9ybWFsaXplLW1peGluLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL3RiZy1mb3VuZGF0aW9uLXNpdGVzL192ZW5kb3Ivbm9ybWFsaXplLXNjc3Mvc2Fzcy9ub3JtYWxpemUvX3ZhcmlhYmxlcy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy90YmctZm91bmRhdGlvbi1zaXRlcy9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplL192ZXJ0aWNhbC1yaHl0aG0uc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvdGJnLWZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsImJhc2UvX3ZhcmlhYmxlcy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy90YmctZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy90YmctZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2ZsZXgtZ3JpZC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy90YmctZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Jvdy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy90YmctZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvdGJnLWZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL3RiZy1mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fZ3V0dGVyLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL3RiZy1mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fZmxleC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy90YmctZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy90YmctZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL3RiZy1mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy90YmctZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2hlbHBlcnMuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvdGJnLWZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvdGJnLWZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy90YmctZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy90YmctZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy90YmctZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy90YmctZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvdGJnLWZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LWljb24uc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvdGJnLWZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vcmJpdC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy90YmctZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvdGJnLWZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvdGJnLWZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zdGlja3kuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvdGJnLWZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJzLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL3RiZy1mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvdGJnLWZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aXRsZS1iYXIuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvdGJnLWZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL3RiZy1mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxvYXQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvdGJnLWZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbGV4LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL19jbGFzc2VzLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvX3NldHRpbmdzLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdXRpbC9fa2V5ZnJhbWUuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc2xpZGUuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fZmFkZS5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL2VmZmVjdHMvX2hpbmdlLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2hpbmdlLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3pvb20uc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc3Bpbi5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL3V0aWwvX2FuaW1hdGlvbi5zY3NzIiwiYmFzZS9fbWl4aW5zLnNjc3MiLCJiYXNlL19nbG9iYWwuc2NzcyIsImJhc2UvX2FuaW1hdGlvbi5zY3NzIiwibGF5b3V0L190d28tZ3JpZC5zY3NzIiwibGF5b3V0L19tcS5zY3NzIiwibGF5b3V0L190aHJlZS1ncmlkLnNjc3MiLCJsYXlvdXQvX2ZvdXItZ3JpZC5zY3NzIiwidmVuZG9yL19zbGljay5zY3NzIiwidmVuZG9yL19zbGljay10aGVtZS5zY3NzIiwiY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCJjb21wb25lbnRzL19hZGRpdGlvbmFsLWZlYXR1cmUuc2NzcyIsImNvbXBvbmVudHMvX2FsZXJ0LnNjc3MiLCJjb21wb25lbnRzL19iYWNrZ3JvdW5kLnNjc3MiLCJjb21wb25lbnRzL19iYW5kLnNjc3MiLCJjb21wb25lbnRzL19iYXIuc2NzcyIsImNvbXBvbmVudHMvX2J1dHRvbnMuc2NzcyIsImNvbXBvbmVudHMvX2NhbGxvdXQuc2NzcyIsImNvbXBvbmVudHMvX2Nhcm91c2VsLnNjc3MiLCJjb21wb25lbnRzL19jb250ZW50LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL3RiZy1mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fc2l6ZS5zY3NzIiwiY29tcG9uZW50cy9fY29udGVudC1ibG9jay5zY3NzIiwiY29tcG9uZW50cy9fY3RhLWxpc3QtYmxvY2suc2NzcyIsImNvbXBvbmVudHMvX2V2ZW50cy5zY3NzIiwiY29tcG9uZW50cy9fZmFkLXNlYXJjaC5zY3NzIiwibGF5b3V0L19tZWRpYS1icmVha3BvaW50cy5zY3NzIiwiY29tcG9uZW50cy9fZmFkLXNlYXJjaC1yZXN1bHRzLnNjc3MiLCJjb21wb25lbnRzL19mYi1jb21tZW50cy5zY3NzIiwiY29tcG9uZW50cy9fZmVhdHVyZS1ncmlkLnNjc3MiLCJjb21wb25lbnRzL19mZWF0dXJlZC1ldmVudHMuc2NzcyIsImNvbXBvbmVudHMvX2ZpZ3VyZS5zY3NzIiwiY29tcG9uZW50cy9fZmlsdGVyLnNjc3MiLCJjb21wb25lbnRzL19mb290ZXIuc2NzcyIsImNvbXBvbmVudHMvX2Zvcm0uc2NzcyIsImNvbXBvbmVudHMvX2hhbWJ1cmdlci5zY3NzIiwiY29tcG9uZW50cy9faGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL19oZXJvLnNjc3MiLCJjb21wb25lbnRzL19oZXJvLXRodW1iLnNjc3MiLCJjb21wb25lbnRzL19pY29ucy5zY3NzIiwiY29tcG9uZW50cy9fbGlzdHMuc2NzcyIsImNvbXBvbmVudHMvX2xvY2F0aW9uLWJveC5zY3NzIiwiY29tcG9uZW50cy9fbG9jYXRpb24tbGlzdC5zY3NzIiwiY29tcG9uZW50cy9fbmV3cy5zY3NzIiwiY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fcHJpbWFyeS1uYXZpZ2F0aW9uLnNjc3MiLCJjb21wb25lbnRzL19wcm9maWxlcy5zY3NzIiwiY29tcG9uZW50cy9fcHJvdmlkZXItcHJvZmlsZS5zY3NzIiwiY29tcG9uZW50cy9fcG9zdC1saXN0aW5nLnNjc3MiLCJjb21wb25lbnRzL19yYW5nZS5zY3NzIiwiY29tcG9uZW50cy9fcnRmLnNjc3MiLCJjb21wb25lbnRzL19zZWFyY2gtYm94LnNjc3MiLCJjb21wb25lbnRzL19zZWFyY2gtZ2xvYmFsLnNjc3MiLCJjb21wb25lbnRzL19zZWFyY2gtcmVzdWx0cy5zY3NzIiwiY29tcG9uZW50cy9fc2VydmljZXMuc2NzcyIsImNvbXBvbmVudHMvX3NoYXJlLnNjc3MiLCJjb21wb25lbnRzL19zbGlkZXIuc2NzcyIsImNvbXBvbmVudHMvX3NpZGViYXIuc2NzcyIsImNvbXBvbmVudHMvX3N0b3J5LWN0YS5zY3NzIiwiY29tcG9uZW50cy9fdGFibGUuc2NzcyIsImNvbXBvbmVudHMvX3RhYnMuc2NzcyIsImNvbXBvbmVudHMvX3RpbGVzLnNjc3MiLCJjb21wb25lbnRzL190b29sdGlwLnNjc3MiLCJjb21wb25lbnRzL190eXBvZ3JhcGh5LnNjc3MiLCJjb21wb25lbnRzL191cGNvbWluZy1ldmVudHMuc2NzcyIsImNvbXBvbmVudHMvX3V0aWxpdHktbmF2aWdhdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fd2FpdC10aW1lLnNjc3MiLCJfcHJpbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxpQkFBaUI7QUNFakIsMkJBQTJCO0FBQzNCO0VBQ0kscUJBQW9CO0VBQ3BCLG1CQUFrQjtFQUNsQixpQkFBZ0I7RUFDaEIsOEtBRW1FO0VBQUUsaURBQWlELEVBQUE7O0FBRzFILHVCQUF1QjtBQUN2QjtFQUNJLHFCQUFvQjtFQUNwQixtQkFBa0I7RUFDbEIsaUJBQWdCO0VBQ2hCLDRLQUU4RDtFQUFFLGlEQUFpRCxFQUFBOztBQUdySCx1QkFBdUI7QUFDdkI7RUFDSSxxQkFBb0I7RUFDcEIsbUJBQWtCO0VBQ2xCLGlCQUFnQjtFQUNoQixnTEFFK0Q7RUFBRSxpREFBaUQsRUFBQTs7QUFHdEgsdUJBQXVCO0FBQ3ZCO0VBQ0kscUJBQW9CO0VBQ3BCLG1CQUFrQjtFQUNsQixpQkFBZ0I7RUFDaEIsd0tBRStEO0VBQUUsaURBQWlELEVBQUE7O0FDdkN0SDs7Ozs7R0FLRztBQ3dDRCxpRUFBaUU7QUFHL0Q7b0ZBQ2dGO0FBRWhGOzs7OztPQUtHO0FBRUg7RUFDRSx3QkMxQ3VCO0VEMENTLE9BQU87RUFRckMsa0JBQWlCO0VBQUUsT0FBTztFQUU1QiwyQkFBMEI7RUFBRSxPQUFPO0VBQ25DLCtCQUE4QjtFQUFFLE9BQU8sRUFDeEM7O0FBSUQ7b0ZBQ2dGO0FBRWhGOztPQUVHO0FBRUg7RUFDRSxVQUFTLEVBQ1Y7O0FBRUQ7O09BRUc7QUFFSDs7Ozs7O0VBTUUsZUFBYyxFQUNmOztBQUVEOzs7T0FHRztBQUVIO0VFOUVGLGVBWHVDO0VGb0dqQyxpQkFBZ0IsRUFFbkI7O0FBb0NEO29GQUNnRjtBQXVDaEY7O09BRUc7QUFFSDs7RUFFRSxlQUFjLEVBQ2Y7O0FBRUQ7O09BRUc7QUFFSDtFQUtJLGlCQ3ZMWSxFRHlMZjs7QUFFRDs7O09BR0c7QUFFSDtFQUNFLHdCQUF1QjtFQUFFLE9BQU87RUFDaEMsVUFBUztFQUFFLE9BQU87RUFDbEIsa0JBQWlCO0VBQUUsT0FBTyxFQUMzQjs7QUFFRDs7T0FFRztBQUVIO0VBQ0UsZUFBYyxFQUNmOztBQWFEOzs7T0FHRztBQUVIO0VBQ0Usa0NBQWlDO0VBQUUsT0FBTztFQUMxQyxlQUFjO0VBQUUsT0FBTyxFQUN4Qjs7QUFJRDtvRkFDZ0Y7QUFFaEY7OztPQUdHO0FBRUg7RUFDRSw4QkFBNkI7RUFBRSxPQUFPO0VBQ3RDLHNDQUFxQztFQUFFLE9BQU8sRUFDL0M7O0FBRUQ7OztPQUdHO0FBRUg7O0VBRUUsaUJBQWdCLEVBQ2pCOztBQUlEO29GQUNnRjtBQUVoRjs7O09BR0c7QUFFSDtFQUNFLG9CQUFtQjtFQUFFLE9BQU87RUFDNUIsMkJBQTBCO0VBQUUsT0FBTztFQUNuQyxrQ0FBaUM7RUFBRSxPQUFPLEVBQzNDOztBQUVEOztPQUVHO0FBRUg7O0VBRUUscUJBQW9CLEVBQ3JCOztBQUVEOztPQUVHO0FBUEg7O0VBV0Usb0JBQW1CLEVBQ3BCOztBQUVEOzs7T0FHRztBQUVIOzs7RUFHRSxrQ0FBaUM7RUFBRSxPQUFPO0VBQzFDLGVBQWM7RUFBRSxPQUFPLEVBQ3hCOztBQUVEOztPQUVHO0FBRUg7RUFDRSxtQkFBa0IsRUFDbkI7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLHVCQUFzQjtFQUN0QixZQUFXLEVBQ1o7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLGVBQWMsRUFDZjs7QUFFRDs7O09BR0c7QUFFSDs7RUFFRSxlQUFjO0VBQ2QsZUFBYztFQUNkLG1CQUFrQjtFQUNsQix5QkFBd0IsRUFDekI7O0FBRUQ7RUFDRSxnQkFBZSxFQUNoQjs7QUFFRDtFQUNFLFlBQVcsRUFDWjs7QUFJRDtvRkFDZ0Y7QUFFaEY7O09BRUc7QUFFSDs7RUFFRSxzQkFBcUIsRUFDdEI7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLGNBQWE7RUFDYixVQUFTLEVBQ1Y7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLG1CQUFrQixFQUNuQjs7QUFFRDs7T0FFRztBQUVIO0VBQ0UsaUJBQWdCLEVBQ2pCOztBQUlEO29GQUNnRjtBQUVoRjs7O09BR0c7QUFFSDs7Ozs7RUFLRSx3QkN6WnVCO0VEeVpTLE9BQU87RUFDdkMsZ0JBQWU7RUFBRSxPQUFPO0VBS3RCLGtCQUFpQjtFQUFFLE9BQU87RUFFNUIsVUFBUztFQUFFLE9BQU8sRUFDbkI7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLGtCQUFpQixFQUNsQjs7QUFFRDs7O09BR0c7QUFFSDs7RUFDUyxPQUFPO0VBQ2QscUJBQW9CLEVBQ3JCOztBQUVEOzs7O09BSUc7QUFFSDs7OztFQUlFLDJCQUEwQjtFQUFFLE9BQU8sRUFDcEM7O0FBRUQ7Ozs7RUFLRTs7U0FFRztFQU9IOztTQUVHLEVBS0o7RUFyQkQ7Ozs7SUFVSSxtQkFBa0I7SUFDbEIsV0FBVSxFQUNYO0VBWkg7Ozs7SUFtQkksK0JBQThCLEVBQy9COztBQUdIOztPQUVHO0FBRUg7RUFDRSxrQkFBaUIsRUFDbEI7O0FBRUQ7OztPQUdHO0FIM0tQOztFRytLTSx1QkFBc0I7RUFBRSxPQUFPO0VBQy9CLFdBQVU7RUFBRSxPQUFPLEVBQ3BCOztBQUVEOztPQUVHO0FIM0tQOztFRytLTSxhQUFZLEVBQ2I7O0FBRUQ7OztPQUdHO0FIN0tQO0VHZ0xNLDhCQUE2QjtFQUFFLE9BQU87RUFDdEMscUJBQW9CO0VBQUUsT0FBTztFQUU3Qjs7U0FFRyxFQU1KO0VIbkxIO0lHaUxNLHlCQUF3QixFQUN6Qjs7QUFHSDs7O09BR0c7QUFFSDtFQUNFLDJCQUEwQjtFQUFFLE9BQU87RUFDbkMsY0FBYTtFQUFFLE9BQU8sRUFDdkI7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLDBCQUF5QjtFQUN6QixjQUFhO0VBQ2IsK0JBQThCLEVBQy9COztBQUVEOzs7OztPQUtHO0FBRUg7RUFDRSx1QkFBc0I7RUFBRSxPQUFPO0VBQy9CLGVBQWM7RUFBRSxPQUFPO0VBQ3ZCLGdCQUFlO0VBQUUsT0FBTztFQUN4QixXQUFVO0VBQUUsT0FBTztFQUNuQixlQUFjO0VBQUUsT0FBTztFQUN2QixvQkFBbUI7RUFBRSxPQUFPLEVBQzdCOztBQUVEOzs7T0FHRztBQUVIO0VBQ0Usc0JBQXFCO0VBQUUsT0FBTztFQUM5Qix5QkFBd0I7RUFBRSxPQUFPLEVBQ2xDOztBQUVEOztPQUVHO0FBRUg7RUFDRSxlQUFjLEVBQ2Y7O0FBSUQ7b0ZBQ2dGO0FBRWhGOztPQUVHO0FBRUg7RUFDRSxlQUFjLEVBQ2Y7O0FBRUQ7O09BRUc7QUFFSDtFQUNFLG1CQUFrQixFQUNuQjs7QUFFRDs7T0FFRztBQUVIO0VBQ0UsZUFBYyxFQXFCZjs7QUFJRDtvRkFDZ0Y7QUFFaEY7O09BRUc7QUFFSDtFQUNFLHNCQUFxQixFQUN0Qjs7QUFFRDs7T0FFRztBQUVIO0VBQ0UsY0FBYSxFQUNkOztBQUlEO29GQUNnRjtBQUVoRjs7T0FFRztBSHhOUDtFRzJOTSxjQUFhLEVBQ2Q7O0FHOWlCSDtFQUNFLHlFQUFnRCxFQUNqRDs7QUgzREM7RUc4REEsdUJBQXNCO0VBQ3RCLGdCQ3pFbUIsRUQwRXBCOztBQUdEOzs7RUFHRSxvQkFBbUIsRUFDcEI7O0FIL0NDO0VHbURBLFVBQVM7RUFDVCxXQUFVO0VBRVYsaUJFekhjO0VGMkhkLDJFRXREcUU7RUZ1RHJFLG9CQ3RFeUI7RUR1RXpCLGlCQzFGbUI7RUQyRm5CLFlFeEljO0VGMklaLG9DQUFtQztFQUNuQyxtQ0FBa0MsRUFFckM7O0FINFBDO0VHeFBBLHNCQUFxQjtFQUNyQix1QkFBc0I7RUFHdEIsZ0JBQWU7RUFDZixhQUFZO0VBQ1osZ0NBQStCLEVBQ2hDOztBSDhhQztFRzFhQSxhQUFZO0VBQ1osaUJBQWdCO0VBQ2hCLGlCQzdGYSxFRDhGZDs7QUFHRDtFQUNFLHVCQUFzQjtFQUN0QixZQUFXO0VBQ1gsaUJDcEdhLEVEcUdkOztBQUlEOzs7Ozs7RUFLSSwyQkFBMEIsRUFDM0I7O0FIbVFEO0VHNVBBLFdBQVU7RUFFVix5QkFBZ0I7S0FBaEIsc0JBQWdCO1VBQWhCLGlCQUFnQjtFQUNoQixVQUFTO0VBQ1QsaUJDMUhhO0VEMkhiLHdCQUF1QjtFQUV2QixlQUFjLEVBQ2Y7RU4wVEQ7SVM3VUUsV0FBVSxFQUNYOztBTnVFQztFR2pEQSxlQUFjLEVBQ2Y7O0FBR0Q7RUFDRSwwQkFBeUIsRUFDMUI7O0FBRUQ7RUFDRSx5QkFBd0IsRUFDekI7O0FJakZEO0VDakNBLHFCQ1R1RDtFRm5EckQsbUJBQWtCO0VBQ2xCLGtCQUFpQjtFQUlqQixxQkFBYTtFQUFiLGNBQWE7RUFDYix3QkFsQm1CO01Ba0JuQixvQkFsQm1CLEVBaUpwQjtFQXhDRDtJQzlDRSx1QkFGK0Q7SUFHL0Qsc0JBSCtELEVEMkQ5RDtJR2NDO01IekJKO1FDOUNFLHVCQUYrRDtRQUcvRCxzQkFIK0QsRUQyRDlELEVBQUE7SUdjQztNSHpCSjtRQzlDRSx3QkFGK0Q7UUFHL0QsdUJBSCtELEVEMkQ5RCxFQUFBO0lBWEg7TUFRTSxnQkFBZTtNQUNmLGVBQWMsRUFDZjtFQVZMO0lDakNBLGdCQUhhLEVEeURWO0lBckJIO01Ba0JNLG1CQUFrQjtNQUNsQixrQkFBaUIsRUFDbEI7RUFwQkw7SUNqQ0EsZ0JBSGEsRUQ2RFY7RUF6Qkg7SUk1R0UsaUJGdUVTO0lFdEVULGdCRnNFUyxFRm1FTjtFQTlCTDs7O0lBcUNJLGdCQUFlO0lBQ2YsZUFBYyxFQUNmOztBQUlIO0VBdERBLGtCQTVEYztNQTREZCxjQTVEYztFSXJDWix1QkFGcUM7RUFHckMsc0JBSHFDO0VKb0VyQyxtQkFBa0IsRUF1Rm5CO0VHcEJHO0lIa0JKO01JdkpFLHdCQUZxQztNQUdyQyx1QkFIcUMsRUoySnRDLEVBQUE7O0FBVUQ7RUFDRSxnQkFBZTtFQUNmLGVBQWM7RUFDZCxpQkFBZ0I7RUFDaEIsZ0JBQWUsRUFDaEI7O0FBR0Q7RUt6S0EscUJBQWE7RUFBYixjQUFhLEVMMktaOztBQUVEO0VBQ0UsbUJBQWM7TUFBZCxlQUFjLEVBQ2Y7O0FBRUQ7RUFDRSxtQkFBYztNQUFkLGVBQWMsRUFDZjs7QUFFRDtFQUNFLG1CQUFjO01BQWQsZUFBYyxFQUNmOztBQUdDO0VLL0hGLHdCQW5FVTtNQW1FVixvQkFuRVUsRUxvTVA7O0FBRkQ7RUsvSEYsZ0NBbEUwQjtNQWtFMUIsNEJBbEUwQixFTG1NdkI7O0FBRkQ7RUsvSEYsMkJBakVnQjtNQWlFaEIsdUJBakVnQixFTGtNYjs7QUFGRDtFSy9IRixtQ0FoRWdDO01BZ0VoQywrQkFoRWdDLEVMaU03Qjs7QUFNQztFQUNFLHVCTTlMK0M7TU44TC9DLG1CTTlMK0M7RU4rTC9DLG9CTS9MK0MsRU5nTWhEOztBQUtEO0VPeExKLGdCRGhCZ0MsRU4wTTNCOztBQVZEO0VBQ0Usd0JNOUwrQztNTjhML0Msb0JNOUwrQztFTitML0MscUJNL0wrQyxFTmdNaEQ7O0FBS0Q7RU94TEosc0JEYnFELEVOdU1oRDs7QUFWRDtFQUNFLGtCTTlMK0M7TU44TC9DLGNNOUwrQztFTitML0MsZU0vTCtDLEVOZ01oRDs7QUFLRDtFT3hMSix1QkRicUQsRU51TWhEOztBQVZEO0VBQ0Usd0JNOUwrQztNTjhML0Msb0JNOUwrQztFTitML0MscUJNL0wrQyxFTmdNaEQ7O0FBS0Q7RU94TEosaUJEYnFELEVOdU1oRDs7QUFWRDtFQUNFLHdCTTlMK0M7TU44TC9DLG9CTTlMK0M7RU4rTC9DLHFCTS9MK0MsRU5nTWhEOztBQUtEO0VPeExKLHVCRGJxRCxFTnVNaEQ7O0FBVkQ7RUFDRSxrQk05TCtDO01OOEwvQyxjTTlMK0M7RU4rTC9DLGVNL0wrQyxFTmdNaEQ7O0FBS0Q7RU94TEosdUJEYnFELEVOdU1oRDs7QUFWRDtFQUNFLHdCTTlMK0M7TU44TC9DLG9CTTlMK0M7RU4rTC9DLHFCTS9MK0MsRU5nTWhEOztBQUtEO0VPeExKLGlCRGJxRCxFTnVNaEQ7O0FBVkQ7RUFDRSx3Qk05TCtDO01OOEwvQyxvQk05TCtDO0VOK0wvQyxxQk0vTCtDLEVOZ01oRDs7QUFLRDtFT3hMSix1QkRicUQsRU51TWhEOztBQVZEO0VBQ0Usa0JNOUwrQztNTjhML0MsY005TCtDO0VOK0wvQyxlTS9MK0MsRU5nTWhEOztBQUtEO0VPeExKLHVCRGJxRCxFTnVNaEQ7O0FBVkQ7RUFDRSx3Qk05TCtDO01OOEwvQyxvQk05TCtDO0VOK0wvQyxxQk0vTCtDLEVOZ01oRDs7QUFLRDtFT3hMSixpQkRicUQsRU51TWhEOztBQVZEO0VBQ0Usd0JNOUwrQztNTjhML0Msb0JNOUwrQztFTitML0MscUJNL0wrQyxFTmdNaEQ7O0FBS0Q7RU94TEosdUJEYnFELEVOdU1oRDs7QUFWRDtFQUNFLG1CTTlMK0M7TU44TC9DLGVNOUwrQztFTitML0MsZ0JNL0wrQyxFTmdNaEQ7O0FBS0Q7RU94TEosdUJEYnFELEVOdU1oRDs7QUFLRDtFS2hLSixrQkwrSmdCO01LL0poQixTTCtKZ0IsRUFHWDs7QUFGRDtFS2hLSixrQkwrSmdCO01LL0poQixTTCtKZ0IsRUFHWDs7QUFGRDtFS2hLSixrQkwrSmdCO01LL0poQixTTCtKZ0IsRUFHWDs7QUFGRDtFS2hLSixrQkwrSmdCO01LL0poQixTTCtKZ0IsRUFHWDs7QUFGRDtFS2hLSixrQkwrSmdCO01LL0poQixTTCtKZ0IsRUFHWDs7QUFGRDtFS2hLSixrQkwrSmdCO01LL0poQixTTCtKZ0IsRUFHWDs7QUFLRDtFQXhJSixvQkFBZTtNQUFmLGdCQUFlLEVBMElWO0VBeElMO0lBR0UsbUJBRnNCO1FBRXRCLGVBRnNCO0lBR3RCLGdCQUhzQixFQUl2Qjs7QUFpSUc7RUF4SUosb0JBQWU7TUFBZixnQkFBZSxFQTBJVjtFQXhJTDtJQUdFLGtCQUZzQjtRQUV0QixjQUZzQjtJQUd0QixlQUhzQixFQUl2Qjs7QUFpSUc7RUF4SUosb0JBQWU7TUFBZixnQkFBZSxFQTBJVjtFQXhJTDtJQUdFLHdCQUZzQjtRQUV0QixvQkFGc0I7SUFHdEIscUJBSHNCLEVBSXZCOztBQWlJRztFQXhJSixvQkFBZTtNQUFmLGdCQUFlLEVBMElWO0VBeElMO0lBR0Usa0JBRnNCO1FBRXRCLGNBRnNCO0lBR3RCLGVBSHNCLEVBSXZCOztBQWlJRztFQXhJSixvQkFBZTtNQUFmLGdCQUFlLEVBMElWO0VBeElMO0lBR0Usa0JBRnNCO1FBRXRCLGNBRnNCO0lBR3RCLGVBSHNCLEVBSXZCOztBQWlJRztFQXhJSixvQkFBZTtNQUFmLGdCQUFlLEVBMElWO0VBeElMO0lBR0Usd0JBRnNCO1FBRXRCLG9CQUZzQjtJQUd0QixxQkFIc0IsRUFJdkI7O0FBaUlHO0VBeElKLG9CQUFlO01BQWYsZ0JBQWUsRUEwSVY7RUF4SUw7SUFHRSx3QkFGc0I7UUFFdEIsb0JBRnNCO0lBR3RCLHFCQUhzQixFQUl2Qjs7QUFpSUc7RUF4SUosb0JBQWU7TUFBZixnQkFBZSxFQTBJVjtFQXhJTDtJQUdFLG9CQUZzQjtRQUV0QixnQkFGc0I7SUFHdEIsaUJBSHNCLEVBSXZCOztBQXlMQztFSWxSQSxpQkZ1RVM7RUV0RVQsZ0JGc0VTLEVGNE1tQzs7QUFHNUM7RUl0UkEsdUJBRnFDO0VBR3JDLHNCQUhxQyxFSnlSZ0I7O0FHbEpuRDtFSCtEQTtJQUNFLHVCTTlMK0M7UU44TC9DLG1CTTlMK0M7SU4rTC9DLG9CTS9MK0MsRU5nTWhEO0VBS0Q7SU94TEosZ0JEaEJnQyxFTjBNM0I7RUFWRDtJQUNFLHdCTTlMK0M7UU44TC9DLG9CTTlMK0M7SU4rTC9DLHFCTS9MK0MsRU5nTWhEO0VBS0Q7SU94TEosc0JEYnFELEVOdU1oRDtFQVZEO0lBQ0Usa0JNOUwrQztRTjhML0MsY005TCtDO0lOK0wvQyxlTS9MK0MsRU5nTWhEO0VBS0Q7SU94TEosdUJEYnFELEVOdU1oRDtFQVZEO0lBQ0Usd0JNOUwrQztRTjhML0Msb0JNOUwrQztJTitML0MscUJNL0wrQyxFTmdNaEQ7RUFLRDtJT3hMSixpQkRicUQsRU51TWhEO0VBVkQ7SUFDRSx3Qk05TCtDO1FOOEwvQyxvQk05TCtDO0lOK0wvQyxxQk0vTCtDLEVOZ01oRDtFQUtEO0lPeExKLHVCRGJxRCxFTnVNaEQ7RUFWRDtJQUNFLGtCTTlMK0M7UU44TC9DLGNNOUwrQztJTitML0MsZU0vTCtDLEVOZ01oRDtFQUtEO0lPeExKLHVCRGJxRCxFTnVNaEQ7RUFWRDtJQUNFLHdCTTlMK0M7UU44TC9DLG9CTTlMK0M7SU4rTC9DLHFCTS9MK0MsRU5nTWhEO0VBS0Q7SU94TEosaUJEYnFELEVOdU1oRDtFQVZEO0lBQ0Usd0JNOUwrQztRTjhML0Msb0JNOUwrQztJTitML0MscUJNL0wrQyxFTmdNaEQ7RUFLRDtJT3hMSix1QkRicUQsRU51TWhEO0VBVkQ7SUFDRSxrQk05TCtDO1FOOEwvQyxjTTlMK0M7SU4rTC9DLGVNL0wrQyxFTmdNaEQ7RUFLRDtJT3hMSix1QkRicUQsRU51TWhEO0VBVkQ7SUFDRSx3Qk05TCtDO1FOOEwvQyxvQk05TCtDO0lOK0wvQyxxQk0vTCtDLEVOZ01oRDtFQUtEO0lPeExKLGlCRGJxRCxFTnVNaEQ7RUFWRDtJQUNFLHdCTTlMK0M7UU44TC9DLG9CTTlMK0M7SU4rTC9DLHFCTS9MK0MsRU5nTWhEO0VBS0Q7SU94TEosdUJEYnFELEVOdU1oRDtFQVZEO0lBQ0Us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TitML0MscUJNL0wrQyxFTmdNaEQ7RUFLRDtJT3hMSixpQkRicUQsRU51TWhEO0VBVkQ7SUFDRSx3Qk05TCtDO1FOOEwvQyxvQk05TCtDO0lOK0wvQyxxQk0vTCtDLEVOZ01oRDtFQUtEO0lPeExKLHVCRGJxRCxFTnVNaEQ7RUFWRDtJQUNFLGtCTTlMK0M7UU44TC9DLGNNOUwrQztJTitML0MsZU0vTCtDLEVOZ01oRDtFQUtEO0lPeExKLHVCRGJxRCxFTnVNaEQ7RUFWRDtJQUNFLHdCTTlMK0M7UU44TC9DLG9CTTlMK0M7SU4rTC9DLHFCTS9MK0MsRU5nTWhEO0VBS0Q7SU94TEosaUJEYnFELEVOdU1oRDtFQVZEO0lBQ0Usd0JNOUwrQztRTjhML0Msb0JNOUwrQztJTitML0MscUJNL0wrQyxFTmdNaEQ7RUFLRDtJT3hMSix1QkRicUQsRU51TWhEO0VBVkQ7SUFDRSxrQk05TCtDO1FOOEwvQyxjTTlMK0M7SU4rTC9DLGVNL0wrQyxFTmdNaEQ7RUFLRDtJT3hMSix1QkRicUQsRU51TWhEO0VBVkQ7SUFDRSx3Qk05TCtDO1FOOEwvQyxvQk05TCtDO0lOK0wvQyxxQk0vTCtDLEVOZ01oRDtFQUtEO0lPeExKLGlCRGJxRCxFTnVNaEQ7RUFWRDtJQUNFLHdCTTlMK0M7UU44TC9DLG9CTTlMK0M7SU4rTC9DLHFCTS9MK0MsRU5nTWhEO0VBS0Q7SU94TEosdUJEYnFELEVOdU1oRDtFQVZEO0lBQ0UsbUJNOUwrQztRTjhML0MsZU05TCtDO0lOK0wvQyxnQk0vTCtDLEVOZ01oRDtFQUtEO0lPeExKLHVCRGJxRCxFTnVNaEQ7RUFLRDtJS2hLSixrQkwrSmdCO1FLL0poQixTTCtKZ0IsRUFHWDtFQUZEO0lLaEtKLGtCTCtKZ0I7UUsvSmhCLFNMK0pnQixFQUdYO0VBRkQ7SUtoS0osa0JMK0pnQjtRSy9KaEIsU0wrSmdCLEVBR1g7RUFGRDtJS2hLSixrQkwrSmdCO1FLL0poQixTTCtKZ0IsRUFHWDtFQUZEO0lLaEtKLGtCTCtKZ0I7UUsvSmhCLFNMK0pnQixFQUdYO0VBRkQ7SUtoS0osa0JMK0pnQjtRSy9KaEIsU0wr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QUFhO0VBT2Isc0JYMVBpQixFVzRQcEI7O0FBakNEO0VBSUksa0JOdlA2QztFTW1RN0MsaUJYNU9XO0VXb1BYLGNBQWE7RUFPYixzQlgxUGlCLEVXNFBwQjs7QUFqQ0Q7RUFJSSxtQk52UDZDO0VNbVE3QyxpQlg1T1c7RVdvUFgsY0FBYTtFQU9iLHNCWDFQaUIsRVc0UHBCOztBQWpDRDtFQUlJLG9CTnZQNkM7RU1tUTdDLGlCWDVPVztFV29QWCxjQUFhO0VBT2Isc0JYMVBpQixFVzRQcEI7O0FBakNEO0VBSUksZ0JOdlA2QztFTW1RN0MsaUJYNU9XO0VXb1BYLGNBQWE7RUFPYixzQlgxUGlCLEVXNFBwQjs7QUFqQ0Q7RUFJSSxvQk52UDZDO0VNbVE3QyxpQlg1T1c7RVdvUFgsY0FBYTtFQU9iLHNCWDFQaUIsRVc0UHBCOztBTGpOSDtFVm5ERjtJZXVPUSxvQk52UDZDLEVNb1JoRDtFQWpDRDtJQUlJLG9CTnZQNkMsRU1vUmhEO0VBakNEO0lBSUksbUJOdlA2QyxFTW9SaEQ7RUFqQ0Q7SUFJSSxnQk52UDZDLEVNb1JoRDtFQWpDRDtJQUlJLGdCTnZQNkMsRU1vUmhEO0VBakNEO0lBSUksb0JOdlA2QyxFTW9SaEQsRUFBQTs7QWZuR0w7RWUwR0EscUJBQW9CO0VBQ3BCLGVWMVd5QjtFVTJXekIsc0JYcE95QjtFV3NPekIsZ0JBQWUsRUFhaEI7RUFsQkQ7SUFTSSxlVjdVYyxFVWlWZjtFQWJIO0lBZ0JJLFVBQVMsRUFDVjs7QWZ2S0Q7RWU0S0EsWUFBVztFQUVYLHFCTmxUcUQ7RU1tVHJELFVBQVM7RUFDVCxxQlh2UHlCO0VXeVB6QixjQUFhO0VBQ2IsZ0JBQWU7RUFDZixpQ1Z4WWdCO0VVeVloQixlQUFjLEVBQ2Y7O0FBR0Q7OztFQUdFLG9CWGpSMEI7RVdrUjFCLDZCWGhReUI7RVdpUXpCLGlCWHBSc0IsRVdxUnZCOztBQUdEO0VBQ0UsbUJBQWtCLEVBQ25COztBQUdEO0VBQ0UscUJYMVFzQjtFVzJRdEIsc0JYN1FrQixFVzhRbkI7O0FBR0Q7RUFDRSxxQlhoUnNCLEVXaVJ2Qjs7QUFHRDtFQUVJLHFC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O01BdURsQixvQkF2RGtCLEVxQklmOztBQUlIO0VyQjhCQSxzQkEvQ2dCO01BK0NoQix3QkEvQ2dCO0VBZ0RoQix1QkF4Q2dCO01Bd0NoQixvQkF4Q2dCO0VxQldkLDJCQUFxQjtNQUFyQixzQkFBcUIsRUFDdEI7O0ExQmtORztFS2hLSixrQnFCOUNnQjtNckI4Q2hCLFNxQjlDZ0IsRUFHWDs7QTFCMk1EO0VLaEtKLGtCcUI5Q2dCO01yQjhDaEIsU3FCOUNnQixFQUdYOztBMUIyTUQ7RUtoS0osa0JxQjlDZ0I7TXJCOENoQixTcUI5Q2dCLEVBR1g7O0ExQjJNRDtFS2hLSixrQnFCOUNnQjtNckI4Q2hCLFNxQjlDZ0IsRUFHWDs7QTFCMk1EO0VLaEtKLGtCcUI5Q2dCO01yQjhDaEIsU3FCOUNnQixFQUdYOztBMUIyTUQ7RUtoS0osa0JxQjlDZ0I7TXJCOENoQixTcUI5Q2dCLEVBR1g7O0F2QjZIRDtFSDhFQTtJS2hLSixrQnFCOUNnQjtRckI4Q2hCLFNxQjlDZ0IsRUFHWDtFMUIyTUQ7SUtoS0osa0JxQjlDZ0I7UXJCOENoQixTcUI5Q2dCLEVBR1g7RTFCMk1EO0lLaEtKLGtCcUI5Q2dCO1FyQjhDaEIsU3FCOUNnQixFQUdYO0UxQjJNRDtJS2hLSixrQnFCOUNnQjtRckI4Q2hCLFNxQjlDZ0IsRUFHWDtFMUIyTUQ7SUtoS0osa0JxQjlDZ0I7UXJCOENoQixTcUI5Q2dCLEVBR1g7RTFCMk1EO0lLaEtKLGtCcUI5Q2dCO1FyQjhDaEIsU3FCOUNnQixFQUdYLEVBQUE7O0F2QjZIRDtFSDhFQTtJS2hLSixrQnFCOUNnQjtRckI4Q2hCLFNxQjlDZ0IsRUFHWDtFMUIyTUQ7SUtoS0osa0JxQjlDZ0I7UXJCOENoQixTcUI5Q2dCLEVBR1g7RTFCMk1EO0lLaEtKLGtCcUI5Q2dCO1FyQjhDaEIsU3FCOUNnQixFQUdYO0UxQjJNRDtJS2hLSixrQnFCOUNnQjtRckI4Q2hCLFNxQjlDZ0IsRUFHWDtFMUIyTUQ7SUtoS0osa0JxQjlDZ0I7UXJCOENoQixTcUI5Q2dCLEVBR1g7RTFCMk1EO0lLaEtKLGtCcUI5Q2dCO1FyQjhDaEIsU3FCOUNnQixFQUdYLEVBQUE7O0FDVEg7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYiw2QkFGeUI7RUN2QnZCLHdDQUF1QztFQUd6QyxvQ0FBMkI7VUFBM0IsNEJBQTJCLEVKUjFCOztBQVVEO0VHb0JBLHlCQUZ5QixFSGhCeEI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYiw2QkFGeUI7RUN2QnZCLHdDQUF1QztFQUd6QyxvQ0FBMkI7VUFBM0IsNEJBQTJCLEVKUjFCOztBQVVEO0VHb0JBLHlCQUZ5QixFSGhCeEI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYiw0QkFGeUI7RUN2QnZCLHdDQUF1QztFQUd6QyxvQ0FBMkI7VUFBM0IsNEJBQTJCLEVKUjFCOztBQVVEO0VHb0JBLHlCQUZ5QixFSGhCeEI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYiw0QkFGeUI7RUN2QnZCLHdDQUF1QztFQUd6QyxvQ0FBMkI7VUFBM0IsNEJBQTJCLEVKUjFCOztBQVVEO0VHb0JBLHlCQUZ5QixFSGhCeEI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYix5QkFGeUI7RUN2QnZCLHdDQUF1QztFQUd6QyxvQ0FBMkI7VUFBM0IsNEJBQTJCLEVKUjFCOztBQVVEO0VHb0JBLDRCQUZ5QixFSGhCeEI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYix5QkFGeUI7RUN2QnZCLHdDQUF1QztFQUd6QyxvQ0FBMkI7VUFBM0IsNEJBQTJCLEVKUjFCOztBQVVEO0VHb0JBLDRCQUZ5QixFSGhCeEI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYix5QkFGeUI7RUN2QnZCLHdDQUF1QztFQUd6QyxvQ0FBMkI7VUFBM0IsNEJBQTJCLEVKUjFCOztBQVVEO0VHb0JBLDZCQUZ5QixFSGhCeEI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYix5QkFGeUI7RUN2QnZCLHdDQUF1QztFQUd6QyxvQ0FBMkI7VUFBM0IsNEJBQTJCLEVKUjFCOztBQVVEO0VHb0JBLDZCQUZ5QixFSGhCeEI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixXRmhDa0M7RUlBbEMsNkJBQTRCLEVMRTNCOztBQVVEO0VHb0JBLFdGaENxQyxFRGNwQzs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLFdGL0JrQztFSURsQyw2QkFBNEIsRUxFM0I7O0FBVUQ7RUdvQkEsV0YvQnFDLEVEYXBDOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsK0NHckNtQztFSHFDbkMsc0JGNUJtRDtFTUdqRCx3Q0FBdUM7RUFDdkMsV0FBMkIsRVBONUI7O0FBVUQ7RUdvQkEsNENHVjRDO0VDSjFDLFdBQTJCLEVQSjVCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsK0NHcENxQztFSG9DckMsd0JGM0JxRDtFTUVuRCx3Q0FBdUM7RUFDdkMsV0FBMkIsRVBONUI7O0FBVUQ7RUdvQkEsNENHVjRDO0VDSjFDLFdBQTJCLEVQSjVCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsOENHbkNpQztFSG1DakMseUJGMUJzRDtFTUNwRCx3Q0FBdUM7RUFDdkMsV0FBMkIsRVBONUI7O0FBVUQ7RUdvQkEsNENHVjRDO0VDSjFDLFdBQTJCLEVQSjVCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsOENHbEMrQjtFSGtDL0IsdUJGekJvRDtFTUFsRCx3Q0FBdUM7RUFDdkMsV0FBMkIsRVBONUI7O0FBVUQ7RUdvQkEsNENHVjRDO0VDSjFDLFdBQTJCLEVQSjVCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsK0NHckNtQztFSHFDbkMseUJHQ2U7RUMxQmIsd0NBQXVDO0VBQ3ZDLFdBQTJCLEVQTjVCOztBQVVEO0VHb0JBLDRDR1Y0QztFQ0oxQyxXQUEyQixFUEo1Qjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLCtDR3BDcUM7RUhvQ3JDLHlCR0NlO0VDMUJiLHdDQUF1QztFQUN2QyxXQUEyQixFUE41Qjs7QUFVRDtFR29CQSw0Q0dWNEM7RUNKMUMsV0FBMkIsRVBKNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYiw0Q0dSOEM7RUhROUMsc0JGdEJtRDtFTUhqRCx3Q0FBdUM7RUFDdkMsV0FBOEIsRVBOL0I7O0FBVUQ7RUdvQkEsK0NHckNtQztFQ3VCakMsV0FBOEIsRVBKL0I7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYiw0Q0dSOEM7RUhROUMsd0JGckJxRDtFTUpuRCx3Q0FBdUM7RUFDdkMsV0FBOEIsRVBOL0I7O0FBVUQ7RUdvQkEsK0NHcENxQztFQ3NCbkMsV0FBOEIsRVBKL0I7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYiw0Q0dSOEM7RUhROUMseUJGcEJzRDtFTUxwRCx3Q0FBdUM7RUFDdkMsV0FBOEIsRVBOL0I7O0FBVUQ7RUdvQkEsOENHbkNpQztFQ3FCL0IsV0FBOEIsRVBKL0I7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYiw0Q0dSOEM7RUhROUMsdUJGbkJvRDtFTU5sRCx3Q0FBdUM7RUFDdkMsV0FBOEIsRVBOL0I7O0FBVUQ7RUdvQkEsOENHbEMrQjtFQ29CN0IsV0FBOEIsRVBKL0I7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYiw0Q0dSOEM7RUhROUMseUJHQ2U7RUMxQmIsd0NBQXVDO0VBQ3ZDLFdBQThCLEVQTi9COztBQVVEO0VHb0JBLCtDR3JDbUM7RUN1QmpDLFdBQThCLEVQSi9COztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsNENHUjhDO0VIUTlDLHlCR0NlO0VDMUJiLHdDQUF1QztFQUN2QyxXQUE4QixFUE4vQjs7QUFVRDtFR29CQSwrQ0dwQ3FDO0VDc0JuQyxXQUE4QixFUEovQjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLHNCQUZ5QjtFSzNCdkIsd0NBQXVDO0VBQ3ZDLFdBQTJCLEVSRjVCOztBQVVEO0VHb0JBLG9CQUZ5QjtFS2hCdkIsV0FBMkIsRVJBNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixzQkFGeUI7RUszQnZCLHdDQUF1QztFQUN2QyxXQUEyQixFUkY1Qjs7QUFVRDtFR29CQSxvQkFGeUI7RUtoQnZCLFdBQTJCLEVSQTVCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIsb0JBRnlCO0VLM0J2Qix3Q0FBdUM7RUFDdkMsV0FBOEIsRVJGL0I7O0FBVUQ7RUdvQkEsc0JBRnlCO0VLaEJ2QixXQUE4QixFUkEvQjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLG9CQUZ5QjtFSzNCdkIsd0NBQXVDO0VBQ3ZDLFdBQThCLEVSRi9COztBQVVEO0VHb0JBLHNCQUZ5QjtFS2hCdkIsV0FBOEIsRVJBL0I7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYiw2QkFGeUI7RU0zQnZCLHdDQUF1QztFQUN2QyxXQUEyQixFVEY1Qjs7QUFVRDtFR29CQSxxQkFGeUI7RU1oQnZCLFdBQTJCLEVUQTVCOztBQWREO0VDbEJGLDJCQ2tCYztFRGpCZCxtQ0NpQ2U7RUNnQmIscUJBRnlCO0VNM0J2Qix3Q0FBdUM7RUFDdkMsV0FBOEIsRVRGL0I7O0FBVUQ7RUdvQkEsNEJBRnlCO0VNaEJ2QixXQUE4QixFVEEvQjs7QUFkRDtFQ2xCRiwyQkNrQmM7RURqQmQsbUNDaUNlO0VDZ0JiLDRCQUZ5QjtFTTNCdkIsd0NBQXVDO0VBQ3ZDLFdBQTJCLEVURjVCOztBQVVEO0VHb0JBLHFCQUZ5QjtFTWhCdkIsV0FBMkIsRVRBNUI7O0FBZEQ7RUNsQkYsMkJDa0JjO0VEakJkLG1DQ2lDZTtFQ2dCYixxQkFGeUI7RU0zQnZCLHdDQUF1QztFQUN2QyxXQUE4QixFVEYvQjs7QUFVRDtFR29CQSw2QkFGeUI7RU1oQnZCLFdBQThCLEVUQS9COztB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RkM7RXFEdUVGO0lDcE5GLGlCbkRlcUQ7SUErQnJELFlWeUN5RDtJUS9FdkQsdUJBRnFDO0lBR3JDLHNCQUhxQyxFb0Q4TnBDO0lsRC9LRDtNQUNFLGFWa0NzRCxFVWpDdkQsRUFBQTs7QWtEc0tHO0VDN05OLFluRGVxRDtFQStCckQsWVZ5Q3lEO0VRL0V2RCx1QkFGcUM7RUFHckMsc0JBSHFDLEVvRDZOaEM7RXJEdEZIO0lxRGdGRTtNcERyTkosd0JBRnFDO01BR3JDLHVCQUhxQyxFb0Q2TmhDLEVBQUE7RWxEOUtMO0lBQ0UsYVZrQ3NELEVVakN2RDtFa0RzS0k7SUFJTyxvQkFBbUIsRUFDdEI7O0FBSVQ7RWxCek9BLDJFeEN5RXFFO0V3Q3hFckUsbUJBQWtCO0VBQ2xCLGlCQUFnQjtFa0J5T1osZTFEclBnQjtFMERzUGhCLGdCQUFlO0VBQ2Ysb0JBQW1CLEVBd0J0QjtFQXRCRztJQUNJLDBCQUF5QixFQUM1QjtFQUVEO0lBQ0ksZTFEbk5PLEUwRG9OVjtFckRoR0g7SXFEa0dFO01BRVEsZ0JBQWU7TUFDZixtQkFBa0IsRUFNekIsRUFBQTtFckQzR0g7SXFEa0dFO01BT1EsZ0JBQWUsRUFFdEIsRUFBQTtFckRoSEg7SXFEeUZGO01BMEJRLGdCQUFlLEVBRXRCLEVBQUE7O0FFN1FEO0VBQ0ksMEI1REhnQixFNERJbkI7O0FBRUQ7RXpEMEZGLHFCQ1R1RDtFRm5EckQsbUJBQWtCO0VBQ2xCLGtCQUFpQjtFQUlqQixxQkFBYTtFQUFiLGNBQWE7RUFDYix3QkFsQm1CO01Ba0JuQixvQkFsQm1CLEUwRFpsQjtFdkQ4SUM7SXVEcEpGO01BSVEsbUJBQWtCLEVBRXpCLEVBQUE7O0F2RG1KQztFdURqSkY7STFEd0dGLG1CTTFGcUQ7UU4wRnJELGVNMUZxRDtJTjhGbkQsZ0JNOUZtRDtJRlBuRCxpQkZ1RVM7SUV0RVQsZ0JGc0VTO0lGRFQsZ0JNL0RtRCxFb0RXbEQ7SUF6QkE7TUFLVyxZQUFXLEVBQ2QsRUFBQTs7QXZEc0lQO0V1RDVJRjtJMUR3R0Ysa0JNMUZxRDtRTjBGckQsY00xRnFEO0lOOEZuRCxlTTlG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aUNBQWdDLEVBc0RuQztFbEV4TkM7SWtFb0tFO00vQjlQQSxhK0JnUStCO00vQjFQL0IsWStCMFAwQixFQU16QixFQUFBO0VsRWpMSDtJa0V5S0U7TS9COVBBLGErQm9RK0I7TS9COVAvQixZK0I4UDBCLEVBRXpCLEVBQUE7RWxFNUtIO0lrRThLRTtNL0J4UUEsYStCMFErQjtNL0JwUS9CLFkrQm9RMEIsRUFNekIsRUFBQTtFbEUzTEg7SWtFbUxFO00vQnhRQSxhK0I4UStCO00vQnhRL0IsWStCd1EwQixFQUV6QixFQUFBO0VsRXRMSDtJa0V3TEU7TS9CbFJBLGErQm9SK0I7TS9COVEvQixZK0I4UTBCLEVBTXpCLEVBQUE7RWxFck1IO0lrRTZMRTtNL0JsUkEsYStCd1IrQjtNL0JsUi9CLFkrQmtSMEIsRUFFekIsRUFBQTtFbEVoTUg7SWtFa01FO00vQjVSQSxhK0IrUitCO00vQnpSL0IsWStCeVIwQixFQU16QixFQUFBO0VsRWhOSDtJa0V1TUU7TS9CNVJBLGErQm1TK0I7TS9CN1IvQixZK0I2UjBCLEVBRXpCLEVBQUE7RWxFM01IO0lrRTZNRTtNL0J2U0EsYStCMlMrQjtNL0JyUy9CLFkrQnFTMEIsRUFNekIsRUFBQTtFbEU1Tkg7SWtFa05FO00vQnZTQSxhK0IrUytCO00vQnpTL0IsWStCeVMwQixFQUV6QixFQUFBOztBQUdMO0VBQ0ksYUFBWSxFQUNmOztBQUVEO0VBQ0ksMEJ2RXhYVyxFdUV5WGQ7O0FsRWhPQztFa0VrT0Y7SUFFUSxrQkFBaUI7SUFDakIscUJBQW9CLEVBTzNCLEVBQUE7O0FsRWpQQztFa0V1T0Y7SXBFalNGLHFCQ1R1RDtJRDFCckQsbUJBQWtCO0lBQ2xCLGtCQUFpQjtJb0UyVVQsY0FBYSxFQUVwQjtJL0JuTkQ7TUFFSSxZQUFXO01BQ1gsZUFBYyxFQUNqQjtJQUVEO01BQ0ksWUFBVyxFQUNkLEVBQUE7O0ErQjZNRDtFQUNJLHFCQUFhO0VBQWIsY0FBYSxFQVdoQjtFbEUxUEM7SWtFOE9GO01yRXZSRixtQk0xRnFEO1VOMEZyRCxlTTFGcUQ7TU44Rm5ELGdCTTlGbUQ7TUZQ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RFYsYUFBWTtFQUNaLG1CQUFrQixFQUtyQjtFckUySUM7SXFFcEpGO01BT1EsY0FBYSxFQUVwQixFQUFBOztBckVnSkM7RXFFOUlGO0l4RXFHRix3Qk0xRnFEO1FOMEZyRCxvQk0xRnFEO0lOOEZuRCxxQk05Rm1EO0lGUG5ELHVCQUZxQztJQUdyQyxzQkFIcUM7SUp3RXJDLHFCTS9EbUQsRWtFSGxELEVBQUE7RXJFaUlDO0lxRXpJRjtNcEVJQSx3QkFGcUM7TUFHckMsdUJBSHFDLEVvRU1wQyxFQUFBOztBckVpSUM7RXFFeklGO0l4RXFHRix3Qk0xRnFEO1FOMEZyRCxvQk0xRnFEO0lOOEZuRCxxQk05Rm1EO0lGUG5ELHVCQUZxQztJQUdyQyxzQkFIcUM7SUp3RXJDLHFCTS9EbUQsRWtFSGxELEVBQUE7RXJFaUlDO0lxRXpJRjtNcEVJQSx3QkFGcUM7TUFHckMsdUJBSHFDLEVvRU1wQyxFQUFBOztBckVzSUM7RXFFcElGO0luRUpGLHFCQUFhO0lBQWIsY0FBYTtJbUVPSCxvQkFBZTtRQUFmLGdCQUFlLEVBTXRCLEVBQUE7O0FyRXNIQztFcUUvSEY7SUFPUSxlQUFjLEVBRXJCLEVBQUE7O0FyRXNIQztFcUVwSEY7SUFHUSxzQkFBcUIsRUFFNUIsRUFBQTs7QXJFb0hDO0VxRWxIRjtJbkUyQkYsa0JtRXpCK0I7UW5FeUIvQixTbUV6QitCO0lsQ3NCekIsYWtDckI0QjtJbEMyQjVCLGFrQzNCdUIsRUFNMUIsRUFBQTs7QXJFb0dDO0VxRTdHRjtJbEN3QkksYWtDakI0QjtJbEN1QjVCLGFrQ3ZCdUIsRUFFMUIsRUFBQTs7QXJFeUdDO0VxRXZHRjtJbkVnQkYsa0JtRWQrQjtRbkVjL0IsU21FZCtCO0lBRXJCLG1CQUFrQixFQVN6QixFQUFBOztBckVxRkM7RXFFbEdGO0lBU1EsaUJBQWdCO0lBQ2hCLGtCQUFpQixFQUd4QixFQUFBOztBckUwRkM7RXFFeEZGO0luRUNGLGtCbUVDK0I7UW5FRC9CLFNtRUMrQjtJQUVyQixtQkFBa0IsRUFTekIsRUFBQTs7QXJFc0VDO0VxRW5GRjtJQVNRLGlCQUFnQjtJQUNo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b0JBbEJtQjtJeUUyTmYsdUJBQW1CO1FBQW5CLG9CQUFtQjtJQUNuQixZQUFXLEVBS2Q7SUFIRztNQUNJLDBCQUF5QixFQUM1QjtFdEV6Rkg7SXNFNEZGO016RXJJRixtQk0xRnFEO1VOMEZyRCxlTTFGcUQ7TU44Rm5ELGdCTTlGbUQ7TUZQbkQsdUJBRnFDO01BR3JDLHNCQUhxQztNSndFckMsZ0JNL0RtRDtNbUVrTzNDLHFCQUFvQjtNQUNwQixrQkFBaUIsRUE4RXhCLEVBQUE7RXRFbkxDO0lzRWlHRjtNckV0T0Esd0JBRnFDO01BR3JDLHVCQUhxQyxFcUUwVHBDLEVBQUE7RXRFbkxDO0lzRXlHTTtNekU3SVYsd0JNMUZxRDtVTjBGckQsb0JNMUZxRDtNTjhGbkQscUJNOUZtRDtNRlBuRCx3QkFGcUM7TUFHckMsdUJBSHFDO01Kd0VyQyxxQk0vRG1EO01tRXlPdkMsa0JBQWlCO01BQ2pCLHFCQUFvQixFQUN2QjtJQUVEO016RW5KVix3Qk0xRnFEO1VOMEZyRCxvQk0xRnFEO01OOEZuRCxxQk05Rm1EO01GUG5ELHVCQUZxQztNQUdyQyxzQkFIcUM7TUp3RXJDLHFCTS9EbUQsRW1FK08xQyxFQUFBO0V0RWpIUDtJc0UrR007TXJFcFBSLHdCQUZxQztNQUdyQyx1QkFIcUMsRXFFd1A1QixFQUFBO0V0RWpIUDtJc0V5R007TUFhSSxvQkFBbUIsRUFDdEI7SUFSRDtNekVuSlYsd0JNMUZxRDtVTjBGckQsb0JNMUZxRDtNTjhGbkQscUJNOUZtRDtNRlBuRCx1QkFGcUM7TUFHckMsc0JBSHFDO01Kd0VyQyxxQk0vRG1ELEVtRXlQMUMsRUFBQTtFdEUzSFA7SXNFK0dNO01yRXBQUix3QkFGcUM7TUFHckMsdUJBSHFDLEVxRWtRNUIsRUFBQTtFdEV0SFA7SXNFb0dNO01BdUJJLG9CQUFtQixFQUN0QjtJQWxCRDtNekVuSlYsd0JNMUZxRDtVTjBGckQsb0JNMUZxRDtNTjhGbkQscUJNOUZtRDtNRlBuRCx1QkFGcUM7TUFHckMsc0JBSHFDO01Kd0VyQyxxQk0vRG1ELEVtRW1RMUMsRUFBQTtFdEVySVA7SXNFK0dN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RUQ7O0lBRUksZ0JBQWU7SUFDZixxQkFBYTtJQUFiLGNBQWE7SUFDYix1QkFBOEI7UUFBOUIsK0JBQThCLEVBQ2pDO0V2RGpGRDtJdURvRkksaUJBQWdCO0lBQ2hCLHFCQUFhO0lBQWIsY0FBYTtJQUNiLHdCQUFtQjtRQUFuQixvQkFBbUI7SUFDbkIsdUJBQThCO1FBQTlCLCtCQUE4QixFQUNqQztFdkR2QkQ7SXVEMEJJLFdBQVU7SUFDVixrQkFBUTtRQUFSLFNBQVEsRUFDWDtFdkRoRkQ7SXVEbUZJLFdBQVU7SUFDVixrQkFBUTtRQUFSLFNBQVEsRUFDWDtFSGxERDtJR3FESSxvQkFBZTtRQUFmLGdCQUFlLEVBQ2xCO0VIOUJEO0lHaUNJLFdBQVUsRUFDYjtFbkJ4QkQ7SW1CMkJJLFdBQVUsRUFDYjtFckJ1Q0c7SXFCcENBLGtCQUFpQjtJQUNqQixtQkFBa0IsRUFDckI7RUFHRDs7Ozs7Ozs7Ozs7O0lBYUkseUJBQXVCLEVBQzFCLEVBQUEiLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIGNhYmluLXJlZ3VsYXIgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQ2FiaW4nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogbG9jYWwoXCJDYWJpblwiKSwgbG9jYWwoXCJDYWJpbi1SZWd1bGFyXCIpLCB1cmwoXCIuLi93ZWJmb250cy9jYWJpbi12MTEtbGF0aW4tcmVndWxhci53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vd2ViZm9udHMvY2FiaW4tdjExLWxhdGluLXJlZ3VsYXIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAvKiBDaHJvbWUgNissIEZpcmVmb3ggMy42KywgSUUgOSssIFNhZmFyaSA1LjErICovIH1cblxuLyogY2FiaW4tNTAwIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0NhYmluJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBzcmM6IGxvY2FsKFwiQ2FiaW4gTWVkaXVtXCIpLCBsb2NhbChcIkNhYmluLU1lZGl1bVwiKSwgdXJsKFwiLi4vd2ViZm9udHMvY2FiaW4tdjExLWxhdGluLTUwMC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vd2ViZm9udHMvY2FiaW4tdjExLWxhdGluLTUwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIC8qIENocm9tZSA2KywgRmlyZWZveCAzLjYrLCBJRSA5KywgU2FmYXJpIDUuMSsgKi8gfVxuXG4vKiBjYWJpbi02MDAgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQ2FiaW4nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHNyYzogbG9jYWwoXCJDYWJpbiBTZW1pQm9sZFwiKSwgbG9jYWwoXCJDYWJpbi1TZW1pQm9sZFwiKSwgdXJsKFwiLi4vd2ViZm9udHMvY2FiaW4tdjExLWxhdGluLTYwMC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiLi4vd2ViZm9udHMvY2FiaW4tdjExLWxhdGluLTYwMC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XG4gIC8qIENocm9tZSA2KywgRmlyZWZveCAzLjYrLCBJRSA5KywgU2FmYXJpIDUuMSsgKi8gfVxuXG4vKiBjYWJpbi03MDAgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnQ2FiaW4nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogbG9jYWwoXCJDYWJpbiBCb2xkXCIpLCBsb2NhbChcIkNhYmluLUJvbGRcIiksIHVybChcIi4uL3dlYmZvbnRzL2NhYmluLXYxMS1sYXRpbi03MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL3dlYmZvbnRzL2NhYmluLXYxMS1sYXRpbi03MDAud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAvKiBDaHJvbWUgNissIEZpcmVmb3ggMy42KywgSUUgOSssIFNhZmFyaSA1LjErICovIH1cblxuLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4gKiBWZXJzaW9uIDYuMy4xXG4gKiBmb3VuZGF0aW9uLnp1cmIuY29tXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cbi8qIERvY3VtZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZGVmYXVsdCBmb250IGZhbWlseSBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICogMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpblxuICAgICAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAgICAgKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMiAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMyAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDMgKi8gfVxuXG4vKiBTZWN0aW9uc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5hcnRpY2xlLFxuYXNpZGUsXG5mb290ZXIsXG5oZWFkZXIsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5maWdjYXB0aW9uLFxuZmlndXJlIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICAgICAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAgICAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICAgICAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cbm1haW4ge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIDEgKi9cbiAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDogb2JqZWN0cztcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICAgICAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuYTphY3RpdmUsXG5hOmhvdmVyIHtcbiAgb3V0bGluZS13aWR0aDogMDsgfVxuXG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gRmlyZWZveCAzOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAgICAgKi9cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgLyogMSAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgLyogMiAqL1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICAgKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAgICAgKi9cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gICAgICovXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgY29sb3I6ICMwMDA7IH1cblxuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICAgICAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAgICAqIGFsbCBicm93c2Vycy5cbiAgICAgKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gICAgICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXG4gICAgICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gICAgICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuLyoqXG4gICAgICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogRm9ybXNcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gICAgICovXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDEwMCU7XG4gIC8qIDEgKi9cbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC8qIDEgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gICAgICovXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAgICAgKiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgICAgKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gICAgICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi8qKlxuICAgICAqIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuICAgICAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAgICAqL1xuYnV0dG9uLFxuaHRtbCBbdHlwZT1cImJ1dHRvblwiXSxcblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAyICovIH1cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAvKipcbiAgICAgICAqIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG4gICAgICAgKi9cbiAgLyoqXG4gICAgICAgKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gICAgICAgKi8gfVxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDsgfVxuXG4vKipcbiAgICAgKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuICAgICAqL1xuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4vKipcbiAgICAgKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gICAgICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAgICAgKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAgICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICAgICAqL1xuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgICAgKi9cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XG4gIC8qIDIgKi9cbiAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgICAgICovIH1cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKiAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG4gICAgICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07IH1cblxuLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovIH1cblxuLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgICAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gICAgICovXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi8qIEludGVyYWN0aXZlXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICAgICAqL1xuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTsgfVxuXG4vKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xubWVudSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qIFNjcmlwdGluZ1xuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAgICAgKi9cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAgICAgKi9cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBIaWRkZW5cbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICAgICAqL1xuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5mb3VuZGF0aW9uLW1xIHtcbiAgZm9udC1mYW1pbHk6IFwic21hbGw9MGVtJm1lZGl1bT00MGVtJmxhcmdlPTY0ZW0meGxhcmdlPTc1ZW0meHhsYXJnZT05MGVtXCI7IH1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTAwJTsgfVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMDAwO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG5pbWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljOyB9XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbnNlbGVjdCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5tYXBfY2FudmFzIGltZyxcbi5tYXBfY2FudmFzIGVtYmVkLFxuLm1hcF9jYW52YXMgb2JqZWN0LFxuLm1xYS1kaXNwbGF5IGltZyxcbi5tcWEtZGlzcGxheSBlbWJlZCxcbi5tcWEtZGlzcGxheSBvYmplY3Qge1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBsaW5lLWhlaWdodDogMTsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvOyB9XG5cbi5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuXG4uaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5yb3cge1xuICBtYXgtd2lkdGg6IDczLjYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDsgfVxuICAucm93IC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogLTEuMjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTEuMjVyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yb3cgLnJvdyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9IH1cbiAgICAucm93IC5yb3cuY29sbGFwc2Uge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLnJvdy5leHBhbmRlZCB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gICAgLnJvdy5leHBhbmRlZCAucm93IHtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gIC5yb3c6bm90KC5leHBhbmRlZCkgLnJvdyB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC5yb3cuY29sbGFwc2UgPiAuY29sdW1uLCAucm93LmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5yb3cuaXMtY29sbGFwc2UtY2hpbGQsXG4gIC5yb3cuY29sbGFwc2UgPiAuY29sdW1uID4gLnJvdyxcbiAgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW5zID4gLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgZmxleDogMSAxIDBweDtcbiAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICBtaW4td2lkdGg6IGluaXRpYWw7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29sdW1uLCAuY29sdW1ucyB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuXG4ucm93IC5jb2x1bW4ucm93LnJvdywgLnJvdyAucm93LnJvdy5jb2x1bW5zIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5mbGV4LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLmZsZXgtY2hpbGQtYXV0byB7XG4gIGZsZXg6IDEgMSBhdXRvOyB9XG5cbi5mbGV4LWNoaWxkLWdyb3cge1xuICBmbGV4OiAxIDAgYXV0bzsgfVxuXG4uZmxleC1jaGlsZC1zaHJpbmsge1xuICBmbGV4OiAwIDEgYXV0bzsgfVxuXG4uZmxleC1kaXItcm93IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG4uZmxleC1kaXItcm93LXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cblxuLmZsZXgtZGlyLWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLmZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG5cbi5zbWFsbC0xIHtcbiAgZmxleDogMCAwIDguMzMzMzMlO1xuICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTsgfVxuXG4uc21hbGwtMiB7XG4gIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuXG4uc21hbGwtMyB7XG4gIGZsZXg6IDAgMCAyNSU7XG4gIG1heC13aWR0aDogMjUlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLTQge1xuICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlOyB9XG5cbi5zbWFsbC01IHtcbiAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtNiB7XG4gIGZsZXg6IDAgMCA1MCU7XG4gIG1heC13aWR0aDogNTAlOyB9XG5cbi5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cblxuLnNtYWxsLTcge1xuICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlOyB9XG5cbi5zbWFsbC04IHtcbiAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uc21hbGwtOSB7XG4gIGZsZXg6IDAgMCA3NSU7XG4gIG1heC13aWR0aDogNzUlOyB9XG5cbi5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cblxuLnNtYWxsLTEwIHtcbiAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuXG4uc21hbGwtMTEge1xuICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtMTIge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbi5zbWFsbC1vcmRlci0xIHtcbiAgb3JkZXI6IDE7IH1cblxuLnNtYWxsLW9yZGVyLTIge1xuICBvcmRlcjogMjsgfVxuXG4uc21hbGwtb3JkZXItMyB7XG4gIG9yZGVyOiAzOyB9XG5cbi5zbWFsbC1vcmRlci00IHtcbiAgb3JkZXI6IDQ7IH1cblxuLnNtYWxsLW9yZGVyLTUge1xuICBvcmRlcjogNTsgfVxuXG4uc21hbGwtb3JkZXItNiB7XG4gIG9yZGVyOiA2OyB9XG5cbi5zbWFsbC11cC0xIHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC0xID4gLmNvbHVtbiwgLnNtYWxsLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5zbWFsbC11cC0yIHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC0yID4gLmNvbHVtbiwgLnNtYWxsLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuXG4uc21hbGwtdXAtMyB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtMyA+IC5jb2x1bW4sIC5zbWFsbC11cC0zID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cblxuLnNtYWxsLXVwLTQge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTQgPiAuY29sdW1uLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG5cbi5zbWFsbC11cC01IHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC01ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTsgfVxuXG4uc21hbGwtdXAtNiB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtNiA+IC5jb2x1bW4sIC5zbWFsbC11cC02ID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLXVwLTcge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTcgPiAuY29sdW1uLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMTQuMjg1NzElO1xuICAgIG1heC13aWR0aDogMTQuMjg1NzElOyB9XG5cbi5zbWFsbC11cC04IHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC04ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDEyLjUlO1xuICAgIG1heC13aWR0aDogMTIuNSU7IH1cblxuLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5tZWRpdW0tMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLm1lZGl1bS01IHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLm1lZGl1bS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLm1lZGl1bS04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLm1lZGl1bS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5tZWRpdW0tMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLm1lZGl1bS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAubWVkaXVtLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5tZWRpdW0tb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLm1lZGl1bS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAubWVkaXVtLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9XG4gIC5tZWRpdW0tdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC0xID4gLmNvbHVtbiwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLm1lZGl1bS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVkaXVtLXVwLTIgPiAuY29sdW1uLCAubWVkaXVtLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVkaXVtLXVwLTMgPiAuY29sdW1uLCAubWVkaXVtLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS11cC00IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVkaXVtLXVwLTQgPiAuY29sdW1uLCAubWVkaXVtLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMjUlO1xuICAgICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS11cC01IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVkaXVtLXVwLTUgPiAuY29sdW1uLCAubWVkaXVtLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMjAlO1xuICAgICAgbWF4LXdpZHRoOiAyMCU7IH1cbiAgLm1lZGl1bS11cC02IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVkaXVtLXVwLTYgPiAuY29sdW1uLCAubWVkaXVtLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS11cC03IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVkaXVtLXVwLTcgPiAuY29sdW1uLCAubWVkaXVtLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTQuMjg1NzElO1xuICAgICAgbWF4LXdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLm1lZGl1bS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVkaXVtLXVwLTggPiAuY29sdW1uLCAubWVkaXVtLXVwLTggPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTIuNSU7XG4gICAgICBtYXgtd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZXhwYW5kIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG4gIC5tZWRpdW0tc2hyaW5rIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAubWVkaXVtLWV4cGFuZCxcbiAgLm1lZGl1bS1zaHJpbmsge1xuICAgIG1heC13aWR0aDogbm9uZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93OyB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfSB9XG5cbi5yb3cubWVkaXVtLXVuc3RhY2sgPiAuY29sdW1uLCAucm93Lm1lZGl1bS11bnN0YWNrID4gLmNvbHVtbnMge1xuICBmbGV4OiAwIDAgMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yb3cubWVkaXVtLXVuc3RhY2sgPiAuY29sdW1uLCAucm93Lm1lZGl1bS11bnN0YWNrID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubGFyZ2UtMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLTQge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5sYXJnZS01IHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLTcge1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5sYXJnZS04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLTEwIHtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAubGFyZ2UtMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAubGFyZ2UtMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5sYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLmxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5sYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLmxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9XG4gIC5sYXJnZS11cC0xIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubGFyZ2UtdXAtMSA+IC5jb2x1bW4sIC5sYXJnZS11cC0xID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLXVwLTIge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5sYXJnZS11cC0yID4gLmNvbHVtbiwgLmxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLXVwLTMge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5sYXJnZS11cC0zID4gLmNvbHVtbiwgLmxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLXVwLTQge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5sYXJnZS11cC00ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMjUlO1xuICAgICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLXVwLTUge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5sYXJnZS11cC01ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMjAlO1xuICAgICAgbWF4LXdpZHRoOiAyMCU7IH1cbiAgLmxhcmdlLXVwLTYge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5sYXJnZS11cC02ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLXVwLTcge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5sYXJnZS11cC03ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTQuMjg1NzElO1xuICAgICAgbWF4LXdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLmxhcmdlLXVwLTgge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5sYXJnZS11cC04ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTggPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTIuNSU7XG4gICAgICBtYXgtd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1leHBhbmQge1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgLmxhcmdlLXNocmluayB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgLmxhcmdlLWV4cGFuZCxcbiAgLmxhcmdlLXNocmluayB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubGFyZ2UtZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH0gfVxuXG4ucm93LmxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93LmxhcmdlLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gIGZsZXg6IDAgMCAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJvdy5sYXJnZS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy5sYXJnZS11bnN0YWNrID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuXG4uc2hyaW5rIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uY29sdW1uLWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9XG4gIC5jb2x1bW4tYmxvY2sgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb2x1bW4tYmxvY2sge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgICAgLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG5cbmRpdixcbmRsLFxuZHQsXG5kZCxcbnVsLFxub2wsXG5saSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnByZSxcbmZvcm0sXG5wLFxuYmxvY2txdW90ZSxcbnRoLFxudGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuICBoMSBzbWFsbCxcbiAgaDIgc21hbGwsXG4gIGgzIHNtYWxsLFxuICBoNCBzbWFsbCxcbiAgaDUgc21hbGwsXG4gIGg2IHNtYWxsIHtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBjb2xvcjogI2NhY2FjYTsgfVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMi4zNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuaDMge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTsgfVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbmg2IHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDIuMzc1cmVtOyB9XG4gIGgyIHtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9XG4gIGgzIHtcbiAgICBmb250LXNpemU6IDIuMjVyZW07IH1cbiAgaDQge1xuICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuICBoNSB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG4gIGg2IHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtOyB9IH1cblxuYSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogI2Y5OGQyOTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgYTpob3ZlciwgYTpmb2N1cyB7XG4gICAgY29sb3I6ICMyNmEzZGM7IH1cbiAgYSBpbWcge1xuICAgIGJvcmRlcjogMDsgfVxuXG5ociB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXgtd2lkdGg6IDczLjYyNXJlbTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDEuMjVyZW0gYXV0bztcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTdlODtcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxudWwsXG5vbCxcbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG5saSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgfVxuXG51bCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7IH1cblxub2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfVxuXG51bCB1bCwgb2wgdWwsIHVsIG9sLCBvbCBvbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBkbCBkdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjU2MjVyZW0gMS4yNXJlbSAwIDEuMTg3NXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZTZlN2U4OyB9XG4gIGJsb2NrcXVvdGUsIGJsb2NrcXVvdGUgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICBjb2xvcjogIzhhOGE4YTsgfVxuXG5jaXRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBjb2xvcjogIzhhOGE4YTsgfVxuICBjaXRlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCLigJQgXCI7IH1cblxuYWJiciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzAwMDtcbiAgY29sb3I6ICMwMDA7XG4gIGN1cnNvcjogaGVscDsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7IH1cblxuY29kZSB7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzEyNXJlbSAwLjA2MjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU3ZTg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzAwMDsgfVxuXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMDAwOyB9XG5cbi5zdWJoZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICM4YThhOGE7IH1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEyNSU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgcCArIC5zdGF0IHtcbiAgICBtYXJnaW4tdG9wOiAtMXJlbTsgfVxuXG4ubm8tYnVsbGV0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLm1lZGl1bS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubWVkaXVtLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lZGl1bS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5sYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuLnNob3ctZm9yLXByaW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBwcmludCB7XG4gICoge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5oaWRlLWZvci1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRoZWFkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0Ym9keS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdHIuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgdGguc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiOyB9XG4gIC5pciBhOmFmdGVyLFxuICBhW2hyZWZePSdqYXZhc2NyaXB0OiddOmFmdGVyLFxuICBhW2hyZWZePScjJ106YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnOyB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7IH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuNWNtOyB9XG4gIHAsXG4gIGgyLFxuICBoMyB7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDM7IH1cbiAgaDIsXG4gIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bzsgfSB9XG5cbi5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMC44NWVtIDFlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjk4ZDI5O1xuICBjb2xvcjogI2ZmZjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuICAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjZhM2RjO1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5idXR0b24udGlueSB7XG4gICAgZm9udC1zaXplOiAwLjdyZW07IH1cbiAgLmJ1dHRvbi5zbWFsbCB7XG4gICAgZm9udC1zaXplOiAwLjg1cmVtOyB9XG4gIC5idXR0b24ubGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuYnV0dG9uLmV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmJ1dHRvbi5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjk4ZDI5O1xuICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgLmJ1dHRvbi5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UyNzAwNjtcbiAgICAgIGNvbG9yOiAjMDAwOyB9XG4gIC5idXR0b24uc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjZhM2RjO1xuICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxZDgzYjI7XG4gICAgICBjb2xvcjogIzAwMDsgfVxuICAuYnV0dG9uLnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMwMDA7IH1cbiAgICAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uc3VjY2Vzczpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICAgICAgY29sb3I6ICMwMDA7IH1cbiAgLmJ1dHRvbi53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjk4ZDI5O1xuICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UyNzAwNjtcbiAgICAgIGNvbG9yOiAjMDAwOyB9XG4gIC5idXR0b24uYWxlcnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gICAgY29sb3I6ICMwMDA7IH1cbiAgICAuYnV0dG9uLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNTNiMmE7XG4gICAgICBjb2xvcjogIzAwMDsgfVxuICAuYnV0dG9uLmhvbGxvdyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2Y5OGQyOTtcbiAgICBjb2xvcjogI2Y5OGQyOTsgfVxuICAgIC5idXR0b24uaG9sbG93LCAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjOGQ0NjA0O1xuICAgICAgY29sb3I6ICM4ZDQ2MDQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmOThkMjk7XG4gICAgICBjb2xvcjogI2Y5OGQyOTsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzhkNDYwNDtcbiAgICAgICAgY29sb3I6ICM4ZDQ2MDQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzI2YTNkYztcbiAgICAgIGNvbG9yOiAjMjZhM2RjOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzEyNTI2ZjtcbiAgICAgICAgY29sb3I6ICMxMjUyNmY7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gICAgICBjb2xvcjogIzNhZGI3NjsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgICAgICAgY29sb3I6ICMxNTc1Mzk7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNmOThkMjk7XG4gICAgICBjb2xvcjogI2Y5OGQyOTsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzhkNDYwNDtcbiAgICAgICAgY29sb3I6ICM4ZDQ2MDQ7IH1cbiAgICAuYnV0dG9uLmhvbGxvdy5hbGVydCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICAgICAgY29sb3I6ICNjYzRiMzc7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgICAgICAgY29sb3I6ICM2NzI1MWE7IH1cbiAgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5OGQyOTtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnksIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5OGQyOTtcbiAgICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeSwgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnksIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI2YTNkYztcbiAgICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3MsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3Mge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3MsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgICAgICBjb2xvcjogIzAwMDsgfVxuICAgIC5idXR0b24uZGlzYWJsZWQud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZyB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOThkMjk7XG4gICAgICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuYWxlcnQsIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICAgICAgICBjb2xvcjogIzAwMDsgfVxuICAuYnV0dG9uLmRyb3Bkb3duOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC40ZW07XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6ICNmZmYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMWVtOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93OjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2Y5OGQyOTsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5wcmltYXJ5OjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2Y5OGQyOTsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zZWNvbmRhcnk6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjMjZhM2RjOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnN1Y2Nlc3M6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjM2FkYjc2OyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93Lndhcm5pbmc6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZjk4ZDI5OyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LmFsZXJ0OjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2NjNGIzNzsgfVxuICAuYnV0dG9uLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgICB0b3A6IC0wLjFlbTtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uYWNjb3JkaW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuXG4uYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5hY2NvcmRpb24tdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjZjk4ZDI5OyB9XG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cbiAgLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjsgfVxuICAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgIGNvbnRlbnQ6ICcrJzsgfVxuICAuaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyMDEzJzsgfVxuXG4uYWNjb3JkaW9uLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzAwMDsgfVxuICA6bGFzdC1jaGlsZCA+IC5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjsgfVxuXG4uYnV0dG9uLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC5idXR0b24tZ3JvdXA6OmJlZm9yZSwgLmJ1dHRvbi1ncm91cDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuYnV0dG9uLWdyb3VwIC5idXR0b24ge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgLmJ1dHRvbi1ncm91cCAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5idXR0b24tZ3JvdXAudGlueSAuYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDAuN3JlbTsgfVxuICAuYnV0dG9uLWdyb3VwLnNtYWxsIC5idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMC44NXJlbTsgfVxuICAuYnV0dG9uLWdyb3VwLmxhcmdlIC5idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b24ge1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOThkMjk7XG4gICAgY29sb3I6ICMwMDA7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UyNzAwNjtcbiAgICAgIGNvbG9yOiAjMDAwOyB9XG4gIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNmEzZGM7XG4gICAgY29sb3I6ICMwMDA7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxZDgzYjI7XG4gICAgICBjb2xvcjogIzAwMDsgfVxuICAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgICBjb2xvcjogIzAwMDsgfVxuICAgIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjJiYjViO1xuICAgICAgY29sb3I6ICMwMDA7IH1cbiAgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOThkMjk7XG4gICAgY29sb3I6ICMwMDA7IH1cbiAgICAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UyNzAwNjtcbiAgICAgIGNvbG9yOiAjMDAwOyB9XG4gIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgICBjb2xvcjogIzAwMDsgfVxuICAgIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNhNTNiMmE7XG4gICAgICBjb2xvcjogIzAwMDsgfVxuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlOyB9XG4gICAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQgLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbiB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbiB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4ubWVudSB7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLm1lbnUgPiBsaSB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm1lbnUgPiBsaSB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gIC5tZW51ID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5tZW51IGlucHV0LFxuICAubWVudSBzZWxlY3QsXG4gIC5tZW51IGEsXG4gIC5tZW51IGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAubWVudSA+IGxpID4gYSB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAubWVudSA+IGxpID4gYSB7XG4gICAgZmxleC1mbG93OiByb3cgbm93cmFwOyB9XG4gICAgLm1lbnUgPiBsaSA+IGEgaW1nLFxuICAgIC5tZW51ID4gbGkgPiBhIGksXG4gICAgLm1lbnUgPiBsaSA+IGEgc3ZnIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTsgfVxuICAubWVudSwgLm1lbnUuaG9yaXpvbnRhbCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgICAubWVudSA+IGxpLCAubWVudS5ob3Jpem9udGFsID4gbGkge1xuICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgLm1lbnUuZXhwYW5kZWQgPiBsaSB7XG4gICAgZmxleDogMSAxIDBweDsgfVxuICAubWVudS5leHBhbmRlZCA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5tZW51LnZlcnRpY2FsIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVudS52ZXJ0aWNhbCA+IGxpIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgLm1lbnUudmVydGljYWwgPiBsaSA+IGEge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubWVudS5tZWRpdW0taG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAgICAgLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaSB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgLm1lbnUubWVkaXVtLWV4cGFuZGVkID4gbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgfVxuICAgIC5tZW51Lm1lZGl1bS1leHBhbmRlZCA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubWVudS5tZWRpdW0tdmVydGljYWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpID4gYSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tZW51LmxhcmdlLWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgICAgIC5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaSB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgLm1lbnUubGFyZ2UtZXhwYW5kZWQgPiBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9XG4gICAgLm1lbnUubGFyZ2UtZXhwYW5kZWQgPiBsaTpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLm1lbnUubGFyZ2UtdmVydGljYWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSA+IGEge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9IH1cbiAgLm1lbnUuc2ltcGxlIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAubWVudS5zaW1wbGUgYSB7XG4gICAgcGFkZGluZzogMDsgfVxuICAubWVudS5zaW1wbGUgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAubWVudS5zaW1wbGUuYWxpZ24tcmlnaHQgbGkge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAubWVudS5hbGlnbi1yaWdodCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuICAubWVudS5pY29uLXRvcCA+IGxpID4gYSB7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi10b3AgPiBsaSA+IGEgaW1nLFxuICAgIC5tZW51Lmljb24tdG9wID4gbGkgPiBhIGksXG4gICAgLm1lbnUuaWNvbi10b3AgPiBsaSA+IGEgc3ZnIHtcbiAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZW51Lmljb24tdG9wLnZlcnRpY2FsIGEgPiBzcGFuIHtcbiAgICBtYXJnaW46IGF1dG87IH1cbiAgLm1lbnUubmVzdGVkIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTsgfVxuICAubWVudSAuYWN0aXZlID4gYSB7XG4gICAgYmFja2dyb3VuZDogI2Y5OGQyOTtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAubWVudS5tZW51LWJvcmRlcmVkIGxpIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2OyB9XG4gICAgLm1lbnUubWVudS1ib3JkZXJlZCBsaTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItdG9wOiAwOyB9XG4gIC5tZW51Lm1lbnUtaG92ZXIgbGk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7IH1cblxuLm1lbnUtdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDsgfVxuXG4ubWVudS1jZW50ZXJlZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVudS1jZW50ZXJlZCA+IC5tZW51IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuXG4ubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm1lbnUtaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLm1lbnUtaWNvbjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgN3B4IDAgI2ZmZiwgMCAxNHB4IDAgI2ZmZjtcbiAgICBjb250ZW50OiAnJzsgfVxuICAubWVudS1pY29uOmhvdmVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogI2NhY2FjYTtcbiAgICBib3gtc2hhZG93OiAwIDdweCAwICNjYWNhY2EsIDAgMTRweCAwICNjYWNhY2E7IH1cblxuLm1lbnUtaWNvbi5kYXJrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICAubWVudS1pY29uLmRhcms6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgYmFja2dyb3VuZDogIzAwMDtcbiAgICBib3gtc2hhZG93OiAwIDdweCAwICMwMDAsIDAgMTRweCAwICMwMDA7XG4gICAgY29udGVudDogJyc7IH1cbiAgLm1lbnUtaWNvbi5kYXJrOmhvdmVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogIzhhOGE4YTtcbiAgICBib3gtc2hhZG93OiAwIDdweCAwICM4YThhOGEsIDAgMTRweCAwICM4YThhOGE7IH1cblxuLm9yYml0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5vcmJpdC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5vcmJpdC1zbGlkZSB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5vcmJpdC1zbGlkZS5uby1tb3Rpb251aS5pcy1hY3RpdmUge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwOyB9XG5cbi5vcmJpdC1maWd1cmUge1xuICBtYXJnaW46IDA7IH1cblxuLm9yYml0LWltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwOyB9XG5cbi5vcmJpdC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi5vcmJpdC1wcmV2aW91cywgLm9yYml0LW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBjb2xvcjogI2ZmZjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9yYml0LXByZXZpb3VzLCBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9yYml0LW5leHQge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm9yYml0LXByZXZpb3VzOmhvdmVyLCAub3JiaXQtbmV4dDpob3ZlciwgLm9yYml0LXByZXZpb3VzOmFjdGl2ZSwgLm9yYml0LW5leHQ6YWN0aXZlLCAub3JiaXQtcHJldmlvdXM6Zm9jdXMsIC5vcmJpdC1uZXh0OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7IH1cblxuLm9yYml0LXByZXZpb3VzIHtcbiAgbGVmdDogMDsgfVxuXG4ub3JiaXQtbmV4dCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwOyB9XG5cbi5vcmJpdC1idWxsZXRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAwLjhyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub3JiaXQtYnVsbGV0cyB7XG4gICAgb3V0bGluZTogMDsgfVxuICAub3JiaXQtYnVsbGV0cyBidXR0b24ge1xuICAgIHdpZHRoOiAxLjJyZW07XG4gICAgaGVpZ2h0OiAxLjJyZW07XG4gICAgbWFyZ2luOiAwLjFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7IH1cbiAgICAub3JiaXQtYnVsbGV0cyBidXR0b246aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzhhOGE4YTsgfVxuICAgIC5vcmJpdC1idWxsZXRzIGJ1dHRvbi5pcy1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzhhOGE4YTsgfVxuXG4ucGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5wYWdpbmF0aW9uOjpiZWZvcmUsIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnBhZ2luYXRpb246OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAucGFnaW5hdGlvbiBsaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjA2MjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAucGFnaW5hdGlvbiBsaTpsYXN0LWNoaWxkLCAucGFnaW5hdGlvbiBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnBhZ2luYXRpb24gbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICAucGFnaW5hdGlvbiBhLFxuICAucGFnaW5hdGlvbiBidXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgLnBhZ2luYXRpb24gYTpob3ZlcixcbiAgICAucGFnaW5hdGlvbiBidXR0b246aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2U2ZTZlNjsgfVxuICAucGFnaW5hdGlvbiAuY3VycmVudCB7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGJhY2tncm91bmQ6ICNmOThkMjk7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gIC5wYWdpbmF0aW9uIC5kaXNhYmxlZCB7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGNvbG9yOiAjY2FjYWNhO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAucGFnaW5hdGlvbiAuZGlzYWJsZWQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgLnBhZ2luYXRpb24gLmVsbGlwc2lzOjphZnRlciB7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGNvbnRlbnQ6ICdcXDIwMjYnO1xuICAgIGNvbG9yOiAjMDAwOyB9XG5cbi5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbi5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBjb250ZW50OiAnXFwwMGFiJzsgfVxuXG4ucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIGNvbnRlbnQ6ICdcXDAwYmInOyB9XG5cbi5zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMC41cmVtO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7IH1cblxuLnNsaWRlci1maWxsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NhY2FjYTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgLnNsaWRlci1maWxsLmlzLWRyYWdnaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyOyB9XG5cbi5zbGlkZXItaGFuZGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNHJlbTtcbiAgaGVpZ2h0OiAxLjRyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOThkMjk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnNsaWRlci1oYW5kbGUge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLnNsaWRlci1oYW5kbGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMDc3MDc7IH1cbiAgLnNsaWRlci1oYW5kbGUuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7IH1cblxuLnNsaWRlci5kaXNhYmxlZCxcbi5zbGlkZXJbZGlzYWJsZWRdIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uc2xpZGVyLnZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMC41cmVtO1xuICBoZWlnaHQ6IDEyLjVyZW07XG4gIG1hcmdpbjogMCAxLjI1cmVtO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTsgfVxuICAuc2xpZGVyLnZlcnRpY2FsIC5zbGlkZXItZmlsbCB7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAwLjVyZW07XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAuc2xpZGVyLnZlcnRpY2FsIC5zbGlkZXItaGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogMS40cmVtO1xuICAgIGhlaWdodDogMS40cmVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuXG4uc3RpY2t5LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uc3RpY2t5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5zdGlja3kuaXMtc3R1Y2sge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDU7IH1cbiAgLnN0aWNreS5pcy1zdHVjay5pcy1hdC10b3Age1xuICAgIHRvcDogMDsgfVxuICAuc3RpY2t5LmlzLXN0dWNrLmlzLWF0LWJvdHRvbSB7XG4gICAgYm90dG9tOiAwOyB9XG5cbi5zdGlja3kuaXMtYW5jaG9yZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiBhdXRvOyB9XG4gIC5zdGlja3kuaXMtYW5jaG9yZWQuaXMtYXQtYm90dG9tIHtcbiAgICBib3R0b206IDA7IH1cblxuLnRhYnMge1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgLnRhYnM6OmJlZm9yZSwgLnRhYnM6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAudGFiczo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi50YWJzLnZlcnRpY2FsID4gbGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi50YWJzLnNpbXBsZSA+IGxpID4gYSB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnRhYnMuc2ltcGxlID4gbGkgPiBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4udGFicy5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogI2Y5OGQyOTsgfVxuICAudGFicy5wcmltYXJ5ID4gbGkgPiBhIHtcbiAgICBjb2xvcjogIzAwMDsgfVxuICAgIC50YWJzLnByaW1hcnkgPiBsaSA+IGE6aG92ZXIsIC50YWJzLnByaW1hcnkgPiBsaSA+IGE6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogI2Y5ODUxYjsgfVxuXG4udGFicy10aXRsZSB7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC50YWJzLXRpdGxlID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTZweCAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogIzAwNjZhMTsgfVxuICAgIC50YWJzLXRpdGxlID4gYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMjZhM2RjO1xuICAgICAgY29sb3I6ICMwMDU4OGE7IH1cbiAgICAudGFicy10aXRsZSA+IGE6Zm9jdXMsIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogI2Y5OGQyOTtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG5cbi50YWJzLWNvbnRlbnQge1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICMwMDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7IH1cblxuLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogMDsgfVxuXG4udGFicy1wYW5lbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnRhYnMtcGFuZWxbYXJpYS1oaWRkZW49XCJmYWxzZVwiXSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnRpdGxlLWJhciB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAudGl0bGUtYmFyIC5tZW51LWljb24ge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTsgfVxuXG4udGl0bGUtYmFyLWxlZnQsXG4udGl0bGUtYmFyLXJpZ2h0IHtcbiAgZmxleDogMSAxIDBweDsgfVxuXG4udGl0bGUtYmFyLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLnRpdGxlLWJhci10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7IH1cblxuLnNob3ctb24tZm9jdXM6YWN0aXZlLCAuc2hvdy1vbi1mb2N1czpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87IH1cblxuLnNob3ctZm9yLWxhbmRzY2FwZSxcbi5oaWRlLWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbi5oaWRlLWZvci1sYW5kc2NhcGUsXG4uc2hvdy1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfSB9XG5cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5mbG9hdC1jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuXG4uY2xlYXJmaXg6OmJlZm9yZSwgLmNsZWFyZml4OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiAnICc7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxOyB9XG5cbi5jbGVhcmZpeDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4uYWxpZ24tcmlnaHQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uYWxpZ24tanVzdGlmeSB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4uYWxpZ24tc3BhY2VkIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH1cblxuLmFsaWduLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1zZWxmLXRvcCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLWJvdHRvbSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tc2VsZi1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tbWlkZGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc2VsZi1taWRkbGUge1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7IH1cblxuLmFsaWduLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuXG4uYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDsgfVxuXG4uYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7IH1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTsgfVxuXG4uc21hbGwtb3JkZXItMiB7XG4gIG9yZGVyOiAyOyB9XG5cbi5zbWFsbC1vcmRlci0zIHtcbiAgb3JkZXI6IDM7IH1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDsgfVxuXG4uc21hbGwtb3JkZXItNSB7XG4gIG9yZGVyOiA1OyB9XG5cbi5zbWFsbC1vcmRlci02IHtcbiAgb3JkZXI6IDY7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubWVkaXVtLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5tZWRpdW0tb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLm1lZGl1bS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubWVkaXVtLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5tZWRpdW0tb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5sYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLmxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5sYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbi5zbGlkZS1pbi1kb3duLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4uc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cblxuLnNsaWRlLWluLXVwLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4uc2xpZGUtaW4tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbi5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7IH1cblxuLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpOyB9XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC11cC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7IH1cblxuLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7IH1cblxuLmZhZGUtaW4ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7IH1cblxuLmZhZGUtaW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICBvcGFjaXR5OiAxOyB9XG5cbi5mYWRlLW91dC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTsgfVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tdG9wLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXgubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXgubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1vdXQtdXAubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLWNjdy5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNsb3cge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NTBtcyAhaW1wb3J0YW50OyB9XG5cbi5mYXN0IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDsgfVxuXG4ubGluZWFyIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50OyB9XG5cbi5lYXNlIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzYsIC0wLjI0NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLnNob3J0LWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDsgfVxuXG4ubG9uZy1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDcwMG1zICFpbXBvcnRhbnQ7IH1cblxuLnNoYWtlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlLTc7IH1cblxuQGtleWZyYW1lcyBzaGFrZS03IHtcbiAgMCUsIDEwJSwgMjAlLCAzMCUsIDQwJSwgNTAlLCA2MCUsIDcwJSwgODAlLCA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg3JSk7IH1cbiAgNSUsIDE1JSwgMjUlLCAzNSUsIDQ1JSwgNTUlLCA2NSUsIDc1JSwgODUlLCA5NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNyUpOyB9IH1cblxuLnNwaW4tY3cge1xuICBhbmltYXRpb24tbmFtZTogc3Bpbi1jdy0xdHVybjsgfVxuXG5Aa2V5ZnJhbWVzIHNwaW4tY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfSB9XG5cbi5zcGluLWNjdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWN3LTF0dXJuOyB9XG5cbkBrZXlmcmFtZXMgc3Bpbi1jdy0xdHVybiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxdHVybik7IH0gfVxuXG4ud2lnZ2xlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHdpZ2dsZS03ZGVnOyB9XG5cbkBrZXlmcmFtZXMgd2lnZ2xlLTdkZWcge1xuICA0MCUsIDUwJSwgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg3ZGVnKTsgfVxuICAzNSUsIDQ1JSwgNTUlLCA2NSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC03ZGVnKTsgfVxuICAwJSwgMzAlLCA3MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApOyB9IH1cblxuLnNoYWtlLFxuLnNwaW4tY3csXG4uc3Bpbi1jY3csXG4ud2lnZ2xlIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtczsgfVxuXG4uaW5maW5pdGUge1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsgfVxuXG4uc2xvdyB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDsgfVxuXG4uZmFzdCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDsgfVxuXG4ubGluZWFyIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Uge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4ge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7IH1cblxuLmVhc2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4ge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDsgfVxuXG4uYm91bmNlLWluLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5zaG9ydC1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDsgfVxuXG4ubG9uZy1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDsgfVxuXG4vKiBjYWJpbi1yZWd1bGFyIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0NhYmluJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKFwiQ2FiaW5cIiksIGxvY2FsKFwiQ2FiaW4tUmVndWxhclwiKSwgdXJsKFwiLi4vd2ViZm9udHMvY2FiaW4tdjExLWxhdGluLXJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL3dlYmZvbnRzL2NhYmluLXYxMS1sYXRpbi1yZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgLyogQ2hyb21lIDYrLCBGaXJlZm94IDMuNissIElFIDkrLCBTYWZhcmkgNS4xKyAqLyB9XG5cbi8qIGNhYmluLTUwMCAtIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdDYWJpbic7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgc3JjOiBsb2NhbChcIkNhYmluIE1lZGl1bVwiKSwgbG9jYWwoXCJDYWJpbi1NZWRpdW1cIiksIHVybChcIi4uL3dlYmZvbnRzL2NhYmluLXYxMS1sYXRpbi01MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL3dlYmZvbnRzL2NhYmluLXYxMS1sYXRpbi01MDAud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAvKiBDaHJvbWUgNissIEZpcmVmb3ggMy42KywgSUUgOSssIFNhZmFyaSA1LjErICovIH1cblxuLyogY2FiaW4tNjAwIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0NhYmluJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBzcmM6IGxvY2FsKFwiQ2FiaW4gU2VtaUJvbGRcIiksIGxvY2FsKFwiQ2FiaW4tU2VtaUJvbGRcIiksIHVybChcIi4uL3dlYmZvbnRzL2NhYmluLXYxMS1sYXRpbi02MDAud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL3dlYmZvbnRzL2NhYmluLXYxMS1sYXRpbi02MDAud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICAvKiBDaHJvbWUgNissIEZpcmVmb3ggMy42KywgSUUgOSssIFNhZmFyaSA1LjErICovIH1cblxuLyogY2FiaW4tNzAwIC0gbGF0aW4gKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0NhYmluJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBzcmM6IGxvY2FsKFwiQ2FiaW4gQm9sZFwiKSwgbG9jYWwoXCJDYWJpbi1Cb2xkXCIpLCB1cmwoXCIuLi93ZWJmb250cy9jYWJpbi12MTEtbGF0aW4tNzAwLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi93ZWJmb250cy9jYWJpbi12MTEtbGF0aW4tNzAwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcbiAgLyogQ2hyb21lIDYrLCBGaXJlZm94IDMuNissIElFIDkrLCBTYWZhcmkgNS4xKyAqLyB9XG5cbi8qXHJcbiAgVGhpcyBtaXhpbiBjYW4gYmUgdXNlZCB0byBzZXQgdGhlIG9iamVjdC1maXQ6XHJcbiAgQGluY2x1ZGUgb2JqZWN0LWZpdChjb250YWluKTtcclxuICBvciBvYmplY3QtZml0IGFuZCBvYmplY3QtcG9zaXRpb246XHJcbiAgQGluY2x1ZGUgb2JqZWN0LWZpdChjb3ZlciwgdG9wKTtcclxuKi9cbmF1ZGlvLFxuY2FudmFzLFxuZW1iZWQsXG5pZnJhbWUsXG5pbWcsXG5vYmplY3QsXG5zdmcsXG52aWRlbyB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG4udHdvLWdyaWRfX3dyYXAsIC51cGNvbWluZy1ldmVudHNfX2xpc3Rpbmcge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnR3by1ncmlkX193cmFwLCAudXBjb21pbmctZXZlbnRzX19saXN0aW5nIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAudHdvLWdyaWRfX3dyYXAsIC51cGNvbWluZy1ldmVudHNfX2xpc3Rpbmcge1xuICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7IH0gfVxuICAudHdvLWdyaWRfX3dyYXAtZmx1aWQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC50d28tZ3JpZF9fd3JhcCwgLnVwY29taW5nLWV2ZW50c19fbGlzdGluZyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgwcHgpIHtcbiAgICAudHdvLWdyaWRfX3dyYXAsIC51cGNvbWluZy1ldmVudHNfX2xpc3Rpbmcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgICAudHdvLWdyaWRfX3dyYXA6YmVmb3JlLCAudXBjb21pbmctZXZlbnRzX19saXN0aW5nOmJlZm9yZSwgLnR3by1ncmlkX193cmFwOmFmdGVyLCAudXBjb21pbmctZXZlbnRzX19saXN0aW5nOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi50d28tZ3JpZF9faXRlbSwgLnR3by1ncmlkX19pdGVtLS10d28tdGhpcmRzLCAudHdvLWdyaWRfX2l0ZW0tLW9uZS10aGlyZCwgLnVwY29taW5nLWV2ZW50c19faXRlbSB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnR3by1ncmlkX19pdGVtLCAudHdvLWdyaWRfX2l0ZW0tLXR3by10aGlyZHMsIC50d28tZ3JpZF9faXRlbS0tb25lLXRoaXJkLCAudXBjb21pbmctZXZlbnRzX19pdGVtIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNDBweDtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpOyB9XG4gICAgICAudHdvLWdyaWRfX2l0ZW06bnRoLW9mLXR5cGUoMm4pLCAudHdvLWdyaWRfX2l0ZW0tLXR3by10aGlyZHM6bnRoLW9mLXR5cGUoMm4pLCAudHdvLWdyaWRfX2l0ZW0tLW9uZS10aGlyZDpudGgtb2YtdHlwZSgybiksIC51cGNvbWluZy1ldmVudHNfX2l0ZW06bnRoLW9mLXR5cGUoMm4pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgLnR3by1ncmlkX19pdGVtLS10d28tdGhpcmRzIHtcbiAgICB3aWR0aDogY2FsYyg2MCUgLSA0MHB4KTsgfVxuICAudHdvLWdyaWRfX2l0ZW0tLW9uZS10aGlyZCB7XG4gICAgd2lkdGg6IGNhbGMoNDAlKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLnRocmVlLWdyaWRfX3dyYXAsIC50YWJzX19jb2x1bW5zIC5wcm9maWxlc19fbGlzdCwgLnBvc3QtbGlzdGluZ19fbGlzdGluZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgICAudGhyZWUtZ3JpZF9fd3JhcDpiZWZvcmUsIC50YWJzX19jb2x1bW5zIC5wcm9maWxlc19fbGlzdDpiZWZvcmUsIC5wb3N0LWxpc3RpbmdfX2xpc3Rpbmc6YmVmb3JlLCAudGhyZWUtZ3JpZF9fd3JhcDphZnRlciwgLnRhYnNfX2NvbHVtbnMgLnByb2ZpbGVzX19saXN0OmFmdGVyLCAucG9zdC1saXN0aW5nX19saXN0aW5nOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4udGhyZWUtZ3JpZF9faXRlbSwgLnBvc3QtbGlzdGluZ19faXRlbSB7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnRocmVlLWdyaWRfX2l0ZW0sIC5wb3N0LWxpc3RpbmdfX2l0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMyUgLSAxcmVtKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAudGhyZWUtZ3JpZF9faXRlbSwgLnBvc3QtbGlzdGluZ19faXRlbSB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzJSAtIDFyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAudGhyZWUtZ3JpZF9faXRlbS5zcHJlYWQtdHdvLCAuc3ByZWFkLXR3by5wb3N0LWxpc3RpbmdfX2l0ZW0ge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NyUgLSAyOHB4KTsgfSB9XG5cbi5mb3VyLWdyaWQsIC5wcm9maWxlc19fd3JhcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZm91ci1ncmlkX193cmFwLCAucHJvZmlsZXNfX2xpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDsgfVxuICAuZm91ci1ncmlkX19pdGVtLCAucHJvZmlsZXNfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODBweCkge1xuICAgICAgLmZvdXItZ3JpZF9faXRlbSwgLnByb2ZpbGVzX19pdGVtIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NzBweCkgYW5kIChtYXgtd2lkdGg6IDc2Ny45cHgpIHtcbiAgICAgIC5mb3VyLWdyaWRfX2l0ZW0sIC5wcm9maWxlc19faXRlbSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIC41cmVtKTsgfVxuICAgICAgICAuZm91ci1ncmlkX19pdGVtOm50aC1vZi10eXBlKDJuKSwgLnByb2ZpbGVzX19pdGVtOm50aC1vZi10eXBlKDJuKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmZvdXItZ3JpZF9faXRlbSwgLnByb2ZpbGVzX19pdGVtIHtcbiAgICAgICAgLyogXHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4OyAqLyB9XG4gICAgICAgIC5mb3VyLWdyaWRfX2l0ZW06bGFzdC1vZi10eXBlLCAucHJvZmlsZXNfX2l0ZW06bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDEwMjMuOXB4KSB7XG4gICAgICAuZm91ci1ncmlkX19pdGVtLCAucHJvZmlsZXNfX2l0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxcmVtKTsgfVxuICAgICAgICAuZm91ci1ncmlkX19pdGVtOm50aC1vZi10eXBlKDNuKSwgLnByb2ZpbGVzX19pdGVtOm50aC1vZi10eXBlKDNuKSB7XG4gICAgICAgICAgLyogbWFyZ2luLXJpZ2h0OiAwOyAqLyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5mb3VyLWdyaWRfX2l0ZW0sIC5wcm9maWxlc19faXRlbSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDFyZW0pOyB9XG4gICAgICAgIC5mb3VyLWdyaWRfX2l0ZW06bnRoLW9mLXR5cGUoNG4pLCAucHJvZmlsZXNfX2l0ZW06bnRoLW9mLXR5cGUoNG4pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAgICAgLmZvdXItZ3JpZF9faXRlbTpsYXN0LW9mLXR5cGUsIC5wcm9maWxlc19faXRlbTpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgIC5mb3VyLWdyaWRfX2l0ZW0sIC5wcm9maWxlc19faXRlbSB7XG4gICAgICAgIC8qIG1hcmdpbi1yaWdodDogMzBweDtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMzBweDsgKi9cbiAgICAgICAgd2lkdGg6IGNhbGMoMjUlIC0gMXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NzkuOXB4KSB7XG4gICAgLmZvdXItZ3JpZC5tb2JpbGUtdHdvIC5mb3VyLWdyaWRfX2l0ZW0sIC5tb2JpbGUtdHdvLnByb2ZpbGVzX193cmFwIC5mb3VyLWdyaWRfX2l0ZW0sIC5mb3VyLWdyaWQubW9iaWxlLXR3byAucHJvZmlsZXNfX2l0ZW0sIC5tb2JpbGUtdHdvLnByb2ZpbGVzX193cmFwIC5wcm9maWxlc19faXRlbSB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSA1cHgpOyB9XG4gICAgICAuZm91ci1ncmlkLm1vYmlsZS10d28gLmZvdXItZ3JpZF9faXRlbTpudGgtb2YtdHlwZSgybiksIC5tb2JpbGUtdHdvLnByb2ZpbGVzX193cmFwIC5mb3VyLWdyaWRfX2l0ZW06bnRoLW9mLXR5cGUoMm4pLCAuZm91ci1ncmlkLm1vYmlsZS10d28gLnByb2ZpbGVzX19pdGVtOm50aC1vZi10eXBlKDJuKSwgLm1vYmlsZS10d28ucHJvZmlsZXNfX3dyYXAgLnByb2ZpbGVzX19pdGVtOm50aC1vZi10eXBlKDJuKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi8qIFNsaWRlciAqL1xuLnNsaWNrLXNsaWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uc2xpY2stbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuICAuc2xpY2stbGlzdDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICAuc2xpY2stbGlzdC5kcmFnZ2luZyB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGN1cnNvcjogaGFuZDsgfVxuXG4uc2xpY2stc2xpZGVyIC5zbGljay10cmFjayxcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5zbGljay10cmFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stdHJhY2s6YmVmb3JlLCAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5zbGljay10cmFjayAuY2Fyb3VzZWxfX3RpdGxlIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgICAuc2xpY2stdHJhY2sgLmNhcm91c2VsX190aXRsZTpob3ZlciwgLnNsaWNrLXRyYWNrIC5jYXJvdXNlbF9fdGl0bGU6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfSB9XG5cbi5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBbZGlyPVwicnRsXCJdIC5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5zbGljay1zbGlkZSBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5zbGljay1zbGlkZS5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuc2xpY2stc2xpZGUuZHJhZ2dpbmcgaW1nIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXNsaWRlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stc2xpZGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAuc2xpY2stdmVydGljYWwgLnNsaWNrLXNsaWRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogU2xpZGVyICovXG4uc2xpY2stbG9hZGluZyAuc2xpY2stbGlzdCB7XG4gIGJhY2tncm91bmQ6ICNmZmYgdXJsKFwiLi8uLi9pbWcvYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0OyB9XG5cbi8qIEljb25zICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgc3JjOiB1cmwoXCIvYXNzZXRzL3dlYmZvbnRzLy4uL3dlYmZvbnRzL3NsaWNrLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIvYXNzZXRzL3dlYmZvbnRzLy4uL3dlYmZvbnRzL3NsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi9hc3NldHMvd2ViZm9udHMvLi4vd2ViZm9udHMvc2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIvYXNzZXRzL3dlYmZvbnRzLy4uL3dlYmZvbnRzL3NsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiL2Fzc2V0cy93ZWJmb250cy8uLi93ZWJmb250cy9zbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuLyogQXJyb3dzICovXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDBweDtcbiAgZm9udC1zaXplOiAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTsgfVxuICAuc2xpY2stcHJldjpob3ZlciwgLnNsaWNrLXByZXY6Zm9jdXMsXG4gIC5zbGljay1uZXh0OmhvdmVyLFxuICAuc2xpY2stbmV4dDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuc2xpY2stcHJldjpob3ZlcjpiZWZvcmUsIC5zbGljay1wcmV2OmZvY3VzOmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDpob3ZlcjpiZWZvcmUsXG4gICAgLnNsaWNrLW5leHQ6Zm9jdXM6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IDE7IH1cbiAgLnNsaWNrLXByZXYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlLFxuICAuc2xpY2stbmV4dC5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuMjU7IH1cbiAgLnNsaWNrLXByZXY6YmVmb3JlLFxuICAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBvcGFjaXR5OiAwLjc1O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuLnNsaWNrLXByZXYge1xuICBsZWZ0OiAtMjVweDsgfVxuICBbZGlyPVwicnRsXCJdIC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAtMjVweDsgfVxuICAuc2xpY2stcHJldjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4oaQXCI7IH1cbiAgICBbZGlyPVwicnRsXCJdIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIuKGklwiOyB9XG5cbi5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IC0yNXB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLW5leHQge1xuICAgIGxlZnQ6IC0yNXB4O1xuICAgIHJpZ2h0OiBhdXRvOyB9XG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLihpJcIjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi4oaQXCI7IH1cblxuLyogRG90cyAqL1xuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0yNXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5zbGljay1kb3RzIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBtYXJnaW46IDAgNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlciwgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgICAgICAuc2xpY2stZG90cyBsaSBidXR0b246aG92ZXI6YmVmb3JlLCAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXM6YmVmb3JlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogNnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogYmxhY2s7XG4gICAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgb3BhY2l0eTogMC43NTsgfVxuXG4uYWNjb3JkaW9uIHtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07IH1cbiAgLmFjY29yZGlvbl9faXRlbS5hY3RpdmUgLmFjY29yZGlvbl9fY29udGFjdDo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyMjEyJzsgfVxuICAuYWNjb3JkaW9uX19jb250YWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggI2U2ZTdlODtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBhZGRpbmc6IDEzcHggM3B4IDEzcHggNDFweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICMwMDY2YTE7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5hY2NvcmRpb25fX2NvbnRhY3Q6OmJlZm9yZSB7XG4gICAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIHdpZHRoOiAyOHB4O1xuICAgICAgaGVpZ2h0OiAyOHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOThkMjk7XG4gICAgICBjb250ZW50OiAnKyc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEzcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMTFweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICBsZWZ0OiAwOyB9XG4gICAgICAuZm91bmRhdGlvbiAuYWNjb3JkaW9uX19jb250YWN0OjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGU5MmEyOyB9XG4gIC5hY2NvcmRpb25fX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7IH1cbiAgICAuYWNjb3JkaW9uX19jb250ZW50LnJ0ZiBwLCAuYWNjb3JkaW9uX19jb250ZW50LmZsZXhsaXN0X19leGNlcnB0IHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5hY2NvcmRpb25fX2NvbnRlbnQgcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDI2cHg7IH1cbiAgICAgIC5hY2NvcmRpb25fX2NvbnRlbnQgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgICAgLmFjY29yZGlvbl9fY29udGVudCBwIGEuYnRuIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG5cbi5hZGRpdGlvbmFsLWZlYXR1cmUge1xuICBwYWRkaW5nOiAzMHB4IDAgMzVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5hZGRpdGlvbmFsLWZlYXR1cmUge1xuICAgICAgcGFkZGluZzogNDBweCAwIDQ1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkge1xuICAgIC5hZGRpdGlvbmFsLWZlYXR1cmUge1xuICAgICAgcGFkZGluZzogNjBweCAwIDY1cHg7IH0gfVxuICAuYWRkaXRpb25hbC1mZWF0dXJlX193cmFwIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiA2NDBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmFkZGl0aW9uYWwtZmVhdHVyZV9fd3JhcCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAuYWRkaXRpb25hbC1mZWF0dXJlX193cmFwIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7IH0gfVxuICAgIC5hZGRpdGlvbmFsLWZlYXR1cmVfX3dyYXAtZmx1aWQge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5hZGRpdGlvbmFsLWZlYXR1cmVfX3dyYXAge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuYWRkaXRpb25hbC1mZWF0dXJlX193cmFwIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMTZweDsgfSB9XG4gIC5hZGRpdGlvbmFsLWZlYXR1cmVfX2NvbnRlbnQge1xuICAgIG9yZGVyOiAxOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5hZGRpdGlvbmFsLWZlYXR1cmVfX2NvbnRlbnQge1xuICAgICAgICBvcmRlcjogMDtcbiAgICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMnJlbSk7IH0gfVxuICAuYWRkaXRpb25hbC1mZWF0dXJlX190aXRsZSB7XG4gICAgY29sb3I6ICMwMDY2YTE7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgICAuZm91bmRhdGlvbiAuYWRkaXRpb25hbC1mZWF0dXJlX190aXRsZSB7XG4gICAgICBjb2xvcjogI2FlOTA2NTsgfVxuICAuYWRkaXRpb25hbC1mZWF0dXJlX19leGNlcnB0IHtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXNpemU6IC44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH1cbiAgLmFkZGl0aW9uYWwtZmVhdHVyZV9fbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5OGQyOTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMS43NTByZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMTRweCAzMHB4O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjRzIGVhc2Utb3V0OyB9XG4gICAgLmZvdW5kYXRpb24gLmFkZGl0aW9uYWwtZmVhdHVyZV9fbGluayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjZhM2RjOyB9XG4gICAgLmFkZGl0aW9uYWwtZmVhdHVyZV9fbGluazpob3ZlciwgLmFkZGl0aW9uYWwtZmVhdHVyZV9fbGluazpmb2N1cyB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kOiAjOTRkNjBhO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMjRzIGVhc2Utb3V0OyB9XG4gIC5hZGRpdGlvbmFsLWZlYXR1cmVfX2ltYWdlIHtcbiAgICBvcmRlcjogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5hZGRpdGlvbmFsLWZlYXR1cmVfX2ltYWdlIHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDJyZW0pOyB9IH1cbiAgICAuYWRkaXRpb25hbC1mZWF0dXJlX19pbWFnZSBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuXG4uYWxlcnQge1xuICBiYWNrZ3JvdW5kOiAjZDNkM2QzOyB9XG4gIC5hbGVydC0tYW5ub3VuY2VtZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVjODk2OyB9XG4gIC5hbGVydC0tZW1lcmdlbmN5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlkZWRlOyB9XG4gIC5hbGVydC0taW5mbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RmZWJmMzsgfVxuICAuYWxlcnRfX2NvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA3My42MjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDsgfVxuICAuYWxlcnRfX2NvbnRlbnQge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy10b3A6IDE2cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDE2cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5hbGVydF9fY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgLmFsZXJ0X19zdmcge1xuICAgIGxlZnQ6IDIwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTRweDsgfVxuICAgIC5hbGVydC0tYW5ub3VuY2VtZW50IC5hbGVydF9fc3ZnIHtcbiAgICAgIGhlaWdodDogMjVweDtcbiAgICAgIHdpZHRoOiAyMnB4OyB9XG4gICAgLmFsZXJ0LS1lbWVyZ2VuY3kgLmFsZXJ0X19zdmcge1xuICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgd2lkdGg6IDI3cHg7IH1cbiAgICAuYWxlcnQtLWluZm8gLmFsZXJ0X19zdmcge1xuICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgd2lkdGg6IDI0cHg7IH1cbiAgLmFsZXJ0X190aXRsZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA0MHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hbGVydF9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDUycHg7IH0gfVxuICAuYWxlcnQtLWFubm91bmNlbWVudCAuYWxlcnRfX3RpdGxlLFxuICAuYWxlcnQtLWVtZXJnZW5jeSAuYWxlcnRfX3RpdGxlLFxuICAuYWxlcnQtLWluZm8gLmFsZXJ0X190aXRsZSwgLmFsZXJ0LS1hbm5vdW5jZW1lbnQgLmFsZXJ0X190ZXh0LFxuICAuYWxlcnQtLWVtZXJnZW5jeSAuYWxlcnRfX3RleHQsXG4gIC5hbGVydC0taW5mbyAuYWxlcnRfX3RleHQge1xuICAgIG1hcmdpbi1sZWZ0OiA0MHB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5hbGVydC0tYW5ub3VuY2VtZW50IC5hbGVydF9fdGl0bGUsXG4gICAgICAuYWxlcnQtLWVtZXJnZW5jeSAuYWxlcnRfX3RpdGxlLFxuICAgICAgLmFsZXJ0LS1pbmZvIC5hbGVydF9fdGl0bGUsIC5hbGVydC0tYW5ub3VuY2VtZW50IC5hbGVydF9fdGV4dCxcbiAgICAgIC5hbGVydC0tZW1lcmdlbmN5IC5hbGVydF9fdGV4dCxcbiAgICAgIC5hbGVydC0taW5mbyAuYWxlcnRfX3RleHQge1xuICAgICAgICBtYXJnaW4tbGVmdDogNTJweDsgfSB9XG4gIC5hbGVydF9fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIC5hbGVydF9fdGl0bGU6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAtMzBweDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgY29udGVudDogJysnO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgICAuYWxlcnRfX3RpdGxlOjphZnRlciB7XG4gICAgICAgICAgdG9wOiAtMnB4OyB9IH1cbiAgICAuYWxlcnRfX3RpdGxlLmlzLXRvZ2dsZWQ6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICctJztcbiAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4OyB9XG4gIC5hbGVydF9fdGV4dCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjRzIGVhc2UsIHBhZGRpbmctdG9wIC40cyBsaW5lYXI7IH1cbiAgICAuYWxlcnRfX3RleHQuaXMtZXhwYW5kZWQge1xuICAgICAgbWF4LWhlaWdodDogMzAwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMTVweDsgfVxuICAgIC5hbGVydF9fdGV4dCBhIHtcbiAgICAgIGNvbG9yOiAjMDA2NmExO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBsaW5lLWhlaWdodDogMS40OyB9XG4gICAgICAuYWxlcnRfX3RleHQgYTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXDAwYTBcXDIwM0EnOyB9XG4gICAgLmFsZXJ0X190ZXh0IHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfVxuICAuYWxlcnQgLnJ0ZiwgLmFsZXJ0IC5mbGV4bGlzdF9fZXhjZXJwdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uYmFja2dyb3VuZC0tYmx1ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNDY2YTE7IH1cblxuLmJhY2tncm91bmQtLXBhZGRpbmcge1xuICBwYWRkaW5nOiA3MnB4IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5iYW5kIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5iYW5kIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmFuZF9faW1hZ2Utd3JhcHBlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMCAwIDAgMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uYmFuZF9faW1hZ2Uge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LWZhbWlseTogJ29iamVjdC1maXQ6IGNvdmVyOyc7XG4gIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi5iYW5kX19jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDczLjYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYmFuZF9fY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG5cbi5iYW5kX190aXRsZSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5iYW5kX19ib3gge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJhbmRfX2JveCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmFuZF9fYm94IHtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggNTdweCAwIHJnYmEoMzUsIDMxLCAzMiwgMC4wOCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICB6LWluZGV4OiAxMDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmFuZF9fYm94IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuNXJlbTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgLmJhbmRfX2JveCB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9IH1cblxuLmJhbmRfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDI0cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmJhbmRfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5iYW5kX190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxOHB4OyB9IH1cblxuLmJhbmRfX2FkZHJlc3MsIC5iYW5kX19ob3VycyB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgbWFyZ2luLWJvdHRvbTogMjZweDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmFuZF9fbGluayB7XG4gICAgY29sb3I6ICMwMDA7IH0gfVxuXG4uYmFuZF9faW1nLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJhbmRfX2ltZy1saW5rIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfSB9XG5cbi5iYW5kX19idXR0b24ge1xuICBtYXJnaW4tdG9wOiAxcmVtOyB9XG5cbi5iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2NmExO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmZvdW5kYXRpb24gLmJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzA3Mzg3MjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuYmFyIHtcbiAgICAgIHBhZGRpbmc6IDMzcHggMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJhciB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDA7IH0gfVxuICAuYmFyX19jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYmFyX19jb250YWluZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuICAuYmFyX19jb250ZW50IHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5iYXJfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIC5iYXJfX3RpdGxlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbi5jYXJvdXNlbF9fdGl0bGUsXG4uYnRuLFxuLmJ0bjp2aXNpdGVkIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5OGQyOTtcbiAgYm9yZGVyOiAwO1xuICBjb2xvcjogI2ZmZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogMThweCAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zIGVhc2U7IH1cbiAgLmZvdW5kYXRpb24gLmNhcm91c2VsX190aXRsZSwgLmZvdW5kYXRpb25cbiAgLmJ0biwgLmZvdW5kYXRpb25cbiAgLmJ0bjp2aXNpdGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjZhM2RjOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5jYXJvdXNlbF9fdGl0bGUsXG4gICAgLmJ0bixcbiAgICAuYnRuOnZpc2l0ZWQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5jYXJvdXNlbF9fdGl0bGU6aG92ZXIsIC5jYXJvdXNlbF9fdGl0bGU6YWN0aXZlLCAuY2Fyb3VzZWxfX3RpdGxlOmZvY3VzLFxuICAuYnRuOmhvdmVyLFxuICAuYnRuOmFjdGl2ZSxcbiAgLmJ0bjpmb2N1cyxcbiAgLmJ0bjp2aXNpdGVkOmhvdmVyLFxuICAuYnRuOnZpc2l0ZWQ6YWN0aXZlLFxuICAuYnRuOnZpc2l0ZWQ6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5NGQ2MGE7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgICAuZm91bmRhdGlvbiAuY2Fyb3VzZWxfX3RpdGxlOmhvdmVyLCAuZm91bmRhdGlvbiAuY2Fyb3VzZWxfX3RpdGxlOmFjdGl2ZSwgLmZvdW5kYXRpb24gLmNhcm91c2VsX190aXRsZTpmb2N1cywgLmZvdW5kYXRpb25cbiAgICAuYnRuOmhvdmVyLCAuZm91bmRhdGlvblxuICAgIC5idG46YWN0aXZlLCAuZm91bmRhdGlvblxuICAgIC5idG46Zm9jdXMsIC5mb3VuZGF0aW9uXG4gICAgLmJ0bjp2aXNpdGVkOmhvdmVyLCAuZm91bmRhdGlvblxuICAgIC5idG46dmlzaXRlZDphY3RpdmUsIC5mb3VuZGF0aW9uXG4gICAgLmJ0bjp2aXNpdGVkOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyNmEzZGM7IH1cblxuLmNsZWFyIHtcbiAgY29sb3I6ICMwMDY2YTE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjRzIGVhc2Utb3V0OyB9XG4gIC5jbGVhcjpob3ZlciwgLmNsZWFyOmZvY3VzIHtcbiAgICBjb2xvcjogIzI2YTNkYztcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAuMjVzIGVhc2Utb3V0OyB9XG5cbi5jYWxsb3V0IHtcbiAgcGFkZGluZzogODhweCAwIDI0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDM0MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY2FsbG91dC5jYWxsb3V0LS1sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzMnB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jYWxsb3V0LmNhbGxvdXQtLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzMnB4OyB9IH1cbiAgLmNhbGxvdXQuY2FsbG91dC0td2lkZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmNhbGxvdXQuY2FsbG91dC0tc3Ryb25nIHAge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICMwMDY2YTE7IH1cbiAgLmNhbGxvdXQgcCB7XG4gICAgZm9udC1zaXplOiAyNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAuY2FsbG91dDo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvYXNzZXRzL2ltZy9zdmcvY2FsbG91dC1xdW90ZS5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDU0cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTBweDtcbiAgICB3aWR0aDogNzNweDsgfVxuXG4uY2FsbG91dF9fc3ViIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzhhOGE4YTtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRvcDogLTVweDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5jYXJvdXNlbCB7XG4gICAgbWFyZ2luLWxlZnQ6IDc2cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA3NnB4OyB9IH1cblxuLmNhcm91c2VsIC5zbGljay1saXN0IHtcbiAgcGFkZGluZzogMjBweCAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNhcm91c2VsIC5zbGljay1saXN0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5jYXJvdXNlbCAuc2xpY2stbGlzdCB7XG4gICAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogNDBweDsgfSB9XG5cbi5jYXJvdXNlbF9fc2xpZGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmNhcm91c2VsX19zbGlkZTpob3ZlciwgLmNhcm91c2VsX19zbGlkZTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jYXJvdXNlbF9fc2xpZGU6aG92ZXIgLmNhcm91c2VsX19pbWFnZS13cmFwcGVyIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC45KTsgfVxuICAgIC5kaCAuY2Fyb3VzZWxfX3NsaWRlOmhvdmVyIC5jYXJvdXNlbF9fdGl0bGUge1xuICAgICAgY29sb3I6ICMyNmEzZGM7IH1cbiAgICAuZGggLmNhcm91c2VsX19zbGlkZTpob3ZlciAuY2Fyb3VzZWxfX2N0YTo6YWZ0ZXIge1xuICAgICAgbGVmdDogNHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5jYXJvdXNlbF9fdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuY2Fyb3VzZWxfX3RpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2Fyb3VzZWxfX3RpdGxlIHtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjMDA2NmExO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5jYXJvdXNlbF9fdGl0bGU6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuY2Fyb3VzZWxfX3RpdGxlOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMjZhM2RjOyB9IH1cblxuLmRoIC5jYXJvdXNlbF9fdGl0bGUge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZGggLmNhcm91c2VsX190aXRsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAjMDA2NmExO1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gICAgICAuZGggLmNhcm91c2VsX190aXRsZTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAuZGggLmNhcm91c2VsX190aXRsZTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMjZhM2RjOyB9IH1cblxuLmNhcm91c2VsX190ZXh0IHtcbiAgY29sb3I6ICMwMDA7XG4gIHBhZGRpbmc6IDAgMjBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuY2Fyb3VzZWxfX3RleHQge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5kaCAuY2Fyb3VzZWxfX3RleHQgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9XG5cbi5jYXJvdXNlbF9fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5jYXJvdXNlbF9fbGluazpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuXG4uY2Fyb3VzZWxfX2N0YSB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICNmNDhjM2I7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLmNhcm91c2VsX19jdGE6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvbWljcm9zaXRldGVtcGxhdGVzL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2hldnJvbi1vcmFuZ2UtZS5zdmdcIikgY2VudGVyIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDZweCAxMHB4O1xuICAgIGJvdHRvbTogMXB4O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb250ZW50OiAnXFwwYTAwJztcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBsZWZ0IC4zcyBlYXNlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICB3aWR0aDogNnB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY2Fyb3VzZWxfX2N0YTpob3Zlcjo6YWZ0ZXIsIC5jYXJvdXNlbF9fY3RhOmZvY3VzOjphZnRlciB7XG4gICAgICBsZWZ0OiA0cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuY2Fyb3VzZWxfX2N0YSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmNhcm91c2VsX19pbWFnZS13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuODUpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jYXJvdXNlbF9faW1hZ2Utd3JhcHBlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cblxuLmNhcm91c2VsX19wbHVzIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuY2Fyb3VzZWxfX3BsdXMge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNhcm91c2VsX19wbHVzIHtcbiAgICAgIGhlaWdodDogMzdweDtcbiAgICAgIHdpZHRoOiAzN3B4O1xuICAgICAgbGVmdDogMjUlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwOyB9XG4gICAgICAuaGVhcnQtdmFzY3VsYXIgLmNhcm91c2VsX19wbHVzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5jYXJvdXNlbF9faW1hZ2Uge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50OyB9XG5cbi5jYXJvdXNlbF9fYXJyb3cge1xuICBoZWlnaHQ6IDMwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBjb2xvcjogI2Y5OGQyOTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDM2JTtcbiAgei1pbmRleDogMTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5jYXJvdXNlbF9fYXJyb3ctLWxlZnQge1xuICAgIGxlZnQ6IDEwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgIC5jYXJvdXNlbF9fYXJyb3ctLWxlZnQge1xuICAgICAgICBsZWZ0OiAtMTBweDsgfSB9XG4gIC5jYXJvdXNlbF9fYXJyb3ctLXJpZ2h0IHtcbiAgICByaWdodDogMTBweDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgIC5jYXJvdXNlbF9fYXJyb3ctLXJpZ2h0IHtcbiAgICAgICAgcmlnaHQ6IC0xMHB4OyB9IH1cbiAgLmNhcm91c2VsX19hcnJvdyA6aG92ZXIge1xuICAgIGNvbG9yOiAjMjZhM2RjOyB9XG5cbi5jb250ZW50LS1zcGxpdCAuY29udGVudF9fY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgICAuY29udGVudC0tc3BsaXQgLmNvbnRlbnRfX2NvbnRhaW5lciB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTU5LjlweCkge1xuICAgIC5jb250ZW50LS1zcGxpdCAuY29udGVudF9fY29udGFpbmVyLnNpZGViYXItYWN0aXZlIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5jb250ZW50LS1zcGxpdCAuY29udGVudF9fY29udGFpbmVyLnNpZGViYXItYWN0aXZlIC5jb250ZW50LFxuICAgICAgLmNvbnRlbnQtLXNwbGl0IC5jb250ZW50X19jb250YWluZXIuc2lkZWJhci1hY3RpdmUgLnRhYnMge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIG1pbi13aWR0aDogMTAwJTsgfVxuICAgICAgLmNvbnRlbnQtLXNwbGl0IC5jb250ZW50X19jb250YWluZXIuc2lkZWJhci1hY3RpdmUgLnNpZGViYXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OS45cHgpIGFuZCAobWluLXdpZHRoOiA2NzBweCkge1xuICAgICAgLmNvbnRlbnQtLXNwbGl0IC5jb250ZW50X19jb250YWluZXIuc2lkZWJhci1hY3RpdmUgLnNpZGViYXIge1xuICAgICAgICBtaW4td2lkdGg6IDI0MHB4O1xuICAgICAgICB3aWR0aDogMjQwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkge1xuICAuY29udGVudC0tc3BsaXQgLmNvbnRlbnQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMDhweCk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmRoIC5jb250ZW50LS1zcGxpdCAuY29udGVudCB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kaCAuY29udGVudC0tc3BsaXQgLmNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMjQwcHgpOyB9IH1cblxuLmNvbnRlbnQtLXNwbGl0IC5jb250ZW50LS1tYWluIHtcbiAgbWFyZ2luLWJvdHRvbTogNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLXRvcDogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuY29udGVudC0tc3BsaXQgLmNvbnRlbnQtLW1haW4ge1xuICAgICAgcGFkZGluZzogMCAyMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgLmNvbnRlbnQtLXNwbGl0IC5jb250ZW50X19jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAyNnB4OyB9XG4gICAgLmRoIC5jb250ZW50LS1zcGxpdCAuY29udGVudF9fY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiA0MHB4OyB9IH1cblxuLmNvbnRlbnQtLXNwbGl0IC5jb250ZW50X19jb3B5IHtcbiAgb3JkZXI6IDE7XG4gIHBhZGRpbmctcmlnaHQ6IDIwJTtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgICAuY29udGVudC0tc3BsaXQgLmNvbnRlbnRfX2NvcHkge1xuICAgICAgb3JkZXI6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMwOHB4KTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5jb250ZW50LS1zcGxpdCAuY29udGVudF9fY29weSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkge1xuICAgIC5jb250ZW50LS1zcGxpdCAuY29udGVudF9fY29weS0tZnVsbCB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb250ZW50LS1zcGxpdCAuY29udGVudF9faW1hZ2Utd3JhcHBlciwgLmNvbnRlbnQtLXNwbGl0IC5jb250ZW50X19pbWFnZS13cmFwcGVyLS1yaWdodCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1pbi13aWR0aDogMjQwcHg7XG4gICAgd2lkdGg6IDQwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gIC5jb250ZW50LS1zcGxpdCAuY29udGVudF9faW1hZ2Utd3JhcHBlciwgLmNvbnRlbnQtLXNwbGl0IC5jb250ZW50X19pbWFnZS13cmFwcGVyLS1yaWdodCB7XG4gICAgd2lkdGg6IDYwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk1OS45cHgpIHtcbiAgLmNvbnRlbnQtLXNwbGl0IC5jb250ZW50X19pbWFnZS13cmFwcGVyLS1yaWdodCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG9yZGVyOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb250ZW50LS1zcGxpdCAuY29udGVudF9faW1hZ2Utd3JhcHBlci0tcmlnaHQge1xuICAgIG1pbi13aWR0aDogMjQwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkge1xuICAuY29udGVudC0tc3BsaXQgLnRhYnMge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMDhweCk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLmNvbnRlbnQtLXNwbGl0IC50YWJzX19uYXYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH1cblxuLmNvbnRlbnQtLXNwbGl0IC50YWJzX19jb3B5IHtcbiAgcGFkZGluZy1yaWdodDogMjAlO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuY29udGVudC0tc3BsaXQgLnRhYnNfX2NvcHkge1xuICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG5cbi5jb250ZW50X19jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDczLjYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy10b3A6IDI1cHg7IH1cbiAgLmNvbnRlbnRfX2NvbnRhaW5lcjo6YWZ0ZXIsIC5jb250ZW50X19jb250YWluZXI6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLmNvbnRlbnRfX2NvbnRhaW5lcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5jb250ZW50X19pbWFnZS13cmFwcGVyLCAuY29udGVudF9faW1hZ2Utd3JhcHBlci0tcmlnaHQge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5jb250ZW50X19pbWFnZS13cmFwcGVyLCAuY29udGVudF9faW1hZ2Utd3JhcHBlci0tcmlnaHQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRlbnRfX2ltYWdlLXdyYXBwZXIsIC5jb250ZW50X19pbWFnZS13cmFwcGVyLS1yaWdodCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5jb250ZW50X19pbWFnZS13cmFwcGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5jb250ZW50X19pbWFnZS13cmFwcGVyLS1yaWdodDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGVudF9faW1hZ2Utd3JhcHBlciwgLmNvbnRlbnRfX2ltYWdlLXdyYXBwZXItLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07IH1cbiAgICAgIC5jb250ZW50X19pbWFnZS13cmFwcGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5jb250ZW50X19pbWFnZS13cmFwcGVyLS1yaWdodDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLmNvbnRlbnRfX2ltYWdlLXdyYXBwZXIgLmNvbnRlbnRfX3BsdXMsIC5jb250ZW50X19pbWFnZS13cmFwcGVyLS1yaWdodCAuY29udGVudF9fcGx1cyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5jb250ZW50X19pbWFnZS13cmFwcGVyIC5jb250ZW50X19wbHVzLCAuY29udGVudF9faW1hZ2Utd3JhcHBlci0tcmlnaHQgLmNvbnRlbnRfX3BsdXMge1xuICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICAgIHdpZHRoOiAzNHB4O1xuICAgICAgICBsZWZ0OiAzNXB4O1xuICAgICAgICB0b3A6IDM1cHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY29udGVudF9faW1hZ2Utd3JhcHBlciAuY29udGVudF9fcGx1cywgLmNvbnRlbnRfX2ltYWdlLXdyYXBwZXItLXJpZ2h0IC5jb250ZW50X19wbHVzIHtcbiAgICAgICAgaGVpZ2h0OiA1M3B4O1xuICAgICAgICB3aWR0aDogNTNweDtcbiAgICAgICAgbGVmdDogMzVweDtcbiAgICAgICAgdG9wOiA0NXB4OyB9IH1cbiAgICAudXJnZW50LWNhcmUgLmNvbnRlbnRfX2ltYWdlLXdyYXBwZXIgLmNvbnRlbnRfX3BsdXMsIC51cmdlbnQtY2FyZSAuY29udGVudF9faW1hZ2Utd3JhcHBlci0tcmlnaHQgLmNvbnRlbnRfX3BsdXMge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmNvbnRlbnRfX2ltYWdlLXdyYXBwZXItLXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cblxuLmNvbnRlbnRfX2ltYWdlLWlubmVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmNvbnRlbnRfX2ltYWdlIHtcbiAgYm9yZGVyOiBzb2xpZCAxNXB4ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5jb250ZW50X19pbWFnZSB7XG4gICAgICBoZWlnaHQ6IDI0MHB4O1xuICAgICAgd2lkdGg6IDI0MHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkge1xuICAgIC5jb250ZW50X19pbWFnZSB7XG4gICAgICBib3JkZXItc2l6ZTogMzBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuY29udGVudF9fY29weSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRlbnRfX2NvcHkge1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmNvbnRlbnRfX2NvcHk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY29udGVudF9fY29weSB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTsgfVxuICAgIC5jb250ZW50X19jb3B5Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuLmNvbnRlbnRfX2NvcHktLWZ1bGwge1xuICB3aWR0aDogMTAwJTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb250ZW50X19jb3B5LS1mdWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIC5jb250ZW50X19jb3B5LS1mdWxsOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGY6Zmlyc3QtY2hpbGQsIC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0OmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG5cbi5jb250ZW50X190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMwMDY2YTE7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAuY29udGVudF9fdGl0bGUtLWNhcHMge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLmZvdW5kYXRpb24gLmNvbnRlbnRfX3RpdGxlIHtcbiAgICBjb2xvcjogI2FlOTA2NTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuZGggLmNvbnRlbnRfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZGggLmNvbnRlbnRfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMzJweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRlbnRfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG5cbi5jb250ZW50LWJsb2NrLS1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjZhMTsgfVxuXG4uY29udGVudC1ibG9ja19fY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA3My42MjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGVudC1ibG9ja19fY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuY29udGVudC1ibG9ja19faW1hZ2Utd3JhcHBlciB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgIC5jb250ZW50LWJsb2NrX19pbWFnZS13cmFwcGVyIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250ZW50LWJsb2NrX19pbWFnZS13cmFwcGVyIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1heC13aWR0aDogNTAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9XG4gICAgLmNvbnRlbnQtYmxvY2stLXJldmVyc2VkIC5jb250ZW50LWJsb2NrX19pbWFnZS13cmFwcGVyIHtcbiAgICAgIG9yZGVyOiAyOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuY29udGVudC1ibG9jay0tbGlnaHQgLmNvbnRlbnQtYmxvY2tfX2ltYWdlLXdyYXBwZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY29udGVudC1ibG9ja19fcGljdHVyZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRlbnQtYmxvY2tfX2ltYWdlIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuY29udGVudC1ibG9ja19fY29udGVudCB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGVudC1ibG9ja19fY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuY29udGVudC1ibG9jay0tbGlnaHQgLmNvbnRlbnQtYmxvY2tfX2NvbnRlbnQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRlbnQtYmxvY2tfX2NvbnRlbnQge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDMwcHg7IH1cbiAgICAuY29udGVudC1ibG9ja19fY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiByaWdodDsgfVxuICAgIC5jb250ZW50LWJsb2NrLS1yZXZlcnNlZCAuY29udGVudC1ibG9ja19fY29udGVudCB7XG4gICAgICBvcmRlcjogMTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmNvbnRlbnQtYmxvY2tfX2NvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuY29udGVudC1ibG9ja19fY29udGVudCB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogNDBweDsgfVxuICAgICAgLmNvbnRlbnQtYmxvY2tfX2NvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbi5jb250ZW50LWJsb2NrLS1kYXJrIC5jb250ZW50LWJsb2NrX19jb250ZW50IHtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuY29udGVudC1ibG9jay0tZGFyayAuY29udGVudC1ibG9ja19fY29udGVudCB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiA3MHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogNDBweDsgfVxuICAgICAgLmNvbnRlbnQtYmxvY2stLWRhcmsgLmNvbnRlbnQtYmxvY2tfX2NvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250ZW50LWJsb2NrLS1saWdodCAuY29udGVudC1ibG9ja19fY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9IH1cblxuLmNvbnRlbnQtYmxvY2tfX2NvbnRlbnQgYTpub3QoLmJ0bik6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uY29udGVudC1ibG9ja19fY29udGVudCBwLFxuLmNvbnRlbnQtYmxvY2tfX2NvbnRlbnQgdWwge1xuICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuY29udGVudC1ibG9ja19fY29udGVudCBsaSxcbiAgLmNvbnRlbnQtYmxvY2tfX2NvbnRlbnQgcCB7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRlbnQtYmxvY2tfX2NvbnRlbnQgbGksXG4gIC5jb250ZW50LWJsb2NrX19jb250ZW50IHAge1xuICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG5cbi5jb250ZW50LWJsb2NrLS1kYXJrIC5jb250ZW50LWJsb2NrX19jb250ZW50IGxpLCAuY29udGVudC1ibG9jay0tZGFya1xuLmNvbnRlbnQtYmxvY2tfX2NvbnRlbnQgcCB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDY2YTE7XG4gIGNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5jb250ZW50LWJsb2NrLS1kYXJrIC5jb250ZW50LWJsb2NrX19jb250ZW50IGxpLCAuY29udGVudC1ibG9jay0tZGFya1xuICAgIC5jb250ZW50LWJsb2NrX19jb250ZW50IHAge1xuICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29udGVudC1ibG9jay0tZGFyayAuY29udGVudC1ibG9ja19fY29udGVudCBsaSwgLmNvbnRlbnQtYmxvY2stLWRhcmtcbiAgICAuY29udGVudC1ibG9ja19fY29udGVudCBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi5jb250ZW50LWJsb2NrX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLWJvdHRvbTogMThweDsgfVxuICAuY29udGVudC1ibG9jay0tZGFyayAuY29udGVudC1ibG9ja19fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICNmZmY7IH1cblxuLmN0YS1saXN0LWJsb2NrIHtcbiAgbWF4LXdpZHRoOiA3My42MjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICBwYWRkaW5nLXRvcDogM3JlbTsgfVxuICAuY3RhLWxpc3QtYmxvY2s6OmFmdGVyLCAuY3RhLWxpc3QtYmxvY2s6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLmN0YS1saXN0LWJsb2NrOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmN0YS1saXN0LWJsb2NrIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY3RhLWxpc3QtYmxvY2sge1xuICAgICAgcGFkZGluZy1sZWZ0OiA1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuY3RhLWxpc3QtYmxvY2tfX2lubmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDsgfSB9XG5cbi5jdGEtbGlzdC1ibG9ja19faGVhZGluZyB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMxNDY2YTE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmN0YS1saXN0LWJsb2NrX19oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY3RhLWxpc3QtYmxvY2tfX2hlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cblxuLmN0YS1saXN0LWJsb2NrX190ZXh0IHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5jdGEtbGlzdC1ibG9ja19fdGV4dCB7XG4gICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmN0YS1saXN0LWJsb2NrX190ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDsgfSB9XG5cbi5jdGEtbGlzdC1ibG9ja19fY3RhLWhlYWRpbmcge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMDA2NmExO1xuICBtYXJnaW4tdG9wOiAyLjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmN0YS1saXN0LWJsb2NrX19jdGEtaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmN0YS1saXN0LWJsb2NrX19jdGEtaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuXG4uY3RhLWxpc3QtYmxvY2tfX2N0YS1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi10b3A6IDFyZW07IH1cbiAgLmN0YS1saXN0LWJsb2NrX19jdGEtbGlzdCBsaSBhIHtcbiAgICBjb2xvcjogIzE0NjZhMTsgfVxuICAgIC5jdGEtbGlzdC1ibG9ja19fY3RhLWxpc3QgbGkgYTo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiL21pY3Jvc2l0ZXRlbXBsYXRlcy9hc3NldHMvaW1nL3N2Zy9pY29uLWNoZXZyb24tYmx1ZS1lLnN2Z1wiKSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA2cHggMTBweDtcbiAgICAgIGJvdHRvbTogMXB4O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29udGVudDogJ1xcMGEwMCc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBsZWZ0OiAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdHJhbnNpdGlvbjogbGVmdCAuM3MgZWFzZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICAgIHdpZHRoOiA2cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY3RhLWxpc3QtYmxvY2tfX2N0YS1saXN0IGxpIGE6aG92ZXI6OmFmdGVyLCAuY3RhLWxpc3QtYmxvY2tfX2N0YS1saXN0IGxpIGE6Zm9jdXM6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogNnB4OyB9IH1cbiAgICAuY3RhLWxpc3QtYmxvY2tfX2N0YS1saXN0IGxpIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICMyNmEzZGM7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmN0YS1saXN0LWJsb2NrX19jdGEtbGlzdCBsaSArIGxpIHtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgcGFkZGluZy10b3A6IDEuNXJlbTsgfVxuICAgIC5jdGEtbGlzdC1ibG9ja19fY3RhLWxpc3QgbGk6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY3RhLWxpc3QtYmxvY2tfX2N0YS1saXN0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgIC5jdGEtbGlzdC1ibG9ja19fY3RhLWxpc3QgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZsZXg6IDAgMSAzMyU7IH1cbiAgICAgICAgLmN0YS1saXN0LWJsb2NrX19jdGEtbGlzdCBsaTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZTBlMGUwO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzJTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMlOyB9XG4gICAgICAgIC5jdGEtbGlzdC1ibG9ja19fY3RhLWxpc3QgbGkgYSB7XG4gICAgICAgICAgY29sb3I6ICMxNDY2YTE7IH1cbiAgICAgICAgICAuY3RhLWxpc3QtYmxvY2tfX2N0YS1saXN0IGxpIGE6OmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybChcIi9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaGV2cm9uLWJsdWUtZS5zdmdcIikgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNnB4IDEwcHg7XG4gICAgICAgICAgICBib3R0b206IDFweDtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXDBhMDAnO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgbGVmdDogMnB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGxlZnQgLjNzIGVhc2U7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgICAgICAgICB3aWR0aDogNnB4OyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5jdGEtbGlzdC1ibG9ja19fY3RhLWxpc3QgbGkgYTpob3Zlcjo6YWZ0ZXIsIC5jdGEtbGlzdC1ibG9ja19fY3RhLWxpc3QgbGkgYTpmb2N1czo6YWZ0ZXIge1xuICAgICAgICAgIGxlZnQ6IDZweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuZXZlbnRzX19jb250YWluZXItLWNlbnRlcmVkIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG4uZXZlbnRzX190ZXh0IHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDE2cHg7IH1cblxuLmV2ZW50c19fbGluayB7XG4gIGNvbG9yOiAjMDA2NmExOyB9XG5cbi5ldmVudHNfX2ltZyB7XG4gIG1hcmdpbi10b3A6IDNweDsgfVxuXG4uZXZlbnRzX19yZWdpc3RyYXRpb24tYnRuIHtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuICAuZXZlbnRzX19yZWdpc3RyYXRpb24tYnRuIC5idG4ge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9XG5cbi5ldmVudHNfX3JlZ2lzdHJhdGlvbiB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMThweCAxOHB4O1xuICBjb2xvcjogIzhiYjc0MDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdG9wOiAtN3B4OyB9XG4gIC5ldmVudHNfX3JlZ2lzdHJhdGlvbi0tb3BlbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2hlY2ttYXJrLWdyZWVuLnN2Z1wiKTtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5ldmVudHNfX3JlZ2lzdHJhdGlvbi0tY2xvc2VkIHtcbiAgICBjb2xvcjogIzkyOWE5ZDsgfVxuXG4uZXZlbnRzX19kaXNjbGFpbWVyIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2QyZDJkMjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIHBhZGRpbmctdG9wOiAxNXB4OyB9XG5cbi5kb2N0b3Itc2VhcmNoX19jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlOyB9XG4gIC5kb2N0b3Itc2VhcmNoX19jb250YWluZXIgLmRvY3Rvci1zZWFyY2hfX2lubmVyLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogNjBweCAwIDQwcHg7IH1cblxuLnNlYXJjaC10aXRsZV9fbWFpbi1zZWFyY2gge1xuICBjb2xvcjogIzAwNjZhMTtcbiAgcGFkZGluZzogMCA4cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLnNlYXJjaC10aXRsZV9fbWFpbi1zZWFyY2gge1xuICAgICAgbWFyZ2luOiAwIGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuc2VhcmNoLXRpdGxlX19tYWluLXNlYXJjaCB7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7IH0gfVxuXG4uZG9jdG9yLXNlYXJjaF9faW5uZXItY29udGFpbmVyIC5kb2N0b3Itc2VhcmNoX19vbmx5LXNob3cge1xuICBmb250LXNpemU6IDE0cHg7XG4gIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmRvY3Rvci1zZWFyY2hfX2lubmVyLWNvbnRhaW5lciAuZG9jdG9yLXNlYXJjaF9fb25seS1zaG93IHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuICAuZG9jdG9yLXNlYXJjaF9faW5uZXItY29udGFpbmVyIC5kb2N0b3Itc2VhcmNoX19vbmx5LXNob3cgaW5wdXQge1xuICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2NDBweCkge1xuICAuZG9jdG9yLXNlYXJjaF9faW5uZXItY29udGFpbmVyIC5zZWFyY2gtYm94X19zZWFyY2gtY29udGFpbmVyLWNvbC1yIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5kb2N0b3Itc2VhcmNoLWxhc3RuYW1lX19jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IDQ1cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5kb2N0b3Itc2VhcmNoLWxhc3RuYW1lX19jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDsgfSB9XG5cbi5kb2N0b3Itc2VhcmNoLWxhc3RuYW1lX19jb250YWluZXIgLnRpdGxlLWxhc3RuYW1lIHtcbiAgY29sb3I6ICMwMDA7IH1cblxuLmRvY3Rvci1zZWFyY2gtbGFzdG5hbWVfX2NvbnRhaW5lciB1bCB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmRvY3Rvci1zZWFyY2gtbGFzdG5hbWVfX2NvbnRhaW5lciB1bCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAuZG9jdG9yLXNlYXJjaC1sYXN0bmFtZV9fY29udGFpbmVyIHVsIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiA2cHggMnB4OyB9XG4gIC5kb2N0b3Itc2VhcmNoLWxhc3RuYW1lX19jb250YWluZXIgdWwgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgY29sb3I6ICMwMDY2YTE7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBoZWlnaHQ6IDM0cHg7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMzRweDsgfVxuICAgIC5kb2N0b3Itc2VhcmNoLWxhc3RuYW1lX19jb250YWluZXIgdWwgYTpob3ZlciwgLmRvY3Rvci1zZWFyY2gtbGFzdG5hbWVfX2NvbnRhaW5lciB1bCBhLmlzLXNlbGVjdGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDY2YTE7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuXG4uZG9jdG9yLXRhYnNfX2NvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4OyB9XG4gIC5kb2N0b3ItdGFic19fY29udGFpbmVyIC5kb2N0b3ItdGFic19faW5uZXItY29udGFpbmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG5cbi5kb2N0b3ItdGFic19fZmlsdGVycy1idXR0b25zLmxhcmdlLTEyLmNvbHVtbnMge1xuICBmbGV4OiBub25lO1xuICBtYXJnaW4tbGVmdDogMjVweDtcbiAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICB3aWR0aDogY2FsYygxMDAlIC0gNTBweCk7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5kb2N0b3ItdGFic19fZmlsdGVycy1idXR0b25zIC5sYXJnZS0zLnNtYWxsLTEyLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZG9jdG9yLXRhYnNfX2ZpbHRlcnMtYnV0dG9ucyAubGFyZ2UtMy5zbWFsbC0xMi5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMjElOyB9IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuZG9jdG9yLXRhYnNfX2ZpbHRlcnMtYnV0dG9ucyAubGFyZ2UtOS5jb2x1bW5zIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgbWFyZ2luLXRvcDogMjVweDsgfSB9XG5cbi5kb2N0b3ItdGFic19fZmlsdGVycy1idXR0b25zIC5sYXJnZS05LmNvbHVtbnMgaDQge1xuICBmb250LXNpemU6IC45ZW07XG4gIG1hcmdpbi1ib3R0b206IDhweDsgfVxuXG4uZG9jdG9yLXRhYnNfX2ZpbHRlcnMtYnV0dG9ucyB1bCB7XG4gIG1hcmdpbjogMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmRvY3Rvci10YWJzX19maWx0ZXJzLWJ1dHRvbnMgdWwge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5kb2N0b3ItdGFic19fZmlsdGVycy1idXR0b25zIHVsIGxpIHtcbiAgICAgIG1hcmdpbjogMTBweDsgfSB9XG5cbi5kb2N0b3ItdGFic19fZmlsdGVycy1idXR0b25zIGEge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uZG9jdG9yLXRhYnNfX2ZpbHRlcnMtYnV0dG9uczpudGgtb2YtdHlwZSgxKSB7XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG5cbi5kb2N0b3ItdGFic19fZmlsdGVycy1idXR0b25zOm50aC1sYXN0LW9mLXR5cGUoMSkge1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAgIC5kb2N0b3ItdGFic19fZmlsdGVycy1idXR0b25zOm50aC1sYXN0LW9mLXR5cGUoMSkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9IH1cblxuLmRvY3Rvci10YWJzX19maWx0ZXJzLWJ1dHRvbnMuY3VycmVudC1zZWxlY3Rpb24ge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2QyZDJkMjtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLmRvY3Rvci10YWJzX19maWx0ZXJzLWJ1dHRvbnMuY3VycmVudC1zZWxlY3Rpb24ge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc0LjkzNzVlbSkge1xuICAgIC5kb2N0b3ItdGFic19fZmlsdGVycy1idXR0b25zLmN1cnJlbnQtc2VsZWN0aW9uIHtcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7IH0gfVxuXG4uZG9jdG9yLXRhYnNfX2ZpbHRlcnMtYnV0dG9ucy5fX2NvbnRhaW5lci1jb250ZW50LWlubmVyIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogNzUlOyB9XG5cbi5mYWQtc2VhcmNoX19maWx0ZXItYnRuIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvYXNzZXRzL2ltZy9zdmcvaWNvbi1jbG9zZS1jaXJjbGUtYmx1ZS5zdmdcIikgbm8tcmVwZWF0IHJpZ2h0IDEycHggY2VudGVyO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDA2NmExO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBjb2xvcjogIzAwNjZhMTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDE2cHg7XG4gIHBhZGRpbmc6IDdweCAzNXB4IDdweCAxNXB4O1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMgZWFzZTsgfVxuICAuZmFkLXNlYXJjaF9fZmlsdGVyLWJ0bjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjZhMTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvYXNzZXRzL2ltZy9zdmcvaWNvbi1jbG9zZS1jaXJjbGUtd2hpdGUuc3ZnXCIpO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuZG9jdG9yLXRhYnNfX2ZpbHRlcnMtYnV0dG9ucy0tc2VsZWN0ZWQgLmZhZC1zZWFyY2hfX2ZpbHRlci1idG4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAuZG9jdG9yLXRhYnNfX2ZpbHRlcnMtYnV0dG9ucy0tdW5hcHBsaWVkIC5mYWQtc2VhcmNoX19maWx0ZXItYnRuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuXG4uZG9jdG9yLXRhYnNfX2ZpbHRlcnMtY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMzVweCA0NXB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZG9jdG9yLXRhYnNfX2ZpbHRlcnMtY29udGFpbmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIHBhZGRpbmc6IDMwcHggMzVweDtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgei1pbmRleDogOTk5ODsgfSB9XG4gIC5kb2N0b3ItdGFic19fZmlsdGVycy1jb250YWluZXIgLmRvY3Rvci10YWJzX19jbG9zZS1maWx0ZXItbW9kYWwge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuZG9jdG9yLXRhYnNfX2ZpbHRlcnMtY29udGFpbmVyIC5kb2N0b3ItdGFic19fY2xvc2UtZmlsdGVyLW1vZGFsIHtcbiAgICAgICAgY29sb3I6ICMwMDY2YTE7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbWFyZ2luOiAwIDAgMjBweDtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMThweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIC5kb2N0b3ItdGFic19fZmlsdGVycy1jb250YWluZXIgLmRvY3Rvci10YWJzX19jbG9zZS1maWx0ZXItbW9kYWw6OmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvYXNzZXRzL2ltZy9hcnJvdy1sZWZ0LWJsdWUucG5nXCIpO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5kb2N0b3ItdGFic19fZmlsdGVycy1jb250YWluZXIub3BlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5kb2N0b3ItdGFic19fZmlsdGVycy1jb250YWluZXIgLmRvY3Rvci10YWJzX19maWx0ZXJzLWNvbnRhaW5lci1pbm5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC0zLjMzJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZG9jdG9yLXRhYnNfX2ZpbHRlcnMtY29udGFpbmVyIC5kb2N0b3ItdGFic19fZmlsdGVycy1jb250YWluZXItaW5uZXIgLm11bHRpc2VsZWN0LWNvbnRhaW5lciB7XG4gICAgICBmbGV4OiAwIDEgMzAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDMuMDUlOyB9IH1cbiAgLmRvY3Rvci10YWJzX19maWx0ZXJzLWNvbnRhaW5lciAuZG9jdG9yLXRhYnNfX2ZpbHRlci1zZWxlY3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2QyZDJkMjtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1heC1oZWlnaHQ6IDE1MHB4O1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAxOyB9XG4gICAgLmRvY3Rvci10YWJzX19maWx0ZXJzLWNvbnRhaW5lciAuZG9jdG9yLXRhYnNfX2ZpbHRlci1zZWxlY3Qub3BlbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMTVweDtcbiAgICAgIHRvcDogNjNweDtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmRvY3Rvci10YWJzX19maWx0ZXJzLWNvbnRhaW5lciAuZG9jdG9yLXRhYnNfX2ZpbHRlci1zZWxlY3QgdWwge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuZG9jdG9yLXRhYnNfX2ZpbHRlcnMtY29udGFpbmVyIC5kb2N0b3ItdGFic19fZmlsdGVyLXNlbGVjdCB1bCBsaSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogN3B4IDA7IH1cbiAgICAgICAgLmRvY3Rvci10YWJzX19maWx0ZXJzLWNvbnRhaW5lciAuZG9jdG9yLXRhYnNfX2ZpbHRlci1zZWxlY3QgdWwgbGkgaW5wdXQge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAgIC5kb2N0b3ItdGFic19fZmlsdGVycy1jb250YWluZXIgLmRvY3Rvci10YWJzX19maWx0ZXItc2VsZWN0IHVsIGxpIGxhYmVsIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbjogLTZweCAwIDAgNXB4O1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICB3aWR0aDogOTEuNSU7IH1cbiAgICAgICAgICAuZG9jdG9yLXRhYnNfX2ZpbHRlcnMtY29udGFpbmVyIC5kb2N0b3ItdGFic19fZmlsdGVyLXNlbGVjdCB1bCBsaSBsYWJlbDpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuZG9jdG9yLXRhYnNfX2ZpbHRlcnMtY29udGFpbmVyIC5tdWx0aXNlbGVjdC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5kb2N0b3ItdGFic19fZmlsdGVycy1jb250YWluZXIgLmRvY3Rvci10YWJzX19maWx0ZXItc2VsZWN0LWNvbnRhaW5lciB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHVybChcIi9hc3NldHMvaW1nL2Fycm93LWRvd24td2hpdGUucG5nXCIpIDk2JSBjZW50ZXIgbm8tcmVwZWF0ICMwMDY2YTE7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHBhZGRpbmc6IDEycHggMTVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuZG9jdG9yLXRhYnNfX2ZpbHRlcnMtY29udGFpbmVyIC5kb2N0b3ItdGFic19fZmlsdGVyLXNlbGVjdC1jb250YWluZXI6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLmRvY3Rvci10YWJzX19maWx0ZXJzLWNvbnRhaW5lciAuZG9jdG9yLXRhYnNfX2ZpbHRlci1zZWxlY3QtY29udGFpbmVyLm9wZW4ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWcvYXJyb3ctdXAtd2hpdGUucG5nXCIpOyB9XG5cbi5kb2N0b3ItZmlsdGVyX19pbm5lciB7XG4gIG1hcmdpbi10b3A6IDM1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuZG9jdG9yLWZpbHRlcl9faW5uZXIgLmRvY3Rvci10YWJzX19hcHBseS1maWx0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGFmZDc7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMTVweCAyNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cyBlYXNlLW91dDtcbiAgICB3aWR0aDogMTg1cHg7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgIC5kb2N0b3ItZmlsdGVyX19pbm5lciAuZG9jdG9yLXRhYnNfX2FwcGx5LWZpbHRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNDhjM2I7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICAuZG9jdG9yLWZpbHRlcl9faW5uZXIgLmRvY3Rvci10YWJzX19hcHBseS1maWx0ZXI6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzk0ZDYwYTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5kb2N0b3ItdGFic19fZmlsdGVycy10b2dnbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTRkNjBhO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBtaW4td2lkdGg6IDIyMHB4O1xuICBwYWRkaW5nOiAxOHB4IDQwcHggMThweCAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cyBlYXNlLW91dCwgaGVpZ2h0IC4yNXMgZWFzZS1vdXQ7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5kb2N0b3ItdGFic19fZmlsdGVycy10b2dnbGU6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2hldnJvbi13aGl0ZS1zLnN2Z1wiKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5MCUgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmRvY3Rvci10YWJzX19maWx0ZXJzLXRvZ2dsZTo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWcvYXJyb3ctcmlnaHQtd2hpdGUucG5nXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5NyUgY2VudGVyOyB9IH1cbiAgLmRvY3Rvci10YWJzX19maWx0ZXJzLXRvZ2dsZS5pcy1vcGVuIHtcbiAgICBoZWlnaHQ6IDc1cHg7IH1cbiAgICAuZG9jdG9yLXRhYnNfX2ZpbHRlcnMtdG9nZ2xlLmlzLW9wZW46OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaGV2cm9uLXdoaXRlLW4uc3ZnXCIpOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgICAgLmRvY3Rvci10YWJzX19maWx0ZXJzLXRvZ2dsZS5pcy1vcGVuOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9hc3NldHMvaW1nL2Fycm93LXJpZ2h0LXdoaXRlLnBuZ1wiKTsgfSB9XG5cbi5mYWQtc2VhcmNoIC5zZWFyY2gtYm94X19zZWFyY2gtY29udGFpbmVyIC5mYWQtc2VhcmNoX19zZWFyY2gtaW5wdXQsXG4uZG9jdG9yLXNlYXJjaCAuc2VhcmNoLWJveF9fc2VhcmNoLWNvbnRhaW5lciAuZmFkLXNlYXJjaF9fc2VhcmNoLWlucHV0IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL21pY3Jvc2l0ZXRlbXBsYXRlcy9hc3NldHMvaW1nL3N2Zy9pY29uLXNlYXJjaC1mbGF0LWJsYWNrLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTVweCBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIHBhZGRpbmc6IDA7IH1cblxuLnByaW1hcnktbmF2aWdhdGlvbl9faXRlbSAuZmFkLXNlYXJjaCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuZmFkLXNlYXJjaCAuc2VhcmNoLWJveF9fc2VhcmNoLWNvbnRhaW5lciAuZmFkLXNlYXJjaF9fc2VhcmNoLWlucHV0IHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIxcHggMjFweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgcGFkZGluZy1sZWZ0OiA0NXB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmFkLXNlYXJjaCAuc2VhcmNoLWJveF9fc2VhcmNoLWNvbnRhaW5lciAuZmFkLXNlYXJjaF9fc2VhcmNoLWlucHV0IHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIxcHggMjJweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmRvY3Rvci1zZWFyY2ggLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXIgLmZhZC1zZWFyY2hfX3NlYXJjaC1pbnB1dCB7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxN3B4IDE3cHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHBhZGRpbmctbGVmdDogNDJweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuZG9jdG9yLXNlYXJjaCAuc2VhcmNoLWJveF9fc2VhcmNoLWNvbnRhaW5lciAuZmFkLXNlYXJjaF9fc2VhcmNoLWlucHV0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5kb2N0b3Itc2VhcmNoIC5zZWFyY2gtYm94X19zZWFyY2gtY29udGFpbmVyIC5mYWQtc2VhcmNoX19zZWFyY2gtaW5wdXQge1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTlweCAxOXB4O1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQ1cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kb2N0b3Itc2VhcmNoIC5zZWFyY2gtYm94X19zZWFyY2gtY29udGFpbmVyIC5mYWQtc2VhcmNoX19zZWFyY2gtaW5wdXQge1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTdweCAxN3B4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQycHg7IH0gfVxuXG4uZmFkLXNlYXJjaF9faW5uZXItY29udGFpbmVyIHtcbiAgcGFkZGluZzogNTBweCAwOyB9XG4gIC5mYWQtc2VhcmNoX19pbm5lci1jb250YWluZXIgLnNlYXJjaC1pbnB1dC1maWVsZCB7XG4gICAgZmxleDogbm9uZTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmZhZC1zZWFyY2hfX2lubmVyLWNvbnRhaW5lciBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5mYWQtc2VhcmNoX19uYXZpZ2F0aW9uLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmZhZC1zZWFyY2hfX25hdmlnYXRpb24tY29udGFpbmVyLm9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5mYWQtc2VhcmNoX19jb250YWluZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAwcHg7XG4gIHBhZGRpbmc6IDAgMjBweDsgfVxuXG4uZmFkLXNlYXJjaF9fcnVsZSB7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZmZmO1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmZhZC1zZWFyY2gtbGFzdG5hbWVfX2NvbnRhaW5lciAudGl0bGUtbGFzdG5hbWUge1xuICBjb2xvcjogIzAwMDsgfVxuXG4uZmFkLXNlYXJjaC1sYXN0bmFtZV9fY29udGFpbmVyIHVsIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAwOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAuZmFkLXNlYXJjaC1sYXN0bmFtZV9fY29udGFpbmVyIHVsIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5mYWQtc2VhcmNoLWxhc3RuYW1lX19jb250YWluZXIgdWwgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDdweCAxMXB4OyB9XG4gICAgLmZhZC1zZWFyY2gtbGFzdG5hbWVfX2NvbnRhaW5lciB1bCBsaSBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICBjb2xvcjogIzAwNjZhMTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB3aWR0aDogNDVweDsgfVxuICAgICAgLmZhZC1zZWFyY2gtbGFzdG5hbWVfX2NvbnRhaW5lciB1bCBsaSBhOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjZhMTtcbiAgICAgICAgY29sb3I6ICNmZmY7IH1cblxuLnNlYXJjaC1ib3hfX2NvbnRhaW5lciAuc2VhcmNoLWNvbnRlbnRfX2NvbnRhaW5lciB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDM1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLnNlYXJjaC1ib3hfX2NvbnRhaW5lciAuc2VhcmNoLWNvbnRlbnRfX2NvbnRhaW5lciB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjQwcHgpIHtcbiAgLnNlYXJjaC1ib3hfX2NvbnRhaW5lciAuc2VhcmNoLWJveF9fc2VhcmNoLWNvbnRhaW5lci1jb2wtciB7XG4gICAgbWFyZ2luLXRvcDogMTVweDsgfSB9XG5cbi5mYWQtc2VhcmNoLXJlc3VsdHMge1xuICBtYXgtd2lkdGg6IDczLjYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWF4LXdpZHRoOiA3My42MjVyZW07XG4gIHBhZGRpbmc6IDQ1cHggMCAxMHB4O1xuICB3aWR0aDogMTAwJTsgfVxuICAuZmFkLXNlYXJjaC1yZXN1bHRzOjphZnRlciwgLmZhZC1zZWFyY2gtcmVzdWx0czo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAuZmFkLXNlYXJjaC1yZXN1bHRzOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmZhZC1zZWFyY2gtcmVzdWx0cyAuc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1jb3VudCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBtYXJnaW46IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgIC5mYWQtc2VhcmNoLXJlc3VsdHMgLnNlYXJjaC1yZXN1bHRzX19yZXN1bHQtY291bnQge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0tbGluayB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0tbGluayB7XG4gICAgYm90dG9tOiAwO1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxlZnQ6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDsgfVxuICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtLWxpbms6aG92ZXIsIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtLWxpbms6Zm9jdXMsIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtLWxpbms6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjMDAwOyB9IH1cblxuLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0ge1xuICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgZm9udC1zaXplOiAxLjE1ZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyIDIwMG1zIGVhc2Utb3V0OyB9XG4gIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtOmhvdmVyIC5ob3Zlci1ib3JkZXIge1xuICAgIHdpZHRoOiAyMnB4OyB9XG4gICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW06aG92ZXIgLmhvdmVyLWJvcmRlciAuYXJyb3ctbGVmdDo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWcvYXJyb3ctcmlnaHQtd2hpdGUucG5nXCIpO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbS5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtLS1waHlzaWNpYW4gLmhvdmVyLWJvcmRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5OGQyOTsgfVxuICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbS5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtLS1waHlzaWNpYW4gLm1vYmlsZS1idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOThkMjk7IH1cbiAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0uZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbS0tcHJhY3RpY2UgLmhvdmVyLWJvcmRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzkzYzI0MzsgfVxuICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbS5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtLS1wcmFjdGljZSAubW9iaWxlLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzkzYzI0MzsgfVxuICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbSAuZmFkLXNlYXJjaC1yZXN1bHRzX19sb2dvIHtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIC5mYWQtc2VhcmNoLXJlc3VsdHNfX2xvZ28ge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1cHggMTJweDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLmZhZC1zZWFyY2gtcmVzdWx0c19fbG9nbyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDdweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLmZhZC1zZWFyY2gtcmVzdWx0c19fbG9nbyB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIC5mYWQtc2VhcmNoLXJlc3VsdHNfX2xvZ28ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogLTIwcHg7IH0gfVxuICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbSAuY29udGVudC1jb250YWluZXIge1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbSAuY29udGVudC1jb250YWluZXIge1xuICAgICAgICB3aWR0aDogNjAlOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIC5jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAxMHB4IDI1cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIC5jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICAgIHdpZHRoOiA2NSU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIC5jb250ZW50LWNvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMzVweDtcbiAgICAgICAgd2lkdGg6IDc1JTsgfSB9XG4gICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLmNvbnRlbnQtY29udGFpbmVyIC5jb250ZW50LWNvbnRhaW5lci1yb3cgLmZhZC1zZWFyY2gtcmVzdWx0c19fc3BlY2lhbHR5LWNvbnRhaW5lciB7XG4gICAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIC5jb250ZW50LWNvbnRhaW5lciAuY29udGVudC1jb250YWluZXItcm93IC5mYWQtc2VhcmNoLXJlc3VsdHNfX3NwZWNpYWx0eS1jb250YWluZXIge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIC5jb250ZW50LWNvbnRhaW5lciAuY29udGVudC1jb250YWluZXItcm93IC5mYWQtc2VhcmNoLXJlc3VsdHNfX3NwZWNpYWx0eS1jb250YWluZXIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIC5jb250ZW50LWNvbnRhaW5lciAuY29udGVudC1jb250YWluZXItcm93IC5mYWQtc2VhcmNoLXJlc3VsdHNfX3NwZWNpYWx0eS1jb250YWluZXIgLmZhZC1zZWFyY2gtcmVzdWx0c19fc3BlY2lhbHR5IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbSAuY29udGVudC1jb250YWluZXIgLmNvbnRlbnQtY29udGFpbmVyLXJvdyAuZmFkLXNlYXJjaC1yZXN1bHRzX19zcGVjaWFsdHktY29udGFpbmVyIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3NwZWNpYWx0eS1jb21tYTpsYXN0LW9mLXR5cGUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLmNvbnRlbnQtY29udGFpbmVyIC5jb250ZW50LWNvbnRhaW5lci1yb3cgLmZhZC1zZWFyY2gtcmVzdWx0c19fbG9jYXRpb24tY29udGFpbmVyIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDUwJTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIC5jb250ZW50LWNvbnRhaW5lciAuY29udGVudC1jb250YWluZXItcm93IC5mYWQtc2VhcmNoLXJlc3VsdHNfX2xvY2F0aW9uLWNvbnRhaW5lciB7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3NwZWNpYWx0eS1jb21tYSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLmRveWxlc3Rvd24tbG9nbyB7XG4gICAgbWFyZ2luOiAtMTFweCAwIDEwcHg7IH1cbiAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLmltZy1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbSAuaW1nLWNvbnRhaW5lciB7XG4gICAgICAgIGZsZXg6IDAgMSAxMTVweDtcbiAgICAgICAgaGVpZ2h0OiAxMTVweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLmltZy1jb250YWluZXIge1xuICAgICAgICBoZWlnaHQ6IDE3NXB4O1xuICAgICAgICB3aWR0aDogMTc1cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIC5pbWctY29udGFpbmVyIHtcbiAgICAgICAgaGVpZ2h0OiAyNzVweDtcbiAgICAgICAgd2lkdGg6IDI1JTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtLWltZy1jb250ZW50LXJvdyB7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0taW1nLWNvbnRlbnQtcm93IHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMTVweCAxNXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0taW1nLWNvbnRlbnQtcm93ID4gLmNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgcGFkZGluZy10b3A6IDA7IH0gfVxuICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbSAuaG92ZXItYm9yZGVyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAuMnM7XG4gICAgd2lkdGg6IDhweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLmhvdmVyLWJvcmRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbSBwIHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLnJvdy1hcmVhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtLXRpdGxlLXJvdyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbSAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbS10aXRsZS1yb3cge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbSAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbS10aXRsZS1jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMTBweCAzNXB4IDAgMTVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbSAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbS10aXRsZS1jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMTVweCAzNXB4IDEwcHggMTVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbSAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbS10aXRsZS1jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMTVweCAzNXB4IDEwcHg7IH0gfVxuICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbSAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbS10aXRsZS1jb250YWluZXIgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0tdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMwMDY2YTE7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtLXRpdGxlLWNvbnRhaW5lciAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbS10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0tdGl0bGUtY29udGFpbmVyIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0tdGl0bGUtY29udGFpbmVyIC5zZWFyY2gtdGl0bGVfX3R5cGUge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICM5MjlhOWQ7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wNWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtLXRpdGxlLWNvbnRhaW5lciAuc2VhcmNoLXRpdGxlX190eXBlIHtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMTVweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0tdGl0bGUtY29udGFpbmVyIC5zZWFyY2gtdGl0bGVfX3R5cGUge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyNXB4OyB9IH1cbiAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLl9fY29udGFpbmVyLWNvbnRlbnQtaW5uZXIge1xuICAgIG1hcmdpbi10b3A6IDExcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbSAuX19jb250YWluZXItY29udGVudC1pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2NDBweCkge1xuICAgICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0gLl9fY29udGFpbmVyLWNvbnRlbnQtaW5uZXIge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbSAuX19jb250YWluZXItY29udGVudC1pbm5lciAubWVkaXVtLTEyLmNvbHVtbnMge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG5wLmZhZC1zZWFyY2gtcmVzdWx0c19fcGhvbmUtbGluayB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWcvaWNvbi1waG9uZS5wbmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBkaXNwbGF5OiBub25lO1xuICBmb250LXNpemU6IDE4cHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIHBhZGRpbmc6IDAgMCAwIDI1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIHAuZmFkLXNlYXJjaC1yZXN1bHRzX19waG9uZS1saW5rLmZhZC1zZWFyY2gtcmVzdWx0c19fcGhvbmUtbGluay0tZGVza3RvcCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIHAuZmFkLXNlYXJjaC1yZXN1bHRzX19waG9uZS1saW5rLmZhZC1zZWFyY2gtcmVzdWx0c19fcGhvbmUtbGluay0tbW9iaWxlIHtcbiAgICBjb2xvcjogIzE0NjZhMTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAuMnMgZWFzZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgcC5mYWQtc2VhcmNoLXJlc3VsdHNfX3Bob25lLWxpbmsuZmFkLXNlYXJjaC1yZXN1bHRzX19waG9uZS1saW5rLS1tb2JpbGUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgNHB4IGxlZnQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTJweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMjJweDsgfSB9XG5cbi5mYWQtc2VhcmNoLXJlc3VsdHNfX2NvbnRhaW5lciB7XG4gIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgLmZhZC1zZWFyY2gtcmVzdWx0c19fY29udGFpbmVyIC5mYWQtc2VhcmNoLXJlc3VsdHNfX2xvY2F0aW9uLWNvbnRhaW5lciAuZmFkLXNlYXJjaC1yZXN1bHRzX19jaXR5LXN0YXRlIHtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIHBhZGRpbmc6IDAgMCAwIDIycHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX2NvbnRhaW5lciAuZmFkLXNlYXJjaC1yZXN1bHRzX19sb2NhdGlvbi1jb250YWluZXIgLmZhZC1zZWFyY2gtcmVzdWx0c19fY2l0eS1zdGF0ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fY29udGFpbmVyIC5mYWQtc2VhcmNoLXJlc3VsdHNfX2xvY2F0aW9uLWNvbnRhaW5lciAuZmFkLXNlYXJjaC1yZXN1bHRzX19jaXR5LXN0YXRlIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4OyB9IH1cbiAgLmZhZC1zZWFyY2gtcmVzdWx0c19fY29udGFpbmVyIC5mYWQtc2VhcmNoLXJlc3VsdHNfX2xvY2F0aW9uLWNvbnRhaW5lciAubW9yZS1sb2NhdGlvbiB7XG4gICAgY29sb3I6ICM5MjlhOWQ7IH1cbiAgLmZhZC1zZWFyY2gtcmVzdWx0c19fY29udGFpbmVyIC5mYWQtc2VhcmNoLXJlc3VsdHNfX2xvY2F0aW9uLWNvbnRhaW5lciAuZmFkLXNlYXJjaC1yZXN1bHRzX19sb2NhdGlvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWcvaWNvbi1sb2NhdGlvbi5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBwYWRkaW5nOiAwIDAgMCAyMnB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19jb250YWluZXIgLmZhZC1zZWFyY2gtcmVzdWx0c19fbG9jYXRpb24tY29udGFpbmVyIC5mYWQtc2VhcmNoLXJlc3VsdHNfX2xvY2F0aW9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIDNweCBsZWZ0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fY29udGFpbmVyIC5mYWQtc2VhcmNoLXJlc3VsdHNfX2xvY2F0aW9uLWNvbnRhaW5lciAuZmFkLXNlYXJjaC1yZXN1bHRzX19sb2NhdGlvbiB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgNXB4O1xuICAgICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuXG4uZmFkLXNlYXJjaC1yZXN1bHRzX19tb2JpbGUtYnRuLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fbW9iaWxlLWJ0bi1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cbiAgLmZhZC1zZWFyY2gtcmVzdWx0c19fbW9iaWxlLWJ0bi1jb250YWluZXIgLm1vYmlsZS1idXR0b24ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgcGFkZGluZzogMTVweCA1MHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMgZWFzZS1vdXQ7IH1cbiAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19tb2JpbGUtYnRuLWNvbnRhaW5lciAubW9iaWxlLWJ1dHRvbiAuY2Fycm90LXJpZ2h0IHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9hc3NldHMvaW1nL2Fycm93LXJpZ2h0LXdoaXRlLnBuZ1wiKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICAgIHdpZHRoOiA5cHg7IH1cblxuLmZiLWNvbW1lbnRzIHtcbiAgbWFyZ2luLXRvcDogMzBweDsgfVxuXG4uZmItY29tbWVudHNfX3dyYXAge1xuICBtYXgtd2lkdGg6IDY1MHB4OyB9XG5cbi5mZWF0dXJlLWdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gIC5kaCAuZmVhdHVyZS1ncmlkIHtcbiAgICBtYXJnaW4tdG9wOiA0cmVtOyB9XG5cbi5mZWF0dXJlLWdyaWRfX2l0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmZlYXR1cmUtZ3JpZF9faXRlbTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaXJjbGUtYXJyb3ctd2hpdGUtZS5zdmdcIikgY2VudGVyIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDtcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiA0MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5mZWF0dXJlLWdyaWRfX2l0ZW0ge1xuICAgICAgZmxleDogMCAxIDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiAzNTBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuZmVhdHVyZS1ncmlkX19pdGVtIHtcbiAgICAgIGZsZXg6IDAgMSA1MCU7XG4gICAgICBoZWlnaHQ6IDMwMHB4OyB9XG4gICAgICAuZmVhdHVyZS1ncmlkX19pdGVtOm50aC1jaGlsZCgxKSB7XG4gICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICAuZmVhdHVyZS1ncmlkX19pdGVtOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIG9yZGVyOiAyOyB9XG4gICAgICAuZmVhdHVyZS1ncmlkX19pdGVtOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIG9yZGVyOiA0OyB9XG4gICAgICAuZmVhdHVyZS1ncmlkX19pdGVtOm50aC1jaGlsZCg0KSB7XG4gICAgICAgIG9yZGVyOiAzOyB9XG4gICAgICAuZmVhdHVyZS1ncmlkX19pdGVtOm50aC1jaGlsZCg1KSB7XG4gICAgICAgIG9yZGVyOiA1OyB9XG4gICAgICAuZmVhdHVyZS1ncmlkX19pdGVtOm50aC1jaGlsZCg2KSB7XG4gICAgICAgIG9yZGVyOiA2OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlLWdyaWRfX2l0ZW0ge1xuICAgICAgZmxleDogMCAxIDMzLjMzMyU7XG4gICAgICBoZWlnaHQ6IDQwMHB4OyB9IH1cbiAgLmZlYXR1cmUtZ3JpZF9faXRlbTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5mZWF0dXJlLWdyaWRfX2l0ZW06OmFmdGVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMnMgZWFzZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLmZlYXR1cmUtZ3JpZF9faXRlbTo6YWZ0ZXIge1xuICAgICAgICBib3R0b206IDUwcHg7XG4gICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTVweCk7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mZWF0dXJlLWdyaWRfX2l0ZW06OmFmdGVyIHtcbiAgICAgICAgYm90dG9tOiAzMHB4O1xuICAgICAgICByaWdodDogMzBweDsgfSB9XG4gIC5mZWF0dXJlLWdyaWRfX2l0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgb3BhY2l0eTogLjE1OyB9XG4gIC5mZWF0dXJlLWdyaWRfX2l0ZW06aG92ZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7IH1cbiAgLmZlYXR1cmUtZ3JpZF9faXRlbS0taW1nIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0OyB9XG4gICAgLmZlYXR1cmUtZ3JpZF9faXRlbS0taW1nOjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMC4yNTsgfVxuICAgIC5mZWF0dXJlLWdyaWRfX2l0ZW0tLWltZzpob3Zlcjo6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IC40OyB9XG4gIC5mZWF0dXJlLWdyaWRfX2l0ZW0tLWdyZWVuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTNjMjQzOyB9XG4gIC5mZWF0dXJlLWdyaWRfX2l0ZW0tLXB1cnBsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzYyM2Y5MDsgfVxuICAuZmVhdHVyZS1ncmlkX19pdGVtLS1ibHVlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhZmQ3OyB9XG5cbi5mZWF0dXJlLWdyaWRfX2l0ZW0tbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDI7IH1cblxuLmZlYXR1cmUtZ3JpZF9faXRlbS1jb250YWluIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nOiAzMHB4O1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuZmVhdHVyZS1ncmlkX19pdGVtLWNvbnRhaW4ge1xuICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbi5mZWF0dXJlLWdyaWRfX2l0ZW0tdHlwZSxcbi5mZWF0dXJlLWdyaWRfX2l0ZW0tdGl0bGUge1xuICBjb2xvcjogI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyOyB9XG5cbi5mZWF0dXJlLWdyaWRfX2l0ZW0tdHlwZSB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuZmVhdHVyZS1ncmlkX19pdGVtLXR5cGUge1xuICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWF0dXJlLWdyaWRfX2l0ZW0tdHlwZSB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuXG4uZmVhdHVyZS1ncmlkX19pdGVtLXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5mZWF0dXJlLWdyaWRfX2l0ZW0tdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWF0dXJlLWdyaWRfX2l0ZW0tdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAzMnB4OyB9IH1cblxuLmZlYXR1cmVkLWV2ZW50cyB7XG4gIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmZlYXR1cmVkLWV2ZW50czo6YWZ0ZXIsIC5mZWF0dXJlZC1ldmVudHM6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLmZlYXR1cmVkLWV2ZW50czo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5kaCAuZmVhdHVyZWQtZXZlbnRzIHtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmRoIC5mZWF0dXJlZC1ldmVudHMge1xuICAgICAgbWFyZ2luLXRvcDogNHJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuZmVhdHVyZWQtZXZlbnRzIHtcbiAgICAgIHBhZGRpbmc6IDAgMnJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVhdHVyZWQtZXZlbnRzIHtcbiAgICAgIHBhZGRpbmc6IDAgNHJlbTsgfSB9XG5cbi5mZWF0dXJlZC1ldmVudHNfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5mZWF0dXJlZC1ldmVudHNfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVhdHVyZWQtZXZlbnRzX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDMycHg7IH0gfVxuXG4uZmVhdHVyZWQtZXZlbnRzX19zdWJ0aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgcGFkZGluZzogMCAyMHB4OyB9XG5cbi5mZWF0dXJlZC1ldmVudHNfX2V2ZW50cyB7XG4gIG1hcmdpbi10b3A6IDJyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWF0dXJlZC1ldmVudHNfX2V2ZW50cyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuXG4uZmVhdHVyZWQtZXZlbnRzX19ldmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDY2YTE7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjVzIGVhc2U7IH1cbiAgLmZlYXR1cmVkLWV2ZW50c19fZXZlbnQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU2ODY7IH1cbiAgICAuZmVhdHVyZWQtZXZlbnRzX19ldmVudDpob3ZlciAuZmVhdHVyZWQtZXZlbnRzX19ldmVudC1pbWFnZTo6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuZmVhdHVyZWQtZXZlbnRzX19ldmVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNzBweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiA5MCU7IH1cbiAgICAgIC5mZWF0dXJlZC1ldmVudHNfX2V2ZW50OjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaXJjbGUtYXJyb3ctd2hpdGUtZS5zdmdcIikgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA0MHB4IDQwcHg7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDQwcHg7IH1cbiAgICAgIC5mZWF0dXJlZC1ldmVudHNfX2V2ZW50OmhvdmVyOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTsgfVxuICAgICAgLmZlYXR1cmVkLWV2ZW50c19fZXZlbnQ6OmFmdGVyIHtcbiAgICAgICAgYm90dG9tOiA0MHB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDIwcHgpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2U7XG4gICAgICAgIHdpZHRoOiA0MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWF0dXJlZC1ldmVudHNfX2V2ZW50IHtcbiAgICAgIGZsZXg6IDAgMSA0NSU7IH1cbiAgICAgIC5mZWF0dXJlZC1ldmVudHNfX2V2ZW50Omxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMnJlbTsgfSB9XG5cbi5mZWF0dXJlZC1ldmVudHNfX2V2ZW50LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5mZWF0dXJlZC1ldmVudHNfX2V2ZW50LWltYWdlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5mZWF0dXJlZC1ldmVudHNfX2V2ZW50LWltYWdlOjpiZWZvcmUsIC5mZWF0dXJlZC1ldmVudHNfX2V2ZW50LWltYWdlOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogJyc7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMjsgfVxuICAuZmVhdHVyZWQtZXZlbnRzX19ldmVudC1pbWFnZTo6YmVmb3JlIHtcbiAgICBib3gtc2hhZG93OiAtNTBweCA3MHB4IDE3MHB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIHRvcDogLTEwMHB4O1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgd2lkdGg6IDMwMHB4OyB9XG4gIC5mZWF0dXJlZC1ldmVudHNfX2V2ZW50LWltYWdlOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGJvdHRvbTogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC41cyBlYXNlO1xuICAgIHJpZ2h0OiAwOyB9XG4gIC5mZWF0dXJlZC1ldmVudHNfX2V2ZW50LWltYWdlIGltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7IH1cblxuLmZlYXR1cmVkLWV2ZW50c19fZXZlbnQtdHlwZSB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICNmZmY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMjVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdG9wOiAyMHB4O1xuICB6LWluZGV4OiAyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5mZWF0dXJlZC1ldmVudHNfX2V2ZW50LXR5cGUge1xuICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlZC1ldmVudHNfX2V2ZW50LXR5cGUge1xuICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cblxuLmZlYXR1cmVkLWV2ZW50c19fZXZlbnQtaW5mbyB7XG4gIGNvbG9yOiAjZmZmO1xuICBwYWRkaW5nOiAyMHB4IDI1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmZlYXR1cmVkLWV2ZW50c19fZXZlbnQtaW5mbyB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZlYXR1cmVkLWV2ZW50c19fZXZlbnQtaW5mbyB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cblxuLmZlYXR1cmVkLWV2ZW50c19fZXZlbnQtdGl0bGUsXG4uZmVhdHVyZWQtZXZlbnRzX19ldmVudC1kYXRlLFxuLmZlYXR1cmVkLWV2ZW50c19fZXZlbnQtZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tYm90dG9tOiA2cHg7IH1cblxuLmZlYXR1cmVkLWV2ZW50c19fZXZlbnQtdGl0bGUge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLmZlYXR1cmVkLWV2ZW50c19fZXZlbnQtZGF0ZSB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4uZmVhdHVyZWQtZXZlbnRzX19jdGEge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5mZWF0dXJlZC1ldmVudHNfX2N0YTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaGV2cm9uLW9yYW5nZS1lLnN2Z1wiKSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogNnB4IDEwcHg7XG4gICAgYm90dG9tOiAxcHg7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbnRlbnQ6ICdcXDBhMDAnO1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGhlaWdodDogMTBweDtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IGxlZnQgLjNzIGVhc2U7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIHdpZHRoOiA2cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlZC1ldmVudHNfX2N0YTpob3Zlcjo6YWZ0ZXIsIC5mZWF0dXJlZC1ldmVudHNfX2N0YTpmb2N1czo6YWZ0ZXIge1xuICAgICAgbGVmdDogNHB4OyB9IH1cbiAgLmZlYXR1cmVkLWV2ZW50c19fY3RhOmhvdmVyIHtcbiAgICBjb2xvcjogI2Y5OGQyOTsgfVxuXG4uZmlndXJlLmZpZ3VyZS0tbWFpbiB7XG4gIG1hcmdpbjogMDsgfVxuXG4uZmlndXJlX19jYXB0aW9uIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogIzhhOGE4YTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIG1hcmdpbi10b3A6IDFyZW07IH1cblxuLmZpZ3VyZV9fdmlkZW8ge1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjcxOTgxMiU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZmlndXJlX192aWRlbyBpZnJhbWUsXG4gIC5maWd1cmVfX3ZpZGVvIHZpZGVvIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlOyB9XG5cbi5maWx0ZXJfX2hlYWRpbmcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICB3aWR0aDogMTAwJTsgfVxuICAuZmlsdGVyX19oZWFkaW5nIHAge1xuICAgIGZsZXg6IDAgMCAxMzBweDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMzBweDsgfVxuICAuZmlsdGVyX19oZWFkaW5nIC5maWx0ZXJfX2hlYWRpbmctcnVsZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkM2QzZDM7XG4gICAgZmxleDogMSAwIGF1dG87XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMTNweDsgfVxuXG4uZmlsdGVyX19yb3cge1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5maWx0ZXJfX3JvdyB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cblxuLmZpbHRlciB7XG4gIG1hcmdpbi1yaWdodDogNzBweDtcbiAgd2lkdGg6IDUwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuZmlsdGVyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmZpbHRlcjpudGgtY2hpbGQoMm4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgLmZpbHRlciAuZmlsdGVyX19pbnB1dCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiA0MnB4OyB9XG4gIC5maWx0ZXIgLmZvcm1fX3NlbGVjdCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuZGggLmZpbHRlciAuZm9ybV9fc2VsZWN0IHtcbiAgICAgIGhlaWdodDogNTVweDsgfVxuXG4uZmlsdGVyX19zdWJtaXQge1xuICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuICB3aWR0aDogMjE0cHg7IH1cblxuLmZvb3Rlcl9fdXBwZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuZm9vdGVyX191cHBlci1jb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3Rlcl9fdXBwZXItY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjMuOXB4KSB7XG4gIC5mb290ZXJfX3VwcGVyLWlubmVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmZvb3Rlcl9fdXBwZXItaW5uZXIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlcl9fdXBwZXItaW5uZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3Rlcl9fdXBwZXItaW5uZXIge1xuICAgIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmZvb3Rlcl9fYnJhbmRpbmcge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDsgfVxuICAgIC5kaCAuZm9vdGVyX19icmFuZGluZyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmZvb3Rlcl9fYnJhbmRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5mb290ZXJfX2JyYW5kaW5nIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyX19icmFuZGluZyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb290ZXJfX2JyYW5kaW5nIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlcl9fYnJhbmRpbmc6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyX19icmFuZGluZ19fd3JhcCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctcmlnaHQ6IDE4cHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyX191cmdlbnQtY2FyZSwgLmZvb3Rlcl9fbG9nbyB7XG4gICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uZm9vdGVyX191cmdlbnQtY2FyZSB7XG4gIGhlaWdodDogNjZweDtcbiAgd2lkdGg6IDI0MHB4OyB9XG5cbi5mb290ZXJfX2xvZ28ge1xuICBoZWlnaHQ6IDI2cHg7XG4gIHdpZHRoOiAxNTJweDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmZvb3Rlcl9fYWRkcmVzcyB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXJfX2FkZHJlc3Mge1xuICAgIG1hcmdpbi10b3A6IDI1cHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyX19uYXZpZ2F0aW9uIHtcbiAgICB3aWR0aDogMjAuODMzMzMlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlcl9fbmF2aWdhdGlvbiB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb290ZXJfX25hdmlnYXRpb246bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4uZm9vdGVyX19uYXZpZ2F0aW9uIGE6aG92ZXIge1xuICBjb2xvcjogIzAwNjZhMTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3Rlcl9fbmF2aWdhdGlvbiB7XG4gICAgcGFkZGluZy10b3A6IDI1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmZvb3Rlcl9fbmF2aWdhdGlvbjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwZTkyYTI7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAzcHg7XG4gICAgICB3aWR0aDogNTRweDsgfVxuICAgIC5kaCAuZm9vdGVyX19uYXZpZ2F0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwOyB9XG4gICAgICAuZGggLmZvb3Rlcl9fbmF2aWdhdGlvbjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5mb290ZXJfX25hdmlnYXRpb24tbGlzdCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuXG4uZm9vdGVyX19uYXZpZ2F0aW9uLWl0ZW0ge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmZvb3Rlcl9fbmF2aWdhdGlvbi1pdGVtIHtcbiAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlcl9fbmF2aWdhdGlvbi1pdGVtIHtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5mb290ZXJfX25hdmlnYXRpb24taXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlcl9fbmF2aWdhdGlvbi1pdGVtIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDRweDsgfSB9XG4gIC5kaCAuZm9vdGVyX19uYXZpZ2F0aW9uLWl0ZW0ge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgICAuZGggLmZvb3Rlcl9fbmF2aWdhdGlvbi1pdGVtIGEge1xuICAgICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5kaCAuZm9vdGVyX19uYXZpZ2F0aW9uLWl0ZW0ge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuXG4uZm9vdGVyX19uYXZpZ2F0aW9uLWxpbmsge1xuICBjb2xvcjogIzAwNjZhMTsgfVxuXG4uZm9vdGVyX19jb250YWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb290ZXJfX2NvbnRhY3Qge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMXJlbSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlcl9fY29udGFjdCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZvb3Rlcl9fY29udGFjdDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmRoIC5mb290ZXJfX2NvbnRhY3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG4gIC5mb290ZXJfX2NvbnRhY3RfX3RpdGxlIHtcbiAgICBjb2xvcjogIzAwNjZhMTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZm9vdGVyX19jb250YWN0X190aXRsZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICAgIC5kaCAuZm9vdGVyX19jb250YWN0X190aXRsZSB7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgICAuZGggLmZvb3Rlcl9fY29udGFjdF9fdGl0bGUge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7IH0gfVxuICAuZm9vdGVyX19jb250YWN0X19leGNlcnB0IHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mb290ZXJfX2NvbnRhY3RfX2V4Y2VycHQge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5mb290ZXJfX25hdmlnYXRpb24tLWNvbnRhY3QgPiBwLFxuICAuZm9vdGVyX19uYXZpZ2F0aW9uLS1jb250YWN0ID4gYSB7XG4gICAgZm9udC1zaXplOiAxNXB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3Rlcl9fbmF2aWdhdGlvbi0tY29udGFjdCA+IHAsXG4gIC5mb290ZXJfX25hdmlnYXRpb24tLWNvbnRhY3QgPiBhIHtcbiAgICBmb250LXNpemU6IDEzcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmZvb3Rlcl9fbmF2aWdhdGlvbi0tY29udGFjdCA+IHAsXG4gIC5mb290ZXJfX25hdmlnYXRpb24tLWNvbnRhY3QgPiBhIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyX19uYXZpZ2F0aW9uLS1jb250YWN0ID4gcCxcbiAgLmZvb3Rlcl9fbmF2aWdhdGlvbi0tY29udGFjdCA+IGEge1xuICAgIG1hcmdpbi1ib3R0b206IDRweDsgfSB9XG5cbi5mb290ZXJfX25hdmlnYXRpb24tLWNvbnRhY3QgYSB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmZvb3Rlcl9fZm9ybSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAyOHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9vdGVyX19mb3JtIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICAuZm9vdGVyX19mb3JtX19pbnB1dCB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgd2lkdGg6IDE1NXB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNlNmUxZTI7XG4gICAgcGFkZGluZzogMCAxMHB4OyB9XG4gIC5mb290ZXJfX2Zvcm1fX2J0biB7XG4gICAgZm9udC1zaXplOiAwLjc1MHJlbTtcbiAgICBsaW5lLWhlaWdodDogLjc1MHJlbTtcbiAgICBwYWRkaW5nOiA5cHggMTVweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bzsgfVxuXG4uZm9vdGVyX19jb250YWN0LWxpbmsge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMDA2NmExOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXJfX3NvY2lhbCB7XG4gICAgLyogQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMyk7ICovIH0gfVxuXG4uZm9vdGVyX19zb2NpYWwtbGlzdCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb290ZXJfX3NvY2lhbC1saXN0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4OyB9IH1cblxuLmZvb3Rlcl9fc29jaWFsLWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctbGVmdDogMTJweDtcbiAgcGFkZGluZy1yaWdodDogMTJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5mb290ZXJfX3NvY2lhbC1pdGVtOmZpcnN0LW9mLXR5cGUge1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAuZm9vdGVyX19zb2NpYWwtaXRlbTpsYXN0LW9mLXR5cGUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mb290ZXJfX3NvY2lhbC1pdGVtIHtcbiAgICAgIHBhZGRpbmctbGVmdDogOHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogOHB4OyB9IH1cblxuLmZvb3Rlcl9fc29jaWFsLWxpbmsge1xuICBjb2xvcjogIzAwNjZhMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zaXRpb246IGNvbG9yIDI1MG1zIGVhc2Utb3V0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5mb290ZXJfX3NvY2lhbC1saW5rLS1mYWNlYm9vayB7XG4gICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICB3aWR0aDogMTJweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlcl9fc29jaWFsLWxpbmstLWZhY2Vib29rIHtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAxMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmZvb3Rlcl9fc29jaWFsLWxpbmstLXllbHAge1xuICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgd2lkdGg6IDI1cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb290ZXJfX3NvY2lhbC1saW5rLS15ZWxwIHtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAyMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmZvb3Rlcl9fc29jaWFsLWxpbmstLXR3aXR0ZXIge1xuICAgICAgaGVpZ2h0OiAyNXB4O1xuICAgICAgd2lkdGg6IDIwcHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb290ZXJfX3NvY2lhbC1saW5rLS10d2l0dGVyIHtcbiAgICAgIGhlaWdodDogMTZweDtcbiAgICAgIHdpZHRoOiAyMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmZvb3Rlcl9fc29jaWFsLWxpbmstLWdvb2dsZS1wbHVzIHtcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAzMXB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9vdGVyX19zb2NpYWwtbGluay0tZ29vZ2xlLXBsdXMge1xuICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgd2lkdGg6IDI1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuZm9vdGVyX19zb2NpYWwtbGluay0tcGludGVyZXN0LCAuZm9vdGVyX19zb2NpYWwtbGluay0teW91dHViZSwgLmZvb3Rlcl9fc29jaWFsLWxpbmstLWluc3RhZ3JhbSB7XG4gICAgICBoZWlnaHQ6IDI1cHg7XG4gICAgICB3aWR0aDogMjBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlcl9fc29jaWFsLWxpbmstLXBpbnRlcmVzdCwgLmZvb3Rlcl9fc29jaWFsLWxpbmstLXlvdXR1YmUsIC5mb290ZXJfX3NvY2lhbC1saW5rLS1pbnN0YWdyYW0ge1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgd2lkdGg6IDE2cHg7IH0gfVxuXG4uZm9vdGVyX19zb2NpYWwtbG9nbyB7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4uZm9vdGVyX19sb3dlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmVjZWM7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5mb290ZXJfX2xvd2VyLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDMycHg7XG4gICAgcGFkZGluZy1ib3R0b206IDM1cHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyX19sb3dlci1jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBwYWRkaW5nOiAxOHB4OyB9XG4gICAgLmZvb3Rlcl9fbG93ZXItY29udGFpbmVyOjphZnRlciwgLmZvb3Rlcl9fbG93ZXItY29udGFpbmVyOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAgIC5mb290ZXJfX2xvd2VyLWNvbnRhaW5lcjo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuXG4uZm9vdGVyX19sb3dlci1pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmZvb3Rlcl9fbG93ZXItaW5uZXIge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9vdGVyX19sb3dlci1pbm5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb290ZXJfX2xvd2VyLWlubmVyIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuZm9vdGVyX19jb3B5cmlnaHQge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBvcmRlcjogMjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyX19jb3B5cmlnaHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmRoIC5mb290ZXJfX2NvcHlyaWdodCB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBmb250LXNpemU6IDEwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kaCAuZm9vdGVyX19jb3B5cmlnaHQge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxM3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5mb290ZXJfX2xlZ2FsLW5hdmlnYXRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgb3JkZXI6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLmZvb3Rlcl9fbGVnYWwtbmF2aWdhdGlvbi1saXN0IHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZvb3Rlcl9fbGVnYWwtbmF2aWdhdGlvbi1saXN0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5mb290ZXJfX2xlZ2FsLW5hdmlnYXRpb24taXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNnB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZvb3Rlcl9fbGVnYWwtbmF2aWdhdGlvbi1pdGVtOmxhc3Qtb2YtdHlwZSBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cblxuLmZvb3Rlcl9fbGVnYWwtbmF2aWdhdGlvbi1saW5rIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzAwNjZhMTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuZm9vdGVyX19sZWdhbC1uYXZpZ2F0aW9uLWxpbmsge1xuICAgICAgZm9udC1zaXplOiAxOHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZm9vdGVyX19sZWdhbC1uYXZpZ2F0aW9uLWxpbmsge1xuICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwIDE1cHg7IH0gfVxuICAuZm9vdGVyX19sZWdhbC1uYXZpZ2F0aW9uLWxpbms6aG92ZXIge1xuICAgIGNvbG9yOiAjMDA2NmExO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIC5kaCAuZm9vdGVyX19sZWdhbC1uYXZpZ2F0aW9uLWxpbmsge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiAxM3B4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAuZGggLmZvb3Rlcl9fbGVnYWwtbmF2aWdhdGlvbi1saW5rIHtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cblxuLmZvcm0sIC5mb3JtLS1ldmVudC1maWx0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmZvcm0tLWV2ZW50LWZpbHRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNkM2QzZDM7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfVxuICAuZm9ybV9faW5wdXQge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2QzZDNkMztcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgY29sb3I6ICM4YThhOGE7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGhlaWdodDogNTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5mb3JtX19zZWxlY3Qge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9hc3NldHMvaW1nL3NlbGVjdC1hcnJvdy5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYygxMDAlIC0gMTZweCkgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggI2QzZDNkMztcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiA1MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIHRleHQtb3ZlcmZsb3c6ICcnO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuZm9ybV9fc2VsZWN0OmhvdmVyIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gICAgICAuZm9ybV9fc2VsZWN0IHtcbiAgICAgICAgd2lkdGg6IDQwMHB4OyB9IH1cbiAgICAuZm9ybV9fc2VsZWN0IG9wdGlvbiB7XG4gICAgICBwYWRkaW5nOiAwIDE1cHg7IH1cblxuc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZGggLmZvcm0tLWZpbHRlcnMgZmllbGRzZXQge1xuICBtYXJnaW4tYm90dG9tOiAyNHB4OyB9XG5cbi5kaCAuZm9ybS0tZmlsdGVycyBsYWJlbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkM2QzZDM7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY29sb3I6ICM4YThhOGE7IH1cblxuLmRoIC5mb3JtLS1ib3gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlN2U4O1xuICBib3gtc2hhZG93OiAwIDAgNjBweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5kaCAuZm9ybS0tYm94IHtcbiAgICAgIGJvcmRlcjogMTJweCBzb2xpZCAjZmZmOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5kaCAuZm9ybS0tYm94IHtcbiAgICAgIGJvcmRlcjogMTVweCBzb2xpZCAjZmZmO1xuICAgICAgbWF4LXdpZHRoOiA4MDBweDsgfSB9XG4gIC5kaCAuZm9ybS0tYm94IGZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7IH1cblxuLmRoIC5mb3JtLS1maWx0ZXJzIGFzaWRlLFxuLmRoIC5mb3JtLS1ib3ggYXNpZGUge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuXG4uZGggLmZvcm0tLWZpbHRlcnMgaDQsXG4uZGggLmZvcm0tLWJveCBoNCB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMwMDY2YTE7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuXG4uZGggLmZvcm0tLWZpbHRlcnMgZmllbGRzZXQsXG4uZGggLmZvcm0tLWJveCBmaWVsZHNldCB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG4uZGggLmZvcm0tLWZpbHRlcnMgZm9ybSA+ICosXG4uZGggLmZvcm0tLWJveCBmb3JtID4gKiB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5kaCAuZm9ybS0tZmlsdGVycyBmb3JtID4gLmZpZWxkc2V0LS1tYXJnaW4tYm90dG9tLXNtLFxuICAuZGggLmZvcm0tLWJveCBmb3JtID4gLmZpZWxkc2V0LS1tYXJnaW4tYm90dG9tLXNtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAuOXJlbTsgfSB9XG5cbi5kaCAuZm9ybS0tZmlsdGVycyBmb3JtID4gKjpsYXN0LWNoaWxkLFxuLmRoIC5mb3JtLS1ib3ggZm9ybSA+ICo6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmRoIC5mb3JtLS1maWx0ZXJzIGlucHV0LFxuLmRoIC5mb3JtLS1maWx0ZXJzIHRleHRhcmVhLFxuLmRoIC5mb3JtLS1ib3ggaW5wdXQsXG4uZGggLmZvcm0tLWJveCB0ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgYm9yZGVyOiAwOyB9XG5cbi5kaCAuZm9ybS0tZmlsdGVycyBpbnB1dFt0eXBlPSd0ZXh0J10sIC5kaCAuZm9ybS0tZmlsdGVycyBpbnB1dFt0eXBlPSdudW1iZXInXSwgLmRoIC5mb3JtLS1maWx0ZXJzIGlucHV0W3R5cGU9J2VtYWlsJ10sXG4uZGggLmZvcm0tLWJveCBpbnB1dFt0eXBlPSd0ZXh0J10sXG4uZGggLmZvcm0tLWJveCBpbnB1dFt0eXBlPSdudW1iZXInXSxcbi5kaCAuZm9ybS0tYm94IGlucHV0W3R5cGU9J2VtYWlsJ10ge1xuICBoZWlnaHQ6IDU1cHg7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmRoIC5mb3JtLS1maWx0ZXJzIGlucHV0W3R5cGU9J3RleHQnXTo6cGxhY2Vob2xkZXIsIC5kaCAuZm9ybS0tZmlsdGVycyBpbnB1dFt0eXBlPSdudW1iZXInXTo6cGxhY2Vob2xkZXIsIC5kaCAuZm9ybS0tZmlsdGVycyBpbnB1dFt0eXBlPSdlbWFpbCddOjpwbGFjZWhvbGRlcixcbiAgLmRoIC5mb3JtLS1ib3ggaW5wdXRbdHlwZT0ndGV4dCddOjpwbGFjZWhvbGRlcixcbiAgLmRoIC5mb3JtLS1ib3ggaW5wdXRbdHlwZT0nbnVtYmVyJ106OnBsYWNlaG9sZGVyLFxuICAuZGggLmZvcm0tLWJveCBpbnB1dFt0eXBlPSdlbWFpbCddOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM5MjlhOWQ7IH1cblxuLmRoIC5mb3JtLS1maWx0ZXJzIGlucHV0W3R5cGU9J3JhZGlvJ10uaXMtaW52YWxpZC1pbnB1dCArIHNwYW4sIC5kaCAuZm9ybS0tZmlsdGVycyBpbnB1dFt0eXBlPSdjaGVja2JveCddLmlzLWludmFsaWQtaW5wdXQgKyBzcGFuLFxuLmRoIC5mb3JtLS1ib3ggaW5wdXRbdHlwZT0ncmFkaW8nXS5pcy1pbnZhbGlkLWlucHV0ICsgc3Bhbixcbi5kaCAuZm9ybS0tYm94IGlucHV0W3R5cGU9J2NoZWNrYm94J10uaXMtaW52YWxpZC1pbnB1dCArIHNwYW4ge1xuICBjb2xvcjogI2Q5NGIzZDsgfVxuXG4uZGggLmZvcm0tLWZpbHRlcnMgaW5wdXRbdHlwZT0ncmFkaW8nXTpob3ZlciwgLmRoIC5mb3JtLS1maWx0ZXJzIGlucHV0W3R5cGU9J2NoZWNrYm94J106aG92ZXIsXG4uZGggLmZvcm0tLWJveCBpbnB1dFt0eXBlPSdyYWRpbyddOmhvdmVyLFxuLmRoIC5mb3JtLS1ib3ggaW5wdXRbdHlwZT0nY2hlY2tib3gnXTpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4uZGggLmZvcm0tLWZpbHRlcnMgaW5wdXRbdHlwZT0nY2hlY2tib3gnXSxcbi5kaCAuZm9ybS0tYm94IGlucHV0W3R5cGU9J2NoZWNrYm94J10ge1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cblxuLmRoIC5mb3JtLS1maWx0ZXJzIHRleHRhcmVhLFxuLmRoIC5mb3JtLS1ib3ggdGV4dGFyZWEge1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5kaCAuZm9ybS0tZmlsdGVycyB0ZXh0YXJlYTo6cGxhY2Vob2xkZXIsXG4gIC5kaCAuZm9ybS0tYm94IHRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM5MjlhOWQ7IH1cblxuLmRoIC5mb3JtLS1maWx0ZXJzIC5mb3JtX190ZXh0YXJlYS13cmFwLFxuLmRoIC5mb3JtLS1ib3ggLmZvcm1fX3RleHRhcmVhLXdyYXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwYWRkaW5nLXRvcDogMjFweDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmRoIC5mb3JtLS1maWx0ZXJzIC5pbnB1dC1sYWJlbCxcbi5kaCAuZm9ybS0tYm94IC5pbnB1dC1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5kaCAuZm9ybS0tZmlsdGVycyAuaW5wdXQtbGFiZWwtLWlubGluZSxcbiAgLmRoIC5mb3JtLS1ib3ggLmlucHV0LWxhYmVsLS1pbmxpbmUge1xuICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbi1yaWdodDogMnJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmRoIC5mb3JtLS1maWx0ZXJzIC5pbnB1dC1sYWJlbC0taW5saW5lLFxuICAgICAgLmRoIC5mb3JtLS1ib3ggLmlucHV0LWxhYmVsLS1pbmxpbmUge1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5kaCAuZm9ybS0tZmlsdGVycyAuaW5wdXQtbGFiZWwtLWlubGluZSxcbiAgICAgIC5kaCAuZm9ybS0tYm94IC5pbnB1dC1sYWJlbC0taW5saW5lIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIGhlaWdodDogMTZweDsgfSB9XG4gICAgLmRoIC5mb3JtLS1maWx0ZXJzIC5pbnB1dC1sYWJlbC0taW5saW5lIGlucHV0W3R5cGU9J3JhZGlvJ10sXG4gICAgLmRoIC5mb3JtLS1ib3ggLmlucHV0LWxhYmVsLS1pbmxpbmUgaW5wdXRbdHlwZT0ncmFkaW8nXSB7XG4gICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICBtYXJnaW46IDAgMTBweCAwIDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICAgIHdpZHRoOiAxM3B4OyB9XG4gIC5kaCAuZm9ybS0tZmlsdGVycyAuaW5wdXQtbGFiZWwtLWJsb2NrICsgLmlucHV0LWxhYmVsLS1ibG9jayxcbiAgLmRoIC5mb3JtLS1ib3ggLmlucHV0LWxhYmVsLS1ibG9jayArIC5pbnB1dC1sYWJlbC0tYmxvY2sge1xuICAgIG1hcmdpbi10b3A6IC4yNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmRoIC5mb3JtLS1maWx0ZXJzIC5pbnB1dC1sYWJlbC0tc2hvcnQsXG4gICAgLmRoIC5mb3JtLS1ib3ggLmlucHV0LWxhYmVsLS1zaG9ydCB7XG4gICAgICB3aWR0aDogMTc1cHg7IH0gfVxuICAuZGggLmZvcm0tLWZpbHRlcnMgLmlucHV0LWxhYmVsLS1jaGVja2JveCxcbiAgLmRoIC5mb3JtLS1ib3ggLmlucHV0LWxhYmVsLS1jaGVja2JveCB7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAgIC5kaCAuZm9ybS0tZmlsdGVycyAuaW5wdXQtbGFiZWwtLWNoZWNrYm94IGlucHV0LFxuICAgIC5kaCAuZm9ybS0tYm94IC5pbnB1dC1sYWJlbC0tY2hlY2tib3ggaW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAzcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5kaCAuZm9ybS0tZmlsdGVycyAuaW5wdXQtbGFiZWwtLWNoZWNrYm94LFxuICAgICAgLmRoIC5mb3JtLS1ib3ggLmlucHV0LWxhYmVsLS1jaGVja2JveCB7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMDsgfSB9XG4gIC5kaCAuZm9ybS0tZmlsdGVycyAuaW5wdXQtbGFiZWwtLXBsYWNlaG9sZGVyIHNwYW4sXG4gIC5kaCAuZm9ybS0tYm94IC5pbnB1dC1sYWJlbC0tcGxhY2Vob2xkZXIgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHRvcDogMTZweDsgfVxuICAuZGggLmZvcm0tLWZpbHRlcnMgLmlucHV0LWxhYmVsLS1wbGFjZWhvbGRlciB0ZXh0YXJlYSxcbiAgLmRoIC5mb3JtLS1ib3ggLmlucHV0LWxhYmVsLS1wbGFjZWhvbGRlciB0ZXh0YXJlYSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBwYWRkaW5nLXRvcDogN3B4OyB9XG5cbi5kaCAuZm9ybS0tZmlsdGVycyAuaW5wdXQtbGFiZWwtLXBsYWNlaG9sZGVyLFxuLmRoIC5mb3JtLS1ib3ggLmlucHV0LWxhYmVsLS1wbGFjZWhvbGRlcixcbi5kaCAuc2VhcmNoLWJveCAuaW5wdXQtbGFiZWwtLXBsYWNlaG9sZGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZGggLmZvcm0tLWZpbHRlcnMgLmlucHV0LWxhYmVsLS1wbGFjZWhvbGRlciBzcGFuLFxuICAuZGggLmZvcm0tLWJveCAuaW5wdXQtbGFiZWwtLXBsYWNlaG9sZGVyIHNwYW4sXG4gIC5kaCAuc2VhcmNoLWJveCAuaW5wdXQtbGFiZWwtLXBsYWNlaG9sZGVyIHNwYW4ge1xuICAgIGNvbG9yOiAjOTI5YTlkO1xuICAgIGxlZnQ6IDIwcHg7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zaXRpb246IGxlZnQgLjJzIGVhc2UsIHRvcCAuMnMgZWFzZSwgZm9udC1zaXplIC4ycyBlYXNlOyB9XG4gIC5kaCAuZm9ybS0tZmlsdGVycyAuaW5wdXQtbGFiZWwtLXBsYWNlaG9sZGVyIGlucHV0LFxuICAuZGggLmZvcm0tLWZpbHRlcnMgLmlucHV0LWxhYmVsLS1wbGFjZWhvbGRlciB0ZXh0YXJlYSxcbiAgLmRoIC5mb3JtLS1ib3ggLmlucHV0LWxhYmVsLS1wbGFjZWhvbGRlciBpbnB1dCxcbiAgLmRoIC5mb3JtLS1ib3ggLmlucHV0LWxhYmVsLS1wbGFjZWhvbGRlciB0ZXh0YXJlYSxcbiAgLmRoIC5zZWFyY2gtYm94IC5pbnB1dC1sYWJlbC0tcGxhY2Vob2xkZXIgaW5wdXQsXG4gIC5kaCAuc2VhcmNoLWJveCAuaW5wdXQtbGFiZWwtLXBsYWNlaG9sZGVyIHRleHRhcmVhIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgLmRoIC5mb3JtLS1maWx0ZXJzIC5pbnB1dC1sYWJlbC0tcGxhY2Vob2xkZXIgaW5wdXQsXG4gIC5kaCAuZm9ybS0tYm94IC5pbnB1dC1sYWJlbC0tcGxhY2Vob2xkZXIgaW5wdXQsXG4gIC5kaCAuc2VhcmNoLWJveCAuaW5wdXQtbGFiZWwtLXBsYWNlaG9sZGVyIGlucHV0IHtcbiAgICBwYWRkaW5nLXRvcDogN3B4OyB9XG4gIC5kaCAuZm9ybS0tZmlsdGVycyAuaW5wdXQtbGFiZWwtLXBsYWNlaG9sZGVyLmlzLWFjdGl2ZSBzcGFuLFxuICAuZGggLmZvcm0tLWJveCAuaW5wdXQtbGFiZWwtLXBsYWNlaG9sZGVyLmlzLWFjdGl2ZSBzcGFuLFxuICAuZGggLnNlYXJjaC1ib3ggLmlucHV0LWxhYmVsLS1wbGFjZWhvbGRlci5pcy1hY3RpdmUgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGxlZnQ6IDVweDtcbiAgICB0b3A6IDVweDsgfVxuICAuZGggLmZvcm0tLWZpbHRlcnMgLmlucHV0LWxhYmVsLS1wbGFjZWhvbGRlci5pcy1hY3RpdmUgLmZvcm1fX2FzdGVyaXNrLFxuICAuZGggLmZvcm0tLWJveCAuaW5wdXQtbGFiZWwtLXBsYWNlaG9sZGVyLmlzLWFjdGl2ZSAuZm9ybV9fYXN0ZXJpc2ssXG4gIC5kaCAuc2VhcmNoLWJveCAuaW5wdXQtbGFiZWwtLXBsYWNlaG9sZGVyLmlzLWFjdGl2ZSAuZm9ybV9fYXN0ZXJpc2sge1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC5kaCAuZm9ybS0tZmlsdGVycyAuaW5wdXQtbGFiZWwtLXBsYWNlaG9sZGVyLmlucHV0LWxhYmVsLS1pY29uLXNlYXJjaCBzcGFuLFxuICAuZGggLmZvcm0tLWJveCAuaW5wdXQtbGFiZWwtLXBsYWNlaG9sZGVyLmlucHV0LWxhYmVsLS1pY29uLXNlYXJjaCBzcGFuLFxuICAuZGggLnNlYXJjaC1ib3ggLmlucHV0LWxhYmVsLS1wbGFjZWhvbGRlci5pbnB1dC1sYWJlbC0taWNvbi1zZWFyY2ggc3BhbiB7XG4gICAgbGVmdDogNDVweDsgfVxuICAuZGggLmZvcm0tLWZpbHRlcnMgLmlucHV0LWxhYmVsLS1wbGFjZWhvbGRlci5pbnB1dC1sYWJlbC0taWNvbi1zZWFyY2ggaW5wdXQsXG4gIC5kaCAuZm9ybS0tYm94IC5pbnB1dC1sYWJlbC0tcGxhY2Vob2xkZXIuaW5wdXQtbGFiZWwtLWljb24tc2VhcmNoIGlucHV0LFxuICAuZGggLnNlYXJjaC1ib3ggLmlucHV0LWxhYmVsLS1wbGFjZWhvbGRlci5pbnB1dC1sYWJlbC0taWNvbi1zZWFyY2ggaW5wdXQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1zZWFyY2gtZmxhdC1ibGFjay5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTVweCBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE3cHggMTdweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDQ1cHg7IH1cblxuLmRoIC5zZWFyY2gtYm94IC5pbnB1dC1sYWJlbC0tcGxhY2Vob2xkZXIgc3BhbiB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgdG9wOiAxMnB4OyB9XG5cbi5kaCAuZm9ybV9fYXN0ZXJpc2sge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjYjcwMDAwO1xuICBmb250LXNpemU6IDE2cHg7XG4gIG1hcmdpbjogMCAuMWVtO1xuICBvcGFjaXR5OiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLjAyZW07XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgLjJzIGVhc2UsIGZvbnQtc2l6ZSAuMnMgZWFzZTsgfVxuXG4uZGggLmZvcm0tZXJyb3Ige1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkOTRiM2Q7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBub25lO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBhZGRpbmc6IDVweCAxMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5kaCAuZm9ybS1lcnJvci5pcy12aXNpYmxlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5zZWFyY2gtYm94IC5kaCAuZm9ybS1lcnJvci5pcy12aXNpYmxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5kaCAuZm9ybV9faW5uZXIge1xuICAgIHBhZGRpbmc6IDE1cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5kaCAuZm9ybV9faW5uZXIge1xuICAgIHBhZGRpbmc6IDMwcHg7IH0gfVxuXG4uZGggLmJ0bi5mb3JtX19zdWJtaXQtYnRuIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmctbGVmdDogNTBweDtcbiAgcGFkZGluZy1yaWdodDogNTBweDsgfVxuXG4uZm9ybV9fZGlzY2xhaW1lci5pcy1jb2xsYXBzZWQgLmZvcm1fX2Rpc2NsYWltZXItdG9nZ2xlOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9hc3NldHMvaW1nL3N2Zy9pY29uLXBsdXMuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEycHggMTJweDsgfVxuXG4uZm9ybV9fZGlzY2xhaW1lci5pcy1jb2xsYXBzZWQgLmZvcm1fX2Rpc2NsYWltZXItY29udGVudC1jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5mb3JtX19kaXNjbGFpbWVyLmlzLWV4cGFuZGVkIC5mb3JtX19kaXNjbGFpbWVyLXRvZ2dsZTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvYXNzZXRzL2ltZy9zdmcvaWNvbi1taW51cy5zdmdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogMTJweCAzcHg7IH1cblxuLmZvcm1fX2Rpc2NsYWltZXIuaXMtZXhwYW5kZWQgLmZvcm1fX2Rpc2NsYWltZXItY29udGVudC1jb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uZm9ybV9fZGlzY2xhaW1lci1oZWFkaW5nLWNvbnRhaW5lciB7XG4gIG1hcmdpbi1ib3R0b206IDhweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZvcm1fX2Rpc2NsYWltZXItaGVhZGluZy1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG5cbi5mb3JtX19kaXNjbGFpbWVyLXRvZ2dsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxM3B4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZm9ybV9fZGlzY2xhaW1lci10b2dnbGU6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDMwcHg7IH1cbiAgLmZvcm1fX2Rpc2NsYWltZXItdG9nZ2xlOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuLmZvcm1fX2Rpc2NsYWltZXItdGV4dCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi5oYW1idXJnZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAyMHB4O1xuICB0b3A6IDEzcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogOHB4IDRweDtcbiAgdHJhbnNpdGlvbjogZmlsdGVyIDIwMG1zIGxpbmVhcjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oYW1idXJnZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5oYW1idXJnZXJfX291dGVyIHtcbiAgICBoZWlnaHQ6IDE3cHg7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaGFtYnVyZ2VyX19pbm5lciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogNnB4OyB9XG4gICAgLmlzLW9wZW4gLmhhbWJ1cmdlcl9faW5uZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxcHgsIDApIHJvdGF0ZSg0NWRlZyk7IH1cbiAgICAuaGFtYnVyZ2VyX19pbm5lciwgLmhhbWJ1cmdlcl9faW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlcl9faW5uZXI6OmFmdGVyIHtcbiAgICAgIGhlaWdodDogM3B4O1xuICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjk4ZDI5O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDIwMG1zIGVhc2UsIHdpZHRoIDIwMG1zIGVhc2U7IH1cbiAgICAgIC5pcy1vcGVuIC5oYW1idXJnZXJfX2lubmVyLCAuaXMtb3BlbiAuaGFtYnVyZ2VyX19pbm5lcjo6YmVmb3JlLCAuaXMtb3BlbiAuaGFtYnVyZ2VyX19pbm5lcjo6YWZ0ZXIge1xuICAgICAgICB3aWR0aDogMjRweDsgfVxuICAgIC5oYW1idXJnZXJfX2lubmVyOjpiZWZvcmUsIC5oYW1idXJnZXJfX2lubmVyOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmhhbWJ1cmdlcl9faW5uZXI6OmJlZm9yZSB7XG4gICAgICB0b3A6IC03cHg7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMjAwbXMgZWFzZTsgfVxuICAgICAgLmlzLW9wZW4gLmhhbWJ1cmdlcl9faW5uZXI6OmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlM2QoLTMuNDI4NTdweCwgLTRweCwgMCk7IH1cbiAgICAuaGFtYnVyZ2VyX19pbm5lcjo6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAtN3B4OyB9XG4gICAgICAuaXMtb3BlbiAuaGFtYnVyZ2VyX19pbm5lcjo6YWZ0ZXIge1xuICAgICAgICB0b3A6IDE0cHg7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE0cHgsIDApIHJvdGF0ZSgtOTBkZWcpOyB9XG5cbi5kaCAuaGVhZGVyIHtcbiAgYm94LXNoYWRvdzogMCAwIDEycHggMnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyMDA7IH1cblxuLmhlYWRlcl9fbWFpbiB7XG4gIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogNjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlYWRlcl9fbWFpbiB7XG4gICAgICBoZWlnaHQ6IDEwMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5oZWFkZXJfX2JyYW5kaW5nIHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oZWFkZXJfX2JyYW5kaW5nIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oZWFkZXJfX2JyYW5kaW5nIHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlYWRlcl9fYnJhbmRpbmcge1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5oZWFkZXJfX2hvbWUtbGluayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGVhZGVyX19ob21lLWxpbmsge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlYWRlcl9fbG9nbywgLmhlYWRlcl9fdXJnZW50LWNhcmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuaGVhZGVyX19sb2dvIHtcbiAgICBvcmRlcjogMjtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgd2lkdGg6IDEwMnB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlYWRlcl9fbG9nbyB7XG4gICAgaGVpZ2h0OiA1MnB4O1xuICAgIHdpZHRoOiAzMThweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuaGVhZGVyX191cmdlbnQtY2FyZSB7XG4gICAgb3JkZXI6IDE7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlYWRlcl9fdXJnZW50LWNhcmUge1xuICAgIG1heC13aWR0aDogNTM1cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmhlYWRlcl9faGVhcnQtdmFzY3VsYXIge1xuICAgIG9yZGVyOiAxO1xuICAgIG1hcmdpbi1ib3R0b206IDJweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oZWFkZXJfX2hlYXJ0LXZhc2N1bGFyIHtcbiAgICBtYXgtd2lkdGg6IDMwMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5oZWFkZXJfX3dlbGNvbWUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGVhZGVyX193ZWxjb21lIHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjclO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjclO1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMwMDY2YTE7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIHBhZGRpbmctdG9wOiA4cHg7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaGVhZGVyX193ZWxjb21lIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG5cbi5oZWFkZXJfX3dlbGNvbWUtbGluayB7XG4gIGNvbG9yOiAjZjk4ZDI5OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuaGVhZGVyX19kaCB7XG4gICAgb3JkZXI6IDE7XG4gICAgaGVpZ2h0OiAzM3B4O1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGVhZGVyX19kaCB7XG4gICAgaGVpZ2h0OiA1OXB4O1xuICAgIHdpZHRoOiAzNTVweDtcbiAgICBtYXgtd2lkdGg6IDM1NXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4OyB9IH1cblxuLmhlcm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDI3MHB4OyB9XG4gIC5oZXJvLS1zbGlkZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuaGVyb1xcLS1zbGlkZXIgLmhlcm9fX2NvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5oZXJvXFwtLXNsaWRlciAuaGVyb19fY29udGFpbmVyIHtcbiAgICAgICAgbWF4LWhlaWdodDogNjQwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuaGVyb19fc2hhcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlcm9fX3NoYXJlIHtcbiAgICAgIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxMDA7IH1cbiAgICAgIC5oZXJvX19zaGFyZTo6YWZ0ZXIsIC5oZXJvX19zaGFyZTo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgICAuaGVyb19fc2hhcmU6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICAuaGVyby0tY2xlYXIsIC5oZXJvLS1iYW5uZXIge1xuICAgIGJhY2tncm91bmQ6ICMxYzNlNmI7XG4gICAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQoNDVkZWcsICMxYzNlNmIgMCUsICMxMzZiYTkgMTAwJSk7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoNDVkZWcsICMxYzNlNmIgMCUsICMxMzZiYTkgMTAwJSk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjMWMzZTZiIDAlLCAjMTM2YmE5IDEwMCUpO1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMWMzZTZiJywgZW5kQ29sb3JzdHI9JyMxMzZiYTknLEdyYWRpZW50VHlwZT0xICk7IH1cbiAgLmhlcm8tLWJhbm5lciB7XG4gICAgYmFja2dyb3VuZDogIzA0MmU1NTtcbiAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCg0NWRlZywgIzA0MmU1NSAwJSwgIzViOTFiOSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCg0NWRlZywgIzA0MmU1NSAwJSwgIzViOTFiOSAxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICMwNDJlNTUgMCUsICM1YjkxYjkgMTAwJSk7XG4gICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMwNDJlNTUnLCBlbmRDb2xvcnN0cj0nIzViOTFiOScsR3JhZGllbnRUeXBlPTEgKTtcbiAgICBoZWlnaHQ6IDE3MnB4O1xuICAgIG1pbi1oZWlnaHQ6IDE3MnB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQ5cHgpIHtcbiAgICAgIC5oZXJvLS1iYW5uZXIge1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQ5cHgpIHtcbiAgICAgIC5oZXJvLS1iYW5uZXIgLmhlcm9fX3dyYXBwZXIsXG4gICAgICAuaGVyby0tYmFubmVyIC5oZXJvX19jb250YWluZXIsXG4gICAgICAuaGVyby0tYmFubmVyIC5oZXJvX19jb250ZW50LFxuICAgICAgLmhlcm8tLWJhbm5lciAuaGVyb19fc2xpZGUsXG4gICAgICAuaGVyby0tYmFubmVyIC5oZXJvX19iZy1pbWFnZS1jb250YWluZXIsXG4gICAgICAuaGVyby0tYmFubmVyIC5oZXJvX19iZy1pbWFnZSB7XG4gICAgICAgIGhlaWdodDogMTAwcHggIWltcG9ydGFudDtcbiAgICAgICAgbWluLWhlaWdodDogMTAwcHggIWltcG9ydGFudDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzUwcHgpIHtcbiAgICAgIC5oZXJvLS1iYW5uZXIgLmhlcm9fX3dyYXBwZXIsXG4gICAgICAuaGVyby0tYmFubmVyIC5oZXJvX19jb250YWluZXIsXG4gICAgICAuaGVyby0tYmFubmVyIC5oZXJvX19jb250ZW50LFxuICAgICAgLmhlcm8tLWJhbm5lciAuaGVyb19fc2xpZGUsXG4gICAgICAuaGVyby0tYmFubmVyIC5oZXJvX19iZy1pbWFnZS1jb250YWluZXIsXG4gICAgICAuaGVyby0tYmFubmVyIC5oZXJvX19iZy1pbWFnZSB7XG4gICAgICAgIGhlaWdodDogMTcycHggIWltcG9ydGFudDtcbiAgICAgICAgbWluLWhlaWdodDogMTcycHggIWltcG9ydGFudDsgfSB9XG4gICAgLmhlcm8tLWJhbm5lciAuaGVyb19fY29udGVudCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5oZXJvLS1iYW5uZXIgLmhlcm9fX2NvbnRlbnQ6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9hc3NldHMvaW1nL3N2Zy9iYW5uZXItY2hlY2suc3ZnXCIpO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgaGVpZ2h0OiAzODVweDtcbiAgICAgICAgb3BhY2l0eTogLjA1O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IC04MHB4O1xuICAgICAgICB3aWR0aDogNDkzcHg7IH1cbiAgLmhlcm9fX3NsaWRlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIC5oZXJvX19zbGlkZS5uby1tb3Rpb251aS5pcy1hY3RpdmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDsgfVxuICAuaGVyb19fd3JhcHBlciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiAzNTNweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaGVyb19fd3JhcHBlciB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47IH0gfVxuICAgICNtYWluIC5oZXJvX193cmFwcGVyIHtcbiAgICAgIGhlaWdodDogMzUzcHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICNtYWluIC5oZXJvX193cmFwcGVyIHtcbiAgICAgICAgICBoZWlnaHQ6IDQ2MnB4OyB9XG4gICAgICAgICAgI21haW4gLmhlcm9fX3dyYXBwZXIgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICAgICAgbGVmdDogNTAlOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgIC5oZXJvXFwtLWNsZWFyIC5oZXJvX193cmFwcGVyIHtcbiAgICAgICAgaGVpZ2h0OiAzNTNweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5oZXJvXFwtLWNsZWFyIC5oZXJvX193cmFwcGVyIHtcbiAgICAgICAgaGVpZ2h0OiAyNzBweDtcbiAgICAgICAgbWF4LWhlaWdodDogMjcwcHg7IH0gfVxuICAuaGVyb19faW1hZ2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAuaGVyb1xcLS13aWRlIC5oZXJvX19pbWFnZSB7XG4gICAgICBmb250LWZhbWlseTogJ29iamVjdC1maXQ6IGNvdmVyOyc7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgIC5oZXJvXFwtLXdpZGUgLmhlcm9fX2ltYWdlIHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWluLWhlaWdodDogMzUzcHg7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmhlcm9cXC0td2lkZSAuaGVyb19faW1hZ2Uge1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDI3MHB4O1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDMyMHB4OyB9IH1cbiAgICAuaGVyb1xcLS1jbGVhciAuaGVyb19faW1hZ2Uge1xuICAgICAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiBjb3ZlcjsnO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgIC5oZXJvXFwtLWNsZWFyIC5oZXJvX19pbWFnZSB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5oZXJvXFwtLWNsZWFyIC5oZXJvX19pbWFnZSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDUlO1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDMyMHB4OyB9IH1cbiAgLmhlcm9fX2JnLWltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmhlcm9fX2JnLWltYWdlLS1zbSB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0OXB4KSB7XG4gICAgICAgIC5oZXJvX19iZy1pbWFnZS0tc20ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAuaGVyb19fYmctaW1hZ2UtLW1kIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQ7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkgYW5kIChtaW4td2lkdGg6IDc1MHB4KSB7XG4gICAgICAgIC5oZXJvX19iZy1pbWFnZS0tbWQge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICAuaGVyb19fYmctaW1hZ2UtLWxnIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gICAgICAgIC5oZXJvX19iZy1pbWFnZS0tbGcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLmhlcm9fX2NvbnRlbnQge1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAuaGVyb19fY29udGVudCB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAwOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmhlcm9fX2NvbnRlbnQge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAuaGVyb19fY29udGVudC1vdXRlciB7XG4gICAgbWF4LXdpZHRoOiA3My42MjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmhlcm9cXC0tbmFycm93IC5oZXJvX19jb250ZW50LW91dGVyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNTdweCk7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmhlcm9fX2NvbnRlbnQtaW5uZXIge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaGVyb19fY29udGVudC1pbm5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5oZXJvXFwtLW5hcnJvdyAuaGVyb19fY29udGVudC1pbm5lciB7XG4gICAgICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICAgICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTtcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7IH1cbiAgICAuaGVyb1xcLS13aWRlIC5oZXJvX19jb250ZW50LWlubmVyLCAuaGVyb1xcLS1jbGVhciAuaGVyb19fY29udGVudC1pbm5lciB7XG4gICAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgICAgbWF4LXdpZHRoOiA5MS42NjY2NyU7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgICAgbWF4LXdpZHRoOiA5MS42NjY2NyU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaGVyb1xcLS13aWRlIC5oZXJvX19jb250ZW50LWlubmVyLCAuaGVyb1xcLS1jbGVhciAuaGVyb19fY29udGVudC1pbm5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oZXJvXFwtLW5hcnJvdyAuaGVyb19fY29udGVudC1pbm5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4OyB9XG4gICAgLmhlcm9cXC0td2lkZSAuaGVyb19fY29udGVudC1pbm5lciwgLmhlcm9cXC0tY2xlYXIgLmhlcm9fX2NvbnRlbnQtaW5uZXIge1xuICAgICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICAgIG1heC13aWR0aDogNjYuNjY2NjclO1xuICAgICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlcm9cXC0td2lkZSAuaGVyb19fY29udGVudC1pbm5lciwgLmhlcm9cXC0tY2xlYXIgLmhlcm9fX2NvbnRlbnQtaW5uZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5oZXJvXFwtLW5hcnJvdyAuaGVyb19fY29udGVudC1pbm5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4OyB9XG4gICAgLmhlcm9cXC0td2lkZSAuaGVyb19fY29udGVudC1pbm5lciwgLmhlcm9cXC0tY2xlYXIgLmhlcm9fX2NvbnRlbnQtaW5uZXIge1xuICAgICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICAgIG1heC13aWR0aDogNTguMzMzMzMlO1xuICAgICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaGVyb1xcLS13aWRlIC5oZXJvX19jb250ZW50LWlubmVyLCAuaGVyb1xcLS1jbGVhciAuaGVyb19fY29udGVudC1pbm5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5oZXJvX19jb250ZW50LWlubmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxOHB4OyB9IH1cbiAgLmRoIC5oZXJvX19jb250ZW50LWlubmVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgIC5kaCAuaGVyb19fY29udGVudC1pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAuZGggLmhlcm9fX2NvbnRlbnQtaW5uZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNTBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAuZGggLmhlcm9fX2NvbnRlbnQtaW5uZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSBhbmQgKG1pbi13aWR0aDogNzUwcHgpIHtcbiAgICAgIC5kaCAuaGVyb19fY29udGVudC1pbm5lciB7XG4gICAgICAgIGZsZXg6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMzUwcHggIWltcG9ydGFudDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmRoIC5oZXJvX19jb250ZW50LWlubmVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5oZXJvLS1iYW5uZXIgLmhlcm9fX2NvbnRlbnQtaW5uZXIge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaGVyby0tYmFubmVyIC5oZXJvX19jb250ZW50LWlubmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDYwJSAhaW1wb3J0YW50OyB9IH1cbiAgLmhlcm9fX3RpdGxlIHtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC5oZXJvXFwtLXdpZGUgLmhlcm9fX3RpdGxlLCAuaGVyb1xcLS1jbGVhciAuaGVyb19fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAzOHB4OyB9XG4gICAgLmhlcm9cXC0tbmFycm93IC5oZXJvX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDM2cHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC5oZXJvXFwtLW5hcnJvdyAuaGVyb19fdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogNDhweDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAgIC5oZXJvXFwtLW5hcnJvdyAuaGVyb19fdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogNDRweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgICAgICAgLmhlcm9cXC0tbmFycm93IC5oZXJvX190aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiA0MHB4OyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmhlcm9cXC0tbmFycm93IC5oZXJvX190aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiA1NHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgIC5kaCAuaGVyb19fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5kaCAuaGVyb19fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5kaCAuaGVyb19fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDM0cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmhlcm8tLWJhbm5lciAuaGVyb19fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgLmhlcm9fX2hpbGl0ZSB7XG4gICAgY29sb3I6ICM5NGQ2MGE7IH1cbiAgLmhlcm9fX3N1YmhlYWRpbmcge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgICAgIC5oZXJvX19zdWJoZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4OyB9XG4gICAgICAgIC5oZXJvXFwtLXNsaWRlciAuaGVyb19fc3ViaGVhZGluZyB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmhlcm9fX3N1YmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuICAgIC5kaCAuaGVyb19fc3ViaGVhZGluZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjZlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgIC5kaCAuaGVyb19fc3ViaGVhZGluZyB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgICAgLmRoIC5oZXJvX19zdWJoZWFkaW5nIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuZGggLmhlcm9fX3N1YmhlYWRpbmcge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDsgfSB9XG4gIC5oZXJvX19zZXJ2aWNlLWxpbmUge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICAgICAuaGVyb19fc2VydmljZS1saW5lIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4OyB9XG4gICAgICAgIC5oZXJvXFwtLXNsaWRlciAuaGVyb19fc2VydmljZS1saW5lIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuaGVyb19fc2VydmljZS1saW5lIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4OyB9IH1cbiAgLmhlcm9fX2Rlc2NyaXB0aW9uIHtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAuaGVyb19fZGVzY3JpcHRpb24ge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yOyB9IH1cbiAgICAuaGVyb19fZGVzY3JpcHRpb24gYTpub3QoLmJ0bik6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmhlcm9fX2J1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMTZweDsgfVxuICAgIC5kaCAuaGVyb19fYnV0dG9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0OXB4KSB7XG4gICAgICAgIC5kaCAuaGVyb19fYnV0dG9uIC5idG4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS42ZW07XG4gICAgICAgICAgcGFkZGluZzogMTNweCAxOHB4O1xuICAgICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgLmhlcm9fX25hdmlnYXRpb24ge1xuICAgIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHotaW5kZXg6IDEwMDsgfVxuICAgIC5oZXJvX19uYXZpZ2F0aW9uOjphZnRlciwgLmhlcm9fX25hdmlnYXRpb246OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgLmhlcm9fX25hdmlnYXRpb246OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQ5cHgpIHtcbiAgICAgIC5kaCAuaGVyb19fbmF2aWdhdGlvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBpbmhlcml0ICFpbXBvcnRhbnQ7IH0gfVxuICAuaGVyb19fbmF2aWdhdGlvbi1jb250YWluZXIge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBwYWRkaW5nOiAwIDMzcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLmhlcm9fX25hdmlnYXRpb24tY29udGFpbmVyIHtcbiAgICAgICAgYm90dG9tOiAyNXB4O1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTA1cHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuaGVyb19fbmF2aWdhdGlvbi1jb250YWluZXIge1xuICAgICAgICBib3R0b206IDI1cHg7XG4gICAgICAgIGxlZnQ6IDEwcHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaGVyb19fbmF2aWdhdGlvbi1jb250YWluZXIge1xuICAgICAgICBib3R0b206IDI1cHg7XG4gICAgICAgIGxlZnQ6IDEwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5oZXJvX19uYXZpZ2F0aW9uLWNvbnRhaW5lciB7XG4gICAgICAgIGJvdHRvbTogMzBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQ5cHgpIHtcbiAgICAgIC5kaCAuaGVyb19fbmF2aWdhdGlvbi1jb250YWluZXIge1xuICAgICAgICBib3R0b206IDI1cHg7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMDVweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSBhbmQgKG1pbi13aWR0aDogNzUwcHgpIHtcbiAgICAgIC5kaCAuaGVyb19fbmF2aWdhdGlvbi1jb250YWluZXIge1xuICAgICAgICBsZWZ0OiAyMHB4OyB9IH1cbiAgLmhlcm9fX25leHQsIC5oZXJvX19wcmV2aW91cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRvcDogN3B4O1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuaGVyb19fbmV4dCwgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5oZXJvX19wcmV2aW91cyB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gICAgLmhlcm9fX25leHQ6aG92ZXIsIC5oZXJvX19uZXh0OmFjdGl2ZSwgLmhlcm9fX25leHQ6Zm9jdXMsIC5oZXJvX19wcmV2aW91czpob3ZlciwgLmhlcm9fX3ByZXZpb3VzOmFjdGl2ZSwgLmhlcm9fX3ByZXZpb3VzOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTsgfVxuICAgIC5oZXJvX19uZXh0OmhvdmVyLCAuaGVyb19fcHJldmlvdXM6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmhlcm9fX25leHQge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gICAgcmlnaHQ6IDEzcHg7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpOyB9XG4gIC5oZXJvX19wcmV2aW91cyB7XG4gICAgbGVmdDogMDtcbiAgICBsZWZ0OiAxM3B4OyB9XG4gIC5oZXJvX19hcnJvdyB7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLmhlcm9fX25leHQ6aG92ZXIgLmhlcm9fX2Fycm93LFxuICAgIC5oZXJvX19wcmV2aW91czpob3ZlciAuaGVyb19fYXJyb3cge1xuICAgICAgY29sb3I6ICMyNmEzZGM7IH1cbiAgLmhlcm9fX2RvdHMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiAwLjhyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuaGVyb19fZG90cyB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gICAgLmhlcm9fX2RvdHMgYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxLjJyZW07XG4gICAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICAgIG1hcmdpbjogMC4xcmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NhY2FjYTsgfVxuICAgICAgLmhlcm9fX2RvdHMgYnV0dG9uOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzhhOGE4YTsgfVxuICAgICAgLmhlcm9fX2RvdHMgYnV0dG9uLmlzLWFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4YThhOGE7IH1cbiAgICAuaGVyb19fZG90cyBidXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5OGQyOTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICAgIG1hcmdpbjogMTFweCAxMnB4O1xuICAgICAgd2lkdGg6IDEwcHg7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5oZXJvX19kb3RzIGJ1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfSB9XG4gICAgICAuaGVyb19fZG90cyBidXR0b24uaXMtYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI2YTNkYztcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgfVxuICAgICAgLmhlcm9fX2RvdHMgYnV0dG9uOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI2YTNkYzsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0OXB4KSB7XG4gICAgICAuZGggLmhlcm9fX2RvdHMgYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luOiAxMXB4IDEycHg7IH0gfVxuXG4uZGggLmhlcm8tLWJhbm5lciAuaGVyb19fc2hhcmUgKyAuaGVyb19fd3JhcHBlcixcbi5kaCAuaGVyby0tY2xlYXIgLmhlcm9fX3NoYXJlICsgLmhlcm9fX3dyYXBwZXIge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NDlweCkge1xuICAuaGVyby0tY2Fyb3VzZWwgLmhlcm9fX2NvbnRhaW5lcixcbiAgLmhlcm8tLWNhcm91c2VsIC5oZXJvX19jb250ZW50LFxuICAuaGVyby0tY2Fyb3VzZWwgLmhlcm9fX3NsaWRlLFxuICAuaGVyby0tY2Fyb3VzZWwgLmhlcm9fX2JnLWltYWdlLWNvbnRhaW5lcixcbiAgLmhlcm8tLWNhcm91c2VsIC5oZXJvX19iZy1pbWFnZSB7XG4gICAgbWluLWhlaWdodDogNTAwcHggIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkgYW5kIChtaW4td2lkdGg6IDc1MHB4KSB7XG4gIC5oZXJvLS1jYXJvdXNlbCAuaGVyb19fY29udGFpbmVyLFxuICAuaGVyby0tY2Fyb3VzZWwgLmhlcm9fX2NvbnRlbnQsXG4gIC5oZXJvLS1jYXJvdXNlbCAuaGVyb19fc2xpZGUsXG4gIC5oZXJvLS1jYXJvdXNlbCAuaGVyb19fYmctaW1hZ2UtY29udGFpbmVyLFxuICAuaGVyby0tY2Fyb3VzZWwgLmhlcm9fX2JnLWltYWdlIHtcbiAgICBtaW4taGVpZ2h0OiA1MDBweCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNXB4KSB7XG4gIC5oZXJvLS1jYXJvdXNlbCAuaGVyb19fY29udGFpbmVyLFxuICAuaGVyby0tY2Fyb3VzZWwgLmhlcm9fX2NvbnRlbnQsXG4gIC5oZXJvLS1jYXJvdXNlbCAuaGVyb19fc2xpZGUsXG4gIC5oZXJvLS1jYXJvdXNlbCAuaGVyb19fYmctaW1hZ2UtY29udGFpbmVyLFxuICAuaGVyby0tY2Fyb3VzZWwgLmhlcm9fX2JnLWltYWdlIHtcbiAgICBtaW4taGVpZ2h0OiA2MDBweCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmhlcm8tLWNhcm91c2VsLS1zbGlkZXIgLmhlcm8tLWNhcm91c2VsIC5oZXJvX19jb250YWluZXIge1xuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50OyB9IH1cblxuLmhlcm8tLWNhcm91c2VsIC5oZXJvX19zbGlkZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LWhlaWdodDogNjQwcHg7IH1cblxuLmhlcm8tLWNhcm91c2VsIC5oZXJvX19iZy1pbWFnZS1jb250YWluZXIge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDsgfVxuXG4uaGVyby0tY2Fyb3VzZWwgLmhlcm9fX2NvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDEwMywgMTYwLCAwLjgyNSk7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmhlcm8tLWNhcm91c2VsIC5oZXJvX19jb250ZW50IHtcbiAgICAgIG1pbi13aWR0aDogNDYwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmhlcm8tLWNhcm91c2VsIC5oZXJvX19jb250ZW50IHtcbiAgICAgIHdpZHRoOiAzMyU7IH0gfVxuXG4uaGVyby0tY2Fyb3VzZWwgLmhlcm9fX2NvbnRlbnQtb3V0ZXIge1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuaGVyby0tY2Fyb3VzZWwgLmhlcm9fX2NvbnRlbnQtb3V0ZXIge1xuICAgICAgcGFkZGluZzogMzJweCAzNXB4IDY0cHg7IH0gfVxuXG4uaGVyby0tY2Fyb3VzZWwgLmhlcm9fX2NvbnRlbnQtaW5uZXIge1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmhlcm8tLWNhcm91c2VsIC5oZXJvX19jb250ZW50LWlubmVyIHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5oZXJvLS1jYXJvdXNlbCAuaGVyb19fY29udGVudC1pbm5lciB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuaGVyby0tY2Fyb3VzZWwgLmhlcm9fX2NvbnRlbnQtaW5uZXIge1xuICAgICAgcGFkZGluZy10b3A6IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5oZXJvLS1jYXJvdXNlbCAuaGVyb19fY29udGVudC1pbm5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogMThweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkgYW5kIChtaW4td2lkdGg6IDc1MHB4KSB7XG4gICAgLmhlcm8tLWNhcm91c2VsIC5oZXJvX19jb250ZW50LWlubmVyIHtcbiAgICAgIGZsZXg6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAzNTBweCAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5oZXJvLS1jYXJvdXNlbCAuaGVyb19fY29udGVudC1pbm5lciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsZXg6IDEgMCAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlcm8tLWNhcm91c2VsIC5oZXJvX19jb250ZW50LWlubmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgLmhlcm8tLWNhcm91c2VsIC5oZXJvX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAyOHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuaGVyby0tY2Fyb3VzZWwgLmhlcm9fX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDMwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oZXJvLS1jYXJvdXNlbCAuaGVyb19fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMzRweDsgfSB9XG5cbi5oZXJvLS1jYXJvdXNlbCAuaGVyb19fc3ViaGVhZGluZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMS42ZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmhlcm8tLWNhcm91c2VsIC5oZXJvX19zdWJoZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuaGVyby0tY2Fyb3VzZWwgLmhlcm9fX3N1YmhlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oZXJvLS1jYXJvdXNlbCAuaGVyb19fc3ViaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuXG4uaGVyby0tY2Fyb3VzZWwgLmhlcm9fX25hdmlnYXRpb24ge1xuICBoZWlnaHQ6IDEwMHB4O1xuICBtYXJnaW4tdG9wOiAtMTAwcHg7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgLmhlcm8tLWNhcm91c2VsIC5oZXJvX19uYXZpZ2F0aW9uIC5oZXJvX19uYXZpZ2F0aW9uLWNvbnRhaW5lciB7XG4gICAgICBsZWZ0OiA1MHB4OyB9IH1cblxuLmhlcm8tdGh1bWIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA2NmExO1xuICBjb2xvcjogI2ZmZjtcbiAgbWluLWhlaWdodDogMjUwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuaGVyby10aHVtYi0tcHJhY3RpY2Uge1xuICAgICAgcGFkZGluZzogNTBweCAzMHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmhlcm8tdGh1bWItLXByb3ZpZGVyIHtcbiAgICAgIHBhZGRpbmc6IDUwcHggMzBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIC5oZXJvLXRodW1iLS1wcm92aWRlciAuaGVyby10aHVtYl9faW5uZXIge1xuICAgIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIC5oZXJvLXRodW1iLS1wcm92aWRlciAuaGVyby10aHVtYl9faW5uZXI6OmFmdGVyLCAuaGVyby10aHVtYi0tcHJvdmlkZXIgLmhlcm8tdGh1bWJfX2lubmVyOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAgIC5oZXJvLXRodW1iLS1wcm92aWRlciAuaGVyby10aHVtYl9faW5uZXI6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmhlcm8tdGh1bWItLXByb3ZpZGVyIC5oZXJvLXRodW1iX19pbm5lciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG4uaGVyby10aHVtYl9faW1nIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5oZXJvLXRodW1iLS1wcmFjdGljZSAuaGVyby10aHVtYl9faW1nIHtcbiAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmhlcm8tdGh1bWItLXByYWN0aWNlIC5oZXJvLXRodW1iX19pbWcge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgd2lkdGg6IDI1MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oZXJvLXRodW1iLS1wcmFjdGljZSAuaGVyby10aHVtYl9faW1nIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiA0MDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5oZXJvLXRodW1iLS1wcm92aWRlciAuaGVyby10aHVtYl9faW1nIHtcbiAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHdpZHRoOiAyNTBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaGVyby10aHVtYi0tcHJvdmlkZXIgLmhlcm8tdGh1bWJfX2ltZyB7XG4gICAgICBmbGV4OiAwIDAgMjYwcHg7XG4gICAgICBoZWlnaHQ6IDI2MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICB3aWR0aDogMjYwcHg7IH0gfVxuXG4uaGVyby10aHVtYl9fY29udGVudCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmhlcm8tdGh1bWItLXByYWN0aWNlIC5oZXJvLXRodW1iX19jb250ZW50IHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5oZXJvLXRodW1iLS1wcmFjdGljZSAuaGVyby10aHVtYl9fY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjc1cHg7XG4gICAgICBwYWRkaW5nOiA0MHB4IDMwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlcm8tdGh1bWItLXByYWN0aWNlIC5oZXJvLXRodW1iX19jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0MDBweDtcbiAgICAgIHBhZGRpbmc6IDUwcHggMzBweDsgfSB9XG4gIC5oZXJvLXRodW1iLS1wcm92aWRlciAuaGVyby10aHVtYl9fY29udGVudCB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAuaGVyby10aHVtYi0tcHJvdmlkZXIgLmhlcm8tdGh1bWJfX2NvbnRlbnQge1xuICAgICAgICBtYXJnaW4tdG9wOiAycmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaGVyby10aHVtYi0tcHJvdmlkZXIgLmhlcm8tdGh1bWJfX2NvbnRlbnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcGFkZGluZzogNTBweCAzMHB4OyB9IH1cblxuLmhlcm8tdGh1bWJfX2hlYWRpbmcge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmhlcm8tdGh1bWJfX2hlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaGVyby10aHVtYl9faGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDM0cHg7IH0gfVxuICAuaGVyby10aHVtYi0tcHJvdmlkZXIgLmhlcm8tdGh1bWJfX2hlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IC0zcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTEwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaGVyby10aHVtYi0tcHJvdmlkZXIgLmhlcm8tdGh1bWJfX2hlYWRpbmcge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzM1cHgpOyB9IH1cbiAgLmhlcm8tdGh1bWJfX2hlYWRpbmcuaGVyby10aHVtYl9faGVhZGluZy0tbGluayBhIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuICAgIC5oZXJvLXRodW1iX19oZWFkaW5nLmhlcm8tdGh1bWJfX2hlYWRpbmctLWxpbmsgYTo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWcvc3ZnL2ljb24tZXh0LWxpbmstd2hpdGUuc3ZnXCIpO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTRweCAxMnB4O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29udGVudDogJ1xcMGEwMCc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICBsZWZ0OiAzcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IC0xMXB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgd2lkdGg6IDE0cHg7IH1cblxuLmhlcm8tdGh1bWJfX3N1YmhlYWRpbmcge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5oZXJvLXRodW1iX19zdWJoZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIzcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlcm8tdGh1bWJfX3N1YmhlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4OyB9IH1cbiAgLmhlcm8tdGh1bWJfX3N1YmhlYWRpbmc6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL21pY3Jvc2l0ZXRlbXBsYXRlcy9hc3NldHMvaW1nL3N2Zy9pY29uLWRveWxlc3Rvd24uc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAyMnB4IDI4cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5oZXJvLXRodW1iX19zdWJoZWFkaW5nOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMTZweDtcbiAgICAgICAgaGVpZ2h0OiAxNnB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAyMHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaGVyby10aHVtYl9fc3ViaGVhZGluZzo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMHB4IDE2cHg7XG4gICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgdG9wOiA3cHg7XG4gICAgICAgIHdpZHRoOiAyMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5oZXJvLXRodW1iX19zdWJoZWFkaW5nLXRvb2x0aXAge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oZXJvLXRodW1iX19jb2wtMiB7XG4gICAgZGlzcGxheTogZmxleDsgfSB9XG5cbi5oZXJvLXRodW1iX19jb2wtbCxcbi5oZXJvLXRodW1iX19jb2wtciB7XG4gIGZsZXg6IDAgMSA1MCU7IH1cblxuLmhlcm8tdGh1bWJfX2NvbC1sIHtcbiAgcGFkZGluZy1yaWdodDogMiU7IH1cblxuLmhlcm8tdGh1bWJfX2NvbC1yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5oZXJvLXRodW1iX19jb2wtci5oZXJvLXRodW1iX19jb2wtci0tc2lkZWJhciB7XG4gICAgZmxleDogMCAwIDM1MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5oZXJvLXRodW1iX19jb2wtciB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgICBwYWRkaW5nLXRvcDogMS41cmVtOyB9XG4gICAgICAuaGVyby10aHVtYl9fY29sLXI6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDcwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmhlcm8tdGh1bWJfX2NvbC1yOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5oZXJvLXRodW1iLS1wcmFjdGljZSAuaGVyby10aHVtYl9fY29sLXI6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiBjYWxjKDUwJSAtIDM1cHgpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmhlcm8tdGh1bWItLXByb3ZpZGVyIC5oZXJvLXRodW1iX19jb2wtcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMzVweCk7IH0gfVxuXG4uaGVyby10aHVtYl9fY29sLWwtLXdpdGgtcnVsZSB7XG4gIHBhZGRpbmctdG9wOiAyNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmhlcm8tdGh1bWJfX2NvbC1sLS13aXRoLXJ1bGU6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNmZmY7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiA3MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5oZXJvLXRodW1iX19jb2wtbC0td2l0aC1ydWxlIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5oZXJvLXRodW1iLS1wcmFjdGljZSAuaGVyby10aHVtYl9fY29sLWwtLXdpdGgtcnVsZTo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMzVweCk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuaGVyby10aHVtYi0tcHJvdmlkZXIgLmhlcm8tdGh1bWJfX2NvbC1sLS13aXRoLXJ1bGU6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiBjYWxjKDUwJSAtIDM1cHgpOyB9IH1cblxuLmhlcm8tdGh1bWJfX2NvbC1sLXRleHQge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmhlcm8tdGh1bWJfX2NvbC1sLXRleHQge1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaGVyby10aHVtYl9fY29sLWwtdGV4dCB7XG4gICAgICBmb250LXNpemU6IDI2cHg7IH0gfVxuXG4uaGVyby10aHVtYl9fY29sLWwtc3Vic2VjdGlvbi1oZWFkaW5nIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDJweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuaGVyby10aHVtYl9fY29sLWwtc3Vic2VjdGlvbi1oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG5cbi5oZXJvLXRodW1iX19jb2wtbC1zdWJzZWN0aW9uLXRleHQge1xuICBjb2xvcjogIzQ5ZjFmZjtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG4gIC5oZXJvLXRodW1iX19jb2wtbC1zdWJzZWN0aW9uLXRleHQgYSB7XG4gICAgY29sb3I6ICM0OWYxZmY7IH1cbiAgICAuaGVyby10aHVtYl9fY29sLWwtc3Vic2VjdGlvbi10ZXh0IGE6aG92ZXIge1xuICAgICAgY29sb3I6ICM0OWYxZmY7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAuaGVyby10aHVtYi0tcHJhY3RpY2UgLmhlcm8tdGh1bWJfX2NvbC1sLXN1YnNlY3Rpb24tdGV4dCB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmhlcm8tdGh1bWItLXByYWN0aWNlIC5oZXJvLXRodW1iX19jb2wtbC1zdWJzZWN0aW9uLXRleHQge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICAuaGVyby10aHVtYi0tcHJvdmlkZXIgLmhlcm8tdGh1bWJfX2NvbC1sLXN1YnNlY3Rpb24tdGV4dCB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4uaGVyby10aHVtYl9fY29sLXItaGVhZGluZyB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuaGVyby10aHVtYl9fY29sLXItaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuXG4uaGVyby10aHVtYl9fY29sLXItbGlzdCB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmhlcm8tdGh1bWJfX2NvbC1yLWxpc3Qge1xuICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogLjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlcm8tdGh1bWJfX2NvbC1yLWxpc3Qge1xuICAgICAgZm9udC1zaXplOiAyMnB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5oZXJvLXRodW1iX19idG4ge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oZXJvLXRodW1iX19idG4ge1xuICAgIG1hcmdpbi10b3A6IDFyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmhlcm8tdGh1bWJfX3NpZGViYXIge1xuICAgIGNvbG9yOiAjZmZmOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGVyby10aHVtYl9fc2lkZWJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3gtc2hhZG93OiAwIDAgMjBweCAwIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiA1MHB4O1xuICAgIHdpZHRoOiAzNTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlcm8tdGh1bWJfX3NpZGViYXItaW5uZXIge1xuICAgIHBhZGRpbmc6IDIwcHg7IH0gfVxuXG4uaGVyby10aHVtYl9fc2lkZWJhci1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwOyB9XG5cbi5oZXJvLXRodW1iX19zaWRlYmFyLWxpc3QtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0gKyAuaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0ge1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtOyB9XG4gICAgLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtICsgLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBsZWZ0OiBjYWxjKDUwJSAtIDM1cHgpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDcwcHg7IH1cblxuLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLXN1YmhlYWRpbmcsXG4uaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0tYWRkcmVzcyxcbi5oZXJvLXRodW1iX19zaWRlYmFyLWxpc3QtaXRlbS1saW5rLFxuLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLXRleHQge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMTZweDsgfVxuXG4uaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0taGVhZGluZyB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAyMnB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5oZXJvLXRodW1iX19zaWRlYmFyLWxpc3QtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oZXJvLXRodW1iX19zaWRlYmFyLWxpc3QtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiAjMDA2NmExOyB9IH1cblxuLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLXN1YmhlYWRpbmcge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi10b3A6IDEuNzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLXN1YmhlYWRpbmcge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLXN1YmhlYWRpbmcge1xuICAgICAgY29sb3I6ICMwMDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLWxpbmsge1xuICAgIGNvbG9yOiAjNDlmMWZmOyB9XG4gICAgLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLWxpbms6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaGV2cm9uLWN5YW4tZS5zdmdcIikgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNXB4IDhweDtcbiAgICAgIGJvdHRvbTogMXB4O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29udGVudDogJ1xcMGEwMCc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBoZWlnaHQ6IDhweDtcbiAgICAgIGxlZnQ6IDFweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0cmFuc2l0aW9uOiBsZWZ0IC4zcyBlYXNlO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgd2lkdGg6IDVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0tbGluazpob3Zlcjo6YWZ0ZXIsIC5oZXJvLXRodW1iX19zaWRlYmFyLWxpc3QtaXRlbS1saW5rOmZvY3VzOjphZnRlciB7XG4gICAgICBsZWZ0OiA1cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0tbGluazpob3ZlciB7XG4gICAgICBjb2xvcjogIzQ5ZjFmZjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLWxpbmsge1xuICAgIGNvbG9yOiAjMDA2NmExOyB9XG4gICAgLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLWxpbms6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaGV2cm9uLWJsdWUtZS5zdmdcIikgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNXB4IDhweDtcbiAgICAgIGJvdHRvbTogMXB4O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29udGVudDogJ1xcMGEwMCc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBoZWlnaHQ6IDhweDtcbiAgICAgIGxlZnQ6IDFweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0cmFuc2l0aW9uOiBsZWZ0IC4zcyBlYXNlO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgd2lkdGg6IDVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLWxpbms6aG92ZXI6OmFmdGVyLCAuaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0tbGluazpmb2N1czo6YWZ0ZXIge1xuICAgICAgbGVmdDogNXB4OyB9IH1cblxuLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiAuMmVtOyB9XG4gIC5oZXJvLXRodW1iX19zaWRlYmFyLWxpc3QtaXRlbS10ZXh0OmZpcnN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi10b3A6IDFyZW07IH1cbiAgLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLXRleHQgc3BhbiB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG4uaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0tcGhvbmUtY3RhIHtcbiAgbWFyZ2luLXRvcDogMTVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0tcGhvbmUtY3RhLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLXBob25lLWN0YS0tZGVza3RvcCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oZXJvLXRodW1iX19zaWRlYmFyLWxpc3QtaXRlbS1waG9uZS1jdGEuaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0tcGhvbmUtY3RhLS1kZXNrdG9wIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWcvc3ZnL2ljb24tcGhvbmUtb3JhbmdlLnN2Z1wiKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMThweCAxOHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNlMGUwZTA7XG4gICAgICBib3JkZXItdG9wOiAycHggc29saWQgI2UwZTBlMDtcbiAgICAgIGNvbG9yOiAjZjk4ZDI5O1xuICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgcGFkZGluZzogMTBweCAwIDEwcHggMzBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0tcGhvbmUtY3RhLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLXBob25lLWN0YS0tbW9iaWxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcbiAgc3JjOiB1cmwoXCIuLi93ZWJmb250cy9pY29tb29uL2ljb21vb24uZW90PzV3cWMyYVwiKTtcbiAgc3JjOiB1cmwoXCIuLi93ZWJmb250cy9pY29tb29uL2ljb21vb24uZW90PzV3cWMyYSNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vd2ViZm9udHMvaWNvbW9vbi9pY29tb29uLnR0Zj81d3FjMmFcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL3dlYmZvbnRzL2ljb21vb24vaWNvbW9vbi53b2ZmPzV3cWMyYVwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi93ZWJmb250cy9pY29tb29uL2ljb21vb24uc3ZnPzV3cWMyYSNpY29tb29uXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG5cbltjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuICBbY2xhc3NePVwiaWNvbi1cIl06YmVmb3JlLCBbY2xhc3NePVwiaWNvbi1cIl06YWZ0ZXIsIFtjbGFzcyo9XCIgaWNvbi1cIl06YmVmb3JlLCBbY2xhc3MqPVwiIGljb24tXCJdOmFmdGVyIHtcbiAgICBmb250LWZhbWlseTogJ2ljb21vb24nICFpbXBvcnRhbnQ7XG4gICAgc3BlYWs6IG5vbmU7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cblxuLmljb24tY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIdcIjsgfVxuXG4uaWNvbi1zZWFyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgIJcIjsgfVxuXG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi74KZXCI7IH1cblxuLmljb24tZmFjZWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCLvgppcIjsgfVxuXG4uaWNvbi1nb29nbGUtcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIu+DlVwiOyB9XG5cbi5pY29uLWFuZ2xlLWxlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhIRcIjsgfVxuXG4uaWNvbi1hbmdsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIu+EhVwiOyB9XG5cbi5pY29uLXlvdXR1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCLvhadcIjsgfVxuXG4uaWNvbi1waW50ZXJlc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCLviLFcIjsgfVxuXG4uaWNvbi1jYWxlbmRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kgFwiOyB9XG5cbi5pY29uLWdpZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLupIFcIjsgfVxuXG4uaWNvbi1tZWRpY2FsLWZvbGRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIu6kglwiOyB9XG5cbi5pY29uLXN0ZXRob3Njb3BlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi7qSGXCI7IH1cblxuLmZsZXhsaXN0IHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICBwYWRkaW5nLXRvcDogMXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZsZXhsaXN0IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuICAuZmxleGxpc3QgaDMgYSxcbiAgLmZsZXhsaXN0IHAgYSB7XG4gICAgY29sb3I6ICMwMDY2YTE7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgLmZsZXhsaXN0IGgzIGE6aG92ZXIsXG4gICAgLmZsZXhsaXN0IHAgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzI2YTNkYzsgfVxuICAuZmxleGxpc3QgLnJ0ZiwgLmZsZXhsaXN0IC5mbGV4bGlzdF9fZXhjZXJwdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAuZmxleGxpc3RfX3dyYXAge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuZmxleGxpc3RfX2l0ZW0ge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlc21va2U7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgcGFkZGluZzogNDVweCAzNXB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjY5LjlweCkge1xuICAgICAgLmZsZXhsaXN0X19pdGVtIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDMyMHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAgIC5mbGV4bGlzdC0tbmV3cyAuZmxleGxpc3RfX2l0ZW0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIHBhZGRpbmc6IDI0cHggMjhweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgIC5mbGV4bGlzdC0tbmV3cyAuZmxleGxpc3RfX2l0ZW0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmc6IDE2cHggMDsgfSB9XG4gICAgICAuZmxleGxpc3QtLW5ld3MgLmZsZXhsaXN0X19pdGVtOm50aC1jaGlsZCgybikge1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNlNmU3ZTg7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlNmU3ZTg7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgICAgLmZsZXhsaXN0LS1uZXdzIC5mbGV4bGlzdF9faXRlbTpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlc21va2U7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDsgfSB9XG4gICAgICAuZmxleGxpc3QtLW5ld3MgLmZsZXhsaXN0X19pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTdlODsgfVxuICAgICAgLmZsZXhsaXN0LS1uZXdzIC5mbGV4bGlzdF9faXRlbSAuZmxleGxpc3RfX3R5cGUsXG4gICAgICAuZmxleGxpc3QtLW5ld3MgLmZsZXhsaXN0X19pdGVtIC5mbGV4bGlzdF9fZGF0ZSB7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB3aWR0aDogYXV0bzsgfVxuICAgICAgLmZsZXhsaXN0LS1uZXdzIC5mbGV4bGlzdF9faXRlbSAuZmxleGxpc3RfX3R5cGUge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7IH1cbiAgICAgIC5mbGV4bGlzdC0tbmV3cyAuZmxleGxpc3RfX2l0ZW0gLmZsZXhsaXN0X19kYXRlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7IH1cbiAgICAgIC5mbGV4bGlzdC0tbmV3cyAuZmxleGxpc3RfX2l0ZW0gLmZsZXhsaXN0X19leGNlcnB0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgICAgICAuZGggLmZsZXhsaXN0LS1uZXdzIC5mbGV4bGlzdF9faXRlbSAuZmxleGxpc3RfX2V4Y2VycHQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtOyB9XG4gICAgICAuZmxleGxpc3QtLW5ld3MgLmZsZXhsaXN0X19pdGVtIC5mbGV4bGlzdF9fdGFnIHtcbiAgICAgICAgY29sb3I6ICMwMDY2YTE7IH1cbiAgICAgICAgLmZsZXhsaXN0LS1uZXdzIC5mbGV4bGlzdF9faXRlbSAuZmxleGxpc3RfX3RhZzo6YWZ0ZXIge1xuICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgIGNvbnRlbnQ6ICcsJztcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDsgfVxuICAgICAgICAuZmxleGxpc3QtLW5ld3MgLmZsZXhsaXN0X19pdGVtIC5mbGV4bGlzdF9fdGFnOmxhc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJzsgfVxuICAgICAgICAuZmxleGxpc3QtLW5ld3MgLmZsZXhsaXN0X19pdGVtIC5mbGV4bGlzdF9fdGFnOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogIzI2YTNkYzsgfVxuICAgIC5mbGV4bGlzdC0tbmV3cy1mZWF0dXJlIC5mbGV4bGlzdF9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjcwcHgpIHtcbiAgICAuZmxleGxpc3RfX3RodW1ibmFpbCArIC5mbGV4bGlzdF9fY29udGVudCB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjE5cHgpOyB9IH1cbiAgLmZsZXhsaXN0X19jb250ZW50IHtcbiAgICAtbXMtZmxleDogMSAxIGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLmZsZXhsaXN0LS1uZXdzIC5mbGV4bGlzdF9fY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAwOyB9IH1cbiAgLmZsZXhsaXN0X190aHVtYm5haWwge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICAgIG1heC13aWR0aDogMTk1cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NjkuOXB4KSB7XG4gICAgICAuZmxleGxpc3RfX3RodW1ibmFpbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7IH0gfVxuICAgIC5mbGV4bGlzdF9fdGh1bWJuYWlsIGltZyB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgICAgLmZsZXhsaXN0LS1uZXdzIC5mbGV4bGlzdF9fdGh1bWJuYWlsIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiAxNTBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZsZXhsaXN0LS1uZXdzIC5mbGV4bGlzdF9fdGh1bWJuYWlsIHtcbiAgICAgICAgaGVpZ2h0OiAxNjBweDtcbiAgICAgICAgd2lkdGg6IDE2MHB4OyB9IH1cbiAgLmZsZXhsaXN0X190aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogIzAwNjZhMTtcbiAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAuZmxleGxpc3RfX3RpdGxlIGEge1xuICAgICAgY29sb3I6ICMwMDY2YTE7IH1cbiAgICAgIC5mbGV4bGlzdF9fdGl0bGUgYTpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgLmZsZXhsaXN0X190aXRsZTpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuZmxleGxpc3QtLW5ld3MgLmZsZXhsaXN0X190aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTsgfVxuICAuZmxleGxpc3RfX3JlZ2lzdHJhdGlvbiwgLmZsZXhsaXN0X19yZWdpc3RyYXRpb24tLW9wZW4sIC5mbGV4bGlzdF9fcmVnaXN0cmF0aW9uLS1jbG9zZWQge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmZsZXhsaXN0X19yZWdpc3RyYXRpb24tLW9wZW46OmJlZm9yZSwgLmZsZXhsaXN0X19yZWdpc3RyYXRpb24tLWNsb3NlZDo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LXNpemU6IC42NXJlbTtcbiAgICAgIGhlaWdodDogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgIHBhZGRpbmctdG9wOiAzcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB3aWR0aDogMTRweDsgfVxuICAgIC5mbGV4bGlzdF9fcmVnaXN0cmF0aW9uLS1vcGVuIHtcbiAgICAgIGNvbG9yOiAjNjI3ZDM0OyB9XG4gICAgICAuZmxleGxpc3RfX3JlZ2lzdHJhdGlvbi0tb3Blbjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzYyN2QzNDtcbiAgICAgICAgY29udGVudDogJ1xcMjcxMyc7IH1cbiAgICAuZmxleGxpc3RfX3JlZ2lzdHJhdGlvbi0tY2xvc2VkIHtcbiAgICAgIGNvbG9yOiAjZDk0YjNkOyB9XG4gICAgICAuZmxleGxpc3RfX3JlZ2lzdHJhdGlvbi0tY2xvc2VkOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZDk0YjNkO1xuICAgICAgICBjb250ZW50OiBcIu6kh1wiO1xuICAgICAgICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICAgICAgICBmb250LWZhbWlseTogJ2ljb21vb24nICFpbXBvcnRhbnQ7XG4gICAgICAgIHNwZWFrOiBub25lO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgICAgZm9udC1zaXplOiAuMzVyZW07IH1cbiAgLmZsZXhsaXN0X19hZGRyZXNzLCAuZmxleGxpc3RfX2FkZHJlc3MtLXNob3J0IHtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIGZvbnQtc2l6ZTogLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgIC5mbGV4bGlzdF9fYWRkcmVzcy0tc2hvcnQge1xuICAgICAgbWFyZ2luLXRvcDogLTFyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5mbGV4bGlzdF9fYWRkcmVzcy0tc2hvcnQge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMzBweCk7IH0gfVxuICAuZmxleGxpc3RfX2RhdGUge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICM2MzRhNzY7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAuOTM4cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLmZsZXhsaXN0X19kYXRlIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEzMHB4KTsgfSB9XG4gICAgLmZsZXhsaXN0LS1uZXdzIC5mbGV4bGlzdF9fZGF0ZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTsgfVxuICAuZmxleGxpc3RfX2l0ZW0gLmZsZXhsaXN0X19leGNlcnB0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5mbGV4bGlzdF9fZXhjZXJwdCBwOmxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuZmxleGxpc3RfX3JlZ2lzdGVyLWxpbmsge1xuICAgIGZvbnQtc2l6ZTogLjg3NXJlbTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtOyB9XG4gICAgLmZsZXhsaXN0X19yZWdpc3Rlci1saW5rIGEge1xuICAgICAgY29sb3I6ICMyNmEzZGM7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgLmZsZXhsaXN0X19yZWdpc3Rlci1saW5rIGE6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgICAgLmZsZXhsaXN0X19yZWdpc3Rlci1saW5rIGE6OmJlZm9yZSB7XG4gICAgICAgIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gICAgICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbicgIWltcG9ydGFudDtcbiAgICAgICAgc3BlYWs6IG5vbmU7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjZhM2RjO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgY29udGVudDogXCLvhIVcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDogNzA7XG4gICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogNHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAyNHB4OyB9XG5cbi5sb2NhdGlvbi1ib3gge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDJkMmQyO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5sb2NhdGlvbi1ib3hfX2lubmVyIHtcbiAgICBwYWRkaW5nOiAxMnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmxvY2F0aW9uLWJveF9faW5uZXIge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNDMlOyB9IH1cblxuLmxvY2F0aW9uLWJveF9fdGl0bGUge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMTQ2NmExOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5sb2NhdGlvbi1ib3hfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubG9jYXRpb24tYm94X190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDI2cHg7IH0gfVxuXG4ubG9jYXRpb24tYm94X19kYXRlIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5sb2NhdGlvbi1ib3hfX2RhdGUge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgICAgLmxvY2F0aW9uLWJveF9fZGF0ZSBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgLmxvY2F0aW9uLWJveF9fZGF0ZSBzcGFuLmxvY2F0aW9uLWJveF9fZGF0ZS1waXBlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5sb2NhdGlvbi1ib3hfX2RhdGUge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmxvY2F0aW9uLWJveF9fZGF0ZSBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLmxvY2F0aW9uLWJveF9fbG9jYXRpb24tbmFtZSB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICMwMDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmxvY2F0aW9uLWJveF9fbG9jYXRpb24tbmFtZSB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxvY2F0aW9uLWJveF9fbG9jYXRpb24tbmFtZSB7XG4gICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuXG4ubG9jYXRpb24tYm94X19sb2NhdGlvbi1hZGRyZXNzIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG4gIC5sb2NhdGlvbi1ib3hfX2xvY2F0aW9uLWFkZHJlc3MubG9jYXRpb24tYm94X19sb2NhdGlvbi1hZGRyZXNzLS1tb2JpbGUgYSB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogIzAwNjZhMTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxvY2F0aW9uLWJveF9fbG9jYXRpb24tYWRkcmVzcy5sb2NhdGlvbi1ib3hfX2xvY2F0aW9uLWFkZHJlc3MtLW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmxvY2F0aW9uLWJveF9fbG9jYXRpb24tYWRkcmVzcy5sb2NhdGlvbi1ib3hfX2xvY2F0aW9uLWFkZHJlc3MtLWRlc2t0b3Age1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5sb2NhdGlvbi1ib3hfX2xvY2F0aW9uLWFkZHJlc3Mge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5sb2NhdGlvbi1ib3hfX2xvY2F0aW9uLWFkZHJlc3Mge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLmxvY2F0aW9uLWJveF9fbWFwIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyZDJkMjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAubG9jYXRpb24tYm94X19tYXAge1xuICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5sb2NhdGlvbi1ib3hfX21hcCB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiA0MCU7IH0gfVxuXG4ubG9jYXRpb24tbGlzdCAucnRmLCAubG9jYXRpb24tbGlzdCAuZmxleGxpc3RfX2V4Y2VycHQge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAubG9jYXRpb24tbGlzdCAucnRmLCAubG9jYXRpb24tbGlzdCAuZmxleGxpc3RfX2V4Y2VycHQge1xuICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5sb2NhdGlvbi1saXN0IC5ydGYsIC5sb2NhdGlvbi1saXN0IC5mbGV4bGlzdF9fZXhjZXJwdCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuXG4ubG9jYXRpb24tbGlzdF9faXRlbSB7XG4gIHBhZGRpbmc6IDRyZW0gMDsgfVxuICAubG9jYXRpb24tbGlzdF9faXRlbTpudGgtY2hpbGQob2RkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTsgfVxuICAgIC5sb2NhdGlvbi1saXN0X19pdGVtOm50aC1jaGlsZChvZGQpIC5sb2NhdGlvbi1saXN0X19pdGVtLWlubmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmxvY2F0aW9uLWxpc3RfX2l0ZW06bnRoLWNoaWxkKG9kZCkgLmxvY2F0aW9uLWxpc3RfX2l0ZW0taW5uZXI6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgIzAwNjZhMTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgbGVmdDogMzBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC00cmVtO1xuICAgICAgICB3aWR0aDogNjBweDsgfVxuXG4ubG9jYXRpb24tbGlzdF9faXRlbS1pbm5lciB7XG4gIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH1cbiAgLmxvY2F0aW9uLWxpc3RfX2l0ZW0taW5uZXI6OmFmdGVyLCAubG9jYXRpb24tbGlzdF9faXRlbS1pbm5lcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAubG9jYXRpb24tbGlzdF9faXRlbS1pbm5lcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAubG9jYXRpb24tbGlzdF9fY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG4ubG9jYXRpb24tbGlzdF9faXRlbS1oZWFkaW5nIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzAwMDtcbiAgZm9udC1zaXplOiAzNHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRvcDogLTEwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmxvY2F0aW9uLWxpc3RfX2l0ZW0taGVhZGluZy5sb2NhdGlvbi1saXN0X19pdGVtLWhlYWRpbmctLWRlc2t0b3Age1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5sb2NhdGlvbi1saXN0X19pdGVtLWhlYWRpbmcubG9jYXRpb24tbGlzdF9faXRlbS1oZWFkaW5nLS1tb2JpbGUge1xuICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGZvbnQtc2l6ZTogMThweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5sb2NhdGlvbi1saXN0X19pdGVtLWhlYWRpbmcubG9jYXRpb24tbGlzdF9faXRlbS1oZWFkaW5nLS1tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmxvY2F0aW9uLWxpc3RfX3Bob25lLWN0YS5sb2NhdGlvbi1saXN0X19waG9uZS1jdGEtLWRlc2t0b3Age1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICBwYWRkaW5nOiAxM3B4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubG9jYXRpb24tbGlzdF9fcGhvbmUtY3RhLmxvY2F0aW9uLWxpc3RfX3Bob25lLWN0YS0tZGVza3RvcDo6YmVmb3JlIHtcbiAgICBib3JkZXItdG9wOiA0cHggc29saWQgI2UwZTBlMDtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBsZWZ0OiAxcmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMXJlbTtcbiAgICB0b3A6IDIycHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmxvY2F0aW9uLWxpc3RfX3Bob25lLWN0YS5sb2NhdGlvbi1saXN0X19waG9uZS1jdGEtLWRlc2t0b3Age1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbi5sb2NhdGlvbi1saXN0X19waG9uZS1jdGEubG9jYXRpb24tbGlzdF9fcGhvbmUtY3RhLS1tb2JpbGUge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmxvY2F0aW9uLWxpc3RfX3Bob25lLWN0YS5sb2NhdGlvbi1saXN0X19waG9uZS1jdGEtLW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmxvY2F0aW9uLWxpc3RfX3Bob25lLWN0YS1oZWFkaW5nIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgaGVpZ2h0OiAyNXB4O1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZzogMnB4IDdweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogLTNweDtcbiAgei1pbmRleDogMTsgfVxuXG4ubG9jYXRpb24tbGlzdF9fcGhvbmUtY3RhLW51bWJlciB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICNmOThkMjk7XG4gIGZvbnQtc2l6ZTogMzJweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogOHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTVweDsgfVxuICAubG9jYXRpb24tbGlzdF9fcGhvbmUtY3RhLW51bWJlcjo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZTBlMGUwO1xuICAgIGJvdHRvbTogMDtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsZWZ0OiAwO1xuICAgIGhlaWdodDogMXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuXG4ubG9jYXRpb24tbGlzdF9faXRlbS1zdWJoZWFkaW5nIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IC01cHggMCA2cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmxvY2F0aW9uLWxpc3RfX2l0ZW0tc3ViaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxvY2F0aW9uLWxpc3RfX2l0ZW0tc3ViaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDIwcHg7IH0gfVxuXG4ubG9jYXRpb24tbGlzdF9fYWRkcmVzcyB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAubG9jYXRpb24tbGlzdF9fYWRkcmVzcyB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxvY2F0aW9uLWxpc3RfX2FkZHJlc3Mge1xuICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cblxuLmxvY2F0aW9uLWxpc3RfX3RleHQtbGluayB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMwMDY2YTE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXRvcDogLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IC43cmVtOyB9XG4gIC5sb2NhdGlvbi1saXN0X190ZXh0LWxpbms6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvbWljcm9zaXRldGVtcGxhdGVzL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2hldnJvbi1ibHVlLWUuc3ZnXCIpIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA1cHggOHB4O1xuICAgIGJvdHRvbTogMXB4O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb250ZW50OiAnXFwwYTAwJztcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBsZWZ0OiAxcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogbGVmdCAuM3MgZWFzZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgd2lkdGg6IDVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxvY2F0aW9uLWxpc3RfX3RleHQtbGluazpob3Zlcjo6YWZ0ZXIsIC5sb2NhdGlvbi1saXN0X190ZXh0LWxpbms6Zm9jdXM6OmFmdGVyIHtcbiAgICAgIGxlZnQ6IDVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5sb2NhdGlvbi1saXN0X190ZXh0LWxpbmsge1xuICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5sb2NhdGlvbi1saXN0X190ZXh0LWxpbmsge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuLmxvY2F0aW9uLWxpc3RfX2NhdGVnb3J5LXRleHQge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIG1hcmdpbi1ib3R0b206IDdweDsgfVxuICAubG9jYXRpb24tbGlzdF9fY2F0ZWdvcnktdGV4dCBzcGFuIHtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5sb2NhdGlvbi1saXN0X19jYXRlZ29yeS10ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubG9jYXRpb24tbGlzdF9fY2F0ZWdvcnktdGV4dCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAubG9jYXRpb24tbGlzdF9fY2F0ZWdvcnktdGV4dC5sb2NhdGlvbnMtbGlzdF9fY2F0ZWdvcnktdGV4dC0tZGVza3RvcCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5sb2NhdGlvbi1saXN0X19jYXRlZ29yeS10ZXh0LmxvY2F0aW9ucy1saXN0X19jYXRlZ29yeS10ZXh0LS1tb2JpbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5sb2NhdGlvbi1saXN0X19jYXRlZ29yeS10ZXh0LmxvY2F0aW9ucy1saXN0X19jYXRlZ29yeS10ZXh0LS1tb2JpbGUgYSB7XG4gICAgY29sb3I6ICMwMDY2YTE7IH1cblxuLmxvY2F0aW9ucy1saXN0X19jYXRlZ29yeS10ZXh0LS1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuXG4ubG9jYXRpb24tbGlzdF9fYWRkaXRpb25hbC10ZXh0LWhlYWRpbmcge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMDAwO1xuICBjbGVhcjogYm90aDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5sb2NhdGlvbi1saXN0X19hZGRpdGlvbmFsLXRleHQtaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDEycHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxvY2F0aW9uLWxpc3RfX2FkZGl0aW9uYWwtdGV4dC1oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG5cbi5sb2NhdGlvbi1saXN0X19waHlzaWNpYW5zLWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAubG9jYXRpb24tbGlzdF9fcGh5c2ljaWFucy1saXN0IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbGV4OiAwIDEgMzElO1xuICAgIG1hcmdpbi10b3A6IC41ZW07XG4gICAgcGFkZGluZy1yaWdodDogMiU7IH1cbiAgICAubG9jYXRpb24tbGlzdF9fcGh5c2ljaWFucy1saXN0IGxpIGEge1xuICAgICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBjb2xvcjogIzAwNjZhMTsgfVxuICAgICAgLmxvY2F0aW9uLWxpc3RfX3BoeXNpY2lhbnMtbGlzdCBsaSBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICMyNmEzZGM7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmxvY2F0aW9uLWxpc3RfX3BoeXNpY2lhbnMtbGlzdCBsaSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubG9jYXRpb24tbGlzdF9fcGh5c2ljaWFucy1saXN0IHtcbiAgICAgIGNvbHVtbi1jb3VudDogMzsgfVxuICAgICAgLmxvY2F0aW9uLWxpc3RfX3BoeXNpY2lhbnMtbGlzdCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICAgICAgICBtYXJnaW4tdG9wOiAuNzVlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgLmxvY2F0aW9uLWxpc3RfX3BoeXNpY2lhbnMtbGlzdCBsaSBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuXG4ubmV3c19fdGl0bGUge1xuICBjb2xvcjogIzAwNjZhMTtcbiAgZm9udC1zaXplOiAzNHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4ubmV3c19fY2F0ZWdvcmllcyB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDsgfVxuICAubmV3c19fY2F0ZWdvcmllcyBhIHtcbiAgICBjb2xvcjogIzAwNjZhMTtcbiAgICBtYXJnaW4tbGVmdDogOHB4OyB9XG5cbi5uZXdzX19kYXRhIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLm5ld3NfX2RhdGUge1xuICBtYXJnaW4tbGVmdDogNXB4OyB9XG5cbi5uZXdzX190eXBlIHtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7IH1cblxuLm5ld3NfX2JvaWxlcnBsYXRlIHtcbiAgbWFyZ2luLXRvcDogNDBweDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmZsZXhsaXN0LS1uZXdzICsgLnBhZ2luYXRpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG5cbi5kb2N0b3ItcmVzdWx0cyAucGFnaW5hdGlvbixcbi5mYWQtc2VhcmNoLXJlc3VsdHMgLnBhZ2luYXRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLnNlYXJjaC1yZXN1bHRzIC5wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuXG4ucGFnaW5hdGlvbl9fd3JhcCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5wYWdpbmF0aW9uX193cmFwIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuXG4ucGFnaW5hdGlvbiBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4ucGFnaW5hdGlvbl9faXRlbSwgLnBhZ2luYXRpb25fX2l0ZW0tLWZpcnN0LCAucGFnaW5hdGlvbl9faXRlbS0tbGFzdCwgLnBhZ2luYXRpb25fX2l0ZW0tLW5leHQsIC5wYWdpbmF0aW9uX19pdGVtLS1wcmV2LCAucGFnaW5hdGlvbl9faXRlbS0tYWN0aXZlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7IH1cbiAgLnBhZ2luYXRpb25fX2l0ZW0gYSwgLnBhZ2luYXRpb25fX2l0ZW0tLWZpcnN0IGEsIC5wYWdpbmF0aW9uX19pdGVtLS1sYXN0IGEsIC5wYWdpbmF0aW9uX19pdGVtLS1uZXh0IGEsIC5wYWdpbmF0aW9uX19pdGVtLS1wcmV2IGEsIC5wYWdpbmF0aW9uX19pdGVtLS1hY3RpdmUgYSB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGNvbG9yOiAjMTQ2NmExO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgcGFkZGluZy10b3A6IDRweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDM1cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLnBhZ2luYXRpb25fX2l0ZW0gYSwgLnBhZ2luYXRpb25fX2l0ZW0tLWZpcnN0IGEsIC5wYWdpbmF0aW9uX19pdGVtLS1sYXN0IGEsIC5wYWdpbmF0aW9uX19pdGVtLS1uZXh0IGEsIC5wYWdpbmF0aW9uX19pdGVtLS1wcmV2IGEsIC5wYWdpbmF0aW9uX19pdGVtLS1hY3RpdmUgYSB7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDhweDtcbiAgICAgICAgd2lkdGg6IDQwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYWdpbmF0aW9uX19pdGVtIGE6aG92ZXIsIC5wYWdpbmF0aW9uX19pdGVtLS1maXJzdCBhOmhvdmVyLCAucGFnaW5hdGlvbl9faXRlbS0tbGFzdCBhOmhvdmVyLCAucGFnaW5hdGlvbl9faXRlbS0tbmV4dCBhOmhvdmVyLCAucGFnaW5hdGlvbl9faXRlbS0tcHJldiBhOmhvdmVyLCAucGFnaW5hdGlvbl9faXRlbS0tYWN0aXZlIGE6aG92ZXIsIC5wYWdpbmF0aW9uX19pdGVtIGE6Zm9jdXMsIC5wYWdpbmF0aW9uX19pdGVtLS1maXJzdCBhOmZvY3VzLCAucGFnaW5hdGlvbl9faXRlbS0tbGFzdCBhOmZvY3VzLCAucGFnaW5hdGlvbl9faXRlbS0tbmV4dCBhOmZvY3VzLCAucGFnaW5hdGlvbl9faXRlbS0tcHJldiBhOmZvY3VzLCAucGFnaW5hdGlvbl9faXRlbS0tYWN0aXZlIGE6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfSB9XG4gIC5wYWdpbmF0aW9uX19pdGVtLS1maXJzdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAucGFnaW5hdGlvbl9faXRlbS0tZmlyc3QgYTo6YmVmb3JlIHtcbiAgICAgIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gICAgICBmb250LWZhbWlseTogJ2ljb21vb24nICFpbXBvcnRhbnQ7XG4gICAgICBzcGVhazogbm9uZTtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgIGNvbnRlbnQ6IFwi74SE74SEXCI7XG4gICAgICBmb250LXdlaWdodDogNzAwOyB9XG4gIC5wYWdpbmF0aW9uX19pdGVtLS1sYXN0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH1cbiAgICAucGFnaW5hdGlvbl9faXRlbS0tbGFzdCBhOjpiZWZvcmUge1xuICAgICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbicgIWltcG9ydGFudDtcbiAgICAgIHNwZWFrOiBub25lO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgY29udGVudDogXCLvhIXvhIVcIjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgLnBhZ2luYXRpb25fX2l0ZW0tLW5leHQgYTo6YmVmb3JlIHtcbiAgICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbicgIWltcG9ydGFudDtcbiAgICBzcGVhazogbm9uZTtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIGNvbnRlbnQ6IFwi74SFXCI7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAucGFnaW5hdGlvbl9faXRlbS0tcHJldiBhOjpiZWZvcmUge1xuICAgIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gICAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xuICAgIHNwZWFrOiBub25lO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgY29udGVudDogXCLvhIRcIjtcbiAgICBmb250LXdlaWdodDogNzAwOyB9XG4gIC5wYWdpbmF0aW9uX19pdGVtLS1hY3RpdmUgYSB7XG4gICAgYmFja2dyb3VuZDogIzE0NjZhMTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC40cyBlYXNlLW91dDsgfVxuICAgIC5wYWdpbmF0aW9uX19pdGVtLS1hY3RpdmUgYTpob3ZlciwgLnBhZ2luYXRpb25fX2l0ZW0tLWFjdGl2ZSBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwZTkyYTI7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjI0cyBlYXNlLW91dDsgfVxuXG4ucGFnaW5hdGlvbl9faHVkIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogIzVhNTU1NTtcbiAgZm9udC1zaXplOiAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zNzVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMjJweDsgfVxuICAucGFnaW5hdGlvbl9faHVkIHNwYW4ge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICMwMTAxMDE7IH1cblxuLnN0LXVpLWNvbnRhaW5lci1mb290ZXJfYmFyIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgbWFyZ2luLXRvcDogMnJlbTsgfVxuXG4uc3Qtc2VhcmNoLXBhZ2luYXRpb24gLnN0LXF1ZXJ5LXByZXNlbnQgLnN0LXVpLXBhZ2luYXRpb24tbGluayB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgY29sb3I6ICMxNDY2YTE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuc3Qtc2VhcmNoLXBhZ2luYXRpb24gLnN0LXF1ZXJ5LXByZXNlbnQgLnN0LXVpLXBhZ2luYXRpb24tbGluayB7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICBtaW4td2lkdGg6IDMwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogM3B4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zdC1zZWFyY2gtcGFnaW5hdGlvbiAuc3QtcXVlcnktcHJlc2VudCAuc3QtdWktcGFnaW5hdGlvbi1saW5rIHtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIG1pbi13aWR0aDogNDBweDtcbiAgICAgIHBhZGRpbmctdG9wOiA4cHg7IH1cbiAgICAgIC5zdC1zZWFyY2gtcGFnaW5hdGlvbiAuc3QtcXVlcnktcHJlc2VudCAuc3QtdWktcGFnaW5hdGlvbi1saW5rOmhvdmVyLCAuc3Qtc2VhcmNoLXBhZ2luYXRpb24gLnN0LXF1ZXJ5LXByZXNlbnQgLnN0LXVpLXBhZ2luYXRpb24tbGluazpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogIzI2YTNkYzsgfSB9XG4gIC5zdC1zZWFyY2gtcGFnaW5hdGlvbiAuc3QtcXVlcnktcHJlc2VudCAuc3QtdWktcGFnaW5hdGlvbi1saW5rLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE0NjZhMTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC40cyBlYXNlLW91dDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zdC1zZWFyY2gtcGFnaW5hdGlvbiAuc3QtcXVlcnktcHJlc2VudCAuc3QtdWktcGFnaW5hdGlvbi1saW5rLmFjdGl2ZTpob3ZlciwgLnN0LXNlYXJjaC1wYWdpbmF0aW9uIC5zdC1xdWVyeS1wcmVzZW50IC5zdC11aS1wYWdpbmF0aW9uLWxpbmsuYWN0aXZlOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzBlOTJhMjtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjI0cyBlYXNlLW91dDsgfSB9XG5cbi5zdC1zZWFyY2gtcGFnaW5hdGlvbiAuc3QtcXVlcnktcHJlc2VudCAuc3QtdWktYXJyb3cge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wcmltYXJ5LW5hdmlnYXRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnByaW1hcnktbmF2aWdhdGlvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uIHtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZTZlN2U4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnByaW1hcnktbmF2aWdhdGlvbl9fd3JhcHBlciB7XG4gICAgICBhbmltYXRpb246IGZhZGVJbiAxcyBlYXNlLWluO1xuICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMnB4O1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX193cmFwcGVyIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX193cmFwcGVyIHtcbiAgICAgIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDsgfSB9XG4gIC5wcmltYXJ5LW5hdmlnYXRpb25fX2xpc3Qge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX2xpc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHdpZHRoOiA5OCU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5kaCAucHJpbWFyeS1uYXZpZ2F0aW9uX19saXN0IHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19pdGVtIHtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZTZlN2U4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19pdGVtIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX2l0ZW0tLWhhcy1idXR0b24ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19pdGVtLS1oYXMtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAucHJpbWFyeS1uYXZpZ2F0aW9uX19pdGVtLS1mYWQgLnByaW1hcnktbmF2aWdhdGlvbl9fbDIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgcGFkZGluZzogMDsgfVxuICAucHJpbWFyeS1uYXZpZ2F0aW9uX19pdGVtLS1mYWQgLnByaW1hcnktbmF2aWdhdGlvbl9fbDItY29udGFpbiB7XG4gICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnByaW1hcnktbmF2aWdhdGlvbl9faXRlbS0tZmx5b3V0IC5wcmltYXJ5LW5hdmlnYXRpb25fX2wyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5wcmltYXJ5LW5hdmlnYXRpb25fX2l0ZW0tLWZseW91dC5pcy1vcGVuIC5wcmltYXJ5LW5hdmlnYXRpb25fX2wyIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19pdGVtLS1mbHlvdXQuaXMtY29sbGFwc2VkIC5wcmltYXJ5LW5hdmlnYXRpb25fX2wyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX2l0ZW0tLWZseW91dC5pcy1jb2xsYXBzZWQgLnByaW1hcnktbmF2aWdhdGlvbl9fbGluazo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiL21pY3Jvc2l0ZXRlbXBsYXRlcy9hc3NldHMvaW1nL3N2Zy9pY29uLWNoZXZyb24tYmx1ZS1zLnN2Z1wiKSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMHB4IDZweDtcbiAgICAgIGJvdHRvbTogMXB4O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29udGVudDogJ1xcMGEwMCc7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBoZWlnaHQ6IDZweDtcbiAgICAgIGxlZnQ6IDFweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0cmFuc2l0aW9uOiBsZWZ0IC4zcyBlYXNlO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgd2lkdGg6IDEwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wcmltYXJ5LW5hdmlnYXRpb25fX2l0ZW0tLWZseW91dC5pcy1jb2xsYXBzZWQgLnByaW1hcnktbmF2aWdhdGlvbl9fbGluazpob3Zlcjo6YWZ0ZXIsIC5wcmltYXJ5LW5hdmlnYXRpb25fX2l0ZW0tLWZseW91dC5pcy1jb2xsYXBzZWQgLnByaW1hcnktbmF2aWdhdGlvbl9fbGluazpmb2N1czo6YWZ0ZXIge1xuICAgIGxlZnQ6IDVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX2l0ZW0tLWZseW91dC5pcy1leHBhbmRlZCAucHJpbWFyeS1uYXZpZ2F0aW9uX19sMiB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgLnByaW1hcnktbmF2aWdhdGlvbl9faXRlbS0tZmx5b3V0LmlzLWV4cGFuZGVkIC5wcmltYXJ5LW5hdmlnYXRpb25fX2xpbms6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaGV2cm9uLWJsdWUtbi5zdmdcIikgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTBweCA2cHg7XG4gICAgICBib3R0b206IDFweDtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbnRlbnQ6ICdcXDBhMDAnO1xuICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICBsZWZ0OiAxcHg7XG4gICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdHJhbnNpdGlvbjogbGVmdCAuM3MgZWFzZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICAgIHdpZHRoOiAxMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHJpbWFyeS1uYXZpZ2F0aW9uX19pdGVtLS1mbHlvdXQuaXMtZXhwYW5kZWQgLnByaW1hcnktbmF2aWdhdGlvbl9fbGluazpob3Zlcjo6YWZ0ZXIsIC5wcmltYXJ5LW5hdmlnYXRpb25fX2l0ZW0tLWZseW91dC5pcy1leHBhbmRlZCAucHJpbWFyeS1uYXZpZ2F0aW9uX19saW5rOmZvY3VzOjphZnRlciB7XG4gICAgbGVmdDogNXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnByaW1hcnktbmF2aWdhdGlvbl9faXRlbS0tZmx5b3V0LmlzLWNvbGxhcHNlZCAucHJpbWFyeS1uYXZpZ2F0aW9uX19saW5rLCAucHJpbWFyeS1uYXZpZ2F0aW9uX19pdGVtLS1mbHlvdXQuaXMtZXhwYW5kZWQgLnByaW1hcnktbmF2aWdhdGlvbl9fbGluayB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX2l0ZW0tLWZseW91dC5pcy1jb2xsYXBzZWQgLnByaW1hcnktbmF2aWdhdGlvbl9fbGluazo6YWZ0ZXIsIC5wcmltYXJ5LW5hdmlnYXRpb25fX2l0ZW0tLWZseW91dC5pcy1leHBhbmRlZCAucHJpbWFyeS1uYXZpZ2F0aW9uX19saW5rOjphZnRlciB7XG4gICAgICAgIGxlZnQ6IGluaXRpYWw7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgIHRvcDogMTdweDsgfVxuICAgICAgLnByaW1hcnktbmF2aWdhdGlvbl9faXRlbS0tZmx5b3V0LmlzLWNvbGxhcHNlZCAucHJpbWFyeS1uYXZpZ2F0aW9uX19saW5rOmhvdmVyOjphZnRlciwgLnByaW1hcnktbmF2aWdhdGlvbl9faXRlbS0tZmx5b3V0LmlzLWV4cGFuZGVkIC5wcmltYXJ5LW5hdmlnYXRpb25fX2xpbms6aG92ZXI6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogaW5pdGlhbDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19pdGVtLS1mbHlvdXQ6aG92ZXIgLnByaW1hcnktbmF2aWdhdGlvbl9fbDIge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAucHJpbWFyeS1uYXZpZ2F0aW9uX19saW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19saW5rLCAucHJpbWFyeS1uYXZpZ2F0aW9uX19saW5rOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAjMDA2NmExOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAuZGggLnByaW1hcnktbmF2aWdhdGlvbl9fbGluayB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5kaCAucHJpbWFyeS1uYXZpZ2F0aW9uX19saW5rOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICMyNmEzZGM7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnByaW1hcnktbmF2aWdhdGlvbl9fbGluayB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBwYWRkaW5nOiA3cHggMjBweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX2xpbmsge1xuICAgICAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAjZmZmO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIHBhZGRpbmc6IDEycHggNXB4OyB9XG4gICAgICAgIC5oZWFydC12YXNjdWxhciAucHJpbWFyeS1uYXZpZ2F0aW9uX19saW5rIHtcbiAgICAgICAgICBmb250LXNpemU6IDIwcHg7IH1cbiAgICAgICAgLnByaW1hcnktbmF2aWdhdGlvbl9fbGluazpob3ZlciwgLnByaW1hcnktbmF2aWdhdGlvbl9fbGluazpmb2N1cyB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2Y5OGQyOTsgfVxuICAgICAgICAgIC5mb3VuZGF0aW9uIC5wcmltYXJ5LW5hdmlnYXRpb25fX2xpbms6aG92ZXIsIC5mb3VuZGF0aW9uIC5wcmltYXJ5LW5hdmlnYXRpb25fX2xpbms6Zm9jdXMge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzI2YTNkYzsgfVxuICAgICAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19saW5rLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2Y5OGQyOTtcbiAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7IH1cbiAgICAgICAgICAuZm91bmRhdGlvbiAucHJpbWFyeS1uYXZpZ2F0aW9uX19saW5rLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjYjg5ZDc4OyB9IH1cbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19saW5rLS1idXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5OGQyOTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBtYXJnaW46IDIwcHggMjBweCAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICAgLnByaW1hcnktbmF2aWdhdGlvbl9fbGluay0tYnV0dG9uOmhvdmVyLCAucHJpbWFyeS1uYXZpZ2F0aW9uX19saW5rLS1idXR0b246Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjZhM2RjO1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX2xpbmstLWJ1dHRvbiB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnByaW1hcnktbmF2aWdhdGlvbl9fbGluay0tYnV0dG9uIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLnByaW1hcnktbmF2aWdhdGlvbl9fbDIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX2wyIHtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMTNweCAyMHB4IC04cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgICAgcGFkZGluZy10b3A6IDdweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19sMiB7XG4gICAgICBib3JkZXItdG9wOiAycHggc29saWQgI2U2ZTdlODtcbiAgICAgIGJveC1zaGFkb3c6IDAgMTVweCAyOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMS41cmVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgdG9wOiA1NnB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OiAyMDA7IH0gfVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uX19sMi1jb250YWluIHtcbiAgbWF4LXdpZHRoOiA3My42MjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgLnByaW1hcnktbmF2aWdhdGlvbl9fbDItY29udGFpbjo6YWZ0ZXIsIC5wcmltYXJ5LW5hdmlnYXRpb25fX2wyLWNvbnRhaW46OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnByaW1hcnktbmF2aWdhdGlvbl9fbDItY29udGFpbjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5wcmltYXJ5LW5hdmlnYXRpb25fX2wyLWlubmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucHJpbWFyeS1uYXZpZ2F0aW9uX19sMi1jb2wtbCB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnByaW1hcnktbmF2aWdhdGlvbl9fbDItY29sLWwge1xuICAgIGZsZXg6IDAgMSAyNyU7XG4gICAgbWFyZ2luLXJpZ2h0OiA2JTsgfVxuICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX2wyLWNvbC1sIGgzIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgY29sb3I6ICMwMDY2YTE7XG4gICAgICBmb250LXNpemU6IDI2cHg7IH0gfVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uX19pdGVtLXRleHQge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLnByaW1hcnktbmF2aWdhdGlvbl9fc2VhcmNoIHtcbiAgbWFyZ2luLXRvcDogMjVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5wcmltYXJ5LW5hdmlnYXRpb25fX3NlYXJjaCBsYWJlbCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDsgfVxuICAucHJpbWFyeS1uYXZpZ2F0aW9uX19zZWFyY2ggLnByaW1hcnktbmF2aWdhdGlvbl9fc2VhcmNoLWlucHV0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGNvbG9yOiAjNzM3OTdjO1xuICAgIGhlaWdodDogNDBweDtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQ1cHgpOyB9XG4gICAgLnByaW1hcnktbmF2aWdhdGlvbl9fc2VhcmNoIC5wcmltYXJ5LW5hdmlnYXRpb25fX3NlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICM5MjlhOWQ7IH1cblxuLnByaW1hcnktbmF2aWdhdGlvbl9fc2VhcmNoLXN1Ym1pdCB7XG4gIGhlaWdodDogNDBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDQwcHg7IH1cbiAgLnByaW1hcnktbmF2aWdhdGlvbl9fc2VhcmNoLXN1Ym1pdCAucHJpbWFyeS1uYXZpZ2F0aW9uX19zZWFyY2gtc3VibWl0LWJ0bixcbiAgLnByaW1hcnktbmF2aWdhdGlvbl9fc2VhcmNoLXN1Ym1pdCAucHJpbWFyeS1uYXZpZ2F0aW9uX19zZWFyY2gtc3VibWl0LWljb24ge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIC5wcmltYXJ5LW5hdmlnYXRpb25fX3NlYXJjaC1zdWJtaXQgLnByaW1hcnktbmF2aWdhdGlvbl9fc2VhcmNoLXN1Ym1pdC1idG4ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNDhjM2I7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgcGFkZGluZzogMDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zIGVhc2U7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnByaW1hcnktbmF2aWdhdGlvbl9fc2VhcmNoLXN1Ym1pdCAucHJpbWFyeS1uYXZpZ2F0aW9uX19zZWFyY2gtc3VibWl0LWJ0bjo6YmVmb3JlIHtcbiAgICAgIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gICAgICBmb250LWZhbWlseTogJ2ljb21vb24nICFpbXBvcnRhbnQ7XG4gICAgICBzcGVhazogbm9uZTtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgIGNvbnRlbnQ6IFwi74CCXCI7IH1cbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19zZWFyY2gtc3VibWl0IC5wcmltYXJ5LW5hdmlnYXRpb25fX3NlYXJjaC1zdWJtaXQtYnRuOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5NGQ2MGE7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19zZWFyY2gtc3VibWl0IC5wcmltYXJ5LW5hdmlnYXRpb25fX3NlYXJjaC1zdWJtaXQtYnRuOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzk0ZDYwYTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyOyB9IH1cbiAgLnByaW1hcnktbmF2aWdhdGlvbl9fc2VhcmNoLXN1Ym1pdCAucHJpbWFyeS1uYXZpZ2F0aW9uX19zZWFyY2gtc3VibWl0LWljb24ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGxlZnQ6IDEzcHg7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdG9wOiA4cHg7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cblxuLmRoIC5wcmltYXJ5LW5hdmlnYXRpb25fX3NlYXJjaC1zdWJtaXQtYnRuOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk0ZDYwYTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnByaW1hcnktbmF2aWdhdGlvbl9fbDItY29sLXIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHJpbWFyeS1uYXZpZ2F0aW9uX19sMi1jb2wtciB7XG4gICAgZmxleDogMCAxIDY3JTsgfSB9XG5cbi5wcmltYXJ5LW5hdmlnYXRpb25fX2wyLWxpbmtzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX2wyLWxpbmtzIHtcbiAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucHJpbWFyeS1uYXZpZ2F0aW9uX19sMi1pdGVtIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2U2ZTdlODtcbiAgICBwYWRkaW5nOiA1cHggMjBweDsgfVxuICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX2wyLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyOiAwOyB9XG4gICAgLnByaW1hcnktbmF2aWdhdGlvbl9fbDItaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlN2U4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHJpbWFyeS1uYXZpZ2F0aW9uX19sMi1pdGVtIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAucHJpbWFyeS1uYXZpZ2F0aW9uX19sMi1pdGVtIGEge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgY29sb3I6ICMwMDdhYmQ7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucHJpbWFyeS1uYXZpZ2F0aW9uX19sMi1pdGVtIGEge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICMwMDY2YTE7IH0gfVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uX19sMi1idG4tY29udGFpbmVyIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgcGFkZGluZzogMCAyMHB4O1xuICB3aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLnByaW1hcnktbmF2aWdhdGlvbl9fbDItYnRuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDIwcHggMDtcbiAgICB3aWR0aDogaW5oZXJpdDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnByaW1hcnktbmF2aWdhdGlvbl9fbDItYnRuLS1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ucHJpbWFyeS1uYXZpZ2F0aW9uX19sMi1idG4tLWRlc2t0b3Age1xuICBtYXJnaW4tbGVmdDogNTElO1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLnByaW1hcnktbmF2aWdhdGlvbl9fbDItYnRuLS1kZXNrdG9wIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ucHJvZmlsZXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmNmYxO1xuICBwYWRkaW5nOiAzMHB4IDAgMzVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5wcm9maWxlcyB7XG4gICAgICBwYWRkaW5nOiA0MHB4IDAgNDVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gICAgLnByb2ZpbGVzIHtcbiAgICAgIHBhZGRpbmc6IDYwcHggMCA2NXB4OyB9IH1cbiAgLnByb2ZpbGVzX193cmFwIHtcbiAgICBtYXgtd2lkdGg6IDczLjYyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgcGFkZGluZzogMCAxLjI1cmVtOyB9XG4gICAgLnByb2ZpbGVzX193cmFwOjphZnRlciwgLnByb2ZpbGVzX193cmFwOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAgIC5wcm9maWxlc19fd3JhcDo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgICAgIC5wcm9maWxlc19fd3JhcCB7XG4gICAgICAgIHBhZGRpbmc6IDAgNzBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLnByb2ZpbGVzX193cmFwIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3NjhweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnByb2ZpbGVzX193cmFwIHtcbiAgICAgICAgbWF4LXdpZHRoOiA5NjBweDsgfSB9XG4gIC5wcm9maWxlc19fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMwMDY2YTE7XG4gICAgZm9udC1zaXplOiAxLjM3NWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAuZm91bmRhdGlvbiAucHJvZmlsZXNfX3RpdGxlIHtcbiAgICAgIGNvbG9yOiAjYWU5MDY1OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5wcm9maWxlc19fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgLnByb2ZpbGVzX19saXN0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgIC50YWJzX19jb2x1bW5zIC5wcm9maWxlc19fbGlzdCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAucHJvZmlsZXNfX2l0ZW0ge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjcwcHgpIHtcbiAgICAgIC5wcm9maWxlc19faXRlbTpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2OS45cHgpIHtcbiAgICAgIC5wcm9maWxlc19faXRlbTpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2OS45cHgpIHtcbiAgICAgIC5wcm9maWxlc19faXRlbSB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDFyZW07XG4gICAgICAgIG1heC13aWR0aDogMzAwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgICAgLnByb2ZpbGVzX19pdGVtIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjMzM3JlbTsgfSB9XG4gICAgLnByb2ZpbGVzX19pdGVtOmhvdmVyLCAucHJvZmlsZXNfX2l0ZW06Zm9jdXMge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgICAucHJvZmlsZXNfX2l0ZW06aG92ZXIgLnByb2ZpbGVzX19pdGVtX19vdmVybGF5LCAucHJvZmlsZXNfX2l0ZW06Zm9jdXMgLnByb2ZpbGVzX19pdGVtX19vdmVybGF5IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgLjI0cyBlYXNlLW91dDsgfVxuICAgICAgLnByb2ZpbGVzX19pdGVtOmhvdmVyIC5wcm9maWxlc19faXRlbV9fdGV4dC1zbWFsbCwgLnByb2ZpbGVzX19pdGVtOmZvY3VzIC5wcm9maWxlc19faXRlbV9fdGV4dC1zbWFsbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5wcm9maWxlc19faXRlbTpob3ZlciAucHJvZmlsZXNfX2l0ZW1fX3RleHQtbGFyZ2UsIC5wcm9maWxlc19faXRlbTpmb2N1cyAucHJvZmlsZXNfX2l0ZW1fX3RleHQtbGFyZ2Uge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5wcm9maWxlc19faXRlbV9faW1hZ2Uge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTsgfVxuICAgICAgLnByb2ZpbGVzX19pdGVtX19pbWFnZSBpbWcge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnByb2ZpbGVzX19pdGVtX19vdmVybGF5IHtcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjAsIDEwMiwgMTYxLCAwLjg1KTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGhlaWdodDogMjUlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRyYW5zaXRpb246IGhlaWdodCAwLjI0cyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDI7IH1cbiAgICAgIC5mb3VuZGF0aW9uIC5wcm9maWxlc19faXRlbV9fb3ZlcmxheSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgNDMsIDcwLCAwLjg1KTsgfVxuICAgIC5wcm9maWxlc19faXRlbV9fdGV4dC13cmFwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5wcm9maWxlc19faXRlbV9fdGV4dC1zbWFsbCBwLFxuICAgIC5wcm9maWxlc19faXRlbV9fdGV4dC1zbWFsbCBoNCwgLnByb2ZpbGVzX19pdGVtX190ZXh0LWxhcmdlIHAsXG4gICAgLnByb2ZpbGVzX19pdGVtX190ZXh0LWxhcmdlIGg0IHtcbiAgICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgY29sb3I6IHdoaXRlc21va2U7XG4gICAgICBmb250LXNpemU6IC44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4wNjNyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAuODc1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAucHJvZmlsZXNfX2l0ZW1fX3RleHQtc21hbGwgcC50aXRsZSwgLnByb2ZpbGVzX19pdGVtX190ZXh0LXNtYWxsIHAubmFtZSxcbiAgICAgIC5wcm9maWxlc19faXRlbV9fdGV4dC1zbWFsbCBoNC50aXRsZSxcbiAgICAgIC5wcm9maWxlc19faXRlbV9fdGV4dC1zbWFsbCBoNC5uYW1lLCAucHJvZmlsZXNfX2l0ZW1fX3RleHQtbGFyZ2UgcC50aXRsZSwgLnByb2ZpbGVzX19pdGVtX190ZXh0LWxhcmdlIHAubmFtZSxcbiAgICAgIC5wcm9maWxlc19faXRlbV9fdGV4dC1sYXJnZSBoNC50aXRsZSxcbiAgICAgIC5wcm9maWxlc19faXRlbV9fdGV4dC1sYXJnZSBoNC5uYW1lIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogNzAwOyB9XG4gICAgICAucHJvZmlsZXNfX2l0ZW1fX3RleHQtc21hbGwgcDpsYXN0LW9mLXR5cGUsXG4gICAgICAucHJvZmlsZXNfX2l0ZW1fX3RleHQtc21hbGwgaDQ6bGFzdC1vZi10eXBlLCAucHJvZmlsZXNfX2l0ZW1fX3RleHQtbGFyZ2UgcDpsYXN0LW9mLXR5cGUsXG4gICAgICAucHJvZmlsZXNfX2l0ZW1fX3RleHQtbGFyZ2UgaDQ6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5wcm9maWxlc19faXRlbV9fdGV4dC1zbWFsbCBoNCwgLnByb2ZpbGVzX19pdGVtX190ZXh0LWxhcmdlIGg0IHtcbiAgICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNzAwOyB9XG4gICAgLnByb2ZpbGVzX19pdGVtX190ZXh0LXNtYWxsIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5wcm9maWxlc19faXRlbV9fdGV4dC1sYXJnZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgLnByb2ZpbGVzX19pdGVtX190ZXh0LWxhcmdlIHAgc3BhbiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgY29sb3I6ICM0OWYxZmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgICAucHJvZmlsZXNfX2l0ZW1fX3RleHQtbGFyZ2UgcCBzcGFuOmhvdmVyLCAucHJvZmlsZXNfX2l0ZW1fX3RleHQtbGFyZ2UgcCBzcGFuOmZvY3VzIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgICAgICAucHJvZmlsZXNfX2l0ZW1fX3RleHQtbGFyZ2UgcCBzcGFuOjphZnRlciB7XG4gICAgICAgICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgICAgICAgICBmb250LWZhbWlseTogJ2ljb21vb24nICFpbXBvcnRhbnQ7XG4gICAgICAgICAgc3BlYWs6IG5vbmU7XG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgICAgICBjb250ZW50OiBcIu+EhVwiO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgICAgICAgd2lkdGg6IDIwcHg7IH1cbiAgLnRhYnMgLnByb2ZpbGVzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy10b3A6IDIwcHg7IH1cbiAgICAudGFicyAucHJvZmlsZXM6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy10b3A6IDA7IH1cbiAgICAudGFicyAucHJvZmlsZXMgLnByb2ZpbGVzX193cmFwIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgLmNvbnRlbnQgLnByb2ZpbGVzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMjBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAuY29udGVudCAucHJvZmlsZXMge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gICAgICAuY29udGVudCAucHJvZmlsZXMge1xuICAgICAgICBwYWRkaW5nOiA0MHB4IDAgNDVweCAycmVtOyB9IH1cbiAgICAuY29udGVudCAucHJvZmlsZXM6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy10b3A6IDA7IH1cbiAgICAuY29udGVudCAucHJvZmlsZXMgLnByb2ZpbGVzX193cmFwIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cblxuLmRoIC5jb250ZW50IC5wcm9maWxlcyB7XG4gIHBhZGRpbmctbGVmdDogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuZGggLmNvbnRlbnQgLnByb2ZpbGVzLnByb2ZpbGVzLS1taXhlZCAucHJvZmlsZXNfX2xpc3Qge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuZGggLmNvbnRlbnQgLnByb2ZpbGVzLnByb2ZpbGVzLS1taXhlZCAucHJvZmlsZXNfX2l0ZW0ge1xuICAgICAgZmxleDogMCAwIDI2MHB4O1xuICAgICAgaGVpZ2h0OiAyNjBweDtcbiAgICAgIG1hcmdpbjogMCAxLjVyZW0gMS41cmVtIDFyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLmRoIC5jb250ZW50IC5wcm9maWxlcy5wcm9maWxlcy0tbWl4ZWQgLnByb2ZpbGVzX19pdGVtIHtcbiAgICAgIGZsZXg6IDAgMCAyNTBweDtcbiAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICBtYXJnaW46IDAgMS41cmVtIDEuNXJlbSAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5kaCAuY29udGVudCAucHJvZmlsZXMucHJvZmlsZXMtLW1peGVkIC5wcm9maWxlc19faXRlbSB7XG4gICAgICBmbGV4OiAwIDAgMjEwcHg7XG4gICAgICBoZWlnaHQ6IDIxMHB4O1xuICAgICAgbWFyZ2luOiAwIDFyZW0gMXJlbSAwOyB9IH1cbiAgLmRoIC5jb250ZW50IC5wcm9maWxlcy5wcm9maWxlcy0tbWl4ZWQgLnByb2ZpbGVzX19pdGVtX19iZy1pbWFnZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuLmRoIC5jb250ZW50IC5wcm9maWxlc19faXRlbS5wcm9maWxlc19faXRlbS0taW1nLW9ubHkge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZGggLmNvbnRlbnQgLnByb2ZpbGVzX19pdGVtLnByb2ZpbGVzX19pdGVtLS1pbWctb25seTpob3ZlciwgLmRoIC5jb250ZW50IC5wcm9maWxlc19faXRlbS5wcm9maWxlc19faXRlbS0taW1nLW9ubHk6Zm9jdXMge1xuICAgICAgb3BhY2l0eTogLjg7IH0gfVxuXG4uZGggLmNvbnRlbnQgLnByb2ZpbGVzX19pdGVtLnByb2ZpbGVzX19pdGVtLS10ZXh0LW9ubHkge1xuICBoZWlnaHQ6IDIxMnB4OyB9XG4gIC5kaCAuY29udGVudCAucHJvZmlsZXNfX2l0ZW0ucHJvZmlsZXNfX2l0ZW0tLXRleHQtb25seSAucHJvZmlsZXNfX2l0ZW1fX292ZXJsYXkge1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAuZGggLmNvbnRlbnQgLnByb2ZpbGVzX19pdGVtLnByb2ZpbGVzX19pdGVtLS10ZXh0LW9ubHkgLnByb2ZpbGVzX19pdGVtX190ZXh0LXNtYWxsIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5kaCAuY29udGVudCAucHJvZmlsZXNfX2l0ZW0ucHJvZmlsZXNfX2l0ZW0tLXRleHQtb25seSAucHJvZmlsZXNfX2l0ZW1fX3RleHQtbGFyZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5wcm92aWRlci1wcm9maWxlIHtcbiAgbWF4LXdpZHRoOiA3My42MjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMwJTtcbiAgcGFkZGluZy10b3A6IDUwcHg7IH1cbiAgLnByb3ZpZGVyLXByb2ZpbGU6OmFmdGVyLCAucHJvdmlkZXItcHJvZmlsZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAucHJvdmlkZXItcHJvZmlsZTo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5wcm92aWRlci1wcm9maWxlIHtcbiAgICAgIHBhZGRpbmc6IDUwcHggMzBweDsgfSB9XG4gIC5wcm92aWRlci1wcm9maWxlID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAucHJvdmlkZXItcHJvZmlsZSA+IGgyIHtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjMDA2NmExO1xuICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07IH1cbiAgLnByb3ZpZGVyLXByb2ZpbGUgPiBwIHtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICAgIG1hcmdpbi1ib3R0b206IC41cmVtOyB9XG4gICAgLnByb3ZpZGVyLXByb2ZpbGUgPiBwID4gc3BhbiB7XG4gICAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAucHJvdmlkZXItcHJvZmlsZSA+IGEge1xuICAgIGNvbG9yOiAjMDA2NmExO1xuICAgIGZvbnQtc2l6ZTogMjBweDsgfVxuICAgIC5wcm92aWRlci1wcm9maWxlID4gYTo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiL21pY3Jvc2l0ZXRlbXBsYXRlcy9hc3NldHMvaW1nL3N2Zy9pY29uLWNoZXZyb24tYmx1ZS1lLnN2Z1wiKSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA1cHggOHB4O1xuICAgICAgYm90dG9tOiAxcHg7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb250ZW50OiAnXFwwYTAwJztcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGhlaWdodDogOHB4O1xuICAgICAgbGVmdDogMXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRyYW5zaXRpb246IGxlZnQgLjNzIGVhc2U7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgICB3aWR0aDogNXB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnByb3ZpZGVyLXByb2ZpbGUgPiBhOmhvdmVyOjphZnRlciwgLnByb3ZpZGVyLXByb2ZpbGUgPiBhOmZvY3VzOjphZnRlciB7XG4gICAgICAgIGxlZnQ6IDVweDsgfSB9XG5cbi5wb3N0LWxpc3RpbmcsIC5wb3N0LWxpc3RpbmctLWFsdCB7XG4gIHBhZGRpbmc6IDMwcHggMCAzNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLnBvc3QtbGlzdGluZywgLnBvc3QtbGlzdGluZy0tYWx0IHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMCA0NXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgICAucG9zdC1saXN0aW5nLCAucG9zdC1saXN0aW5nLS1hbHQge1xuICAgICAgcGFkZGluZzogNjBweCAwIDY1cHg7IH0gfVxuICAuZGggLnBvc3QtbGlzdGluZyAucG9zdC1saXN0aW5nX193cmFwLCAuZGggLnBvc3QtbGlzdGluZy0tYWx0IC5wb3N0LWxpc3RpbmdfX3dyYXAge1xuICAgIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIC5kaCAucG9zdC1saXN0aW5nIC5wb3N0LWxpc3RpbmdfX3dyYXA6OmFmdGVyLCAuZGggLnBvc3QtbGlzdGluZy0tYWx0IC5wb3N0LWxpc3RpbmdfX3dyYXA6OmFmdGVyLCAuZGggLnBvc3QtbGlzdGluZyAucG9zdC1saXN0aW5nX193cmFwOjpiZWZvcmUsIC5kaCAucG9zdC1saXN0aW5nLS1hbHQgLnBvc3QtbGlzdGluZ19fd3JhcDo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogdGFibGU7IH1cbiAgICAuZGggLnBvc3QtbGlzdGluZyAucG9zdC1saXN0aW5nX193cmFwOjphZnRlciwgLmRoIC5wb3N0LWxpc3RpbmctLWFsdCAucG9zdC1saXN0aW5nX193cmFwOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAuZGggLnBvc3QtbGlzdGluZy5wb3N0LWxpc3RpbmctLWdyYXktYmcsIC5kaCAucG9zdC1saXN0aW5nLS1ncmF5LWJnLnBvc3QtbGlzdGluZy0tYWx0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBwYWRkaW5nOiA1MHB4IDMwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5kaCAucG9zdC1saXN0aW5nLnBvc3QtbGlzdGluZy0tZ3JheS1iZywgLmRoIC5wb3N0LWxpc3RpbmctLWdyYXktYmcucG9zdC1saXN0aW5nLS1hbHQge1xuICAgICAgICBtYXJnaW46IDA7IH0gfVxuICAuZGggLnBvc3QtbGlzdGluZy5wb3N0LWxpc3RpbmctLWJvcmRlci10b3AgLnBvc3QtbGlzdGluZ19fd3JhcCwgLmRoIC5wb3N0LWxpc3RpbmctLWJvcmRlci10b3AucG9zdC1saXN0aW5nLS1hbHQgLnBvc3QtbGlzdGluZ19fd3JhcCB7XG4gICAgbWF4LXdpZHRoOiA3My42MjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgLmRoIC5wb3N0LWxpc3RpbmcucG9zdC1saXN0aW5nLS1ib3JkZXItdG9wIC5wb3N0LWxpc3RpbmdfX3dyYXA6OmFmdGVyLCAuZGggLnBvc3QtbGlzdGluZy0tYm9yZGVyLXRvcC5wb3N0LWxpc3RpbmctLWFsdCAucG9zdC1saXN0aW5nX193cmFwOjphZnRlciwgLmRoIC5wb3N0LWxpc3RpbmcucG9zdC1saXN0aW5nLS1ib3JkZXItdG9wIC5wb3N0LWxpc3RpbmdfX3dyYXA6OmJlZm9yZSwgLmRoIC5wb3N0LWxpc3RpbmctLWJvcmRlci10b3AucG9zdC1saXN0aW5nLS1hbHQgLnBvc3QtbGlzdGluZ19fd3JhcDo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogdGFibGU7IH1cbiAgICAuZGggLnBvc3QtbGlzdGluZy5wb3N0LWxpc3RpbmctLWJvcmRlci10b3AgLnBvc3QtbGlzdGluZ19fd3JhcDo6YWZ0ZXIsIC5kaCAucG9zdC1saXN0aW5nLS1ib3JkZXItdG9wLnBvc3QtbGlzdGluZy0tYWx0IC5wb3N0LWxpc3RpbmdfX3dyYXA6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5kaCAucG9zdC1saXN0aW5nLnBvc3QtbGlzdGluZy0tYm9yZGVyLXRvcCwgLmRoIC5wb3N0LWxpc3RpbmctLWJvcmRlci10b3AucG9zdC1saXN0aW5nLS1hbHQge1xuICAgICAgbWFyZ2luOiAwIDMwcHg7XG4gICAgICBwYWRkaW5nOiA1MHB4IDA7IH0gfVxuICAucG9zdC1saXN0aW5nLS1ib3JkZXItdG9wIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2UwZTBlMDsgfVxuICAucG9zdC1saXN0aW5nLS1hbHQge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlOWU5ZTkgMCUsICNmN2Y2ZjEgMTAlKTtcbiAgICAvKiBXM0MsIElFMTArLCBGRjE2KywgQ2hyb21lMjYrLCBPcGVyYTEyKywgU2FmYXJpNysgKi8gfVxuICAucG9zdC1saXN0aW5nX193cmFwIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDE2cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLnBvc3QtbGlzdGluZ19fd3JhcCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgICAucG9zdC1saXN0aW5nX193cmFwIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7IH0gfVxuICAgIC5wb3N0LWxpc3RpbmdfX3dyYXAtZmx1aWQge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5wb3N0LWxpc3RpbmdfX3dyYXAge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wb3N0LWxpc3RpbmdfX3dyYXAge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMTZweDsgfSB9XG4gICAgLmRoIC5wb3N0LWxpc3RpbmdfX3dyYXAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgcGFkZGluZzogMCAzMHB4OyB9XG4gIC5wb3N0LWxpc3RpbmdfX2xpc3Rpbmcge1xuICAgIG1hcmdpbjogMCBhdXRvIDQwcHg7XG4gICAgbWF4LXdpZHRoOiA0ODBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAucG9zdC1saXN0aW5nX19saXN0aW5nIHtcbiAgICAgICAgcGFkZGluZzogMCA1MHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLnBvc3QtbGlzdGluZ19fbGlzdGluZyB7XG4gICAgICAgIHBhZGRpbmc6IDAgMnJlbTtcbiAgICAgICAgbWF4LXdpZHRoOiA5NTZweDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cbiAgICAuZGggLnBvc3QtbGlzdGluZ19fbGlzdGluZyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwIDRyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgICAuZGggLnBvc3QtbGlzdGluZ19fbGlzdGluZyB7XG4gICAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gIC5wb3N0LWxpc3RpbmdfX2l0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucG9zdC1saXN0aW5nX19pdGVtIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMyUgLSAzNy4zMzNweCk7IH0gfVxuICAgIC5wb3N0LWxpc3RpbmdfX2l0ZW06bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLnBvc3QtbGlzdGluZ19faXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAgIC5wb3N0LWxpc3RpbmdfX2l0ZW1fX3RodW1ibmFpbCB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQycHg7IH1cbiAgICAgIC5wb3N0LWxpc3RpbmdfX2l0ZW1fX3RodW1ibmFpbCBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5wb3N0LWxpc3RpbmdfX2l0ZW1fX3RpdGxlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1zaXplOiAuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMzc1ZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgICAucG9zdC1saXN0aW5nX19pdGVtX190aXRsZSBhIHtcbiAgICAgICAgY29sb3I6ICMwMDY2YTE7IH1cbiAgICAgIC5kaCAucG9zdC1saXN0aW5nX19pdGVtX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgIC5wb3N0LWxpc3RpbmdfX2l0ZW1fX2V4Y2VycHQge1xuICAgICAgY29sb3I6IGJsYWNrO1xuICAgICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LXNpemU6IC44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4zNzVlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5kaCAucG9zdC1saXN0aW5nX19pdGVtX19leGNlcnB0IHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtOyB9XG4gICAgLnBvc3QtbGlzdGluZ19faXRlbV9fbGluayB7XG4gICAgICBjb2xvcjogIzBlOTJhMjtcbiAgICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1zaXplOiAuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMzI1cmVtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTsgfVxuICAgICAgLnBvc3QtbGlzdGluZ19faXRlbV9fbGluazpob3ZlciwgLnBvc3QtbGlzdGluZ19faXRlbV9fbGluazpmb2N1cyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICBjb2xvcjogIzBlOTJhMjsgfVxuICAgICAgLnBvc3QtbGlzdGluZ19faXRlbV9fbGluazphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBjb2xvcjogIzBlOTJhMjtcbiAgICAgICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgICAgICAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xuICAgICAgICBzcGVhazogbm9uZTtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgIGNvbnRlbnQ6IFwi74SFXCI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAuNXJlbTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wOyB9XG4gIC5wb3N0LWxpc3RpbmdfX3RpdGxlIHtcbiAgICBjb2xvcjogIzAwNjZhMTtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMS4xODhlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xODhlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAuZm91bmRhdGlvbiAucG9zdC1saXN0aW5nX190aXRsZSB7XG4gICAgICBjb2xvcjogI2FlOTA2NTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmRoIC5wb3N0LWxpc3RpbmdfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5kaCAucG9zdC1saXN0aW5nX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDsgfSB9XG4gIC5wb3N0LWxpc3RpbmdfX2xpbmsge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAwLjkzOGVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NWVtO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAucG9zdC1saXN0aW5nX19saW5rIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtOyB9IH1cbiAgICAucG9zdC1saXN0aW5nX19saW5rIGEge1xuICAgICAgY29sb3I6ICMwZTkyYTI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgIC5wb3N0LWxpc3RpbmdfX2xpbmsgYTpob3ZlciwgLnBvc3QtbGlzdGluZ19fbGluayBhOmZvY3VzIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIGNvbG9yOiAjMGU5MmEyOyB9XG4gICAgICAucG9zdC1saXN0aW5nX19saW5rIGE6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aWR0aDogMjdweDtcbiAgICAgICAgaGVpZ2h0OiAyN3B4O1xuICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMGU5MmEyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICAgICAgICBmb250LWZhbWlseTogJ2ljb21vb24nICFpbXBvcnRhbnQ7XG4gICAgICAgIHNwZWFrOiBub25lO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgICAgY29udGVudDogXCLvhIVcIjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4OyB9XG4gICAgLmRoIC5wb3N0LWxpc3RpbmdfX2xpbmsgYSB7XG4gICAgICBjb2xvcjogI2Y5OGQyOTtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIG1hcmdpbjogNDBweCBhdXRvIDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgICAuZGggLnBvc3QtbGlzdGluZ19fbGluayBhOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaGV2cm9uLW9yYW5nZS1lLnN2Z1wiKSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDZweCAxMHB4O1xuICAgICAgICBib3R0b206IDJweDtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb250ZW50OiAnXFwwYTAwJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IGxlZnQgLjNzIGVhc2U7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICAgICAgd2lkdGg6IDZweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuZGggLnBvc3QtbGlzdGluZ19fbGluayBhOmhvdmVyOjphZnRlciwgLmRoIC5wb3N0LWxpc3RpbmdfX2xpbmsgYTpmb2N1czo6YWZ0ZXIge1xuICAgICAgICAgIGxlZnQ6IDRweDsgfSB9XG4gICAgICAuZGggLnBvc3QtbGlzdGluZ19fbGluayBhOmhvdmVyLCAuZGggLnBvc3QtbGlzdGluZ19fbGluayBhOmZvY3VzIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAuZGggLnBvc3QtbGlzdGluZ19fbGluayBhOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG5cbmlucHV0W3R5cGU9cmFuZ2VdIHtcbiAgaGVpZ2h0OiAyOXB4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIG1hcmdpbjogMTBweCAwO1xuICB3aWR0aDogMTAwJTsgfVxuXG5pbnB1dFt0eXBlPXJhbmdlXTpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7IH1cblxuaW5wdXRbdHlwZT1yYW5nZV06Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGFuaW1hdGU6IDAuMnM7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4ICMwMDAwMDA7XG4gIGJhY2tncm91bmQ6ICNEMkQyRDI7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgYm9yZGVyOiAwcHggc29saWQgIzAwMDAwMDsgfVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAjMDAwMDAwO1xuICBib3JkZXI6IDBweCBzb2xpZCAjMjQ5N0UzO1xuICBoZWlnaHQ6IDIzcHg7XG4gIHdpZHRoOiAyM3B4O1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBiYWNrZ3JvdW5kOiAjMDBBRkQ3O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbWFyZ2luLXRvcDogLTExcHg7IH1cblxuaW5wdXRbdHlwZT1yYW5nZV06Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgYmFja2dyb3VuZDogI0QyRDJEMjsgfVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10cmFjayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDFweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBhbmltYXRlOiAwLjJzO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAjMDAwMDAwO1xuICBiYWNrZ3JvdW5kOiAjRDJEMkQyO1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIGJvcmRlcjogMHB4IHNvbGlkICMwMDAwMDA7IH1cblxuaW5wdXRbdHlwZT1yYW5nZV06Oi1tb3otcmFuZ2UtdGh1bWIge1xuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAjMDAwMDAwO1xuICBib3JkZXI6IDBweCBzb2xpZCAjMjQ5N0UzO1xuICBoZWlnaHQ6IDIzcHg7XG4gIHdpZHRoOiAyM3B4O1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBiYWNrZ3JvdW5kOiAjMDBBRkQ3O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuaW5wdXRbdHlwZT1yYW5nZV06Oi1tcy10cmFjayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDFweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBhbmltYXRlOiAwLjJzO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtZmlsbC1sb3dlciB7XG4gIGJhY2tncm91bmQ6ICNEMkQyRDI7XG4gIGJvcmRlcjogMHB4IHNvbGlkICMwMDAwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggIzAwMDAwMDsgfVxuXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1zLWZpbGwtdXBwZXIge1xuICBiYWNrZ3JvdW5kOiAjRDJEMkQyO1xuICBib3JkZXI6IDBweCBzb2xpZCAjMDAwMDAwO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4ICMwMDAwMDA7IH1cblxuaW5wdXRbdHlwZT1yYW5nZV06Oi1tcy10aHVtYiB7XG4gIG1hcmdpbi10b3A6IDFweDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggIzAwMDAwMDtcbiAgYm9yZGVyOiAwcHggc29saWQgIzI0OTdFMztcbiAgaGVpZ2h0OiAyM3B4O1xuICB3aWR0aDogMjNweDtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgYmFja2dyb3VuZDogIzAwQUZENztcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmlucHV0W3R5cGU9cmFuZ2VdOmZvY3VzOjotbXMtZmlsbC1sb3dlciB7XG4gIGJhY2tncm91bmQ6ICNEMkQyRDI7IH1cblxuaW5wdXRbdHlwZT1yYW5nZV06Zm9jdXM6Oi1tcy1maWxsLXVwcGVyIHtcbiAgYmFja2dyb3VuZDogI0QyRDJEMjsgfVxuXG4ucnRmLCAuZmxleGxpc3RfX2V4Y2VycHQge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5ydGYsIC5mbGV4bGlzdF9fZXhjZXJwdCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ydGYsIC5mbGV4bGlzdF9fZXhjZXJwdCB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuZGggLnJ0ZiwgLmRoIC5mbGV4bGlzdF9fZXhjZXJwdCB7XG4gICAgICBmb250LXNpemU6IDE0cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmRoIC5ydGYsIC5kaCAuZmxleGxpc3RfX2V4Y2VycHQge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9IH1cbiAgLmRoIC5ydGYgPiAqOmxhc3QtY2hpbGQsIC5kaCAuZmxleGxpc3RfX2V4Y2VycHQgPiAqOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmNvbnRlbnQtLW1haW4gLnJ0ZiwgLmNvbnRlbnQtLW1haW4gLmZsZXhsaXN0X19leGNlcnB0IHtcbiAgICBtYXJnaW4tdG9wOiAycmVtOyB9XG4gIC5ydGYgaDMsIC5mbGV4bGlzdF9fZXhjZXJwdCBoMyB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAucnRmIGgzLCAuZmxleGxpc3RfX2V4Y2VycHQgaDMge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucnRmIGgzLCAuZmxleGxpc3RfX2V4Y2VycHQgaDMge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuICAgIC5ydGYgaDMgYSwgLmZsZXhsaXN0X19leGNlcnB0IGgzIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLnJ0ZiBwLCAuZmxleGxpc3RfX2V4Y2VycHQgcCxcbiAgLnJ0ZiAucCxcbiAgLmZsZXhsaXN0X19leGNlcnB0IC5wLFxuICAucnRmIHVsLFxuICAuZmxleGxpc3RfX2V4Y2VycHQgdWwge1xuICAgIG1hcmdpbi1ib3R0b206IDI2cHg7IH1cbiAgICAuZGggLnJ0ZiBwLCAuZGggLmZsZXhsaXN0X19leGNlcnB0IHAsIC5kaCAucnRmIC5wLCAuZGggLmZsZXhsaXN0X19leGNlcnB0IC5wLCAuZGggLnJ0ZiB1bCwgLmRoIC5mbGV4bGlzdF9fZXhjZXJwdCB1bCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIC5ydGYgb2wsIC5mbGV4bGlzdF9fZXhjZXJwdCBvbCB7XG4gICAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbiAgICBwYWRkaW5nLWxlZnQ6IDE4cHg7IH1cbiAgICAucnRmIG9sIG9sLCAuZmxleGxpc3RfX2V4Y2VycHQgb2wgb2wge1xuICAgICAgbGlzdC1zdHlsZTogbG93ZXItYWxwaGE7IH1cbiAgLnJ0ZiB1bCBsaSwgLmZsZXhsaXN0X19leGNlcnB0IHVsIGxpLFxuICAucnRmIG9sIGxpLFxuICAuZmxleGxpc3RfX2V4Y2VycHQgb2wgbGkge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ydGYgdWwgbGksIC5mbGV4bGlzdF9fZXhjZXJwdCB1bCBsaSxcbiAgICAgIC5ydGYgb2wgbGksXG4gICAgICAuZmxleGxpc3RfX2V4Y2VycHQgb2wgbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7IH0gfVxuICBcbiAgLnJ0ZiB1bCxcbiAgLmZsZXhsaXN0X19leGNlcnB0IHVsIHtcbiAgICBtYXJnaW4tbGVmdDogMTZweDtcbiAgICBtYXJnaW4tdG9wOiAxNnB4OyB9XG4gICAgLnJ0ZiB1bCBsaSwgLmZsZXhsaXN0X19leGNlcnB0IHVsIGxpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMTJweDsgfVxuICAucnRmIHVsIHVsLCAuZmxleGxpc3RfX2V4Y2VycHQgdWwgdWwge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAucnRmIHVsIHVsIGxpLCAuZmxleGxpc3RfX2V4Y2VycHQgdWwgdWwgbGkge1xuICAgICAgbWFyZ2luOiA2cHggMCA2cHggMTJweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfVxuICAucnRmIC51bC1jb2xzLTIsIC5mbGV4bGlzdF9fZXhjZXJwdCAudWwtY29scy0yLFxuICAucnRmIC5vbC1jb2xzLTIsXG4gIC5mbGV4bGlzdF9fZXhjZXJwdCAub2wtY29scy0yIHtcbiAgICBtYXJnaW46IDFlbSAwIDFlbSAxZW07IH1cbiAgICAucnRmIC51bC1jb2xzLTIgdWwsIC5mbGV4bGlzdF9fZXhjZXJwdCAudWwtY29scy0yIHVsLFxuICAgIC5ydGYgLm9sLWNvbHMtMiB1bCxcbiAgICAuZmxleGxpc3RfX2V4Y2VycHQgLm9sLWNvbHMtMiB1bCB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgICAucnRmIC51bC1jb2xzLTIgdWwgbGk6Zmlyc3QtY2hpbGQsIC5mbGV4bGlzdF9fZXhjZXJwdCAudWwtY29scy0yIHVsIGxpOmZpcnN0LWNoaWxkLFxuICAgICAgLnJ0ZiAub2wtY29scy0yIHVsIGxpOmZpcnN0LWNoaWxkLFxuICAgICAgLmZsZXhsaXN0X19leGNlcnB0IC5vbC1jb2xzLTIgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJ0ZiAucnRmLW11bHRpLWNvbC0yLWNvbHMsIC5mbGV4bGlzdF9fZXhjZXJwdCAucnRmLW11bHRpLWNvbC0yLWNvbHMge1xuICAgICAgY29sdW1uLWNvdW50OiAyO1xuICAgICAgY29sdW1uLWdhcDogMTAwcHg7XG4gICAgICBjb2x1bW4td2lkdGg6IDI1MHB4OyB9XG4gICAgICAucnRmIC5ydGYtbXVsdGktY29sLTItY29scyBsaSwgLmZsZXhsaXN0X19leGNlcnB0IC5ydGYtbXVsdGktY29sLTItY29scyBsaSB7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucnRmIC5ydGYtbXVsdGktY29sLTMtY29scywgLmZsZXhsaXN0X19leGNlcnB0IC5ydGYtbXVsdGktY29sLTMtY29scyB7XG4gICAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgICBjb2x1bW4tZ2FwOiA2NXB4O1xuICAgICAgY29sdW1uLXdpZHRoOiAxNTBweDsgfVxuICAgICAgLnJ0ZiAucnRmLW11bHRpLWNvbC0zLWNvbHMgbGksIC5mbGV4bGlzdF9fZXhjZXJwdCAucnRmLW11bHRpLWNvbC0zLWNvbHMgbGkge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5ydGYgYSwgLmZsZXhsaXN0X19leGNlcnB0IGEge1xuICAgIGNvbG9yOiAjMDA2NmExOyB9XG4gIC5ydGYgYS5idG4sIC5mbGV4bGlzdF9fZXhjZXJwdCBhLmJ0biB7XG4gICAgY29sb3I6ICNmZmY7IH1cblxuLnNlYXJjaC1ib3gge1xuICBwYWRkaW5nOiAwIDEuMjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLmRoIC5zZWFyY2gtYm94IHtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmRoIC5zZWFyY2gtYm94IHtcbiAgICAgIG1hcmdpbi10b3A6IDRyZW07IH0gfVxuICAuc2VhcmNoLWJveC5zZWFyY2gtYm94LS1iYWNrZ3JvdW5kIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5zZWFyY2gtYm94X19jb250YWluIHtcbiAgbWF4LXdpZHRoOiA3My42MjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgLnNlYXJjaC1ib3hfX2NvbnRhaW46OmFmdGVyLCAuc2VhcmNoLWJveF9fY29udGFpbjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAuc2VhcmNoLWJveF9fY29udGFpbjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5zZWFyY2gtYm94X19vdXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMCA2MHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIHBhZGRpbmc6IDE1cHg7IH1cblxuLnNlYXJjaC1ib3hfX2lubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2UwZTBlMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuc2VhcmNoLWJveF9faW5uZXIge1xuICAgICAgcGFkZGluZzogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2VhcmNoLWJveF9faW5uZXIge1xuICAgICAgcGFkZGluZzogNDBweDsgfSB9XG5cbi5zZWFyY2gtYm94X190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMjZweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5zZWFyY2gtYm94X190aXRsZSB7XG4gICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2VhcmNoLWJveF9fdGl0bGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLnNlYXJjaC1ib3hfX3RpdGxlLS1zZWFyY2g6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6IHVybChcIi9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1zZWFyY2guc3ZnXCIpIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDQwcHg7IH1cbiAgICAuc2VhcmNoLWJveF9fdGl0bGUtLXNlYXJjaDo6YWZ0ZXIge1xuICAgICAgbGVmdDogY2FsYyg1MCUgLSAyMHB4KTtcbiAgICAgIHRvcDogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2VhcmNoLWJveF9fdGl0bGUtLXNlYXJjaDo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiL21pY3Jvc2l0ZXRlbXBsYXRlcy9hc3NldHMvaW1nL3N2Zy9pY29uLXNlYXJjaC5zdmdcIikgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMzVweCAzNXB4O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMzVweDsgfVxuICAgIC5zZWFyY2gtYm94X190aXRsZS0tc2VhcmNoOjphZnRlciB7XG4gICAgICBsZWZ0OiAwOyB9IH1cbiAgLnNlYXJjaC1ib3hfX3RpdGxlLS1uZXdzbGV0dGVyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKFwiL21pY3Jvc2l0ZXRlbXBsYXRlcy9hc3NldHMvaW1nL3N2Zy9pY29uLW5ld3NsZXR0ZXIuc3ZnXCIpIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAzNXB4IDM1cHg7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiAzNXB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMzVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuc2VhcmNoLWJveF9fdGl0bGUtLW5ld3NsZXR0ZXI6OmFmdGVyIHtcbiAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTdweCk7XG4gICAgICB0b3A6IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNlYXJjaC1ib3hfX3RpdGxlLS1uZXdzbGV0dGVyOjphZnRlciB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAtMnB4OyB9IH1cbiAgLnNlYXJjaC1ib3hfX3RpdGxlIHNwYW4ge1xuICAgIGNvbG9yOiAjMjZhM2RjOyB9XG5cbi5zZWFyY2gtYm94X19zZWFyY2gtY29udGFpbmVyIHtcbiAgYm9yZGVyOiAwO1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIG1hcmdpbjogMS41cmVtIDAgMDtcbiAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogZmxleDsgfSB9XG4gIC5zZWFyY2gtYm94X19zZWFyY2gtY29udGFpbmVyIGxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zZWFyY2gtYm94X19zZWFyY2gtY29udGFpbmVyIGZpZWxkc2V0IHtcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXIgLnNlYXJjaC1ib3hfX3NlYXJjaC1pbnB1dCxcbiAgICAuc2VhcmNoLWJveF9fc2VhcmNoLWNvbnRhaW5lciAuc2VhcmNoLWJveF9fc2VhcmNoLXN1Ym1pdCB7XG4gICAgICBoZWlnaHQ6IDQ1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXIgLnNlYXJjaC1ib3hfX3NlYXJjaC1pbnB1dCxcbiAgICAuc2VhcmNoLWJveF9fc2VhcmNoLWNvbnRhaW5lciAuc2VhcmNoLWJveF9fc2VhcmNoLXN1Ym1pdCB7XG4gICAgICBoZWlnaHQ6IDU1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXIgLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXItY29sLWwge1xuICAgICAgZmxleDogMSAxIDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuc2VhcmNoLWJveF9fc2VhcmNoLWNvbnRhaW5lciAuc2VhcmNoLWJveF9fc2VhcmNoLWNvbnRhaW5lci1jb2wtcixcbiAgICAuc2VhcmNoLWJveF9fc2VhcmNoLWNvbnRhaW5lciAuc2VhcmNoLWJveF9fc2VhcmNoLXN1Ym1pdCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5zZWFyY2gtYm94X19zZWFyY2gtY29udGFpbmVyIC5zZWFyY2gtYm94X19zZWFyY2gtY29udGFpbmVyLWNvbC1yLFxuICAgIC5zZWFyY2gtYm94X19zZWFyY2gtY29udGFpbmVyIC5zZWFyY2gtYm94X19zZWFyY2gtc3VibWl0IHtcbiAgICAgIGZsZXg6IDAgMCA5NXB4O1xuICAgICAgd2lkdGg6IDk1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXIgLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXItY29sLXIsXG4gICAgLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXIgLnNlYXJjaC1ib3hfX3NlYXJjaC1zdWJtaXQge1xuICAgICAgZmxleDogMCAwIDEyMHB4O1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgd2lkdGg6IDEyMHB4OyB9IH1cbiAgLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXIgLnNlYXJjaC1ib3hfX3NlYXJjaC1pbnB1dCB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXIgLnNlYXJjaC1ib3hfX3NlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICM5MjlhOWQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAgIC5zZWFyY2gtYm94X19zZWFyY2gtY29udGFpbmVyIC5zZWFyY2gtYm94X19zZWFyY2gtaW5wdXQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXIgLnNlYXJjaC1ib3hfX3NlYXJjaC1pbnB1dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXIgLnNlYXJjaC1ib3hfX3NlYXJjaC1pbnB1dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDsgfSB9XG4gIC5zZWFyY2gtYm94X19zZWFyY2gtY29udGFpbmVyIC5zZWFyY2gtYm94X19zZWFyY2gtc3VibWl0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjQ4YzNiO1xuICAgIGJvcmRlcjogMDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cyBlYXNlLW91dDsgfVxuICAgIC5zZWFyY2gtYm94X19zZWFyY2gtY29udGFpbmVyIC5zZWFyY2gtYm94X19zZWFyY2gtc3VibWl0OmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5NGQ2MGE7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuZGggLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXIgLnNlYXJjaC1ib3hfX3NlYXJjaC1zdWJtaXQge1xuICAgICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuLnNlYXJjaC1ib3hfX3RleHQge1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gIG1heC13aWR0aDogNzYwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLnNlYXJjaC1ib3hfX3RleHQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgLnNlYXJjaC1ib3hfX3RleHQgPiAqOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnNlYXJjaC1nbG9iYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnNlYXJjaC1nbG9iYWxfX2lubmVyIHtcbiAgbWF4LXdpZHRoOiA3My42MjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LXdpZHRoOiA2MHJlbTtcbiAgcGFkZGluZzogNGVtIDA7IH1cbiAgLnNlYXJjaC1nbG9iYWxfX2lubmVyOjphZnRlciwgLnNlYXJjaC1nbG9iYWxfX2lubmVyOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5zZWFyY2gtZ2xvYmFsX19pbm5lcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5zZWFyY2gtZ2xvYmFsX19pbm5lciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9IH1cblxuLnNlYXJjaC1nbG9iYWxfX3RpdGxlIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzE0NjZhMTtcbiAgZm9udC1zaXplOiAzMnB4O1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNlYXJjaC1nbG9iYWxfX2Zvcm0ge1xuICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG4uc2VhcmNoLWdsb2JhbF9fc2VhcmNoLWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNlYXJjaC1nbG9iYWxfX3NlYXJjaC1pY29uOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuc2VhcmNoLWdsb2JhbF9fc2VhcmNoLWljb246OmJlZm9yZSB7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsZWZ0OiAxNHB4O1xuICAgICAgdG9wOiAxNHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zZWFyY2gtZ2xvYmFsX19zZWFyY2gtaWNvbjo6YmVmb3JlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICB0b3A6IDE2cHg7IH0gfVxuXG4uc2VhcmNoLWdsb2JhbF9faW5wdXQge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5zZWFyY2gtZ2xvYmFsX19pbnB1dCB7XG4gICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICBoZWlnaHQ6IDQ3cHggIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweCAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmYgOHB4IDhweCB1cmwoKSAhaW1wb3J0YW50O1xuICAgICAgYm94LXNpemluZzogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAwcHggIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2VhcmNoLWdsb2JhbF9faW5wdXQge1xuICAgICAgZmxleDogMSAxIGF1dG8gIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMjlweCAhaW1wb3J0YW50O1xuICAgICAgaGVpZ2h0OiA1NnB4ICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDUwcHggIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctdG9wOiAwcHggIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwcHggIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmIDhweCA4cHggdXJsKCkgIWltcG9ydGFudDsgfSB9XG5cbi5zZWFyY2gtZ2xvYmFsX19zdWJtaXQge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOThkMjk7XG4gIGJvcmRlcjogMDtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuc2VhcmNoLWdsb2JhbF9fc3VibWl0IHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICBwYWRkaW5nOiAxNHB4IDIwcHg7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2VhcmNoLWdsb2JhbF9fc3VibWl0IHtcbiAgICAgIGZsZXg6IDAgMCAxNTBweDtcbiAgICAgIGhlaWdodDogNTZweDsgfSB9XG5cbi5zZWFyY2gtcmVzdWx0cyB7XG4gIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXgtd2lkdGg6IDYwcmVtO1xuICBwYWRkaW5nOiAxcmVtIDA7IH1cbiAgLnNlYXJjaC1yZXN1bHRzOjphZnRlciwgLnNlYXJjaC1yZXN1bHRzOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5zZWFyY2gtcmVzdWx0czo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5zZWFyY2gtcmVzdWx0cyB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDMwcHg7IH0gfVxuICAuc2VhcmNoLXJlc3VsdHMgLnN0LXNlYXJjaC1jb250YWluZXIgLnN0LXNlYXJjaC1zdW1tYXJ5IC5zdC1xdWVyeS1wcmVzZW50IHtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTZlN2U4O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDdweDsgfVxuICAgIC5zZWFyY2gtcmVzdWx0cyAuc3Qtc2VhcmNoLWNvbnRhaW5lciAuc3Qtc2VhcmNoLXN1bW1hcnkgLnN0LXF1ZXJ5LXByZXNlbnQgc3Ryb25nIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIC5zZWFyY2gtcmVzdWx0cyAuc3Qtc2VhcmNoLWNvbnRhaW5lciAuc3Qtc2VhcmNoLXJlc3VsdHMgLl9fc3dpZnR5cGVfcmVzdWx0IHtcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIHBhZGRpbmc6IDNweCAxOHB4IDAgMDsgfVxuICAgIC5zZWFyY2gtcmVzdWx0cyAuc3Qtc2VhcmNoLWNvbnRhaW5lciAuc3Qtc2VhcmNoLXJlc3VsdHMgLl9fc3dpZnR5cGVfcmVzdWx0OjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAuc2VhcmNoLXJlc3VsdHMgLnN0LXNlYXJjaC1jb250YWluZXIgLnN0LXNlYXJjaC1yZXN1bHRzIC5zdC11aS10eXBlLWhlYWRpbmcge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICMwMDY2YTE7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMjUwbXMgZWFzZTtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAuc2VhcmNoLXJlc3VsdHMgLnN0LXNlYXJjaC1jb250YWluZXIgLnN0LXNlYXJjaC1yZXN1bHRzIC5zdC11aS10eXBlLWhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDE5cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5zZWFyY2gtcmVzdWx0cyAuc3Qtc2VhcmNoLWNvbnRhaW5lciAuc3Qtc2VhcmNoLXJlc3VsdHMgLnN0LXVpLXR5cGUtaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjNweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNlYXJjaC1yZXN1bHRzIC5zdC1zZWFyY2gtY29udGFpbmVyIC5zdC1zZWFyY2gtcmVzdWx0cyAuc3QtdWktdHlwZS1oZWFkaW5nIHtcbiAgICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgICAuc2VhcmNoLXJlc3VsdHMgLnN0LXNlYXJjaC1jb250YWluZXIgLnN0LXNlYXJjaC1yZXN1bHRzIC5zdC11aS10eXBlLWhlYWRpbmcgZW0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBjb2xvcjogI2Y5OGQyOTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zZWFyY2gtcmVzdWx0cyAuc3Qtc2VhcmNoLWNvbnRhaW5lciAuc3Qtc2VhcmNoLXJlc3VsdHMgLnN0LXVpLXR5cGUtaGVhZGluZzpob3ZlciwgLnNlYXJjaC1yZXN1bHRzIC5zdC1zZWFyY2gtY29udGFpbmVyIC5zdC1zZWFyY2gtcmVzdWx0cyAuc3QtdWktdHlwZS1oZWFkaW5nOmZvY3VzIHtcbiAgICAgICAgb3BhY2l0eTogLjc7IH0gfVxuICAuc2VhcmNoLXJlc3VsdHMgLnN0LXNlYXJjaC1jb250YWluZXIgLnN0LXNlYXJjaC1yZXN1bHRzIC5zdC11aS10eXBlLWRldGFpbCB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIG1heC1oZWlnaHQ6IG5vbmU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gIC5kaCAuc2VydmljZXMge1xuICAgIG1hcmdpbi10b3A6IDJyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5kaCAuc2VydmljZXMge1xuICAgIG1hcmdpbi10b3A6IDRyZW07IH0gfVxuXG4uc2VydmljZXNfX2NvbnRhaW5lciB7XG4gIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnNlcnZpY2VzX19jb250YWluZXI6OmFmdGVyLCAuc2VydmljZXNfX2NvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAuc2VydmljZXNfX2NvbnRhaW5lcjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5zZXJ2aWNlc19fY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyNXB4OyB9IH1cblxuLnNlcnZpY2VzX19jb250ZW50IHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2VydmljZXNfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cblxuLnNlcnZpY2VzX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5zZXJ2aWNlc19fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2VydmljZXNfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQ4cHg7IH0gfVxuICAuZGggLnNlcnZpY2VzX190aXRsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLmRoIC5zZXJ2aWNlc19fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDI4cHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZGggLnNlcnZpY2VzX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9XG5cbi5oZWFydC12YXNjdWxhciAuc2VydmljZXMsIC51cmdlbnQtY2FyZSAuc2VydmljZXMge1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5oZWFydC12YXNjdWxhciAuc2VydmljZXMsIC51cmdlbnQtY2FyZSAuc2VydmljZXMge1xuICAgICAgcGFkZGluZy10b3A6IDFyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oZWFydC12YXNjdWxhciAuc2VydmljZXMsIC51cmdlbnQtY2FyZSAuc2VydmljZXMge1xuICAgICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtOyB9IH1cblxuLnNlcnZpY2VzX19zdWJ0aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMwMDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgcGFkZGluZzogMCA0MHB4OyB9XG5cbi5zZXJ2aWNlc19fYnRuIHtcbiAgbWFyZ2luLXRvcDogMjBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuZGggLnNlcnZpY2VzX19idG4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI2YTNkYztcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG4uZGggLnNlcnZpY2VzIC5jYXJvdXNlbF9fYXJyb3ctLWxlZnQge1xuICBsZWZ0OiA1cHg7IH1cblxuLmRoIC5zZXJ2aWNlcyAuY2Fyb3VzZWxfX2Fycm93LS1yaWdodCB7XG4gIHJpZ2h0OiA1cHg7IH1cblxuLnNoYXJlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuc2hhcmUge1xuICAgICAgbWF4LXdpZHRoOiA3My42MjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmO1xuICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDsgfVxuICAgICAgLnNoYXJlOjphZnRlciwgLnNoYXJlOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogdGFibGU7IH1cbiAgICAgIC5zaGFyZTo6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNoYXJlIHtcbiAgICAgIHBhZGRpbmc6IDZweCAyMXB4IDEwcHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICAgIC5zaGFyZS0tZm9yLW1lZGl1bS1kb3duIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgLmhlcm8gLnNoYXJlIHtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAyMnB4IDIycHggLTIycHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuc2hhcmVfX2NvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2hhcmVfX2NvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5zaGFyZV9fY29udGFpbmVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAuc2hhcmVfX3RpdGxlIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5zaGFyZV9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNHB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNoYXJlX190aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5zaGFyZV9fbmF2aWdhdGlvbiB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNoYXJlX19uYXZpZ2F0aW9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH0gfVxuICAuc2hhcmVfX2xpc3Qge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAuc2hhcmVfX2l0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDRweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnNoYXJlX19pdGVtOmZpcnN0LW9mLXR5cGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgLnNoYXJlX19pdGVtOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgLmhlcm8gLnNoYXJlX19pdGVtIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc2hhcmVfX2l0ZW0ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDZweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNnB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNoYXJlX19pdGVtIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfSB9XG4gIC5zaGFyZV9fbGluayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5OGQyOTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjUwbXMgZWFzZS1vdXQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC5zaGFyZV9fbGluayB7XG4gICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgd2lkdGg6IDM2cHg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuc2hhcmVfX2xpbmsge1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIHdpZHRoOiAyMHB4OyB9IH1cbiAgICAuc2hhcmVfX2xpbms6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI2YTNkYztcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIC5zaGFyZV9fbG9nbyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDUwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnNoYXJlX19saW5rLS15ZWxwIC5zaGFyZV9fbG9nbyB7XG4gICAgICAgIGhlaWdodDogMjJweDtcbiAgICAgICAgd2lkdGg6IDIycHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTFweDtcbiAgICAgICAgbWFyZ2luLXRvcDogNnB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNoYXJlX19saW5rLS15ZWxwIC5zaGFyZV9fbG9nbyB7XG4gICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtN3B4O1xuICAgICAgICBtYXJnaW4tdG9wOiAzcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnNoYXJlX19saW5rLS1mYWNlYm9vayAuc2hhcmVfX2xvZ28ge1xuICAgICAgICBoZWlnaHQ6IDIycHg7XG4gICAgICAgIHdpZHRoOiAxMXB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTVweDtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNoYXJlX19saW5rLS1mYWNlYm9vayAuc2hhcmVfX2xvZ28ge1xuICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgIHdpZHRoOiA2cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtM3B4O1xuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnNoYXJlX19saW5rLS10d2l0dGVyIC5zaGFyZV9fbG9nbyB7XG4gICAgICAgIGhlaWdodDogMTZweDtcbiAgICAgICAgd2lkdGg6IDE5cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtOXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNoYXJlX19saW5rLS10d2l0dGVyIC5zaGFyZV9fbG9nbyB7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnNoYXJlX19saW5rLS1nb29nbGUtcGx1cyAuc2hhcmVfX2xvZ28ge1xuICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgIHdpZHRoOiAyOHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTE0cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDlweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zaGFyZV9fbGluay0tZ29vZ2xlLXBsdXMgLnNoYXJlX19sb2dvIHtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC04cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAuc2hhcmVfX2xpbmstLWxpbmtlZGluIC5zaGFyZV9fbG9nbyB7XG4gICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgd2lkdGg6IDI4cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMTRweDtcbiAgICAgICAgbWFyZ2luLXRvcDogOXB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNoYXJlX19saW5rLS1saW5rZWRpbiAuc2hhcmVfX2xvZ28ge1xuICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgIHdpZHRoOiA5cHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnNoYXJlX19saW5rLS1lbWFpbCAuc2hhcmVfX2xvZ28ge1xuICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgIHdpZHRoOiAyMnB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogLTExcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDlweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zaGFyZV9fbGluay0tZW1haWwgLnNoYXJlX19sb2dvIHtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICB3aWR0aDogMTJweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC02cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDsgfSB9XG5cbi5kaCAuc2hhcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLmRoIC5zaGFyZV9faW5uZXIge1xuICBtYXgtd2lkdGg6IDczLjYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAuZGggLnNoYXJlX19pbm5lcjo6YWZ0ZXIsIC5kaCAuc2hhcmVfX2lubmVyOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gIC5kaCAuc2hhcmVfX2lubmVyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cblxuLmRoIC5zaGFyZV9fY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC5kaCAuc2hhcmVfX2NvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAxOHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5kaCAuc2hhcmVfX2NvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAxMnB4IDE4cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmRoIC5zaGFyZV9fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDsgfSB9XG5cbi5kaCAuc2hhcmVfX25hdmlnYXRpb24ge1xuICBtYXJnaW4tbGVmdDogNnB4OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRoIC5zaGFyZV9faXRlbSB7XG4gICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5kaCAuc2hhcmVfX2xpbmsge1xuICAgIGhlaWdodDogMzBweDtcbiAgICB3aWR0aDogMzBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuZGggLnNoYXJlX19saW5rLS1mYWNlYm9vayAuc2hhcmVfX2xvZ28ge1xuICAgIGhlaWdodDogMTdweDtcbiAgICB3aWR0aDogOXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgIG1hcmdpbi10b3A6IDZweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuZGggLnNoYXJlX19saW5rLS10d2l0dGVyIC5zaGFyZV9fbG9nbyB7XG4gICAgaGVpZ2h0OiAxM3B4O1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtOHB4O1xuICAgIG1hcmdpbi10b3A6IDlweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuZGggLnNoYXJlX19saW5rLS1saW5rZWRpbiAuc2hhcmVfX2xvZ28ge1xuICAgIGhlaWdodDogMTRweDtcbiAgICB3aWR0aDogMjJweDtcbiAgICBtYXJnaW4tbGVmdDogLTExcHg7XG4gICAgbWFyZ2luLXRvcDogN3B4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5kaCAuc2hhcmVfX2xpbmstLWVtYWlsIC5zaGFyZV9fbG9nbyB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtOXB4O1xuICAgIG1hcmdpbi10b3A6IDhweDsgfSB9XG5cbi5zbGlkZXItLWRhdGVyYW5nZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkM2QzZDM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnNsaWRlci0tZGF0ZXJhbmdlOjpiZWZvcmUsIC5zbGlkZXItLWRhdGVyYW5nZTo6YWZ0ZXIge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2QzZDNkMztcbiAgICBjb250ZW50OiAnJztcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTE3cHg7XG4gICAgd2lkdGg6IDFweDsgfVxuICAuc2xpZGVyLS1kYXRlcmFuZ2U6OmJlZm9yZSB7XG4gICAgbGVmdDogMTJweDsgfVxuICAuc2xpZGVyLS1kYXRlcmFuZ2U6OmFmdGVyIHtcbiAgICByaWdodDogMTJweDsgfVxuICAuc2xpZGVyLS1kYXRlcmFuZ2UgLnNsaWRlci1ydWxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDNkM2QzO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGxlZnQ6IDEycHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxMnB4O1xuICAgIHRvcDogMXB4OyB9XG4gIC5zbGlkZXItLWRhdGVyYW5nZSAuc2xpZGVyLWhhbmRsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYWZkNztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvYXNzZXRzL2ltZy9zdmcvaWNvbi1zbGlkZXItYXJyb3dzLXdoaXRlLnN2Z1wiKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEycHggOXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIHdpZHRoOiAyNHB4OyB9XG4gIC5zbGlkZXItLWRhdGVyYW5nZSAuc2xpZGVyLWZpbGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGFmZDc7XG4gICAgaGVpZ2h0OiAycHg7IH1cbiAgLnNsaWRlci0tZGF0ZXJhbmdlIC5zbGlkZXJfX3ZhbHVlcyB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLnNpZGViYXIge1xuICBkaXNwbGF5OiBub25lO1xuICBvcmRlcjogMDtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIHdpZHRoOiAyNDBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkge1xuICAgIC5zaWRlYmFyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLmRoIC5zaWRlYmFyIHtcbiAgICBwYWRkaW5nLXRvcDogNXB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAuZGggLnNpZGViYXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZGggLnNpZGViYXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5zaWRlYmFyX19wYWdlLXRpdGxlLCAuc2lkZWJhcl9fcGFnZS10aXRsZS0tZXhwYW5kYWJsZSB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDczODcyO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nOiAxN3B4IDFyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC5zaWRlYmFyX19wYWdlLXRpdGxlLS1leHBhbmRhYmxlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLnNpZGViYXJfX3BhZ2UtdGl0bGUtLWV4cGFuZGFibGUgLnNpZGViYXJfX3RvZ2dsZTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnKyc7IH1cbiAgICAgIC5zaWRlYmFyX19wYWdlLXRpdGxlLS1leHBhbmRhYmxlLmFjdGl2ZSAuc2lkZWJhcl9fdG9nZ2xlOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICctJzsgfVxuICAgIC5mb3VuZGF0aW9uIC5zaWRlYmFyX19wYWdlLXRpdGxlLCAuZm91bmRhdGlvbiAuc2lkZWJhcl9fcGFnZS10aXRsZS0tZXhwYW5kYWJsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWU5MDY1OyB9XG4gICAgLnNpZGViYXJfX3BhZ2UtdGl0bGUgYSwgLnNpZGViYXJfX3BhZ2UtdGl0bGUtLWV4cGFuZGFibGUgYSB7XG4gICAgICBjb2xvcjogI2ZmZjsgfVxuICAuc2lkZWJhcl9fbWVudSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGJvcmRlci13aWR0aDogMCAwIDFweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgICAuc2lkZWJhcl9fbWVudV9fbGlzdCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLnNpZGViYXJfX21lbnVfX2l0ZW0sIC5zaWRlYmFyX19tZW51X19pdGVtLS1leHBhbmQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAuc2lkZWJhcl9fbWVudV9faXRlbTo6YWZ0ZXIsIC5zaWRlYmFyX19tZW51X19pdGVtLS1leHBhbmQ6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGxlZnQ6IDFyZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDJyZW0pOyB9XG4gICAgICAuc2lkZWJhcl9fbWVudV9faXRlbTpsYXN0LW9mLXR5cGU6OmFmdGVyLCAuc2lkZWJhcl9fbWVudV9faXRlbS0tZXhwYW5kOmxhc3Qtb2YtdHlwZTo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuc2lkZWJhcl9fbWVudV9faXRlbS5hY3RpdmUsIC5hY3RpdmUuc2lkZWJhcl9fbWVudV9faXRlbS0tZXhwYW5kIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzE0NjZhMTsgfVxuICAgICAgICAuc2lkZWJhcl9fbWVudV9faXRlbS5hY3RpdmUgLnNpZGViYXJfX21lbnVfX3BhZGRpbmcgPiBhLCAuYWN0aXZlLnNpZGViYXJfX21lbnVfX2l0ZW0tLWV4cGFuZCAuc2lkZWJhcl9fbWVudV9fcGFkZGluZyA+IGEge1xuICAgICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAgICAgLnNpZGViYXJfX21lbnVfX2l0ZW0uYWN0aXZlIC5zaWRlYmFyX19tZW51X19wYWRkaW5nID4gYTo6YWZ0ZXIsIC5hY3RpdmUuc2lkZWJhcl9fbWVudV9faXRlbS0tZXhwYW5kIC5zaWRlYmFyX19tZW51X19wYWRkaW5nID4gYTo6YWZ0ZXIge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgICAgLnNpZGViYXJfX21lbnVfX2l0ZW0uYWN0aXZlIC5zaWRlYmFyX19tZW51X190b2dnbGUsIC5hY3RpdmUuc2lkZWJhcl9fbWVudV9faXRlbS0tZXhwYW5kIC5zaWRlYmFyX19tZW51X190b2dnbGUge1xuICAgICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAgICAgLnNpZGViYXJfX21lbnVfX2l0ZW0uYWN0aXZlIC5zaWRlYmFyX19tZW51X190b2dnbGU6aG92ZXIsIC5hY3RpdmUuc2lkZWJhcl9fbWVudV9faXRlbS0tZXhwYW5kIC5zaWRlYmFyX19tZW51X190b2dnbGU6aG92ZXIsIC5zaWRlYmFyX19tZW51X19pdGVtLmFjdGl2ZSAuc2lkZWJhcl9fbWVudV9fdG9nZ2xlOmZvY3VzLCAuYWN0aXZlLnNpZGViYXJfX21lbnVfX2l0ZW0tLWV4cGFuZCAuc2lkZWJhcl9fbWVudV9fdG9nZ2xlOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMTQ2NmExOyB9XG4gICAgICAgICAgLnNpZGViYXJfX21lbnVfX2l0ZW0uYWN0aXZlIC5zaWRlYmFyX19tZW51X190b2dnbGU6OmFmdGVyLCAuYWN0aXZlLnNpZGViYXJfX21lbnVfX2l0ZW0tLWV4cGFuZCAuc2lkZWJhcl9fbWVudV9fdG9nZ2xlOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnLSc7IH1cbiAgICAuc2lkZWJhcl9fbWVudV9fcGFkZGluZyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgICBib3JkZXItd2lkdGg6IDAgMXB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC40cyBlYXNlLW91dCwgYm9yZGVyIC40cyBlYXNlLW91dDsgfVxuICAgICAgLnNpZGViYXJfX21lbnVfX3BhZGRpbmc6aG92ZXIsIC5zaWRlYmFyX19tZW51X19wYWRkaW5nOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzE0NjZhMTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMjRzIGVhc2Utb3V0LCBib3JkZXIgLjI0cyBlYXNlLW91dDsgfVxuICAgICAgICAuc2lkZWJhcl9fbWVudV9fcGFkZGluZzpob3ZlciA+IGEsIC5zaWRlYmFyX19tZW51X19wYWRkaW5nOmZvY3VzID4gYSB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjI0cyBlYXNlLW91dCwgYm9yZGVyIC4yNHMgZWFzZS1vdXQ7IH1cbiAgICAgICAgICAuc2lkZWJhcl9fbWVudV9fcGFkZGluZzpob3ZlciA+IGE6OmFmdGVyLCAuc2lkZWJhcl9fbWVudV9fcGFkZGluZzpmb2N1cyA+IGE6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjI0cyBlYXNlLW91dCwgYm9yZGVyIC4yNHMgZWFzZS1vdXQ7IH1cbiAgICAgICAgLnNpZGViYXJfX21lbnVfX3BhZGRpbmc6aG92ZXIgLnNpZGViYXJfX21lbnVfX3RvZ2dsZSwgLnNpZGViYXJfX21lbnVfX3BhZGRpbmc6Zm9jdXMgLnNpZGViYXJfX21lbnVfX3RvZ2dsZSB7XG4gICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgICAgICAuc2lkZWJhcl9fbWVudV9fcGFkZGluZzpob3ZlciAuc2lkZWJhcl9fbWVudV9fdG9nZ2xlOmhvdmVyLCAuc2lkZWJhcl9fbWVudV9fcGFkZGluZzpob3ZlciAuc2lkZWJhcl9fbWVudV9fdG9nZ2xlOmZvY3VzLCAuc2lkZWJhcl9fbWVudV9fcGFkZGluZzpmb2N1cyAuc2lkZWJhcl9fbWVudV9fdG9nZ2xlOmhvdmVyLCAuc2lkZWJhcl9fbWVudV9fcGFkZGluZzpmb2N1cyAuc2lkZWJhcl9fbWVudV9fdG9nZ2xlOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMTQ2NmExOyB9XG4gICAgICAuc2lkZWJhcl9fbWVudV9fcGFkZGluZyA+IGEge1xuICAgICAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGNvbG9yOiAjMTQ2NmExO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBmb250LXNpemU6IC44NzVyZW07XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjMyNXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC40cyBlYXNlLW91dDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuc2lkZWJhcl9fbWVudV9fdG9nZ2xlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgY29sb3I6ICMxNDY2YTE7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuNHMgZWFzZS1vdXQsIGNvbG9yIC40cyBlYXNlLW91dDtcbiAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgei1pbmRleDogMTsgfVxuICAgICAgLnNpZGViYXJfX21lbnVfX3RvZ2dsZTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnKyc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLnNpZGViYXJfX21lbnVfX3RvZ2dsZTpob3ZlciwgLnNpZGViYXJfX21lbnVfX3RvZ2dsZTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjI1cyBlYXNlLW91dCwgY29sb3IgLjI1cyBlYXNlLW91dDsgfVxuICAuc2lkZWJhcl9fc3ViLW1lbnUge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGJvcmRlci13aWR0aDogMCAxcHg7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuc2lkZWJhcl9fc3ViLW1lbnVfX2l0ZW0ge1xuICAgICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBmb250LXNpemU6IC44NTdyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4zMjVyZW07XG4gICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5zaWRlYmFyX19zdWItbWVudV9faXRlbSBhIHtcbiAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuNHMgZWFzZS1vdXQ7IH1cbiAgICAgICAgLnNpZGViYXJfX3N1Yi1tZW51X19pdGVtIGE6aG92ZXIsIC5zaWRlYmFyX19zdWItbWVudV9faXRlbSBhOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogI2Y5OGQyOTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuMjRzIGVhc2Utb3V0OyB9XG4gICAgICAgICAgLmZvdW5kYXRpb24gLnNpZGViYXJfX3N1Yi1tZW51X19pdGVtIGE6aG92ZXIsIC5mb3VuZGF0aW9uIC5zaWRlYmFyX19zdWItbWVudV9faXRlbSBhOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMjZhM2RjOyB9XG4gICAgICAuc2lkZWJhcl9fc3ViLW1lbnVfX2l0ZW0uYWN0aXZlID4gYSB7XG4gICAgICAgIGNvbG9yOiAjZjk4ZDI5OyB9XG4gICAgICAuc2lkZWJhcl9fc3ViLW1lbnVfX2l0ZW0ub3BlbiAuc2lkZWJhcl9fc3ViLW1lbnVfX3RvZ2dsZTo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnLSc7IH1cbiAgICAgIC5zaWRlYmFyX19zdWItbWVudV9faXRlbSA+IC5zaWRlYmFyX19zdWItbWVudSB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAuNXJlbTsgfVxuICAgIC5zaWRlYmFyX19zdWItbWVudV9fdG9nZ2xlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgY29sb3I6ICMxNDY2YTE7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgdG9wOiA2cHg7XG4gICAgICB3aWR0aDogMjRweDsgfVxuICAgICAgLnNpZGViYXJfX3N1Yi1tZW51X190b2dnbGU6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJysnO1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2lkZWJhcl9fY3RhIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZXNtb2tlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5mb3VuZGF0aW9uIC5zaWRlYmFyX19jdGEge1xuICAgICAgYmFja2dyb3VuZDogI2Y3ZjZmMTsgfVxuICAgIC5zaWRlYmFyX19jdGE6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjk4ZDI5O1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogNHB4O1xuICAgICAgbGVmdDogY2FsYyg1MCUgLSAzMHB4KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgei1pbmRleDogMTsgfVxuICAgICAgLmZvdW5kYXRpb24gLnNpZGViYXJfX2N0YTo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBlOTJhMjsgfVxuICAgIC5zaWRlYmFyX19jdGFfX2l0ZW0ge1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5zaWRlYmFyX19jdGFfX2l0ZW06OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIGxlZnQ6IDEuNXJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7IH1cbiAgICAgIC5zaWRlYmFyX19jdGFfX2l0ZW06bGFzdC1vZi10eXBlOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIC5zaWRlYmFyX19jdGFfX2l0ZW0gYSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgY29sb3I6ICMwMDY2YTE7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGZvbnQtc2l6ZTogMC45MzhlbTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTI1ZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogNS41cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyLjVyZW07XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjRzIGVhc2Utb3V0LCBjb2xvciAuNHMgZWFzZS1vdXQ7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5zaWRlYmFyX19jdGFfX2l0ZW0gYTpob3ZlciwgLnNpZGViYXJfX2N0YV9faXRlbSBhOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjMTQ2NmExO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjI0cyBlYXNlLW91dCwgY29sb3IgLjI0cyBlYXNlLW91dDsgfVxuICAgICAgICAgIC5zaWRlYmFyX19jdGFfX2l0ZW0gYTpob3Zlcjo6YmVmb3JlLCAuc2lkZWJhcl9fY3RhX19pdGVtIGE6Zm9jdXM6OmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMjRzIGVhc2Utb3V0LCBjb2xvciAuMjRzIGVhc2Utb3V0OyB9XG4gICAgICAgICAgLmZvdW5kYXRpb24gLnNpZGViYXJfX2N0YV9faXRlbSBhOmhvdmVyLCAuZm91bmRhdGlvbiAuc2lkZWJhcl9fY3RhX19pdGVtIGE6Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2FlOTA2NTsgfVxuICAgICAgICAgICAgLmZvdW5kYXRpb24gLnNpZGViYXJfX2N0YV9faXRlbSBhOmhvdmVyOjpiZWZvcmUsIC5mb3VuZGF0aW9uIC5zaWRlYmFyX19jdGFfX2l0ZW0gYTpmb2N1czo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29sb3I6ICNmZmY7IH1cbiAgICAgICAgLnNpZGViYXJfX2N0YV9faXRlbSBhOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICBjb2xvcjogI2Y5OGQyOTtcbiAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgaGVpZ2h0OiAzcmVtO1xuICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDdweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHRvcDogY2FsYyg1MCUgLSAxLjVyZW0pO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjRzIGVhc2Utb3V0LCBjb2xvciAuNHMgZWFzZS1vdXQ7XG4gICAgICAgICAgd2lkdGg6IDNyZW07IH1cbiAgICAgICAgICAuZm91bmRhdGlvbiAuc2lkZWJhcl9fY3RhX19pdGVtIGE6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogIzBlOTJhMjsgfVxuICAgICAgLnNpZGViYXJfX2N0YV9faXRlbS5hY3RpdmUgYSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMxNDY2YTE7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAgIC5mb3VuZGF0aW9uIC5zaWRlYmFyX19jdGFfX2l0ZW0uYWN0aXZlIGEge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNhZTkwNjU7IH1cbiAgICAgICAgLnNpZGViYXJfX2N0YV9faXRlbS5hY3RpdmUgYTo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4yNHMgZWFzZS1vdXQsIGNvbG9yIC4yNHMgZWFzZS1vdXQ7IH1cbiAgLnNpZGViYXJfX2NhbGwge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6ICMwNjA2MDY7XG4gICAgZm9udC1zaXplOiAwLjkzOHJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmRoIC5zaWRlYmFyX19jYWxsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE4cHg7IH1cbiAgLnNpZGViYXJfX3RlbCB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogIzAxNjVhMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9XG4gIC5zaWRlYmFyX190b2dnbGUge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGhlaWdodDogMjRweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgdG9wOiBjYWxjKDUwJSAtIDEycHgpO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjRzIGVhc2Utb3V0O1xuICAgIHdpZHRoOiAyNHB4OyB9XG4gICAgLnNpZGViYXJfX3RvZ2dsZTo6YWZ0ZXIge1xuICAgICAgY29sb3I6ICMxNDY2YTE7XG4gICAgICBjb250ZW50OiAn4oCTJztcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgcGFkZGluZy10b3A6IDhweDtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIC40cyBlYXNlLW91dDsgfVxuICAgIC5zaWRlYmFyX190b2dnbGU6aG92ZXIsIC5zaWRlYmFyX190b2dnbGU6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogIzA3Mzg3MjtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjI0cyBlYXNlLW91dDsgfVxuICAgICAgLnNpZGViYXJfX3RvZ2dsZTpob3Zlcjo6YWZ0ZXIsIC5zaWRlYmFyX190b2dnbGU6Zm9jdXM6OmFmdGVyIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4yNHMgZWFzZS1vdXQ7IH1cbiAgLnNpZGViYXJfX21vYmlsZS1zd2l0Y2gge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDFyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkge1xuICAgICAgLnNpZGViYXJfX21vYmlsZS1zd2l0Y2gge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICAuc2lkZWJhcl9fbW9iaWxlLXN3aXRjaF9fYnRuIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjZhMTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLWFycm93LXdoaXRlLXctbWVkLnN2Z1wiKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwJSA1MCU7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LXNpemU6IC44NzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMXJlbTtcbiAgICAgIHBhZGRpbmc6IDhweCAxMHB4IDhweCAzNHB4O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjRzIGVhc2Utb3V0O1xuICAgICAgd2lkdGg6IDEyNXB4OyB9XG4gICAgICAuc2lkZWJhcl9fbW9iaWxlLXN3aXRjaF9fYnRuOmhvdmVyLCAuc2lkZWJhcl9fbW9iaWxlLXN3aXRjaF9fYnRuOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMmI0NjtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMjVzIGVhc2Utb3V0OyB9XG4gICAgICAuc2lkZWJhcl9fbW9iaWxlLXN3aXRjaF9fYnRuLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9pY29uLW1lbnUtb3Blbi1zbS5zdmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDglIDUwJTsgfVxuXG4uc3RvcnktY3RhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5kaCAuc3RvcnktY3RhIHtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmRoIC5zdG9yeS1jdGEge1xuICAgICAgbWFyZ2luLXRvcDogNHJlbTsgfSB9XG5cbi5zdG9yeS1jdGFfX3N0b3J5LFxuLnN0b3J5LWN0YV9fc3RvcnktbGluayxcbi5zdG9yeS1jdGFfX2ltZy1jb250YWluZXIsXG4uc3RvcnktY3RhX19pbWcsXG4uc3RvcnktY3RhX19jb250YWluLFxuLnN0b3J5LWN0YV9fc3RvcnktcXVvdGUge1xuICBoZWlnaHQ6IDEwMCU7IH1cblxuLnN0b3J5LWN0YV9fc3RvcnktbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnN0b3J5LWN0YV9fc3RvcnktbGluazpob3ZlciAuc3RvcnktY3RhX19zdG9yeS1xdW90ZS1saW5rOjphZnRlciB7XG4gICAgbGVmdDogNHB4OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAuc3RvcnktY3RhX19pbWctY29udGFpbmVyLFxuICAuc3RvcnktY3RhX19zdG9yeS1xdW90ZSB7XG4gICAgbWluLWhlaWdodDogMzIwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5zdG9yeS1jdGFfX2ltZy1jb250YWluZXIsXG4gIC5zdG9yeS1jdGFfX3N0b3J5LXF1b3RlIHtcbiAgICBtaW4taGVpZ2h0OiAzNzBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnN0b3J5LWN0YV9faW1nLWNvbnRhaW5lcixcbiAgLnN0b3J5LWN0YV9fc3RvcnktcXVvdGUge1xuICAgIG1pbi1oZWlnaHQ6IDQyMHB4OyB9IH1cblxuLnN0b3J5LWN0YV9faW1nLWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgLnN0b3J5LWN0YV9faW1nLWNvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvdHRvbTogMDtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDJzIGVhc2U7IH1cbiAgLnN0b3J5LWN0YV9faW1nLWNvbnRhaW5lcjpob3Zlcjo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAuMjsgfVxuXG4uc3RvcnktY3RhX19pbWcge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBub25lO1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgLnN0b3J5LWN0YV9faW1nLS1zbSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAuc3RvcnktY3RhX19pbWctLW1kIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zdG9yeS1jdGFfX2ltZy0tbGcge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uc3RvcnktY3RhX19jb250YWluIHtcbiAgbWF4LXdpZHRoOiA3My42MjVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmc6IDIwcHg7IH1cbiAgLnN0b3J5LWN0YV9fY29udGFpbjo6YWZ0ZXIsIC5zdG9yeS1jdGFfX2NvbnRhaW46OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnN0b3J5LWN0YV9fY29udGFpbjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi5zdG9yeS1jdGFfX3N0b3J5LXF1b3RlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5zdG9yeS1jdGFfX3N0b3J5LXF1b3RlIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA4MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnN0b3J5LWN0YV9fc3RvcnktcXVvdGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc3RvcnktY3RhX19zdG9yeS1xdW90ZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogNjUlOyB9IH1cblxuLnN0b3J5LWN0YV9fc3RvcnktcXVvdGUtdGV4dCB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuc3RvcnktY3RhX19zdG9yeS1xdW90ZS10ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIHdpZHRoOiA3MCU7IH1cbiAgICAgIC5zdG9yeS1jdGFfX3N0b3J5LXF1b3RlLXRleHQgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc3RvcnktY3RhX19zdG9yeS1xdW90ZS10ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAgIC5zdG9yeS1jdGFfX3N0b3J5LXF1b3RlLXRleHQgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDsgfSB9XG4gIC5zdG9yeS1jdGFfX3N0b3J5LXF1b3RlLXRleHQgc3BhbiB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbi5zdG9yeS1jdGFfX3N0b3J5LXF1b3RlLWxpbmsge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45Mzc1ZW0pIHtcbiAgICAuc3RvcnktY3RhX19zdG9yeS1xdW90ZS1saW5rIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOThkMjk7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgcGFkZGluZzogMThweCAyMHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyNTBtcyBlYXNlOyB9XG4gICAgICAuZm91bmRhdGlvbiAuc3RvcnktY3RhX19zdG9yeS1xdW90ZS1saW5rIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI2YTNkYzsgfVxuICAgICAgLnN0b3J5LWN0YV9fc3RvcnktcXVvdGUtbGluazpob3ZlciwgLnN0b3J5LWN0YV9fc3RvcnktcXVvdGUtbGluazphY3RpdmUsIC5zdG9yeS1jdGFfX3N0b3J5LXF1b3RlLWxpbms6Zm9jdXMge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzk0ZDYwYTsgfVxuICAgICAgICAuZm91bmRhdGlvbiAuc3RvcnktY3RhX19zdG9yeS1xdW90ZS1saW5rOmhvdmVyLCAuZm91bmRhdGlvbiAuc3RvcnktY3RhX19zdG9yeS1xdW90ZS1saW5rOmFjdGl2ZSwgLmZvdW5kYXRpb24gLnN0b3J5LWN0YV9fc3RvcnktcXVvdGUtbGluazpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzI2YTNkYzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc3RvcnktY3RhX19zdG9yeS1xdW90ZS1saW5rIHtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZmZmO1xuICAgICAgY29sb3I6ICNmNDhjM2I7XG4gICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogNHJlbTtcbiAgICAgIHBhZGRpbmctdG9wOiAxcmVtOyB9XG4gICAgICAuc3RvcnktY3RhX19zdG9yeS1xdW90ZS1saW5rOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcIi9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaGV2cm9uLW9yYW5nZS1lLnN2Z1wiKSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDZweCAxMHB4O1xuICAgICAgICBib3R0b206IDFweDtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb250ZW50OiAnXFwwYTAwJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IGxlZnQgLjNzIGVhc2U7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICAgICAgd2lkdGg6IDZweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnN0b3J5LWN0YV9fc3RvcnktcXVvdGUtbGluazpob3Zlcjo6YWZ0ZXIsIC5zdG9yeS1jdGFfX3N0b3J5LXF1b3RlLWxpbms6Zm9jdXM6OmFmdGVyIHtcbiAgICAgIGxlZnQ6IDRweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAuc3RvcnktY3RhX19jdGFzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc3RvcnktY3RhX19jdGFzIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm90dG9tOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDM1JTsgfSB9XG5cbi5zdG9yeS1jdGFfX2N0YSB7XG4gIGNvbG9yOiAjZmZmO1xuICBoZWlnaHQ6IDUwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxMHB4IDMwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnN0b3J5LWN0YV9fY3RhIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAxIDUwJTtcbiAgICAgIGhlaWdodDogNjVweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLnN0b3J5LWN0YV9fY3RhIHAge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAuc3RvcnktY3RhX19jdGEgYTo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvbWljcm9zaXRldGVtcGxhdGVzL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2hldnJvbi13aGl0ZS1lLnN2Z1wiKSBjZW50ZXIgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDZweCAxMHB4O1xuICAgICAgICBib3R0b206IDFweDtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb250ZW50OiAnXFwwYTAwJztcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICBsZWZ0OiAycHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogbGVmdCAuM3MgZWFzZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgICB3aWR0aDogNnB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zdG9yeS1jdGFfX2N0YSBhOmhvdmVyOjphZnRlciwgLnN0b3J5LWN0YV9fY3RhIGE6Zm9jdXM6OmFmdGVyIHtcbiAgICAgIGxlZnQ6IDZweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnN0b3J5LWN0YV9fY3RhIC5idG4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgdG9wOiAzcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnN0b3J5LWN0YV9fY3RhIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgICAgLnN0b3J5LWN0YV9fY3RhICo6bm90KC5idG4pIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuICAuc3RvcnktY3RhX19jdGEtLXRvcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyOCwgMTA5LCAxNTMsIDAuOTI1KTsgfVxuICAuc3RvcnktY3RhX19jdGEtLWJvdHRvbSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0LCA0NiwgOTUsIDAuOTI1KTsgfVxuXG4uZGggdGFibGUge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzk3YWNjMjsgfVxuICAuZGggdGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMSksXG4gIC5kaCB0YWJsZSB0ciB0ZDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgxKSB+IHRkIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuZGggdGFibGUgdHIgdGg6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMSksXG4gIC5kaCB0YWJsZSB0ciB0aDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgxKSB+IHRoIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuZGggdGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMiksXG4gIC5kaCB0YWJsZSB0ciB0ZDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSB+IHRkIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5kaCB0YWJsZSB0ciB0aDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSxcbiAgLmRoIHRhYmxlIHRyIHRoOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpIH4gdGgge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmRoIHRhYmxlIHRyIHRkOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpLFxuICAuZGggdGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMykgfiB0ZCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZGggdGFibGUgdHIgdGg6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyksXG4gIC5kaCB0YWJsZSB0ciB0aDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSB+IHRoIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5kaCB0YWJsZSB0ciB0ZDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSxcbiAgLmRoIHRhYmxlIHRyIHRkOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpIH4gdGQge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmRoIHRhYmxlIHRyIHRoOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpLFxuICAuZGggdGFibGUgdHIgdGg6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCkgfiB0aCB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZGggdGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSksXG4gIC5kaCB0YWJsZSB0ciB0ZDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSB+IHRkIHtcbiAgICB3aWR0aDogMjAlOyB9XG4gIC5kaCB0YWJsZSB0ciB0aDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSxcbiAgLmRoIHRhYmxlIHRyIHRoOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpIH4gdGgge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLmRoIHRhYmxlIHRyIHRkOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpLFxuICAuZGggdGFibGUgdHIgdGQ6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNikgfiB0ZCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAuZGggdGFibGUgdHIgdGg6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNiksXG4gIC5kaCB0YWJsZSB0ciB0aDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSB+IHRoIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5kaCB0YWJsZSB0ciB0ZDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg3KSxcbiAgLmRoIHRhYmxlIHRyIHRkOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDcpIH4gdGQge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLmRoIHRhYmxlIHRyIHRoOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDcpLFxuICAuZGggdGFibGUgdHIgdGg6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNykgfiB0aCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAuZGggdGFibGUgYSB7XG4gICAgY29sb3I6ICMwMDY2YTE7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZGggdGFibGUgYTpob3ZlciwgLmRoIHRhYmxlIGE6Zm9jdXMge1xuICAgICAgICBjb2xvcjogIzI2YTNkYzsgfSB9XG4gIC5kaCB0YWJsZSB0aCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4uZGggLnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3aWR0aDogMTAwJTsgfVxuICAuZGggLnRhYmxlIHRoLFxuICAuZGggLnRhYmxlIHRkIHtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1pbi13aWR0aDogMTU1cHg7XG4gICAgcGFkZGluZzogMTZweCAyMHB4IDEycHg7XG4gICAgcG9zaXRpb246IHN0YXRpYzsgfVxuICAuZGggLnRhYmxlIHRoIHtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbiAgLmRoIC50YWJsZSB0ZCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAuZGggLnRhYmxlID4gdGhlYWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICMxMTNlNzM7IH1cbiAgICAuZGggLnRhYmxlID4gdGhlYWQgdGgge1xuICAgICAgY29sb3I6ICMxMTNlNzM7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxuICAgICAgLmRoIC50YWJsZSA+IHRoZWFkIHRoICsgdGgge1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwOyB9XG4gICAgICAuZGggLnRhYmxlID4gdGhlYWQgdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItcmlnaHQ6IDA7IH1cbiAgLmRoIC50YWJsZSA+IHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjOTdhY2MyOyB9XG4gIC5kaCAudGFibGUgLnRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0OyB9XG4gIC5kaCAudGFibGUgLnRhYmxlX19jYXB0aW9uIHtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGNhcHRpb24tc2lkZTogYm90dG9tO1xuICAgIGNvbG9yOiAjOGE4YThhO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5kaCAudGFibGUudGFibGUtLXN0cmlwZWQgPiB0Ym9keSA+IHRyOm50aC1jaGlsZChldmVuKSA+IHRkLFxuICAuZGggLnRhYmxlLnRhYmxlLS1zdHJpcGVkID4gdGJvZHkgPiB0cjpudGgtY2hpbGQoZXZlbikgPiB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjNmNDsgfVxuICAuZGggLnRhYmxlLnRhYmxlLS1kaXJlY3RvcnkgPiB0aGVhZCA+IHRyID4gdGgsXG4gIC5kaCAudGFibGUudGFibGUtLWRpcmVjdG9yeSA+IHRoZWFkID4gdHIgPiB0ZCxcbiAgLmRoIC50YWJsZS50YWJsZS0tZGlyZWN0b3J5ID4gdGJvZHkgPiB0ciA+IHRoLFxuICAuZGggLnRhYmxlLnRhYmxlLS1kaXJlY3RvcnkgPiB0Ym9keSA+IHRyID4gdGQge1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLmRoIC50YWJsZS50YWJsZS0tZGlyZWN0b3J5ID4gdGhlYWQgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4gIC5kaCAudGFibGUudGFibGUtLWRpcmVjdG9yeSA+IHRoZWFkID4gdHIgPiB0ZDpsYXN0LWNoaWxkLFxuICAuZGggLnRhYmxlLnRhYmxlLS1kaXJlY3RvcnkgPiB0Ym9keSA+IHRyID4gdGg6bGFzdC1jaGlsZCxcbiAgLmRoIC50YWJsZS50YWJsZS0tZGlyZWN0b3J5ID4gdGJvZHkgPiB0ciA+IHRkOmxhc3QtY2hpbGQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uZGggLnRhYmxlLS1yZXNwb25zaXZlIHtcbiAgbWFyZ2luOiAzcmVtIDA7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cbiAgLmRoIC50YWJsZS0tcmVzcG9uc2l2ZTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG4udGFicyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5NjBweCkge1xuICAgIC50YWJzIHtcbiAgICAgIG9yZGVyOiAxOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudGFic19fY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAgIC50YWJzX19jb250YWluZXI6OmFmdGVyLCAudGFic19fY29udGFpbmVyOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogdGFibGU7IH1cbiAgICAgIC50YWJzX19jb250YWluZXI6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50YWJzX193cmFwcGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRhYnNfX3dyYXBwZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50YWJzX193cmFwcGVyOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAudGFic19fbmF2IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50YWJzX19uYXYge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjVmNWY1O1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMThweCAwIDMwcHg7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgICAudGFic19fbmF2OjphZnRlciwgLnRhYnNfX25hdjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgICAudGFic19fbmF2OjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudGFic19fbmF2LWl0ZW0ge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH1cbiAgICAgIC50YWJzX19uYXYtaXRlbSA+IGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMTZweCAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBjb2xvcjogIzAwNjZhMTsgfVxuICAgICAgICAudGFic19fbmF2LWl0ZW0gPiBhOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjMjZhM2RjO1xuICAgICAgICAgIGNvbG9yOiAjMDA1ODhhOyB9XG4gICAgICAgIC50YWJzX19uYXYtaXRlbSA+IGE6Zm9jdXMsIC50YWJzX19uYXYtaXRlbSA+IGFbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjZjk4ZDI5O1xuICAgICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAudGFic19fbmF2LWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgLnRhYnNfX25hdi1pdGVtID4gYTpmb2N1cywgLnRhYnNfX25hdi1pdGVtID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10sIC50YWJzX19uYXYtaXRlbSA+IGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZjk4ZDI5OyB9XG4gICAgICAgIC5mb3VuZGF0aW9uIC50YWJzX19uYXYtaXRlbSA+IGE6Zm9jdXMsIC5mb3VuZGF0aW9uIC50YWJzX19uYXYtaXRlbSA+IGFbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddLCAuZm91bmRhdGlvbiAudGFic19fbmF2LWl0ZW0gPiBhOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAjMjZhM2RjOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudGFic19fbmF2LWxpbmsge1xuICAgICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1O1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDI1MG1zIGVhc2Utb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zIGVhc2Utb3V0OyB9XG4gICAgICAuaXMtYWN0aXZlIC50YWJzX19uYXYtbGluayB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgICAudGFic19fbmF2LWxpbms6aG92ZXIge1xuICAgICAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnRhYnNfX3RvZ2dsZS1saW5rIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgY29sb3I6ICMwMDY2YTE7XG4gICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS4yICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG4gICAgICBwYWRkaW5nOiAyN3B4IDIwcHggIWltcG9ydGFudDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLnRhYnNfX3RvZ2dsZS1saW5rOmhvdmVyLCAudGFic19fdG9nZ2xlLWxpbms6YWN0aXZlLCAudGFic19fdG9nZ2xlLWxpbms6Zm9jdXMge1xuICAgICAgICBjb2xvcjogIzAwNjZhMTsgfVxuICAgICAgLnRhYnNfX3RvZ2dsZS1saW5rOjpiZWZvcmUge1xuICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOThkMjk7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICB0b3A6IDM4cHg7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMjUwbXMgZWFzZTsgfVxuICAgICAgICAuaGVhcnQtdmFzY3VsYXIgLnRhYnNfX3RvZ2dsZS1saW5rOjpiZWZvcmUge1xuICAgICAgICAgIGhlaWdodDogMjhweDtcbiAgICAgICAgICB3aWR0aDogMjhweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDE4cHg7XG4gICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDE0cHgpO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmOThkMjk7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgY29udGVudDogXCIrXCI7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC40cyBlYXNlLW91dCwgY29sb3IgLjRzIGVhc2Utb3V0OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudGFic19fdG9nZ2xlLWxpbmsge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC50YWJzX190b2dnbGUtbGluayAudGFic19fcGx1cyB7XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgdG9wOiAyOHB4O1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcyBlYXNlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudGFic19fdG9nZ2xlLWxpbmsgLnRhYnNfX3BsdXMge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5oZWFydC12YXNjdWxhciAudGFic19fdG9nZ2xlLWxpbmsgPiAudGFic19fcGx1cyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAudGFic19fY29udGVudCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAudGFic19fY29udGVudCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAudGFic19fY29udGVudCA+IGxpIHtcbiAgICAgICAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgICAgICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAudGFic19fY29udGVudCA+IGxpIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDA7IH1cbiAgICAgICAgLnRhYnNfX2NvbnRlbnQgPiBsaSA+IGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAgICAgLnRhYnNfX2NvbnRlbnQgaW5wdXQsXG4gICAgICAgIC50YWJzX19jb250ZW50IHNlbGVjdCxcbiAgICAgICAgLnRhYnNfX2NvbnRlbnQgYSxcbiAgICAgICAgLnRhYnNfX2NvbnRlbnQgYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIC50YWJzX19jb250ZW50ID4gbGkge1xuICAgICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgICAudGFic19fY29udGVudCA+IGxpID4gYSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnRhYnNfX2NvbnRlbnQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnRhYnNfX3BhbmVsIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTZlN2U4O1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAudGFic19fcGFuZWxbYXJpYS1leHBhbmRlZD0ndHJ1ZSddIC50YWJzX190b2dnbGUtbGluayAudGFic19fcGx1cyB7XG4gICAgICAgIG9wYWNpdHk6IDA7IH1cbiAgICAgIC50YWJzX19wYW5lbFthcmlhLWV4cGFuZGVkPSd0cnVlJ10gLnRhYnNfX3RvZ2dsZS1saW5rOjpiZWZvcmUge1xuICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAudGFic19fcGFuZWw6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7IH1cbiAgICAgIC5oZWFydC12YXNjdWxhciAudGFic19fcGFuZWxbYXJpYS1leHBhbmRlZD0ndHJ1ZSddIC50YWJzX190b2dnbGUtbGluazo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCItXCI7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICBjb2xvcjogI2Y5OGQyOTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRhYnNfX3BhbmVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAudGFic19fcGFuZWxbYXJpYS1oaWRkZW49XCJmYWxzZVwiXSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgLnRhYnNfX3BhbmVsID4gdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnRhYnNfX3BhbmVsID4gdWwge1xuICAgICAgICBtYXgtd2lkdGg6IDczLjYyNXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgICAgICAudGFic19fcGFuZWwgPiB1bDo6YWZ0ZXIsIC50YWJzX19wYW5lbCA+IHVsOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgICAgIC50YWJzX19wYW5lbCA+IHVsOjphZnRlciB7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudGFic19fcGFuZWwgPiB1bCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnRhYnNfX3BhbmVsID4gdWwgbGkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICAgICAgZmxvYXQ6IG5vbmU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRhYnNfX3BhbmVsID4gdWwgbGkge1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgICAgLnRhYnNfX3BhbmVsID4gdWwgbGk6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICAgIC50YWJzX19wYW5lbCA+IHVsIGxpOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZsb2F0OiBub25lOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudGFic19fY29sdW1ucyB7XG4gICAgICBtYXgtd2lkdGg6IDczLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG4gICAgICAudGFic19fY29sdW1uczo6YWZ0ZXIsIC50YWJzX19jb2x1bW5zOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogdGFibGU7IH1cbiAgICAgIC50YWJzX19jb2x1bW5zOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgLnRhYnNfX2ltYWdlLXdyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50YWJzX19pbWFnZS13cmFwcGVyIHtcbiAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTsgfVxuICAgICAgICAudGFic19faW1hZ2Utd3JhcHBlcjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIC50YWJzX19pbWFnZS13cmFwcGVyIC50YWJzX19wbHVzIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAgIC50YWJzX19pbWFnZS13cmFwcGVyIC50YWJzX19wbHVzIHtcbiAgICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICAgICAgd2lkdGg6IDM0cHg7XG4gICAgICAgICAgbGVmdDogMzVweDtcbiAgICAgICAgICB0b3A6IDQ1cHg7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnRhYnNfX2ltYWdlLXdyYXBwZXIgLnRhYnNfX3BsdXMge1xuICAgICAgICAgIGhlaWdodDogNTNweDtcbiAgICAgICAgICB3aWR0aDogNTNweDtcbiAgICAgICAgICBsZWZ0OiAzNXB4O1xuICAgICAgICAgIHRvcDogMzVweDsgfSB9XG4gIC50YWJzX19pbWFnZS1pbm5lciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAudGFic19faW1hZ2Uge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IHNvbGlkIDMwcHggd2hpdGU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnRhYnNfX2ltYWdlIHtcbiAgICAgICAgaGVpZ2h0OiAyNDBweDtcbiAgICAgICAgd2lkdGg6IDI0MHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudGFic19fY29weSB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9XG4gICAgICAudGFic19fY29weTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLnRhYnNfX3RpdGxlIHtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjMDA2NmExO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAuZm91bmRhdGlvbiAudGFic19fdGl0bGUge1xuICAgICAgY29sb3I6ICNhZTkwNjU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC50YWJzX190aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudGFic19fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDIycHg7IH0gfVxuXG4udGlsZXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC50aWxlcyB7XG4gICAgICBwYWRkaW5nLXRvcDogNDBweDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnRpbGVzIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1NXB4OyB9IH1cbiAgLnRpbGVzX19jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAgIC50aWxlc19fY29udGFpbmVyOjphZnRlciwgLnRpbGVzX19jb250YWluZXI6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgLnRpbGVzX19jb250YWluZXI6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50aWxlc19fY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSB7XG4gICAgLnRpbGVzX19jb250ZW50IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTM3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50aWxlc19fY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45Mzc1ZW0pIHtcbiAgICAgIC50aWxlc19fY29udGVudDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC50aWxlc19fY29udGVudCB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMycHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50aWxlc19fY29udGVudCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAudGlsZXNfX2NvbnRlbnQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gIC50aWxlc19fdGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICMwMDY2YTE7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAudGlsZXNfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnRpbGVzX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjhweDsgfSB9XG4gIC50aWxlc19fZGVzY3JpcHRpb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnRpbGVzX19kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50aWxlc19fZGVzY3JpcHRpb24ge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDU2cHg7IH0gfVxuICAgIC50aWxlc19fZGVzY3JpcHRpb24gYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAudGlsZXNfX2xpc3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtbXMtZmxleDogMSAwIGF1dG87IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC50aWxlc19fbGlzdCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgICAudGlsZXNfX2xpc3QgPiBsaSB7XG4gICAgICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAgICAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnRpbGVzX19saXN0ID4gbGkge1xuICAgICAgICAgICAgb3V0bGluZTogMDsgfVxuICAgICAgICAudGlsZXNfX2xpc3QgPiBsaSA+IGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAgICAgLnRpbGVzX19saXN0IGlucHV0LFxuICAgICAgICAudGlsZXNfX2xpc3Qgc2VsZWN0LFxuICAgICAgICAudGlsZXNfX2xpc3QgYSxcbiAgICAgICAgLnRpbGVzX19saXN0IGJ1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAudGlsZXNfX2xpc3QgPiBsaSB7XG4gICAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC50aWxlc19fbGlzdCA+IGxpID4gYSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnRpbGVzX19saXN0IHtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnRpbGVzX19saXN0IHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAwcHg7IH0gfVxuICAudGlsZXNfX2l0ZW0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC50aWxlc19faXRlbSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZTZlN2U4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLnRpbGVzX19pdGVtW2FyaWEtZXhwYW5kZWQ9J3RydWUnXSAudGlsZXNfX3BsdXMge1xuICAgICAgICAgIG9wYWNpdHk6IDA7IH1cbiAgICAgICAgLnRpbGVzX19pdGVtW2FyaWEtZXhwYW5kZWQ9J3RydWUnXSAudGlsZXNfX3RvZ2dsZS1saW5rOjpiZWZvcmUge1xuICAgICAgICAgIG9wYWNpdHk6IDE7IH1cbiAgICAgICAgLnRpbGVzX19pdGVtW2FyaWEtZXhwYW5kZWQ9J3RydWUnXSAudGlsZXNfX3RvZ2dsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICBjb2xvcjogI2Y5OGQyOTsgfVxuICAgICAgICAgIC50aWxlc19faXRlbVthcmlhLWV4cGFuZGVkPSd0cnVlJ10gLnRpbGVzX190b2dnbDpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCItXCI7IH1cbiAgICAgICAgLnRpbGVzX19pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudGlsZXNfX2l0ZW0ge1xuICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggNTdweCAwIHJnYmEoMzUsIDMxLCAzMiwgMC4wOCk7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggNDJweDsgfVxuICAgICAgICAudGlsZXNfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgZmxleDogMSAxIDM1LjYlO1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0zNHB4O1xuICAgICAgICAgIHBhZGRpbmctdG9wOiA1NHB4O1xuICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgIHotaW5kZXg6IDI7IH1cbiAgICAgICAgLnRpbGVzX19pdGVtOm50aC1jaGlsZCgyKSwgLnRpbGVzX19pdGVtOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGZsZXg6IDEgMSAzMi4yJTsgfVxuICAgICAgICAudGlsZXNfX2l0ZW06bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICBvcmRlcjogMTsgfVxuICAgICAgICAudGlsZXNfX2l0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgICAgb3JkZXI6IDM7IH0gfVxuICAudGlsZXNfX3RvZ2dsZS1saW5rIHtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjMDA2NmExOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAudGlsZXNfX3RvZ2dsZS1saW5rIHtcbiAgICAgICAgcGFkZGluZzogMjdweCAyMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLnRpbGVzX190b2dnbGUtbGluazpob3ZlciwgLnRpbGVzX190b2dnbGUtbGluazphY3RpdmUsIC50aWxlc19fdG9nZ2xlLWxpbms6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjMDA2NmExOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnRpbGVzX190b2dnbGUtbGluayB7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnRpbGVzX190b2dnbGUtbGluazo6YmVmb3JlIHtcbiAgICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjk4ZDI5O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgdG9wOiA0MnB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDI1MG1zIGVhc2U7IH0gfVxuICAudGlsZXNfX3N1Yi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAgIC50aWxlc19fc3ViLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnRpbGVzX19wbHVzIHtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICB0b3A6IDMycHg7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDI1MG1zIGVhc2U7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50aWxlc19fcGx1cyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgLnRpbGVzX191cmdlbnQtY2FyZSB7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjA1cHg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50aWxlc19fdXJnZW50LWNhcmUge1xuICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgd2lkdGg6IDI1MnB4OyB9IH1cbiAgLnRpbGVzX19zdWItbGlzdCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAudGlsZXNfX3N1Yi1saXN0IHtcbiAgICAgICAgbWF4LXdpZHRoOiA3My42MjVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgICAgICAgLnRpbGVzX19zdWItbGlzdDo6YWZ0ZXIsIC50aWxlc19fc3ViLWxpc3Q6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgZGlzcGxheTogdGFibGU7IH1cbiAgICAgICAgLnRpbGVzX19zdWItbGlzdDo6YWZ0ZXIge1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgLnRpbGVzX19zdWItaXRlbSBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAudGlsZXNfX3N1Yi1pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkgYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudGlsZXNfX3N1Yi1pdGVtIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnRpbGVzX19zdWItaXRlbTpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAudGlsZXNfX3N1Yi1pdGVtIHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gIC50aWxlc19fdG9nZ2wge1xuICAgIGhlaWdodDogMjhweDtcbiAgICB3aWR0aDogMjhweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDE4cHg7XG4gICAgdG9wOiAzMnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICNmOThkMjk7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuNHMgZWFzZS1vdXQsIGNvbG9yIC40cyBlYXNlLW91dDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudGlsZXNfX3RvZ2dsIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gICAgLnRpbGVzX190b2dnbDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCIrXCI7IH1cblxuLnRvb2x0aXAge1xuICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50b29sdGlwIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG5cbi50b29sdGlwX190b2dnbGUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogNXB4IDEycHg7XG4gIGNvbnRlbnQ6ICdcXDBhMDAnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMTRweDtcbiAgbGVmdDogM3B4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTVweDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB3aWR0aDogNnB4OyB9XG4gIC50b29sdGlwX190b2dnbGU6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAudG9vbHRpcF9fdG9nZ2xlLnRvb2x0aXBfX3RvZ2dsZS0td2hpdGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1pbmZvLXdoaXRlLnN2Z1wiKTsgfVxuICAudG9vbHRpcF9fdG9nZ2xlLnRvb2x0aXBfX3RvZ2dsZS0tYmx1ZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2Fzc2V0cy9pbWcvc3ZnL2ljb24taW5mby1ibHVlLnN2Z1wiKTsgfVxuXG4udG9vbHRpcF9fcG9wdXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzFjYjBkNTtcbiAgYm94LXNoYWRvdzogMCAwIDIwcHggNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC50b29sdGlwX19wb3B1cCB7XG4gICAgICBsZWZ0OiAyMHB4O1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIHJpZ2h0OiAyMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50b29sdGlwX19wb3B1cCB7XG4gICAgICBsZWZ0OiAtMzFweDtcbiAgICAgIHRvcDogMzBweDtcbiAgICAgIHdpZHRoOiA0MjVweDsgfSB9XG4gIC50b29sdGlwX19wb3B1cDo6YWZ0ZXIge1xuICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgI2ZmZjtcbiAgICBib3JkZXItbGVmdDogMThweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQ6IDE4cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMHB4O1xuICAgIHdpZHRoOiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTM3NWVtKSB7XG4gICAgICAudG9vbHRpcF9fcG9wdXA6OmFmdGVyIHtcbiAgICAgICAgbGVmdDogY2FsYyg1MCUgLSAxOHB4KTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgICAgLnRvb2x0aXBfX3BvcHVwOjphZnRlciB7XG4gICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMThweCk7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC50b29sdGlwX19wb3B1cDo6YWZ0ZXIge1xuICAgICAgICBsZWZ0OiAyMHB4OyB9IH1cbiAgLnRvb2x0aXBfX3BvcHVwLmlzLW9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi50b29sdGlwX19idG4tY2xvc2Uge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvbWljcm9zaXRldGVtcGxhdGVzL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2xvc2UtY3lhbi5zdmdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDE1cHg7XG4gIGhlaWdodDogMTVweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogOHB4O1xuICB0b3A6IDhweDtcbiAgd2lkdGg6IDE1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC50b29sdGlwX19idG4tY2xvc2U6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyB9IH1cblxuLnRvb2x0aXBfX3BvcHVwLWlubmVyIHtcbiAgY29sb3I6ICMwMDA7XG4gIHBhZGRpbmc6IDIwcHg7IH1cbiAgLnRvb2x0aXBfX3BvcHVwLWlubmVyID4gKjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi50b29sdGlwX19wb3B1cC10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAyMnB4O1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmEge1xuICBjb2xvcjogI2Y5OGQyOTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMjUwbXMgZWFzZTsgfVxuICBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzI2YTNkYzsgfVxuXG4ubGluay1jaGV2cm9uLS1ibHVlIHtcbiAgY29sb3I6ICM0OWYxZmY7IH1cbiAgLmxpbmstY2hldnJvbi0tYmx1ZTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybChcIi9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaGV2cm9uLWJsdWUtZS5zdmdcIikgY2VudGVyIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDVweCA4cHg7XG4gICAgYm90dG9tOiAxcHg7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGNvbnRlbnQ6ICdcXDBhMDAnO1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIGxlZnQ6IDFweDtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBsZWZ0IC4zcyBlYXNlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgICB3aWR0aDogNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubGluay1jaGV2cm9uLS1ibHVlOmhvdmVyOjphZnRlciwgLmxpbmstY2hldnJvbi0tYmx1ZTpmb2N1czo6YWZ0ZXIge1xuICAgICAgbGVmdDogNXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5saW5rLWNoZXZyb24tLWJsdWU6aG92ZXIsIC5saW5rLWNoZXZyb24tLWJsdWU6Zm9jdXMge1xuICAgICAgY29sb3I6ICMyNmEzZGM7IH0gfVxuXG4uaHIge1xuICBjb2xvcjogI2U2ZTdlODtcbiAgbWFyZ2luOiAyLjc1cmVtIDA7IH1cblxuLmJ1dHRvbiB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG5oMSB7XG4gIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICNmZmY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuaDIsXG4uaDIge1xuICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMDA2NmExOyB9XG5cbmgzLFxuLmgzIHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzAwNjZhMTsgfVxuXG4uY29udGVudCA+IC5ydGYgPiBoMSwgLmNvbnRlbnQgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoMSxcbi5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLnJ0ZiA+IGgxLFxuLmNvbnRlbnQgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoMSxcbi5jb250ZW50IC50YWJzX19jb3B5ID4gLnJ0ZiA+IGgxLFxuLmNvbnRlbnQgLnRhYnNfX2NvcHkgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoMSxcbi5jb250ZW50X19jb250YWluZXIgPiAucnRmID4gaDEsXG4uY29udGVudF9fY29udGFpbmVyID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDEsXG4uY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLnJ0ZiA+IGgxLFxuLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGgxLFxuLmNvbnRlbnRfX2NvbnRhaW5lciAudGFic19fY29weSA+IC5ydGYgPiBoMSxcbi5jb250ZW50X19jb250YWluZXIgLnRhYnNfX2NvcHkgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoMSB7XG4gIGNvbG9yOiAjMDA2NmExO1xuICBmb250LXNpemU6IDM0cHg7IH1cbiAgLmNvbnRlbnQgPiAucnRmID4gaDEgYSwgLmNvbnRlbnQgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoMSBhLFxuICAuY29udGVudCAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiBoMSBhLFxuICAuY29udGVudCAuY29udGVudF9fY29weS0tZnVsbCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGgxIGEsXG4gIC5jb250ZW50IC50YWJzX19jb3B5ID4gLnJ0ZiA+IGgxIGEsXG4gIC5jb250ZW50IC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDEgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciA+IC5ydGYgPiBoMSBhLFxuICAuY29udGVudF9fY29udGFpbmVyID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDEgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiBoMSBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDEgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAudGFic19fY29weSA+IC5ydGYgPiBoMSBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDEgYSB7XG4gICAgY29sb3I6ICMwMDY2YTE7XG4gICAgZm9udC1zaXplOiAzNHB4OyB9XG5cbi5jb250ZW50ID4gLnJ0ZiA+IGgyLCAuY29udGVudCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGgyLFxuLmNvbnRlbnQgPiAucnRmID4gLmgyLFxuLmNvbnRlbnQgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDIsXG4uY29udGVudCAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiBoMixcbi5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDIsXG4uY29udGVudCAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiAuaDIsXG4uY29udGVudCAuY29udGVudF9fY29weS0tZnVsbCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oMixcbi5jb250ZW50IC50YWJzX19jb3B5ID4gLnJ0ZiA+IGgyLFxuLmNvbnRlbnQgLnRhYnNfX2NvcHkgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoMixcbi5jb250ZW50IC50YWJzX19jb3B5ID4gLnJ0ZiA+IC5oMixcbi5jb250ZW50IC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmgyLFxuLmNvbnRlbnRfX2NvbnRhaW5lciA+IC5ydGYgPiBoMixcbi5jb250ZW50X19jb250YWluZXIgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoMixcbi5jb250ZW50X19jb250YWluZXIgPiAucnRmID4gLmgyLFxuLmNvbnRlbnRfX2NvbnRhaW5lciA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oMixcbi5jb250ZW50X19jb250YWluZXIgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAucnRmID4gaDIsXG4uY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDIsXG4uY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLnJ0ZiA+IC5oMixcbi5jb250ZW50X19jb250YWluZXIgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDIsXG4uY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLnJ0ZiA+IGgyLFxuLmNvbnRlbnRfX2NvbnRhaW5lciAudGFic19fY29weSA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGgyLFxuLmNvbnRlbnRfX2NvbnRhaW5lciAudGFic19fY29weSA+IC5ydGYgPiAuaDIsXG4uY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmgyIHtcbiAgZm9udC1zaXplOiAzMHB4OyB9XG4gIC5jb250ZW50ID4gLnJ0ZiA+IGgyIGEsIC5jb250ZW50ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDIgYSxcbiAgLmNvbnRlbnQgPiAucnRmID4gLmgyIGEsXG4gIC5jb250ZW50ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmgyIGEsXG4gIC5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLnJ0ZiA+IGgyIGEsXG4gIC5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDIgYSxcbiAgLmNvbnRlbnQgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAucnRmID4gLmgyIGEsXG4gIC5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmgyIGEsXG4gIC5jb250ZW50IC50YWJzX19jb3B5ID4gLnJ0ZiA+IGgyIGEsXG4gIC5jb250ZW50IC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDIgYSxcbiAgLmNvbnRlbnQgLnRhYnNfX2NvcHkgPiAucnRmID4gLmgyIGEsXG4gIC5jb250ZW50IC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmgyIGEsXG4gIC5jb250ZW50X19jb250YWluZXIgPiAucnRmID4gaDIgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGgyIGEsXG4gIC5jb250ZW50X19jb250YWluZXIgPiAucnRmID4gLmgyIGEsXG4gIC5jb250ZW50X19jb250YWluZXIgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDIgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiBoMiBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDIgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiAuaDIgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oMiBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLnJ0ZiA+IGgyIGEsXG4gIC5jb250ZW50X19jb250YWluZXIgLnRhYnNfX2NvcHkgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoMiBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLnJ0ZiA+IC5oMiBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmgyIGEge1xuICAgIGZvbnQtc2l6ZTogMzBweDsgfVxuXG4uY29udGVudCA+IC5ydGYgPiBoMywgLmNvbnRlbnQgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoMyxcbi5jb250ZW50ID4gLnJ0ZiA+IC5oMyxcbi5jb250ZW50ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmgzLFxuLmNvbnRlbnQgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAucnRmID4gaDMsXG4uY29udGVudCAuY29udGVudF9fY29weS0tZnVsbCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGgzLFxuLmNvbnRlbnQgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAucnRmID4gLmgzLFxuLmNvbnRlbnQgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDMsXG4uY29udGVudCAudGFic19fY29weSA+IC5ydGYgPiBoMyxcbi5jb250ZW50IC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDMsXG4uY29udGVudCAudGFic19fY29weSA+IC5ydGYgPiAuaDMsXG4uY29udGVudCAudGFic19fY29weSA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oMyxcbi5jb250ZW50X19jb250YWluZXIgPiAucnRmID4gaDMsXG4uY29udGVudF9fY29udGFpbmVyID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDMsXG4uY29udGVudF9fY29udGFpbmVyID4gLnJ0ZiA+IC5oMyxcbi5jb250ZW50X19jb250YWluZXIgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDMsXG4uY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLnJ0ZiA+IGgzLFxuLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGgzLFxuLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiAuaDMsXG4uY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmgzLFxuLmNvbnRlbnRfX2NvbnRhaW5lciAudGFic19fY29weSA+IC5ydGYgPiBoMyxcbi5jb250ZW50X19jb250YWluZXIgLnRhYnNfX2NvcHkgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoMyxcbi5jb250ZW50X19jb250YWluZXIgLnRhYnNfX2NvcHkgPiAucnRmID4gLmgzLFxuLmNvbnRlbnRfX2NvbnRhaW5lciAudGFic19fY29weSA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oMyB7XG4gIGZvbnQtc2l6ZTogMjZweDsgfVxuICAuY29udGVudCA+IC5ydGYgPiBoMyBhLCAuY29udGVudCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGgzIGEsXG4gIC5jb250ZW50ID4gLnJ0ZiA+IC5oMyBhLFxuICAuY29udGVudCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oMyBhLFxuICAuY29udGVudCAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiBoMyBhLFxuICAuY29udGVudCAuY29udGVudF9fY29weS0tZnVsbCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGgzIGEsXG4gIC5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLnJ0ZiA+IC5oMyBhLFxuICAuY29udGVudCAuY29udGVudF9fY29weS0tZnVsbCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oMyBhLFxuICAuY29udGVudCAudGFic19fY29weSA+IC5ydGYgPiBoMyBhLFxuICAuY29udGVudCAudGFic19fY29weSA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGgzIGEsXG4gIC5jb250ZW50IC50YWJzX19jb3B5ID4gLnJ0ZiA+IC5oMyBhLFxuICAuY29udGVudCAudGFic19fY29weSA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oMyBhLFxuICAuY29udGVudF9fY29udGFpbmVyID4gLnJ0ZiA+IGgzIGEsXG4gIC5jb250ZW50X19jb250YWluZXIgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoMyBhLFxuICAuY29udGVudF9fY29udGFpbmVyID4gLnJ0ZiA+IC5oMyBhLFxuICAuY29udGVudF9fY29udGFpbmVyID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmgzIGEsXG4gIC5jb250ZW50X19jb250YWluZXIgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAucnRmID4gaDMgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGgzIGEsXG4gIC5jb250ZW50X19jb250YWluZXIgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAucnRmID4gLmgzIGEsXG4gIC5jb250ZW50X19jb250YWluZXIgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDMgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAudGFic19fY29weSA+IC5ydGYgPiBoMyBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDMgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAudGFic19fY29weSA+IC5ydGYgPiAuaDMgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAudGFic19fY29weSA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oMyBhIHtcbiAgICBmb250LXNpemU6IDI2cHg7IH1cblxuLmNvbnRlbnQgPiAucnRmID4gaDQsIC5jb250ZW50ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDQsXG4uY29udGVudCA+IC5ydGYgPiAuaDQsXG4uY29udGVudCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oNCxcbi5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLnJ0ZiA+IGg0LFxuLmNvbnRlbnQgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoNCxcbi5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLnJ0ZiA+IC5oNCxcbi5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmg0LFxuLmNvbnRlbnQgLnRhYnNfX2NvcHkgPiAucnRmID4gaDQsXG4uY29udGVudCAudGFic19fY29weSA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGg0LFxuLmNvbnRlbnQgLnRhYnNfX2NvcHkgPiAucnRmID4gLmg0LFxuLmNvbnRlbnQgLnRhYnNfX2NvcHkgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDQsXG4uY29udGVudF9fY29udGFpbmVyID4gLnJ0ZiA+IGg0LFxuLmNvbnRlbnRfX2NvbnRhaW5lciA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGg0LFxuLmNvbnRlbnRfX2NvbnRhaW5lciA+IC5ydGYgPiAuaDQsXG4uY29udGVudF9fY29udGFpbmVyID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmg0LFxuLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiBoNCxcbi5jb250ZW50X19jb250YWluZXIgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoNCxcbi5jb250ZW50X19jb250YWluZXIgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAucnRmID4gLmg0LFxuLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oNCxcbi5jb250ZW50X19jb250YWluZXIgLnRhYnNfX2NvcHkgPiAucnRmID4gaDQsXG4uY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDQsXG4uY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLnJ0ZiA+IC5oNCxcbi5jb250ZW50X19jb250YWluZXIgLnRhYnNfX2NvcHkgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDQge1xuICBjb2xvcjogIzAwNjZhMTtcbiAgZm9udC1zaXplOiAyMnB4OyB9XG4gIC5jb250ZW50ID4gLnJ0ZiA+IGg0IGEsIC5jb250ZW50ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDQgYSxcbiAgLmNvbnRlbnQgPiAucnRmID4gLmg0IGEsXG4gIC5jb250ZW50ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmg0IGEsXG4gIC5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLnJ0ZiA+IGg0IGEsXG4gIC5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDQgYSxcbiAgLmNvbnRlbnQgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAucnRmID4gLmg0IGEsXG4gIC5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmg0IGEsXG4gIC5jb250ZW50IC50YWJzX19jb3B5ID4gLnJ0ZiA+IGg0IGEsXG4gIC5jb250ZW50IC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDQgYSxcbiAgLmNvbnRlbnQgLnRhYnNfX2NvcHkgPiAucnRmID4gLmg0IGEsXG4gIC5jb250ZW50IC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmg0IGEsXG4gIC5jb250ZW50X19jb250YWluZXIgPiAucnRmID4gaDQgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGg0IGEsXG4gIC5jb250ZW50X19jb250YWluZXIgPiAucnRmID4gLmg0IGEsXG4gIC5jb250ZW50X19jb250YWluZXIgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDQgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiBoNCBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDQgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiAuaDQgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oNCBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLnJ0ZiA+IGg0IGEsXG4gIC5jb250ZW50X19jb250YWluZXIgLnRhYnNfX2NvcHkgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoNCBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLnJ0ZiA+IC5oNCBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmg0IGEge1xuICAgIGNvbG9yOiAjMDA2NmExO1xuICAgIGZvbnQtc2l6ZTogMjJweDsgfVxuXG4uY29udGVudCA+IC5ydGYgPiBoNSwgLmNvbnRlbnQgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoNSxcbi5jb250ZW50ID4gLnJ0ZiA+IC5oNSxcbi5jb250ZW50ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmg1LFxuLmNvbnRlbnQgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAucnRmID4gaDUsXG4uY29udGVudCAuY29udGVudF9fY29weS0tZnVsbCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGg1LFxuLmNvbnRlbnQgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAucnRmID4gLmg1LFxuLmNvbnRlbnQgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDUsXG4uY29udGVudCAudGFic19fY29weSA+IC5ydGYgPiBoNSxcbi5jb250ZW50IC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDUsXG4uY29udGVudCAudGFic19fY29weSA+IC5ydGYgPiAuaDUsXG4uY29udGVudCAudGFic19fY29weSA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oNSxcbi5jb250ZW50X19jb250YWluZXIgPiAucnRmID4gaDUsXG4uY29udGVudF9fY29udGFpbmVyID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDUsXG4uY29udGVudF9fY29udGFpbmVyID4gLnJ0ZiA+IC5oNSxcbi5jb250ZW50X19jb250YWluZXIgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDUsXG4uY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLnJ0ZiA+IGg1LFxuLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGg1LFxuLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiAuaDUsXG4uY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmg1LFxuLmNvbnRlbnRfX2NvbnRhaW5lciAudGFic19fY29weSA+IC5ydGYgPiBoNSxcbi5jb250ZW50X19jb250YWluZXIgLnRhYnNfX2NvcHkgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoNSxcbi5jb250ZW50X19jb250YWluZXIgLnRhYnNfX2NvcHkgPiAucnRmID4gLmg1LFxuLmNvbnRlbnRfX2NvbnRhaW5lciAudGFic19fY29weSA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oNSB7XG4gIGNvbG9yOiAjMDA2NmExO1xuICBmb250LXNpemU6IDE4cHg7IH1cbiAgLmNvbnRlbnQgPiAucnRmID4gaDUgYSwgLmNvbnRlbnQgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoNSBhLFxuICAuY29udGVudCA+IC5ydGYgPiAuaDUgYSxcbiAgLmNvbnRlbnQgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDUgYSxcbiAgLmNvbnRlbnQgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAucnRmID4gaDUgYSxcbiAgLmNvbnRlbnQgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoNSBhLFxuICAuY29udGVudCAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiAuaDUgYSxcbiAgLmNvbnRlbnQgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDUgYSxcbiAgLmNvbnRlbnQgLnRhYnNfX2NvcHkgPiAucnRmID4gaDUgYSxcbiAgLmNvbnRlbnQgLnRhYnNfX2NvcHkgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoNSBhLFxuICAuY29udGVudCAudGFic19fY29weSA+IC5ydGYgPiAuaDUgYSxcbiAgLmNvbnRlbnQgLnRhYnNfX2NvcHkgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDUgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciA+IC5ydGYgPiBoNSBhLFxuICAuY29udGVudF9fY29udGFpbmVyID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDUgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciA+IC5ydGYgPiAuaDUgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oNSBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLnJ0ZiA+IGg1IGEsXG4gIC5jb250ZW50X19jb250YWluZXIgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoNSBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLnJ0ZiA+IC5oNSBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmg1IGEsXG4gIC5jb250ZW50X19jb250YWluZXIgLnRhYnNfX2NvcHkgPiAucnRmID4gaDUgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAudGFic19fY29weSA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGg1IGEsXG4gIC5jb250ZW50X19jb250YWluZXIgLnRhYnNfX2NvcHkgPiAucnRmID4gLmg1IGEsXG4gIC5jb250ZW50X19jb250YWluZXIgLnRhYnNfX2NvcHkgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDUgYSB7XG4gICAgY29sb3I6ICMwMDY2YTE7XG4gICAgZm9udC1zaXplOiAxOHB4OyB9XG5cbi5jb250ZW50ID4gLnJ0ZiA+IGg2LCAuY29udGVudCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGg2LFxuLmNvbnRlbnQgPiAucnRmID4gLmg2LFxuLmNvbnRlbnQgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDYsXG4uY29udGVudCAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiBoNixcbi5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDYsXG4uY29udGVudCAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiAuaDYsXG4uY29udGVudCAuY29udGVudF9fY29weS0tZnVsbCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oNixcbi5jb250ZW50IC50YWJzX19jb3B5ID4gLnJ0ZiA+IGg2LFxuLmNvbnRlbnQgLnRhYnNfX2NvcHkgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoNixcbi5jb250ZW50IC50YWJzX19jb3B5ID4gLnJ0ZiA+IC5oNixcbi5jb250ZW50IC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmg2LFxuLmNvbnRlbnRfX2NvbnRhaW5lciA+IC5ydGYgPiBoNixcbi5jb250ZW50X19jb250YWluZXIgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoNixcbi5jb250ZW50X19jb250YWluZXIgPiAucnRmID4gLmg2LFxuLmNvbnRlbnRfX2NvbnRhaW5lciA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oNixcbi5jb250ZW50X19jb250YWluZXIgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAucnRmID4gaDYsXG4uY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDYsXG4uY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLnJ0ZiA+IC5oNixcbi5jb250ZW50X19jb250YWluZXIgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDYsXG4uY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLnJ0ZiA+IGg2LFxuLmNvbnRlbnRfX2NvbnRhaW5lciAudGFic19fY29weSA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGg2LFxuLmNvbnRlbnRfX2NvbnRhaW5lciAudGFic19fY29weSA+IC5ydGYgPiAuaDYsXG4uY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmg2IHtcbiAgZm9udC1zaXplOiAxNnB4OyB9XG4gIC5jb250ZW50ID4gLnJ0ZiA+IGg2IGEsIC5jb250ZW50ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDYgYSxcbiAgLmNvbnRlbnQgPiAucnRmID4gLmg2IGEsXG4gIC5jb250ZW50ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmg2IGEsXG4gIC5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLnJ0ZiA+IGg2IGEsXG4gIC5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDYgYSxcbiAgLmNvbnRlbnQgLmNvbnRlbnRfX2NvcHktLWZ1bGwgPiAucnRmID4gLmg2IGEsXG4gIC5jb250ZW50IC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmg2IGEsXG4gIC5jb250ZW50IC50YWJzX19jb3B5ID4gLnJ0ZiA+IGg2IGEsXG4gIC5jb250ZW50IC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDYgYSxcbiAgLmNvbnRlbnQgLnRhYnNfX2NvcHkgPiAucnRmID4gLmg2IGEsXG4gIC5jb250ZW50IC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmg2IGEsXG4gIC5jb250ZW50X19jb250YWluZXIgPiAucnRmID4gaDYgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IGg2IGEsXG4gIC5jb250ZW50X19jb250YWluZXIgPiAucnRmID4gLmg2IGEsXG4gIC5jb250ZW50X19jb250YWluZXIgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiAuaDYgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiBoNiBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC5jb250ZW50X19jb3B5LS1mdWxsID4gLmZsZXhsaXN0X19leGNlcnB0ID4gaDYgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYgPiAuaDYgYSxcbiAgLmNvbnRlbnRfX2NvbnRhaW5lciAuY29udGVudF9fY29weS0tZnVsbCA+IC5mbGV4bGlzdF9fZXhjZXJwdCA+IC5oNiBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLnJ0ZiA+IGg2IGEsXG4gIC5jb250ZW50X19jb250YWluZXIgLnRhYnNfX2NvcHkgPiAuZmxleGxpc3RfX2V4Y2VycHQgPiBoNiBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLnJ0ZiA+IC5oNiBhLFxuICAuY29udGVudF9fY29udGFpbmVyIC50YWJzX19jb3B5ID4gLmZsZXhsaXN0X19leGNlcnB0ID4gLmg2IGEge1xuICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuXG4uZGggaDYsXG4uZGggLmg2IHtcbiAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tdG9wOiAxLjc1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5LjkzNzVlbSkge1xuICAgIC5kaCBoNixcbiAgICAuZGggLmg2IHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZGggaDYsXG4gICAgLmRoIC5oNiB7XG4gICAgICBmb250LXNpemU6IDE2cHg7IH0gfVxuXG4udXBjb21pbmctZXZlbnRzIHtcbiAgYmFja2dyb3VuZDogI2Y3ZjZmMTtcbiAgcGFkZGluZzogMzBweCAwIDM1cHg7IH1cbiAgLnVwY29taW5nLWV2ZW50cy0td2hpdGUtYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgLnVwY29taW5nLWV2ZW50cy0td2lsZHNhbmQtYmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAudXBjb21pbmctZXZlbnRzIHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMCA0NXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTYwcHgpIHtcbiAgICAudXBjb21pbmctZXZlbnRzIHtcbiAgICAgIHBhZGRpbmc6IDYwcHggMCA2NXB4OyB9IH1cbiAgLnVwY29taW5nLWV2ZW50c19fd3JhcCB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAxNnB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC51cGNvbWluZy1ldmVudHNfX3dyYXAge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgICAgLnVwY29taW5nLWV2ZW50c19fd3JhcCB7XG4gICAgICAgIG1heC13aWR0aDogMTIwMHB4OyB9IH1cbiAgICAudXBjb21pbmctZXZlbnRzX193cmFwLWZsdWlkIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAudXBjb21pbmctZXZlbnRzX193cmFwIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudXBjb21pbmctZXZlbnRzX193cmFwIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDE2cHg7IH0gfVxuICAudXBjb21pbmctZXZlbnRzX190aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogIzAwNjZhMTtcbiAgICBmb250LXNpemU6IDEuMzc1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMzc1ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIC5mb3VuZGF0aW9uIC51cGNvbWluZy1ldmVudHNfX3RpdGxlIHtcbiAgICAgIGNvbG9yOiAjYWU5MDY1OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAuZGggLnVwY29taW5nLWV2ZW50c19fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmRoIC51cGNvbWluZy1ldmVudHNfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyNnB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLnVwY29taW5nLWV2ZW50c19fdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgLnVwY29taW5nLWV2ZW50c19fbGlzdGluZyB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDAgYXV0byA0MHB4O1xuICAgIG1heC13aWR0aDogNDgwcHg7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MHB4KSB7XG4gICAgICAudXBjb21pbmctZXZlbnRzX19saXN0aW5nIHtcbiAgICAgICAgcGFkZGluZzogMCA1MHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLnVwY29taW5nLWV2ZW50c19fbGlzdGluZyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIG1heC13aWR0aDogODkycHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMnJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5kaCAudXBjb21pbmctZXZlbnRzX19saXN0aW5nIHtcbiAgICAgICAgcGFkZGluZzogMCAxcmVtOyB9IH1cbiAgLnVwY29taW5nLWV2ZW50c19faXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDk4cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC51cGNvbWluZy1ldmVudHNfX2l0ZW0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICAudXBjb21pbmctZXZlbnRzX19iaWctZGF0ZSB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBiYWNrZ3JvdW5kOiAjOTc3OWFjO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgY29sb3I6IHdoaXRlc21va2U7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgIGhlaWdodDogODBweDtcbiAgICBsZWZ0OiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTtcbiAgICBwYWRkaW5nOiAxOXB4IDIwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogODBweDsgfVxuICAgIC5mb3VuZGF0aW9uIC51cGNvbWluZy1ldmVudHNfX2JpZy1kYXRlIHtcbiAgICAgIGJhY2tncm91bmQ6ICM0ZDVjNmU7IH1cbiAgICAuZGggLnVwY29taW5nLWV2ZW50c19fYmlnLWRhdGUge1xuICAgICAgYmFja2dyb3VuZDogIzkzYzI0MztcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAgIC51cGNvbWluZy1ldmVudHNfX2JpZy1kYXRlIC5udW0ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9XG4gIC51cGNvbWluZy1ldmVudHNfX2V2ZW50LW5hbWUge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjMyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIHBhZGRpbmctdG9wOiAxcmVtOyB9XG4gICAgLnVwY29taW5nLWV2ZW50c19fZXZlbnQtbmFtZSBhIHtcbiAgICAgIGNvbG9yOiAjMTQ2NmExOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC51cGNvbWluZy1ldmVudHNfX2V2ZW50LW5hbWUgYTpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICMyNmEzZGM7IH0gfVxuICAgIC5kaCAudXBjb21pbmctZXZlbnRzX19ldmVudC1uYW1lIHtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDsgfVxuICAuZGggLnVwY29taW5nLWV2ZW50c19fZnVsbC1kYXRlIHtcbiAgICBjb2xvcjogIzAwMDsgfVxuICAudXBjb21pbmctZXZlbnRzX19mdWxsLWRhdGUsIC51cGNvbWluZy1ldmVudHNfX2FkZHJlc3Mge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgY29sb3I6ICM2MzRhNzY7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiAuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjMyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgLmZvdW5kYXRpb24gLnVwY29taW5nLWV2ZW50c19fZnVsbC1kYXRlLCAuZm91bmRhdGlvbiAudXBjb21pbmctZXZlbnRzX19hZGRyZXNzIHtcbiAgICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgLmRoIC51cGNvbWluZy1ldmVudHNfX2Z1bGwtZGF0ZSwgLmRoIC51cGNvbWluZy1ldmVudHNfX2FkZHJlc3Mge1xuICAgICAgZm9udC1zaXplOiAxNnB4OyB9XG4gIC51cGNvbWluZy1ldmVudHNfX2FkZHJlc3Mge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5kaCAudXBjb21pbmctZXZlbnRzX19hZGRyZXNzIHtcbiAgICAgIGNvbG9yOiAjMDAwOyB9XG4gIC51cGNvbWluZy1ldmVudHNfX2xpbmsge1xuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZvbnQtc2l6ZTogMC45MzhlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zNzVlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAudXBjb21pbmctZXZlbnRzX19saW5rIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtOyB9IH1cbiAgICAudXBjb21pbmctZXZlbnRzX19saW5rIGEge1xuICAgICAgY29sb3I6ICMwZTkyYTI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAgIC51cGNvbWluZy1ldmVudHNfX2xpbmsgYTpob3ZlciwgLnVwY29taW5nLWV2ZW50c19fbGluayBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICMwZTkyYTI7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgICAudXBjb21pbmctZXZlbnRzX19saW5rIGE6OmJlZm9yZSB7XG4gICAgICAgIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gICAgICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbicgIWltcG9ydGFudDtcbiAgICAgICAgc3BlYWs6IG5vbmU7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMGU5MmEyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgY29udGVudDogXCLvhIVcIjtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGhlaWdodDogMjdweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAyN3B4OyB9XG4gICAgLmRoIC51cGNvbWluZy1ldmVudHNfX2xpbmsgYSB7XG4gICAgICBjb2xvcjogI2Y5OGQyOTtcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICAgLmRoIC51cGNvbWluZy1ldmVudHNfX2xpbmsgYTo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIvbWljcm9zaXRldGVtcGxhdGVzL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2hldnJvbi1vcmFuZ2UtZS5zdmdcIikgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA2cHggMTBweDtcbiAgICAgICAgYm90dG9tOiAycHg7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29udGVudDogJ1xcMGEwMCc7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0cmFuc2l0aW9uOiBsZWZ0IC4zcyBlYXNlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgICAgIHdpZHRoOiA2cHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmRoIC51cGNvbWluZy1ldmVudHNfX2xpbmsgYTpob3Zlcjo6YWZ0ZXIsIC5kaCAudXBjb21pbmctZXZlbnRzX19saW5rIGE6Zm9jdXM6OmFmdGVyIHtcbiAgICAgICAgICBsZWZ0OiA0cHg7IH0gfVxuICAgICAgLmRoIC51cGNvbWluZy1ldmVudHNfX2xpbmsgYTpob3ZlciwgLmRoIC51cGNvbWluZy1ldmVudHNfX2xpbmsgYTpmb2N1cyB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgLmRoIC51cGNvbWluZy1ldmVudHNfX2xpbmsgYTo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuXG4udXRpbGl0eS1uYXZpZ2F0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAudXRpbGl0eS1uYXZpZ2F0aW9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAudXRpbGl0eS1uYXZpZ2F0aW9uX19jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNzMuNjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTsgfVxuICAgIC51dGlsaXR5LW5hdmlnYXRpb25fX2NvbnRhaW5lcjo6YWZ0ZXIsIC51dGlsaXR5LW5hdmlnYXRpb25fX2NvbnRhaW5lcjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogdGFibGU7IH1cbiAgICAudXRpbGl0eS1uYXZpZ2F0aW9uX19jb250YWluZXI6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC51dGlsaXR5LW5hdmlnYXRpb25fX2NvbnRhaW5lciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgICAudXRpbGl0eS1uYXZpZ2F0aW9uX19jb250YWluZXI6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICAudXRpbGl0eS1uYXZpZ2F0aW9uX19jb250YWluZXIsIC51dGlsaXR5LW5hdmlnYXRpb25fX2NvbnRhaW5lcjpsYXN0LWNoaWxkIHtcbiAgICAgIGZsb2F0OiBub25lOyB9XG4gIC51dGlsaXR5LW5hdmlnYXRpb25fX2xpc3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnV0aWxpdHktbmF2aWdhdGlvbl9fbGlzdCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgICAudXRpbGl0eS1uYXZpZ2F0aW9uX19saXN0Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgLnV0aWxpdHktbmF2aWdhdGlvbl9fbGlzdCA+IGxpIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnV0aWxpdHktbmF2aWdhdGlvbl9fbGlzdCA+IGxpIHtcbiAgICAgICAgb3V0bGluZTogMDsgfVxuICAgIC51dGlsaXR5LW5hdmlnYXRpb25fX2xpc3QgPiBsaSA+IGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAudXRpbGl0eS1uYXZpZ2F0aW9uX19saXN0IGlucHV0LFxuICAgIC51dGlsaXR5LW5hdmlnYXRpb25fX2xpc3Qgc2VsZWN0LFxuICAgIC51dGlsaXR5LW5hdmlnYXRpb25fX2xpc3QgYSxcbiAgICAudXRpbGl0eS1uYXZpZ2F0aW9uX19saXN0IGJ1dHRvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC51dGlsaXR5LW5hdmlnYXRpb25fX2l0ZW0ge1xuICAgIHBhZGRpbmc6IDEzcHggN3B4OyB9XG4gICAgLnV0aWxpdHktbmF2aWdhdGlvbl9faXRlbS0tc2VhcmNoIHtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgLnV0aWxpdHktbmF2aWdhdGlvbl9fbGluayB7XG4gICAgZm9udC1mYW1pbHk6IENhYmluLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgZm9udC1zaXplOiAxM3B4OyB9XG4gICAgLnV0aWxpdHktbmF2aWdhdGlvbl9fbGluaywgLnV0aWxpdHktbmF2aWdhdGlvbl9fbGluazpob3ZlciwgLnV0aWxpdHktbmF2aWdhdGlvbl9fbGluazphY3RpdmUsIC51dGlsaXR5LW5hdmlnYXRpb25fX2xpbms6Zm9jdXMge1xuICAgICAgY29sb3I6ICMwMDY2YTE7IH1cbiAgICAudXRpbGl0eS1uYXZpZ2F0aW9uX19saW5rOmhvdmVyLCAudXRpbGl0eS1uYXZpZ2F0aW9uX19saW5rOmFjdGl2ZSwgLnV0aWxpdHktbmF2aWdhdGlvbl9fbGluazpmb2N1cyB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjMDA2NmExOyB9XG4gICAgLnV0aWxpdHktbmF2aWdhdGlvbl9faXRlbTpmaXJzdC1jaGlsZCAudXRpbGl0eS1uYXZpZ2F0aW9uX19saW5rLCAudXRpbGl0eS1uYXZpZ2F0aW9uX19pdGVtOmZpcnN0LWNoaWxkIC51dGlsaXR5LW5hdmlnYXRpb25fX2xpbms6aG92ZXIsIC51dGlsaXR5LW5hdmlnYXRpb25fX2l0ZW06Zmlyc3QtY2hpbGQgLnV0aWxpdHktbmF2aWdhdGlvbl9fbGluazphY3RpdmUsIC51dGlsaXR5LW5hdmlnYXRpb25fX2l0ZW06Zmlyc3QtY2hpbGQgLnV0aWxpdHktbmF2aWdhdGlvbl9fbGluazpmb2N1cyB7XG4gICAgICBjb2xvcjogIzAwMDsgfVxuICAgIC51dGlsaXR5LW5hdmlnYXRpb25fX2l0ZW06Zmlyc3QtY2hpbGQgLnV0aWxpdHktbmF2aWdhdGlvbl9fbGluazpob3ZlciwgLnV0aWxpdHktbmF2aWdhdGlvbl9faXRlbTpmaXJzdC1jaGlsZCAudXRpbGl0eS1uYXZpZ2F0aW9uX19saW5rOmFjdGl2ZSwgLnV0aWxpdHktbmF2aWdhdGlvbl9faXRlbTpmaXJzdC1jaGlsZCAudXRpbGl0eS1uYXZpZ2F0aW9uX19saW5rOmZvY3VzIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMwMDA7IH1cbiAgLnV0aWxpdHktbmF2aWdhdGlvbl9fc2VhcmNoIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjk4ZDI5O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICBtYXJnaW4tbGVmdDogN3B4O1xuICAgIHBhZGRpbmc6IDlweCAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjI1cyBlYXNlLW91dDtcbiAgICB3aWR0aDogNDBweDsgfVxuICAgIC51dGlsaXR5LW5hdmlnYXRpb25fX3NlYXJjaDo6YmVmb3JlIHtcbiAgICAgIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gICAgICBmb250LWZhbWlseTogJ2ljb21vb24nICFpbXBvcnRhbnQ7XG4gICAgICBzcGVhazogbm9uZTtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgIGNvbnRlbnQ6IFwi74CCXCI7IH1cbiAgICAudXRpbGl0eS1uYXZpZ2F0aW9uX19zZWFyY2g6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogIzk0ZDYwYTsgfVxuICAgIC51dGlsaXR5LW5hdmlnYXRpb25fX3NlYXJjaC5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogIzAwNjZhMTsgfVxuICAgICAgLnV0aWxpdHktbmF2aWdhdGlvbl9fc2VhcmNoLmFjdGl2ZTo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCLupIdcIjsgfVxuICAgICAgLnV0aWxpdHktbmF2aWdhdGlvbl9fc2VhcmNoLmFjdGl2ZTpob3ZlciwgLnV0aWxpdHktbmF2aWdhdGlvbl9fc2VhcmNoLmFjdGl2ZTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyYTY1OWM7IH1cbiAgICAudXRpbGl0eS1uYXZpZ2F0aW9uX19zZWFyY2hfX2ltYWdlIHtcbiAgICAgIGhlaWdodDogMjJweDtcbiAgICAgIHdpZHRoOiAyMnB4OyB9XG5cbi5kaCAudXRpbGl0eS1uYXZpZ2F0aW9uX19pdGVtOmZpcnN0LWNoaWxkIC51dGlsaXR5LW5hdmlnYXRpb25fX2xpbmsge1xuICBjb2xvcjogIzAwNjZhMTsgfVxuXG4udXRpbGl0eS1zZWFyY2gge1xuICBiYWNrZ3JvdW5kOiAjMDA2NmExOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC51dGlsaXR5LXNlYXJjaCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLnV0aWxpdHktc2VhcmNoX193cmFwIHtcbiAgICBtYXgtd2lkdGg6IDczLjYyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICBwYWRkaW5nLXRvcDogNDBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAudXRpbGl0eS1zZWFyY2hfX3dyYXA6OmFmdGVyLCAudXRpbGl0eS1zZWFyY2hfX3dyYXA6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgLnV0aWxpdHktc2VhcmNoX193cmFwOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAudXRpbGl0eS1zZWFyY2hfX3dyYXAge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gICAgLnV0aWxpdHktc2VhcmNoX193cmFwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgLnV0aWxpdHktc2VhcmNoX193cmFwLCAudXRpbGl0eS1zZWFyY2hfX3dyYXA6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogbm9uZTsgfVxuICAudXRpbGl0eS1zZWFyY2ggLmdzYy1jb250cm9sLXNlYXJjaGJveC1vbmx5IHtcbiAgICBoZWlnaHQ6IDM0cHg7IH1cbiAgLnV0aWxpdHktc2VhcmNoIGZvcm0uZ3NjLXNlYXJjaC1ib3gge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgICAudXRpbGl0eS1zZWFyY2ggZm9ybS5nc2Mtc2VhcmNoLWJveCB0YWJsZS5nc2Mtc2VhcmNoLWJveCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLnV0aWxpdHktc2VhcmNoIGZvcm0uZ3NjLXNlYXJjaC1ib3ggdGQuZ3NjLWlucHV0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgaGVpZ2h0OiAzNHB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzNHB4KTsgfVxuICAgICAgLnV0aWxpdHktc2VhcmNoIGZvcm0uZ3NjLXNlYXJjaC1ib3ggdGQuZ3NjLWlucHV0IC5nc2MtaW5wdXQtYm94IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLnV0aWxpdHktc2VhcmNoIGZvcm0uZ3NjLXNlYXJjaC1ib3ggdGQuZ3NjLWlucHV0IGlucHV0IHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAudXRpbGl0eS1zZWFyY2ggZm9ybS5nc2Mtc2VhcmNoLWJveCAuZ3NjLXNlYXJjaC1ib3ggdHIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIC51dGlsaXR5LXNlYXJjaCBmb3JtLmdzYy1zZWFyY2gtYm94IHRkLmdzYy1zZWFyY2gtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGhlaWdodDogMzRweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAzNHB4OyB9XG4gICAgICAudXRpbGl0eS1zZWFyY2ggZm9ybS5nc2Mtc2VhcmNoLWJveCB0ZC5nc2Mtc2VhcmNoLWJ1dHRvbjo6YmVmb3JlIHtcbiAgICAgICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgICAgICAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xuICAgICAgICBzcGVhazogbm9uZTtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOThkMjk7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBjb250ZW50OiBcIu+AglwiO1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogNnB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMjVzIGVhc2Utb3V0O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMDsgfVxuICAgICAgICAudXRpbGl0eS1zZWFyY2ggZm9ybS5nc2Mtc2VhcmNoLWJveCB0ZC5nc2Mtc2VhcmNoLWJ1dHRvbjo6YmVmb3JlOmhvdmVyLCAudXRpbGl0eS1zZWFyY2ggZm9ybS5nc2Mtc2VhcmNoLWJveCB0ZC5nc2Mtc2VhcmNoLWJ1dHRvbjo6YmVmb3JlOmZvY3VzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTRkNjBhOyB9XG4gICAgICAudXRpbGl0eS1zZWFyY2ggZm9ybS5nc2Mtc2VhcmNoLWJveCB0ZC5nc2Mtc2VhcmNoLWJ1dHRvbiBidXR0b24uZ3NjLXNlYXJjaC1idXR0b24tdjIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDUwJTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAzNHB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG1heC13aWR0aDogMzRweDtcbiAgICAgICAgbWluLXdpZHRoOiAzNHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRleHQtaW5kZW50OiA5OTk5cHg7XG4gICAgICAgIHdpZHRoOiAzNHB4O1xuICAgICAgICB6LWluZGV4OiAxOyB9XG4gICAgICAgIC51dGlsaXR5LXNlYXJjaCBmb3JtLmdzYy1zZWFyY2gtYm94IHRkLmdzYy1zZWFyY2gtYnV0dG9uIGJ1dHRvbi5nc2Mtc2VhcmNoLWJ1dHRvbi12MiBzdmcge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAudXRpbGl0eS1zZWFyY2ggZm9ybS5nc2Mtc2VhcmNoLWJveCAuZ3NjLWNsZWFyLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC51dGlsaXR5LXNlYXJjaF9fZmllbGQge1xuICAgIGJvcmRlcjogc29saWQgMXB4ICNmOThkMjk7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGhlaWdodDogMzRweDtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDM0cHgpOyB9XG4gIC51dGlsaXR5LXNlYXJjaF9fc3VibWl0IHtcbiAgICBiYWNrZ3JvdW5kOiAjZjk4ZDI5O1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBoZWlnaHQ6IDM0cHg7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMjVzIGVhc2Utb3V0O1xuICAgIHdpZHRoOiAzNHB4OyB9XG4gICAgLnV0aWxpdHktc2VhcmNoX19zdWJtaXQ6aG92ZXIsIC51dGlsaXR5LXNlYXJjaF9fc3VibWl0OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICM5NGQ2MGE7IH1cbiAgICAudXRpbGl0eS1zZWFyY2hfX3N1Ym1pdCBpbWcge1xuICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICB3aWR0aDogNTAlOyB9XG5cbi51dGlsaXR5LXNlYXJjaC0tbW9iaWxlIHtcbiAgYmFja2dyb3VuZDogIzAwNjZhMTtcbiAgYm94LXNoYWRvdzogMCAwIDZweCByZ2JhKDAsIDAsIDAsIDApO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IC4yNXMgZWFzZS1vdXQ7IH1cbiAgLnV0aWxpdHktc2VhcmNoLS1tb2JpbGUuYWN0aXZlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMTJweCByZ2JhKDAsIDAsIDAsIDAuNjUpOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnV0aWxpdHktc2VhcmNoLS1tb2JpbGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC51dGlsaXR5LXNlYXJjaC0tbW9iaWxlIC5nc2MtY29udHJvbC1zZWFyY2hib3gtb25seSB7XG4gICAgaGVpZ2h0OiAzNHB4OyB9XG4gIC51dGlsaXR5LXNlYXJjaC0tbW9iaWxlIGZvcm0uZ3NjLXNlYXJjaC1ib3gge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAudXRpbGl0eS1zZWFyY2gtLW1vYmlsZSBmb3JtLmdzYy1zZWFyY2gtYm94IHRhYmxlLmdzYy1zZWFyY2gtYm94IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAudXRpbGl0eS1zZWFyY2gtLW1vYmlsZSBmb3JtLmdzYy1zZWFyY2gtYm94IHRkLmdzYy1pbnB1dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIGhlaWdodDogMzRweDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzRweCk7IH1cbiAgICAgIC51dGlsaXR5LXNlYXJjaC0tbW9iaWxlIGZvcm0uZ3NjLXNlYXJjaC1ib3ggdGQuZ3NjLWlucHV0IC5nc2MtaW5wdXQtYm94IHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICAudXRpbGl0eS1zZWFyY2gtLW1vYmlsZSBmb3JtLmdzYy1zZWFyY2gtYm94IHRkLmdzYy1pbnB1dCBpbnB1dCB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgaGVpZ2h0OiAzNHB4O1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLnV0aWxpdHktc2VhcmNoLS1tb2JpbGUgZm9ybS5nc2Mtc2VhcmNoLWJveCB0ciB7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgLnV0aWxpdHktc2VhcmNoLS1tb2JpbGUgZm9ybS5nc2Mtc2VhcmNoLWJveCB0ZC5nc2Mtc2VhcmNoLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMzRweDsgfVxuICAgICAgLnV0aWxpdHktc2VhcmNoLS1tb2JpbGUgZm9ybS5nc2Mtc2VhcmNoLWJveCB0ZC5nc2Mtc2VhcmNoLWJ1dHRvbjo6YmVmb3JlIHtcbiAgICAgICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgICAgICAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xuICAgICAgICBzcGVhazogbm9uZTtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOThkMjk7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBjb250ZW50OiBcIu+AglwiO1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nLXRvcDogNnB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMjVzIGVhc2Utb3V0O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMDsgfVxuICAgICAgICAudXRpbGl0eS1zZWFyY2gtLW1vYmlsZSBmb3JtLmdzYy1zZWFyY2gtYm94IHRkLmdzYy1zZWFyY2gtYnV0dG9uOjpiZWZvcmU6aG92ZXIsIC51dGlsaXR5LXNlYXJjaC0tbW9iaWxlIGZvcm0uZ3NjLXNlYXJjaC1ib3ggdGQuZ3NjLXNlYXJjaC1idXR0b246OmJlZm9yZTpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzk0ZDYwYTsgfVxuICAgICAgLnV0aWxpdHktc2VhcmNoLS1tb2JpbGUgZm9ybS5nc2Mtc2VhcmNoLWJveCB0ZC5nc2Mtc2VhcmNoLWJ1dHRvbiBidXR0b24uZ3NjLXNlYXJjaC1idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjk4ZDI5O1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvTWljcm9zaXRlVGVtcGxhdGVzL2Fzc2V0cy9pbWcvc3ZnL3NlYXJjaC5zdmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA1MCU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMzRweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDM0cHg7XG4gICAgICAgIG1pbi13aWR0aDogMzRweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IDk5OTlweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMjVzIGVhc2Utb3V0O1xuICAgICAgICB3aWR0aDogMzRweDsgfVxuICAgICAgICAudXRpbGl0eS1zZWFyY2gtLW1vYmlsZSBmb3JtLmdzYy1zZWFyY2gtYm94IHRkLmdzYy1zZWFyY2gtYnV0dG9uIGJ1dHRvbi5nc2Mtc2VhcmNoLWJ1dHRvbjpob3ZlciwgLnV0aWxpdHktc2VhcmNoLS1tb2JpbGUgZm9ybS5nc2Mtc2VhcmNoLWJveCB0ZC5nc2Mtc2VhcmNoLWJ1dHRvbiBidXR0b24uZ3NjLXNlYXJjaC1idXR0b246Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5NGQ2MGE7IH1cbiAgICAgICAgLnV0aWxpdHktc2VhcmNoLS1tb2JpbGUgZm9ybS5nc2Mtc2VhcmNoLWJveCB0ZC5nc2Mtc2VhcmNoLWJ1dHRvbiBidXR0b24uZ3NjLXNlYXJjaC1idXR0b24gc3ZnIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnV0aWxpdHktc2VhcmNoLS1tb2JpbGUgZm9ybS5nc2Mtc2VhcmNoLWJveCAuZ3NjLWNsZWFyLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG5cbi51dGlsaXR5LXNlYXJjaF9fZm9ybSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC51dGlsaXR5LXNlYXJjaF9fZm9ybSAuaWNvbi1zZWFyY2gge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOThkMjk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogMzJweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDMycHg7IH1cbiAgICAudXRpbGl0eS1zZWFyY2hfX2Zvcm0gLmljb24tc2VhcmNoOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiA1cHg7IH1cbiAgLnV0aWxpdHktc2VhcmNoX19mb3JtIGEuaWNvbi1zZWFyY2gge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gIC51dGlsaXR5LXNlYXJjaF9fZm9ybSAudXRpbGl0eS1zZWFyY2hfX2lucHV0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMzJweDtcbiAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMycHgpOyB9XG5cbi5tb2JpbGUtc2VhcmNoIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgaGVpZ2h0OiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogNTVweDtcbiAgdG9wOiAxMHB4O1xuICB3aWR0aDogNTBweDsgfVxuICAubW9iaWxlLXNlYXJjaC5hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6ICMwMDY2YTE7IH1cbiAgICAubW9iaWxlLXNlYXJjaC5hY3RpdmU6aG92ZXIsIC5tb2JpbGUtc2VhcmNoLmFjdGl2ZTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMmE2NTljOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1vYmlsZS1zZWFyY2gge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5tb2JpbGUtc2VhcmNoX19pbWFnZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGhlaWdodDogNjAlO1xuICAgIHdpZHRoOiA2MCU7IH1cblxuLnV0aWxpdHktbmF2aWdhdGlvbi0tbW9iaWxlIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNlNmU3ZTg7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDEwcHggMDsgfVxuICAudXRpbGl0eS1uYXZpZ2F0aW9uLS1tb2JpbGUgLnV0aWxpdHktbmF2aWdhdGlvbl9fY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnV0aWxpdHktbmF2aWdhdGlvbi0tbW9iaWxlIC51dGlsaXR5LW5hdmlnYXRpb25fX2xpc3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC51dGlsaXR5LW5hdmlnYXRpb24tLW1vYmlsZSAudXRpbGl0eS1uYXZpZ2F0aW9uX19pdGVtIHtcbiAgICBwYWRkaW5nOiAxNHB4IDIwcHg7IH1cbiAgLnV0aWxpdHktbmF2aWdhdGlvbi0tbW9iaWxlIC51dGlsaXR5LW5hdmlnYXRpb25fX2xpbmsge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9XG4gICAgLnV0aWxpdHktbmF2aWdhdGlvbi0tbW9iaWxlIC51dGlsaXR5LW5hdmlnYXRpb25fX2xpbms6aG92ZXIsIC51dGlsaXR5LW5hdmlnYXRpb24tLW1vYmlsZSAudXRpbGl0eS1uYXZpZ2F0aW9uX19saW5rOmFjdGl2ZSwgLnV0aWxpdHktbmF2aWdhdGlvbi0tbW9iaWxlIC51dGlsaXR5LW5hdmlnYXRpb25fX2xpbms6Zm9jdXMge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAudXRpbGl0eS1uYXZpZ2F0aW9uLS1tb2JpbGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4ud2FpdC10aW1lIHtcbiAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNlNmU3ZTg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLndhaXQtdGltZV9fY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDczLjYyNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87IH1cbiAgICAud2FpdC10aW1lX19jb250YWluZXI6OmFmdGVyLCAud2FpdC10aW1lX19jb250YWluZXI6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IHRhYmxlOyB9XG4gICAgLndhaXQtdGltZV9fY29udGFpbmVyOjphZnRlciB7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAud2FpdC10aW1lX19jb3B5IHtcbiAgICBmb250LWZhbWlseTogQ2FiaW4sIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgIGNvbG9yOiAjMDA2NmExO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLndhaXQtdGltZV9fY29weSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgICAud2FpdC10aW1lX19jb3B5Omxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gICAgICAud2FpdC10aW1lX19jb3B5IHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4OyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLndhaXQtdGltZV9fY29weSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAgIC53YWl0LXRpbWVfX2J1dHRvbiB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAud2FpdC10aW1lX19idXR0b24ge1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQge1xuICAqLCAqOmJlZm9yZSwgKjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgIC8qIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3MgKi9cbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJzsgfVxuICAvKlxyXG4gICAgICogRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcclxuICAgICAqIG9yIHVzZSB0aGUgYGphdmFzY3JpcHQ6YCBwc2V1ZG8gcHJvdG9jb2xcclxuICAgICAqL1xuICBhW2hyZWZePVwiI1wiXTphZnRlcixcbiAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJzsgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICAgIC8qIGg1YnAuY29tL3QgKi8gfVxuICB0cixcbiAgaW1nLFxuICBzZWN0aW9uIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cbiAgLmhlYWRlcl9fbWFpbiB7XG4gICAgaGVpZ2h0OiA2MHB4OyB9XG4gIGltZy5oZWFkZXJfX3VyZ2VudC1jYXJlLFxuICBpbWcuaGVhZGVyX19oZWFydC12YXNjdWxhciB7XG4gICAgaGVpZ2h0OiA0MHB4OyB9XG4gIC5mb290ZXJfX3VwcGVyLWlubmVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC5mb290ZXJfX2xvd2VyLWlubmVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC5wcm9maWxlc19faXRlbSB7XG4gICAgd2lkdGg6IDIyLjUlOyB9XG4gIC5wb3N0LWxpc3RpbmdfX2xpc3RpbmcsXG4gIC51cGNvbWluZy1ldmVudHNfX2xpc3Rpbmcge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAuYWRkaXRpb25hbC1mZWF0dXJlX193cmFwIHtcbiAgICBtYXgtd2lkdGg6IDk4MHB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLmFkZGl0aW9uYWwtZmVhdHVyZV9faW1hZ2Uge1xuICAgIHdpZHRoOiA0NSU7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmFkZGl0aW9uYWwtZmVhdHVyZV9fY29udGVudCB7XG4gICAgd2lkdGg6IDUyJTtcbiAgICBvcmRlcjogMDsgfVxuICAudXBjb21pbmctZXZlbnRzX19saXN0aW5nIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnVwY29taW5nLWV2ZW50c19faXRlbSB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAucG9zdC1saXN0aW5nX19pdGVtIHtcbiAgICB3aWR0aDogMzAlOyB9XG4gIC5wcm9maWxlc19faXRlbV9fb3ZlcmxheSB7XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5hbGVydCxcbiAgLnV0aWxpdHktbmF2aWdhdGlvbixcbiAgLnByaW1hcnktbmF2aWdhdGlvbixcbiAgLmhlcm8gLnNoYXJlLFxuICAuY2Fyb3VzZWxfX2Fycm93LFxuICAuZm9vdGVyX19jb250YWN0LFxuICAuZm9vdGVyX19uYXZpZ2F0aW9uLFxuICAuZm9vdGVyX19sZWdhbC1uYXZpZ2F0aW9uLFxuICAuc2lkZWJhcl9fbW9iaWxlLXN3aXRjaCxcbiAgLnBvc3QtbGlzdGluZ19fbGluayxcbiAgLnVwY29taW5nLWV2ZW50c19fbGluayxcbiAgLnBhZ2luYXRpb24ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4iLCIvLyBodHRwczovL2dvb2dsZS13ZWJmb250cy1oZWxwZXIuaGVyb2t1YXBwLmNvbS9hcGkvZm9udHMvY2FiaW4/ZG93bmxvYWQ9emlwJnN1YnNldHM9bGF0aW4mdmFyaWFudHM9NTAwLDYwMCw3MDAscmVndWxhciZmb3JtYXRzPXdvZmYsd29mZjJcclxuXHJcbi8qIGNhYmluLXJlZ3VsYXIgLSBsYXRpbiAqL1xyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnQ2FiaW4nO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIHNyYzogbG9jYWwoJ0NhYmluJyksIGxvY2FsKCdDYWJpbi1SZWd1bGFyJyksXHJcbiAgICAgICAgIHVybCgnLi4vd2ViZm9udHMvY2FiaW4tdjExLWxhdGluLXJlZ3VsYXIud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIENocm9tZSAyNissIE9wZXJhIDIzKywgRmlyZWZveCAzOSsgKi9cclxuICAgICAgICAgdXJsKCcuLi93ZWJmb250cy9jYWJpbi12MTEtbGF0aW4tcmVndWxhci53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7IC8qIENocm9tZSA2KywgRmlyZWZveCAzLjYrLCBJRSA5KywgU2FmYXJpIDUuMSsgKi9cclxuICAgIH1cclxuXHJcbi8qIGNhYmluLTUwMCAtIGxhdGluICovXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdDYWJpbic7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgc3JjOiBsb2NhbCgnQ2FiaW4gTWVkaXVtJyksIGxvY2FsKCdDYWJpbi1NZWRpdW0nKSxcclxuICAgICAgICB1cmwoJy4uL3dlYmZvbnRzL2NhYmluLXYxMS1sYXRpbi01MDAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIENocm9tZSAyNissIE9wZXJhIDIzKywgRmlyZWZveCAzOSsgKi9cclxuICAgICAgICB1cmwoJy4uL3dlYmZvbnRzL2NhYmluLXYxMS1sYXRpbi01MDAud29mZicpIGZvcm1hdCgnd29mZicpOyAvKiBDaHJvbWUgNissIEZpcmVmb3ggMy42KywgSUUgOSssIFNhZmFyaSA1LjErICovXHJcbn1cclxuXHJcbi8qIGNhYmluLTYwMCAtIGxhdGluICovXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdDYWJpbic7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgc3JjOiBsb2NhbCgnQ2FiaW4gU2VtaUJvbGQnKSwgbG9jYWwoJ0NhYmluLVNlbWlCb2xkJyksXHJcbiAgICAgICAgIHVybCgnLi4vd2ViZm9udHMvY2FiaW4tdjExLWxhdGluLTYwMC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgLyogQ2hyb21lIDI2KywgT3BlcmEgMjMrLCBGaXJlZm94IDM5KyAqL1xyXG4gICAgICAgICB1cmwoJy4uL3dlYmZvbnRzL2NhYmluLXYxMS1sYXRpbi02MDAud29mZicpIGZvcm1hdCgnd29mZicpOyAvKiBDaHJvbWUgNissIEZpcmVmb3ggMy42KywgSUUgOSssIFNhZmFyaSA1LjErICovXHJcbn1cclxuXHJcbi8qIGNhYmluLTcwMCAtIGxhdGluICovXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6ICdDYWJpbic7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgc3JjOiBsb2NhbCgnQ2FiaW4gQm9sZCcpLCBsb2NhbCgnQ2FiaW4tQm9sZCcpLFxyXG4gICAgICAgICB1cmwoJy4uL3dlYmZvbnRzL2NhYmluLXYxMS1sYXRpbi03MDAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIENocm9tZSAyNissIE9wZXJhIDIzKywgRmlyZWZveCAzOSsgKi9cclxuICAgICAgICAgdXJsKCcuLi93ZWJmb250cy9jYWJpbi12MTEtbGF0aW4tNzAwLndvZmYnKSBmb3JtYXQoJ3dvZmYnKTsgLyogQ2hyb21lIDYrLCBGaXJlZm94IDMuNissIElFIDkrLCBTYWZhcmkgNS4xKyAqL1xyXG59XHJcbiIsIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjMuMVxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gRGVwZW5kZW5jaWVzXG5AaW1wb3J0ICcuLi9fdmVuZG9yL25vcm1hbGl6ZS1zY3NzL3Nhc3Mvbm9ybWFsaXplJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy9taXNzaW5nLWRlcGVuZGVuY2llcyc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvdHJ1ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9wdXJnZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZW1vdmUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVwbGFjZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy90by1saXN0JztcblxuLy8gU2V0dGluZ3Ncbi8vIGltcG9ydCB5b3VyIG93biBgc2V0dGluZ3NgIGhlcmUgb3Jcbi8vIGltcG9ydCBhbmQgbW9kaWZ5IHRoZSBkZWZhdWx0IHNldHRpbmdzIHRocm91Z2hcbi8vIEBpbXBvcnQgJ3NldHRpbmdzL3NldHRpbmdzJztcblxuLy8gU2FzcyB1dGlsaXRpZXNcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vIEdsb2JhbCB2YXJpYWJsZXMgYW5kIHN0eWxlc1xuQGltcG9ydCAnZ2xvYmFsJztcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCAnZ3JpZC9ncmlkJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICdmb3Jtcy9mb3Jtcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY3NzLWNvbHVtbnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jbG9zZS1idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcmlsbGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbGV4JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmVzcG9uc2l2ZS1lbWJlZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xhYmVsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEtb2JqZWN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUtaWNvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL29mZi1jYW52YXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9vcmJpdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9wcm9ncmVzcy1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXZlYWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zbGlkZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zdGlja3knO1xuQGltcG9ydCAnY29tcG9uZW50cy9zd2l0Y2gnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJsZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy90aXRsZS1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90b3AtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGh1bWJuYWlsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHRpcCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsaWNraXR5JztcblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZygkZmxleDogZmFsc2UpIHtcbiAgQGlmICRmbGV4IHtcbiAgICAkZ2xvYmFsLWZsZXhib3g6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGlmIG5vdCAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgfVxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNzcy1jb2x1bW5zO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdmVydGljYWwtcmh5dGhtO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsaWNraXR5O1xuXG4gIEBpZiAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7XG4gIH1cbn1cbiIsIi8vIEhlbHBlciBmdW5jdGlvbiBmb3IgdGhlIG5vcm1hbGl6ZSgpIG1peGluLlxuQGZ1bmN0aW9uIF9ub3JtYWxpemUtaW5jbHVkZSgkc2VjdGlvbiwgJGV4Y2x1ZGU6IG51bGwpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgZ2xvYmFsIHZhcmlhYmxlcyBuZWVkZWQgYnkgdGhpcyBmdW5jdGlvbi5cbiAgQGlmIG5vdCBnbG9iYWxfdmFyaWFibGVfZXhpc3RzKF9ub3JtYWxpemUtaW5jbHVkZSkge1xuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6ICgpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogKCkgIWdsb2JhbDtcbiAgfVxuICAvLyBTaW5jZSB3ZSBhcmUgZ2l2ZW4gMiBwYXJhbWV0ZXJzLCBzZXQgdGhlIGdsb2JhbCB2YXJpYWJsZXMuXG4gIEBpZiAkZXhjbHVkZSAhPSBudWxsIHtcbiAgICAkaW5jbHVkZTogJHNlY3Rpb247XG4gICAgLy8gU2FzcyBkb2Vzbid0IGhhdmUgc3RhdGljIHZhcmlhYmxlcywgc28gdGhlIHdvcmstYXJvdW5kIGlzIHRvIHN0dWZmIHRoZXNlXG4gICAgLy8gdmFsdWVzIGludG8gZ2xvYmFsIHZhcmlhYmxlcyBzbyB3ZSBjYW4gYWNjZXNzIHRoZW0gaW4gZnV0dXJlIGNhbGxzLlxuICAgICRfbm9ybWFsaXplLWluY2x1ZGU6IGlmKHR5cGUtb2YoJGluY2x1ZGUpID09ICdsaXN0JywgJGluY2x1ZGUsICgkaW5jbHVkZSkpICFnbG9iYWw7XG4gICAgJF9ub3JtYWxpemUtZXhjbHVkZTogaWYodHlwZS1vZigkZXhjbHVkZSkgPT0gJ2xpc3QnLCAkZXhjbHVkZSwgKCRleGNsdWRlKSkgIWdsb2JhbDtcbiAgICBAcmV0dXJuIHRydWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiAkc2VjdGlvbiBpcyBpbiB0aGUgJGluY2x1ZGUgbGlzdC5cbiAgQGlmIGluZGV4KCRfbm9ybWFsaXplLWluY2x1ZGUsICRzZWN0aW9uKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIC8vIElmICRpbmNsdWRlIGlzIHNldCB0byAoYWxsKSwgbWFrZSBzdXJlICRzZWN0aW9uIGlzIG5vdCBpbiAkZXhjbHVkZS5cbiAgQGVsc2UgaWYgbm90IGluZGV4KCRfbm9ybWFsaXplLWV4Y2x1ZGUsICRzZWN0aW9uKSBhbmQgaW5kZXgoJF9ub3JtYWxpemUtaW5jbHVkZSwgYWxsKSB7XG4gICAgQHJldHVybiB0cnVlO1xuICB9XG4gIEByZXR1cm4gZmFsc2U7XG59XG5cbkBtaXhpbiBub3JtYWxpemUoJGluY2x1ZGU6IChhbGwpLCAkZXhjbHVkZTogKCkpIHtcbiAgLy8gSW5pdGlhbGl6ZSB0aGUgaGVscGVyIGZ1bmN0aW9uIGJ5IHBhc3NpbmcgaXQgdGhpcyBtaXhpbidzIHBhcmFtZXRlcnMuXG4gICRpbml0OiBfbm9ybWFsaXplLWluY2x1ZGUoJGluY2x1ZGUsICRleGNsdWRlKTtcblxuICAvLyBJZiB3ZSd2ZSBjdXN0b21pemVkIGFueSBmb250IHZhcmlhYmxlcywgd2UnbGwgbmVlZCBleHRyYSBwcm9wZXJ0aWVzLlxuICBAaWYgJGJhc2UtZm9udC1zaXplICE9IDE2cHhcbiAgICBvciAkYmFzZS1saW5lLWhlaWdodCAhPSAyNHB4XG4gICAgb3IgJGJhc2UtdW5pdCAhPSAnZW0nXG4gICAgb3IgJGgxLWZvbnQtc2l6ZSAhPSAyICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgyLWZvbnQtc2l6ZSAhPSAxLjUgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGgzLWZvbnQtc2l6ZSAhPSAxLjE3ICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg0LWZvbnQtc2l6ZSAhPSAxICAgICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg1LWZvbnQtc2l6ZSAhPSAwLjgzICogJGJhc2UtZm9udC1zaXplXG4gICAgb3IgJGg2LWZvbnQtc2l6ZSAhPSAwLjY3ICogJGJhc2UtZm9udC1zaXplIHtcbiAgICAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLyohIG5vcm1hbGl6ZS1zY3NzIHwgTUlUL0dQTHYyIExpY2Vuc2UgfCBiaXQubHkvbm9ybWFsaXplLXNjc3MgKi9cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGRvY3VtZW50KSB7XG4gICAgLyogRG9jdW1lbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgICAgKiAzLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4gICAgICogICAgSUUgb24gV2luZG93cyBQaG9uZSBhbmQgaW4gaU9TLlxuICAgICAqL1xuXG4gICAgaHRtbCB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAgIC8vIENvcnJlY3Qgb2xkIGJyb3dzZXIgYnVnIHRoYXQgcHJldmVudGVkIGFjY2Vzc2libGUgcmVzaXppbmcgb2YgdGV4dFxuICAgICAgICAvLyB3aGVuIHJvb3QgZm9udC1zaXplIGlzIHNldCB3aXRoIHB4IG9yIGVtLlxuICAgICAgICBmb250LXNpemU6ICgkYmFzZS1mb250LXNpemUgLyAxNnB4KSAqIDEwMCU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAoJGJhc2UtbGluZS1oZWlnaHQgLyAkYmFzZS1mb250LXNpemUpICogMWVtOyAvKiAyICovXG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAyICovXG4gICAgICB9XG4gICAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMyAqL1xuICAgICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAzICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzZWN0aW9ucykge1xuICAgIC8qIFNlY3Rpb25zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgYm9keSB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhcnRpY2xlLFxuICAgIGFzaWRlLFxuICAgIGZvb3RlcixcbiAgICBoZWFkZXIsXG4gICAgbmF2LFxuICAgIHNlY3Rpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAgICAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBub3JtYWxpemUtZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLWxpbmUtaGVpZ2h0KCRoMS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJG5vcm1hbGl6ZS12ZXJ0aWNhbC1yaHl0aG0ge1xuICAgICAgICAvKiBTZXQgMSB1bml0IG9mIHZlcnRpY2FsIHJoeXRobSBvbiB0aGUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gKi9cbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMS1mb250LXNpemUpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBtYXJnaW46IDAuNjdlbSAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICBoMiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgyLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDItZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMi1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDMtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoMy1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg0LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDQtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNC1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg1LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDUtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNS1mb250LXNpemUpO1xuICAgICAgfVxuXG4gICAgICBoNiB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1mb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1saW5lLWhlaWdodCgkaDYtZm9udC1zaXplKTtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxIDAsICRoNi1mb250LXNpemUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoZ3JvdXBpbmcpIHtcbiAgICAvKiBHcm91cGluZyBjb250ZW50XG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgYmxvY2txdW90ZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAkaW5kZW50LWFtb3VudCk7XG4gICAgICB9XG5cbiAgICAgIGRsLFxuICAgICAgb2wsXG4gICAgICB1bCB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBUdXJuIG9mZiBtYXJnaW5zIG9uIG5lc3RlZCBsaXN0cy5cbiAgICAgICAqL1xuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgb2wsXG4gICAgICAgIHVsIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZGQge1xuICAgICAgICBtYXJnaW46IDAgMCAwICRpbmRlbnQtYW1vdW50O1xuICAgICAgfVxuXG4gICAgICBvbCxcbiAgICAgIHVsIHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBmaWdjYXB0aW9uLFxuICAgIGZpZ3VyZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gICAgICovXG5cbiAgICBmaWd1cmUge1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgQGluY2x1ZGUgbm9ybWFsaXplLW1hcmdpbigxICRpbmRlbnQtYW1vdW50KTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbWFyZ2luOiAxZW0gJGluZGVudC1hbW91bnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgICAgKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKi9cblxuICAgIGhyIHtcbiAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gICAgICBoZWlnaHQ6IDA7IC8qIDEgKi9cbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gICAgICovXG5cbiAgICBtYWluIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIEBpZiAkbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobSB7XG4gICAgICAvKipcbiAgICAgICAqIFNldCAxIHVuaXQgb2YgdmVydGljYWwgcmh5dGhtIG9uIHRoZSB0b3AgYW5kIGJvdHRvbSBtYXJnaW4uXG4gICAgICAgKi9cblxuICAgICAgcCxcbiAgICAgIHByZSB7XG4gICAgICAgIEBpbmNsdWRlIG5vcm1hbGl6ZS1tYXJnaW4oMSAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIHByZSB7XG4gICAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMWVtOyAvKiAyICovXG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShsaW5rcykge1xuICAgIC8qIExpbmtzXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICAgKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gICAgICovXG5cbiAgICBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiAxICovXG4gICAgICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBvdXRsaW5lIG9uIGZvY3VzZWQgbGlua3Mgd2hlbiB0aGV5IGFyZSBhbHNvIGFjdGl2ZSBvciBob3ZlcmVkXG4gICAgICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICovXG5cbiAgICBhOmFjdGl2ZSxcbiAgICBhOmhvdmVyIHtcbiAgICAgIG91dGxpbmUtd2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZSh0ZXh0KSB7XG4gICAgLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICAgICAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gICAgICovXG5cbiAgICBhYmJyW3RpdGxlXSB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLyogMiAqL1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gICAgICovXG5cbiAgICBiLFxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYixcbiAgICBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAgICAgKi9cblxuICAgIGNvZGUsXG4gICAga2JkLFxuICAgIHNhbXAge1xuICAgICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvKiAxICovXG4gICAgICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAgICAgKi9cblxuICAgIGRmbiB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWFyayB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzbWFsbCB7XG4gICAgICBmb250LXNpemU6IDgwJTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgICAgKiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdWIsXG4gICAgc3VwIHtcbiAgICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gICAgfVxuXG4gICAgc3ViIHtcbiAgICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgICB9XG5cbiAgICBzdXAge1xuICAgICAgdG9wOiAtMC41ZW07XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShlbWJlZGRlZCkge1xuICAgIC8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBhdWRpbyxcbiAgICB2aWRlbyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAgICAgKi9cblxuICAgIGF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgICAgKi9cblxuICAgIHN2Zzpub3QoOnJvb3QpIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShmb3Jtcykge1xuICAgIC8qIEZvcm1zXG4gICAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAgIC8qKlxuICAgICAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gICAgICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICAgICAqL1xuXG4gICAgYnV0dG9uLFxuICAgIGlucHV0LFxuICAgIG9wdGdyb3VwLFxuICAgIHNlbGVjdCxcbiAgICB0ZXh0YXJlYSB7XG4gICAgICBmb250LWZhbWlseTogJGJhc2UtZm9udC1mYW1pbHk7IC8qIDEgKi9cbiAgICAgIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkYmFzZS1saW5lLWhlaWdodCAvICRiYXNlLWZvbnQtc2l6ZSkgKiAxZW07IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8qIDEgKi9cbiAgICAgIH1cbiAgICAgIG1hcmdpbjogMDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAgICAqL1xuXG4gICAgYnV0dG9uIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAgICAqIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBzZWxlY3QgeyAvKiAxICovXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAgICAgKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgICAgKi9cblxuICAgIGJ1dHRvbixcbiAgICBodG1sIFt0eXBlPVwiYnV0dG9uXCJdLCAvKiAxICovXG4gICAgW3R5cGU9XCJyZXNldFwiXSxcbiAgICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMiAqL1xuICAgIH1cblxuICAgIGJ1dHRvbixcbiAgICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgICBbdHlwZT1cInJlc2V0XCJdLFxuICAgIFt0eXBlPVwic3VibWl0XCJdIHtcblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICAgICAgICovXG5cbiAgICAgICY6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICAgICAgICovXG5cbiAgICAgICY6LW1vei1mb2N1c3Jpbmcge1xuICAgICAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAgICAgKi9cblxuICAgIGlucHV0IHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAgICAgKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICAgICAqL1xuXG4gICAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gICAgICovXG5cbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG4gICAgICovXG5cbiAgICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAgICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cblxuICAgICAgLyoqXG4gICAgICAgKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICAgICAgICovXG5cbiAgICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4gICAgICAmOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gICAgICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICAgICAqL1xuXG4gICAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLyogMSAqL1xuICAgICAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICAgICAqL1xuXG4gICAgZmllbGRzZXQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgICAgIG1hcmdpbjogMCAycHg7XG4gICAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgICAgKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gICAgICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAgICAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICAgICAqL1xuXG4gICAgbGVnZW5kIHtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgICAgIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IC8qIDEgKi9cbiAgICAgIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgICAgIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvKiAxICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICogMi4gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbiAgICAgKi9cblxuICAgIHByb2dyZXNzIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgLyogMSAqL1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAgICAgKi9cblxuICAgIHRleHRhcmVhIHtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBfbm9ybWFsaXplLWluY2x1ZGUoaW50ZXJhY3RpdmUpIHtcbiAgICAvKiBJbnRlcmFjdGl2ZVxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAgICAgKi9cblxuICAgIGRldGFpbHMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLypcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG4gICAgICovXG5cbiAgICBzdW1tYXJ5IHtcbiAgICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICAgICAqL1xuXG4gICAgbWVudSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgQGlmICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHtcbiAgICAgICAgLypcbiAgICAgICAgICogMS4gU2V0IDEgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHRvcCBhbmQgYm90dG9tIG1hcmdpbi5cbiAgICAgICAgICogMi4gU2V0IGNvbnNpc3RlbnQgc3BhY2UgZm9yIHRoZSBsaXN0IHN0eWxlIGltYWdlLlxuICAgICAgICAgKi9cblxuICAgICAgICBAaW5jbHVkZSBub3JtYWxpemUtbWFyZ2luKDEgMCk7IC8qIDEgKi9cbiAgICAgICAgcGFkZGluZzogMCAwIDAgJGluZGVudC1hbW91bnQ7IC8qIDIgKi9cblxuICAgICAgICAvKipcbiAgICAgICAgICogVHVybiBvZmYgbWFyZ2lucyBvbiBuZXN0ZWQgbGlzdHMuXG4gICAgICAgICAqL1xuXG4gICAgICAgIG1lbnUgJixcbiAgICAgICAgb2wgJixcbiAgICAgICAgdWwgJiB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmIF9ub3JtYWxpemUtaW5jbHVkZShzY3JpcHRpbmcpIHtcbiAgICAvKiBTY3JpcHRpbmdcbiAgICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gICAgICovXG5cbiAgICBjYW52YXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICAgICAqL1xuXG4gICAgdGVtcGxhdGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaWYgX25vcm1hbGl6ZS1pbmNsdWRlKGhpZGRlbikge1xuICAgIC8qIEhpZGRlblxuICAgICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgICAvKipcbiAgICAgKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gICAgICovXG5cbiAgICBbaGlkZGVuXSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIFZhcmlhYmxlc1xuLy9cbi8vIFlvdSBjYW4gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgdmFsdWVzIGJ5IHNldHRpbmcgdGhlIHZhcmlhYmxlcyBpbiB5b3VyIFNhc3Ncbi8vIGJlZm9yZSBpbXBvcnRpbmcgdGhlIG5vcm1hbGl6ZS1zY3NzIGxpYnJhcnkuXG5cbi8vIFRoZSBmb250IHNpemUgc2V0IG9uIHRoZSByb290IGh0bWwgZWxlbWVudC5cbiRiYXNlLWZvbnQtc2l6ZTogMTZweCAhZGVmYXVsdDtcblxuLy8gVGhlIGJhc2UgbGluZSBoZWlnaHQgZGV0ZXJtaW5lcyB0aGUgYmFzaWMgdW5pdCBvZiB2ZXJ0aWNhbCByaHl0aG0uXG4kYmFzZS1saW5lLWhlaWdodDogMjRweCAhZGVmYXVsdDtcblxuLy8gVGhlIGxlbmd0aCB1bml0IGluIHdoaWNoIHRvIG91dHB1dCB2ZXJ0aWNhbCByaHl0aG0gdmFsdWVzLlxuLy8gU3VwcG9ydGVkIHZhbHVlczogcHgsIGVtLCByZW0uXG4kYmFzZS11bml0OiAnZW0nICFkZWZhdWx0O1xuXG4vLyBUaGUgZGVmYXVsdCBmb250IGZhbWlseS5cbiRiYXNlLWZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9udCBzaXplcyBmb3IgaDEtaDYuXG4kaDEtZm9udC1zaXplOiAyICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGgyLWZvbnQtc2l6ZTogMS41ICAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6IDEuMTcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG4kaDQtZm9udC1zaXplOiAxICAgICogJGJhc2UtZm9udC1zaXplICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogMC44MyAqICRiYXNlLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6IDAuNjcgKiAkYmFzZS1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vIFRoZSBhbW91bnQgbGlzdHMgYW5kIGJsb2NrcXVvdGVzIGFyZSBpbmRlbnRlZC5cbiRpbmRlbnQtYW1vdW50OiA0MHB4ICFkZWZhdWx0O1xuXG4vLyBUaGUgZm9sbG93aW5nIHZhcmlhYmxlIGNvbnRyb2xzIHdoZXRoZXIgbm9ybWFsaXplLXNjc3Mgd2lsbCBvdXRwdXRcbi8vIGZvbnQtc2l6ZXMsIGxpbmUtaGVpZ2h0cyBhbmQgYmxvY2stbGV2ZWwgdG9wL2JvdHRvbSBtYXJnaW5zIHRoYXQgZm9ybSBhIGJhc2ljXG4vLyB2ZXJ0aWNhbCByaHl0aG0gb24gdGhlIHBhZ2UsIHdoaWNoIGRpZmZlcnMgZnJvbSB0aGUgb3JpZ2luYWwgTm9ybWFsaXplLmNzcy5cbi8vIEhvd2V2ZXIsIGNoYW5naW5nIGFueSBvZiB0aGUgdmFyaWFibGVzIGFib3ZlIHdpbGwgY2F1c2Vcbi8vICRub3JtYWxpemUtdmVydGljYWwtcmh5dGhtIHRvIGJlIGF1dG9tYXRpY2FsbHkgc2V0IHRvIHRydWUuXG4kbm9ybWFsaXplLXZlcnRpY2FsLXJoeXRobTogZmFsc2UgIWRlZmF1bHQ7XG4iLCIvL1xuLy8gVmVydGljYWwgUmh5dGhtXG4vL1xuLy8gVGhpcyBpcyB0aGUgbWluaW1hbCBhbW91bnQgb2YgY29kZSBuZWVkZWQgdG8gY3JlYXRlIHZlcnRpY2FsIHJoeXRobSBpbiBvdXJcbi8vIENTUy4gSWYgeW91IGFyZSBsb29raW5nIGZvciBhIHJvYnVzdCBzb2x1dGlvbiwgbG9vayBhdCB0aGUgZXhjZWxsZW50IFR5cGV5XG4vLyBsaWJyYXJ5LiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9qcHRhcmFudG8vdHlwZXlcblxuQGZ1bmN0aW9uIG5vcm1hbGl6ZS1yaHl0aG0oJHZhbHVlLCAkcmVsYXRpdmUtdG86ICRiYXNlLWZvbnQtc2l6ZSwgJHVuaXQ6ICRiYXNlLXVuaXQpIHtcbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSBweCB7XG4gICAgQGVycm9yIFwiVGhlIG5vcm1hbGl6ZSB2ZXJ0aWNhbC1yaHl0aG0gbW9kdWxlIG9ubHkgc3VwcG9ydHMgcHggaW5wdXRzLiBUaGUgdHlwZXkgbGlicmFyeSBpcyBiZXR0ZXIuXCI7XG4gIH1cbiAgQGlmICR1bml0ID09IHJlbSB7XG4gICAgQHJldHVybiAoJHZhbHVlIC8gJGJhc2UtZm9udC1zaXplKSAqIDFyZW07XG4gIH1cbiAgQGVsc2UgaWYgJHVuaXQgPT0gZW0ge1xuICAgIEByZXR1cm4gKCR2YWx1ZSAvICRyZWxhdGl2ZS10bykgKiAxZW07XG4gIH1cbiAgQGVsc2UgeyAvLyAkdW5pdCA9PSBweFxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG59XG5cbkBtaXhpbiBub3JtYWxpemUtZm9udC1zaXplKCR2YWx1ZSwgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgQGlmIHVuaXQoJHZhbHVlKSAhPSAncHgnIHtcbiAgICBAZXJyb3IgXCJub3JtYWxpemUtZm9udC1zaXplKCkgb25seSBzdXBwb3J0cyBweCBpbnB1dHMuIFRoZSB0eXBleSBsaWJyYXJ5IGlzIGJldHRlci5cIjtcbiAgfVxuICBmb250LXNpemU6IG5vcm1hbGl6ZS1yaHl0aG0oJHZhbHVlLCAkcmVsYXRpdmUtdG8pO1xufVxuXG5AbWl4aW4gbm9ybWFsaXplLXJoeXRobSgkcHJvcGVydHksICR2YWx1ZXMsICRyZWxhdGl2ZS10bzogJGJhc2UtZm9udC1zaXplKSB7XG4gICR2YWx1ZS1saXN0OiAkdmFsdWVzO1xuICAkc2VwOiBzcGFjZTtcbiAgQGlmIHR5cGUtb2YoJHZhbHVlcykgPT0gJ2xpc3QnIHtcbiAgICAkc2VwOiBsaXN0LXNlcGFyYXRvcigkdmFsdWVzKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgJHZhbHVlLWxpc3Q6IGFwcGVuZCgoKSwgJHZhbHVlcyk7XG4gIH1cblxuICAkbm9ybWFsaXplZC12YWx1ZXM6ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlLWxpc3Qge1xuICAgIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAkdmFsdWUgIT0gMCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqIG5vcm1hbGl6ZS1yaHl0aG0oJGJhc2UtbGluZS1oZWlnaHQsICRyZWxhdGl2ZS10byk7XG4gICAgfVxuICAgICRub3JtYWxpemVkLXZhbHVlczogYXBwZW5kKCRub3JtYWxpemVkLXZhbHVlcywgJHZhbHVlLCAkc2VwKTtcbiAgfVxuICAjeyRwcm9wZXJ0eX06ICRub3JtYWxpemVkLXZhbHVlcztcbn1cblxuQG1peGluIG5vcm1hbGl6ZS1tYXJnaW4oJHZhbHVlcywgJHJlbGF0aXZlLXRvOiAkYmFzZS1mb250LXNpemUpIHtcbiAgQGluY2x1ZGUgbm9ybWFsaXplLXJoeXRobShtYXJnaW4sICR2YWx1ZXMsICRyZWxhdGl2ZS10byk7XG59XG5cbkBtaXhpbiBub3JtYWxpemUtbGluZS1oZWlnaHQoJGZvbnQtc2l6ZSwgJG1pbi1saW5lLXBhZGRpbmc6IDJweCkge1xuICAkbGluZXM6IGNlaWwoJGZvbnQtc2l6ZSAvICRiYXNlLWxpbmUtaGVpZ2h0KTtcbiAgLy8gSWYgbGluZXMgYXJlIGNyYW1wZWQgaW5jbHVkZSBzb21lIGV4dHJhIGxlYWRpbmcuXG4gIEBpZiAoJGxpbmVzICogJGJhc2UtbGluZS1oZWlnaHQgLSAkZm9udC1zaXplKSA8ICgkbWluLWxpbmUtcGFkZGluZyAqIDIpIHtcbiAgICAkbGluZXM6ICRsaW5lcyArIDE7XG4gIH1cbiAgQGluY2x1ZGUgbm9ybWFsaXplLXJoeXRobShsaW5lLWhlaWdodCwgJGxpbmVzLCAkZm9udC1zaXplKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBmb3JjZS1hdHRyaWJ1dGUtbmVzdGluZywgZm9yY2UtcHNldWRvLW5lc3RpbmcsIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMTc3OWJhLFxuICBzZWNvbmRhcnk6ICM3Njc2NzYsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjY2M0YjM3LFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogZmFsc2UgIWRlZmF1bHQ7XG5cbkBpZiBub3QgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICBAZXJyb3IgJ0luICRmb3VuZGF0aW9uLXBhbGV0dGUsIHlvdSBtdXN0IGhhdmUgYSBjb2xvciBuYW1lZCBcInByaW1hcnlcIi4nO1xufVxuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgdGV4dCBkaXJlY3Rpb25cbiRnbG9iYWwtbGVmdDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIHJpZ2h0LCBsZWZ0KTtcbiRnbG9iYWwtcmlnaHQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBsZWZ0LCByaWdodCk7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbiRwcmltYXJ5LWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kc2Vjb25kYXJ5LWNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcbiRzdWNjZXNzLWNvbG9yOiBnZXQtY29sb3Ioc3VjY2Vzcyk7XG4kd2FybmluZy1jb2xvcjogZ2V0LWNvbG9yKHdhcm5pbmcpO1xuJGFsZXJ0LWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgLXpmLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gICAgcGFkZGluZzogMDtcblxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBMb2FkcyBub3JtYWxpemUuY3NzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC16Zi1ub3JtYWxpemUge1xuICBAaW5jbHVkZSBub3JtYWxpemUoKTtcbn1cbiIsIi8vICBGb3VuZGF0aW9uIGZvciBTaXRlcyBTZXR0aW5nc1xyXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy9cclxuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxyXG4vL1xyXG4vLyAgIDEuIEdsb2JhbFxyXG4vLyAgIDIuIEJyZWFrcG9pbnRzXHJcbi8vICAgMy4gVGhlIEdyaWRcclxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcclxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcclxuLy8gICA2LiBBYmlkZVxyXG4vLyAgIDcuIEFjY29yZGlvblxyXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XHJcbi8vICAgOS4gQmFkZ2VcclxuLy8gIDEwLiBCcmVhZGNydW1ic1xyXG4vLyAgMTEuIEJ1dHRvblxyXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxyXG4vLyAgMTMuIENhbGxvdXRcclxuLy8gIDE0LiBDYXJkXHJcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXHJcbi8vICAxNi4gRHJpbGxkb3duXHJcbi8vICAxNy4gRHJvcGRvd25cclxuLy8gIDE4LiBEcm9wZG93biBNZW51XHJcbi8vICAxOS4gRm9ybXNcclxuLy8gIDIwLiBMYWJlbFxyXG4vLyAgMjEuIE1lZGlhIE9iamVjdFxyXG4vLyAgMjIuIE1lbnVcclxuLy8gIDIzLiBNZXRlclxyXG4vLyAgMjQuIE9mZi1jYW52YXNcclxuLy8gIDI1LiBPcmJpdFxyXG4vLyAgMjYuIFBhZ2luYXRpb25cclxuLy8gIDI3LiBQcm9ncmVzcyBCYXJcclxuLy8gIDI4LiBSZXNwb25zaXZlIEVtYmVkXHJcbi8vICAyOS4gUmV2ZWFsXHJcbi8vICAzMC4gU2xpZGVyXHJcbi8vICAzMS4gU3dpdGNoXHJcbi8vICAzMi4gVGFibGVcclxuLy8gIDMzLiBUYWJzXHJcbi8vICAzNC4gVGh1bWJuYWlsXHJcbi8vICAzNS4gVGl0bGUgQmFyXHJcbi8vICAzNi4gVG9vbHRpcFxyXG4vLyAgMzcuIFRvcCBCYXJcclxuXHJcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XHJcblxyXG4vLyAxLiBHbG9iYWxcclxuLy8gLS0tLS0tLS0tXHJcblxyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTE3OCk7XHJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xyXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXHJcbiAgcHJpbWFyeTogJGNvbG9yLXByaW1hcnksXHJcbiAgc2Vjb25kYXJ5OiAkY29sb3Itc2Vjb25kYXJ5LFxyXG4gIHN1Y2Nlc3M6ICRjb2xvci1zdWNjZXNzLFxyXG4gIHdhcm5pbmc6ICRjb2xvci13YXJuaW5nLFxyXG4gIGFsZXJ0OiAkY29sb3ItYWxlcnQsXHJcbik7XHJcbiRsaWdodC1ncmF5OiAkY29sb3ItbWVyY3VyeTtcclxuJG1lZGl1bS1ncmF5OiAkY29sb3Itc2lsdmVyO1xyXG4kZGFyay1ncmF5OiAkY29sb3ItZ3JheTtcclxuJGJsYWNrOiAkY29sb3ItYmxhY2s7XHJcbiR3aGl0ZTogJGNvbG9yLXdoaXRlO1xyXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjaztcclxuJGJvZHktZm9udC1mYW1pbHk6IENhYmluLCAkc2Fucy1zZXJpZi1zdGFjaztcclxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XHJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtO1xyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XHJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsO1xyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkO1xyXG4kZ2xvYmFsLXJhZGl1czogMDtcclxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xyXG4kZ2xvYmFsLWZsZXhib3g6IHRydWU7XHJcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcclxuXHJcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcclxuXHJcbi8vIDIuIEJyZWFrcG9pbnRzXHJcbi8vIC0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYnJlYWtwb2ludHM6IChcclxuICBzbWFsbDogMCxcclxuICBtZWRpdW06IDY0MHB4LFxyXG4gIGxhcmdlOiAxMDI0cHgsXHJcbiAgeGxhcmdlOiAxMjAwcHgsXHJcbiAgeHhsYXJnZTogMTQ0MHB4LFxyXG4pO1xyXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XHJcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpO1xyXG5cclxuLy8gMy4gVGhlIEdyaWRcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcclxuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxyXG4gIHNtYWxsOiA0MHB4LFxyXG4gIGxhcmdlOiAyMHB4XHJcbik7XHJcbiRncmlkLWNvbHVtbi1hbGlnbi1lZGdlOiB0cnVlO1xyXG4kYmxvY2stZ3JpZC1tYXg6IDg7XHJcblxyXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcclxuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbDtcclxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XHJcbiRoZWFkZXItY29sb3I6IGluaGVyaXQ7XHJcbiRoZWFkZXItbGluZWhlaWdodDogMS40O1xyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxuJGhlYWRlci1zdHlsZXM6IChcclxuICBzbWFsbDogKFxyXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAzOCksXHJcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcclxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMjApLFxyXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXHJcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcclxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTQpLFxyXG4gICksXHJcbiAgbWVkaXVtOiAoXHJcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDM4KSxcclxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjIpLFxyXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAzNiksXHJcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcclxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTYpLFxyXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNCksXHJcbiAgKSxcclxuKTtcclxuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xyXG4kc21hbGwtZm9udC1zaXplOiA4MCU7XHJcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNjtcclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XHJcbiRjb2RlLWNvbG9yOiAkYmxhY2s7XHJcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xyXG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWlyb247XHJcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKTtcclxuJGFuY2hvci1jb2xvcjogJGNvbG9yLXByaW1hcnk7XHJcbiRhbmNob3ItY29sb3ItaG92ZXI6ICRjb2xvci1zZWNvbmRhcnk7XHJcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcclxuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xyXG4kaHItYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWlyb247XHJcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvO1xyXG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XHJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcclxuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcclxuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XHJcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xyXG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW07XHJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbTtcclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XHJcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1pcm9uO1xyXG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCc7XHJcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrO1xyXG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcclxuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrO1xyXG5cclxuLy8gNS4gVHlwb2dyYXBoeSBIZWxwZXJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjU7XHJcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNjtcclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XHJcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XHJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG4kc3RhdC1mb250LXNpemU6IDIuNXJlbTtcclxuXHJcbi8vIDYuIEFiaWRlXHJcbi8vIC0tLS0tLS0tXHJcblxyXG4kYWJpZGUtaW5wdXRzOiB0cnVlO1xyXG4kYWJpZGUtbGFiZWxzOiB0cnVlO1xyXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xyXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xyXG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCk7XHJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xyXG5cclxuLy8gNy4gQWNjb3JkaW9uXHJcbi8vIC0tLS0tLS0tLS0tLVxyXG5cclxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlO1xyXG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xyXG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XHJcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW07XHJcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcclxuXHJcbi8vIDguIEFjY29yZGlvbiBNZW51XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IGZhbHNlO1xyXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweDtcclxuXHJcbi8vIDkuIEJhZGdlXHJcbi8vIC0tLS0tLS0tXHJcblxyXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRiYWRnZS1jb2xvcjogJHdoaXRlO1xyXG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XHJcbiRiYWRnZS1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xyXG4kYmFkZ2UtcGFkZGluZzogMC4zZW07XHJcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XHJcbiRiYWRnZS1mb250LXNpemU6IDAuNnJlbTtcclxuXHJcbi8vIDEwLiBCcmVhZGNydW1ic1xyXG4vLyAtLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKTtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XHJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XHJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbTtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1zbGFzaDogdHJ1ZTtcclxuXHJcbi8vIDExLiBCdXR0b25cclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtO1xyXG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XHJcbiRidXR0b24tZmlsbDogc29saWQ7XHJcbiRidXR0b24tYmFja2dyb3VuZDogJGNvbG9yLXByaW1hcnk7XHJcbiRidXR0b24tYmFja2dyb3VuZC1ob3ZlcjogJGNvbG9yLXNlY29uZGFyeTtcclxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xyXG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrO1xyXG4kYnV0dG9uLXJhZGl1czogMDtcclxuJGJ1dHRvbi1zaXplczogKFxyXG4gIHRpbnk6IDAuN3JlbSxcclxuICBzbWFsbDogMC44NXJlbSxcclxuICBkZWZhdWx0OiAxcmVtLFxyXG4gIGxhcmdlOiAxLjI1cmVtLFxyXG4pO1xyXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XHJcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJTtcclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlO1xyXG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xyXG5cclxuLy8gMTIuIEJ1dHRvbiBHcm91cFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtO1xyXG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4O1xyXG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJztcclxuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDY7XHJcbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZTtcclxuXHJcbi8vIDEzLiBDYWxsb3V0XHJcbi8vIC0tLS0tLS0tLS0tXHJcblxyXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlO1xyXG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSk7XHJcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcclxuJGNhbGxvdXQtcGFkZGluZzogMXJlbTtcclxuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQ7XHJcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xyXG5cclxuLy8gMTQuIENhcmRcclxuLy8gLS0tLS0tLS1cclxuXHJcbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XHJcbiRjYXJkLXNoYWRvdzogbm9uZTtcclxuJGNhcmQtYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcclxuJGNhcmQtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcclxuXHJcbi8vIDE1LiBDbG9zZSBCdXR0b25cclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XHJcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxyXG4gIHNtYWxsOiAwLjY2cmVtLFxyXG4gIG1lZGl1bTogMXJlbSxcclxuKTtcclxuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxyXG4gIHNtYWxsOiAwLjMzZW0sXHJcbiAgbWVkaXVtOiAwLjVyZW0sXHJcbik7XHJcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXHJcbiAgc21hbGw6IDEuNWVtLFxyXG4gIG1lZGl1bTogMmVtLFxyXG4pO1xyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcclxuXHJcbi8vIDE2LiBEcmlsbGRvd25cclxuLy8gLS0tLS0tLS0tLS0tLVxyXG5cclxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyO1xyXG4kZHJpbGxkb3duLWFycm93czogdHJ1ZTtcclxuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiRkcmlsbGRvd24tYXJyb3ctc2l6ZTogNnB4O1xyXG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuXHJcbi8vIDE3LiBEcm9wZG93blxyXG4vLyAtLS0tLS0tLS0tLS1cclxuXHJcbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtO1xyXG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcclxuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbTtcclxuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcclxuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRkcm9wZG93bi1zaXplczogKFxyXG4gIHRpbnk6IDEwMHB4LFxyXG4gIHNtYWxsOiAyMDBweCxcclxuICBsYXJnZTogNDAwcHgsXHJcbik7XHJcblxyXG4vLyAxOC4gRHJvcGRvd24gTWVudVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWU7XHJcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XHJcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xyXG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHg7XHJcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuXHJcbi8vIDE5LiBGb3Jtc1xyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XHJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApO1xyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XHJcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KTtcclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2s7XHJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYztcclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xyXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xyXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGlucHV0LWNvbG9yOiAkYmxhY2s7XHJcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xyXG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGU7XHJcbiRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkOiAkbGlnaHQtZ3JheTtcclxuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXk7XHJcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKTtcclxuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXk7XHJcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xyXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XHJcbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XHJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDIwLiBMYWJlbFxyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuJGxhYmVsLWNvbG9yOiAkd2hpdGU7XHJcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjaztcclxuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XHJcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbTtcclxuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDIxLiBNZWRpYSBPYmplY3RcclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XHJcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlO1xyXG5cclxuLy8gMjIuIE1lbnVcclxuLy8gLS0tLS0tLS1cclxuXHJcbiRtZW51LW1hcmdpbjogMDtcclxuJG1lbnUtbWFyZ2luLW5lc3RlZDogMXJlbTtcclxuJG1lbnUtaXRlbS1wYWRkaW5nOiAwO1xyXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlO1xyXG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSk7XHJcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcclxuJG1lbnUtYm9yZGVyOiAkbGlnaHQtZ3JheTtcclxuXHJcbi8vIDIzLiBNZXRlclxyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRtZXRlci1oZWlnaHQ6IDFyZW07XHJcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kbWV0ZXItYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG4kbWV0ZXItZmlsbC1nb29kOiAkc3VjY2Vzcy1jb2xvcjtcclxuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcclxuJG1ldGVyLWZpbGwtYmFkOiAkYWxlcnQtY29sb3I7XHJcblxyXG4vLyAyNC4gT2ZmLWNhbnZhc1xyXG4vLyAtLS0tLS0tLS0tLS0tLVxyXG5cclxuJG9mZmNhbnZhcy1zaXplOiAyNTBweDtcclxuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplOiAyNTBweDtcclxuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpO1xyXG4kb2ZmY2FudmFzLXB1c2gtemluZGV4OiAxO1xyXG4kb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAxMDtcclxuJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAxO1xyXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzO1xyXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlO1xyXG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcclxuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KTtcclxuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JztcclxuXHJcbi8vIDI1LiBPcmJpdFxyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5O1xyXG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW07XHJcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW07XHJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDogMC44cmVtO1xyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbTtcclxuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSk7XHJcbiRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IDFyZW07XHJcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpO1xyXG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtO1xyXG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwO1xyXG5cclxuLy8gMjYuIFBhZ2luYXRpb25cclxuLy8gLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcclxuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrO1xyXG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApO1xyXG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpO1xyXG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xyXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3I7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlO1xyXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XHJcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2s7XHJcbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7XHJcbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlO1xyXG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWU7XHJcblxyXG4vLyAyNy4gUHJvZ3Jlc3MgQmFyXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XHJcbiRwcm9ncmVzcy1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRwcm9ncmVzcy1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcclxuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kcHJvZ3Jlc3MtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDI4LiBSZXNwb25zaXZlIEVtYmVkXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XHJcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxyXG4gIGRlZmF1bHQ6IDQgYnkgMyxcclxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxyXG4pO1xyXG5cclxuLy8gMjkuIFJldmVhbFxyXG4vLyAtLS0tLS0tLS0tXHJcblxyXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHJldmVhbC13aWR0aDogNjAwcHg7XHJcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xyXG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcclxuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJHJldmVhbC16aW5kZXg6IDEwMDU7XHJcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSk7XHJcblxyXG4vLyAzMC4gU2xpZGVyXHJcbi8vIC0tLS0tLS0tLS1cclxuXHJcbiRzbGlkZXItd2lkdGgtdmVydGljYWw6IDAuNXJlbTtcclxuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcclxuJHNsaWRlci1oZWlnaHQ6IDAuNXJlbTtcclxuJHNsaWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJHNsaWRlci1maWxsLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XHJcbiRzbGlkZXItaGFuZGxlLXdpZHRoOiAxLjRyZW07XHJcbiRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XHJcbiRzbGlkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDMxLiBTd2l0Y2hcclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yO1xyXG4kc3dpdGNoLWhlaWdodDogMnJlbTtcclxuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xyXG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbTtcclxuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcclxuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW47XHJcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xyXG4kc3dpdGNoLXBhZGRsZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XHJcblxyXG4vLyAzMi4gVGFibGVcclxuLy8gLS0tLS0tLS0tXHJcblxyXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlO1xyXG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XHJcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKTtcclxuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJTtcclxuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xyXG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpO1xyXG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZTtcclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XHJcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XHJcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKTtcclxuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XHJcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XHJcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2U7XHJcblxyXG4vLyAzMy4gVGFic1xyXG4vLyAtLS0tLS0tLVxyXG5cclxuJHRhYi1tYXJnaW46IDA7XHJcbiR0YWItYmFja2dyb3VuZDogJGNvbG9yLXdpbGQtc2FuZDtcclxuJHRhYi1jb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkY29sb3ItcHJpbWFyeTtcclxuJHRhYi1hY3RpdmUtY29sb3I6ICRjb2xvci13aGl0ZTtcclxuJHRhYi1pdGVtLWZvbnQtc2l6ZTogMTZweDtcclxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRjb2xvci1zZWNvbmRhcnk7XHJcbiR0YWItaXRlbS1wYWRkaW5nOiAxNnB4IDIwcHg7XHJcbiR0YWItZXhwYW5kLW1heDogNjtcclxuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHRhYi1jb250ZW50LWJvcmRlcjogdHJhbnNwYXJlbnQ7XHJcbiR0YWItY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJHRhYi1jb250ZW50LXBhZGRpbmc6IDA7XHJcblxyXG4vLyAzNC4gVGh1bWJuYWlsXHJcbi8vIC0tLS0tLS0tLS0tLS1cclxuXHJcbiR0aHVtYm5haWwtYm9yZGVyOiBzb2xpZCA0cHggJHdoaXRlO1xyXG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpO1xyXG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KTtcclxuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xyXG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyAzNS4gVGl0bGUgQmFyXHJcbi8vIC0tLS0tLS0tLS0tLS1cclxuXHJcbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2s7XHJcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlO1xyXG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtO1xyXG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZDtcclxuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZTtcclxuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheTtcclxuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbTtcclxuXHJcbi8vIDM2LiBUb29sdGlwXHJcbi8vIC0tLS0tLS0tLS0tXHJcblxyXG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcclxuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5O1xyXG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XHJcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XHJcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW07XHJcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcclxuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtO1xyXG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NjtcclxuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDM3LiBUb3AgQmFyXHJcbi8vIC0tLS0tLS0tLS0tXHJcblxyXG4kdG9wYmFyLXBhZGRpbmc6IDA7XHJcbiR0b3BiYXItYmFja2dyb3VuZDogJGNvbG9yLXdoaXRlO1xyXG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xyXG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xyXG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweDtcclxuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcclxuIiwiLy8gQ29sb3JzIGh0dHA6Ly9jaGlyLmFnL3Byb2plY3RzL25hbWUtdGhhdC1jb2xvci9cclxuJGNvbG9yLWFsbHBvcnRzOiAjMDA2NmExO1xyXG4kY29sb3ItYXRsYW50aXM6ICM5N2M5M2M7XHJcbiRjb2xvci1hbHRvOiAjZDNkM2QzO1xyXG4kY29sb3ItYmFoaWE6ICM5NGQ2MGE7XHJcbiRjb2xvci1ibGFjazogIzAwMDtcclxuJGNvbG9yLWJsYWNrLXNxdWVlemU6ICNkZmViZjM7XHJcbiRjb2xvci1lYmI6ICNlZmVjZWM7XHJcbiRjb2xvci1pcm9uOiAjZTZlN2U4O1xyXG4kY29sb3ItcGVhY2gtb3JhbmdlOiAjZmVjODk2O1xyXG4kY29sb3Itc2VhLWJ1Y2t0aG9ybjogI2Y5OGQyOTtcclxuJGNvbG9yLWdyYXktYmFja2dyb3VuZDogI2VlZTtcclxuLy8kY29sb3Itc2VhLWJ1Y2t0aG9ybjogIzI2YTNkYztcclxuJGNvbG9yLXN0LXRyb3BhejogIzJhNjU5YztcclxuJGNvbG9yLXdlLXBlZXA6ICNmOWRlZGU7XHJcbiRjb2xvci13aGl0ZTogI2ZmZjtcclxuJGNvbG9yLXdpbGQtc2FuZDogI2Y1ZjVmNTtcclxuJGNvbG9yLWFxdWEtcm9sbG92ZXI6ICMwMGFmZDc7XHJcbiRjb2xvci1ncmF5LWxpZ2h0OiAjZDJkMmQyO1xyXG5cclxuLy8gZm91bmRhdGlvbiBjb2xvcnNcclxuJGNvbG9yLWdyYXk6ICM4YThhOGE7XHJcbiRjb2xvci1tZXJjdXJ5OiAjZTZlNmU2O1xyXG4kY29sb3ItbW9qbzogI2NjNGIzNztcclxuJGNvbG9yLXNoYW1yb2NrOiAjM2FkYjc2O1xyXG4kY29sb3Itc2lsdmVyOiAjY2FjYWNhO1xyXG5cclxuXHJcbi8vIE5ldyg/KSBDb2xvcnNcclxuJHByb2ZpbGVzLWJsdWU6ICMxNDY2YTE7XHJcbiRiYWNrZ3JvdW5kLWJsdWU6ICMxZTkwZmY7XHJcbiRwcm9maWxlcy1saW5rOiAjNDlmMWZlO1xyXG4kYmxvZy10ZWFsOiAjMGU5MmEyO1xyXG4kZGF0ZS1ncmF5OiAjNGQ1YzZlO1xyXG4kZGF0ZS1ncmF5LWFsdDogIzk3NzlhYztcclxuJGV2ZW50LWdyYXk6ICM2MzRhNzY7XHJcbiRkYXJrLW5hdnk6ICMwNzM4NzI7XHJcbiRkZWVwLW5hdnk6ICMwMDJiNDY7XHJcbiR0aHJlZS1ncmF5OiAjMzMzO1xyXG4kb2ZmLWJsYWNrOiAjMDYwNjA2O1xyXG4kcGhvbmUtYmx1ZTogIzAxNjVhMTtcclxuXHJcbi8vIE5ld2VyIENvbG9yc1xyXG4kZ3JlZW5pc2gtd2hpdGU6ICNmN2Y2ZjE7XHJcbiRob3Zlci10YW46ICNhZTkwNjU7XHJcbiRhY3RpdmUtdGFuOiAjYjg5ZDc4O1xyXG4kaG92ZXItY3lhbjogIzI2YTNkYztcclxuJHJlZy1ncmVlbjogIzYyN2QzNDtcclxuJHJlZy1yZWQ6ICNkOTRiM2Q7XHJcbiRlYi1ncmF5OiAjZWJlYmViO1xyXG4kbWVkLWdyYXk6ICM1YTU1NTU7XHJcbiRub3QtYmxhY2s6ICMwMTAxMDE7XHJcblxyXG4kY29sb3ItYWxlcnQ6ICRjb2xvci1tb2pvO1xyXG4kY29sb3ItYmFzZTogJGNvbG9yLWJsYWNrO1xyXG4kY29sb3ItZm9jdXM6ICRjb2xvci1zZWEtYnVja3Rob3JuO1xyXG4kY29sb3ItcHJpbWFyeTogJGNvbG9yLXNlYS1idWNrdGhvcm47XHJcbiRjb2xvci1zZWNvbmRhcnk6ICRob3Zlci1jeWFuO1xyXG4vLyRjb2xvci1zZWNvbmRhcnk6ICRjb2xvci1iYWhpYTtcclxuJGNvbG9yLXNoYWRvdzogcmdiYSgkY29sb3ItYmxhY2ssIC4zKTtcclxuJGNvbG9yLXN1Y2Nlc3M6ICRjb2xvci1zaGFtcm9jaztcclxuJGNvbG9yLXdhcm5pbmc6ICRjb2xvci1zZWEtYnVja3Rob3JuO1xyXG5cclxuLy8gTWFpbiBSZWRlc2lnblxyXG4kb3JhbmdlOiAjZjQ4YzNiO1xyXG4kd2hpdGU6ICNmZmY7XHJcbiRibGFjazogIzAwMDtcclxuJGJnLWdyYXk6ICNlMGUwZTA7XHJcbiRwbGFjZWhvbGRlci1ncmF5OiAjOTI5YTlkO1xyXG4kcGxhY2Vob2xkZXItbWQtZ3JheTogIzczNzk3YztcclxuJGNvbG9yLXN1c2hpOiAjOTNjMjQzOyAvL2dyZWVuXHJcblxyXG4vLyBIYW1idXJnZXJcclxuJGhhbWJ1cmdlci1wYWRkaW5nLXg6IDRweDtcclxuJGhhbWJ1cmdlci1wYWRkaW5nLXk6IDhweDtcclxuJGhhbWJ1cmdlci1sYXllci13aWR0aDogMjRweDtcclxuJGhhbWJ1cmdlci1sYXllci1oZWlnaHQ6IDNweDtcclxuJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nOiA0cHg7XHJcbiRoYW1idXJnZXItbGF5ZXItY29sb3I6ICRjb2xvci1wcmltYXJ5O1xyXG4kaGFtYnVyZ2VyLXRyYW5zaXRpb24tZHVyYXRpb246IDIwMG1zO1xyXG4kaGFtYnVyZ2VyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XHJcblxyXG5cclxuLy8gVHlwb2dyYXBoeVxyXG4kc2Fucy1zZXJpZi1zdGFjazogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG5cclxuLy8gWi1JbmRleCBTY2FsZVxyXG4kei1pbmRleC0xOiAxMDA7XHJcbiR6LWluZGV4LTI6IDIwMDtcclxuJHotaW5kZXgtMzogMzAwO1xyXG4kei1pbmRleC00OiA0MDA7XHJcbiR6LWluZGV4LTU6IDUwMDtcclxuJHotaW5kZXgtNjogNjAwO1xyXG4kei1pbmRleC03OiA3MDA7XHJcbiR6LWluZGV4LTg6IDgwMDtcclxuJHotaW5kZXgtOTogOTAwO1xyXG4kei1pbmRleC0xMDogMTAwMDtcclxuXHJcbi8vIFotaW5kZXggQXBwbGljYXRpb25zXHJcbiR6LWluZGV4LWJhbmQtYm94OiAkei1pbmRleC0xO1xyXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSkgLyAoJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiAjeyRyZ2J9Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAkaSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlLW9mZiB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiB0cnVlKSB7XG4gICRsaXN0OiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuXG4gIEBpZiBub3QgJHNtYWxsIHtcbiAgICAkbGlzdDogc2wtcmVtb3ZlKCRsaXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gIH1cblxuICBAZWFjaCAkbmFtZSBpbiAkbGlzdCB7XG4gICAgJC16Zi1zaXplOiAkbmFtZSAhZ2xvYmFsO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSB0aGUgYEBjb250ZW50YCBwYXNzZWQgdG8gdGhlIG1peGluIHdpdGggYSB2YWx1ZSBgJC16Zi1icC12YWx1ZWAgcmVsYXRlZCB0byBhIGJyZWFrcG9pbnQsIGRlcGVuZGluZyBvbiB0aGUgYCRuYW1lYCBwYXJhbWV0ZXI6XG4vLy8gLSBGb3IgYSBzaW5nbGUgdmFsdWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGlzIHZhbHVlLlxuLy8vIC0gRm9yIGEgYnJlYWtwb2ludCBuYW1lLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAuXG4vLy8gLSBGb3IgXCJhdXRvXCIsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYCBhbmQgaXMgcGFzc2VkIHRvIGBAY29udGVudGAsIHdoaWNoIGlzIG1hZGUgcmVzcG9uc2l2ZSBmb3IgZWFjaCBicmVha3BvaW50IG9mIGAkbWFwYC5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkbmFtZSBbYXV0b10gLSBTaW5nbGUgdmFsdWUgb3IgYnJlYWtwb2ludCBuYW1lIHRvIHVzZS4gXCJhdXRvXCIgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBNYXAgb2YgYnJlYWtwb2ludHMgYW5kIHZhbHVlcyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLlxuQG1peGluIC16Zi1icmVha3BvaW50LXZhbHVlKFxuICAkbmFtZTogYXV0byxcbiAgJG1hcDogbnVsbFxuKSB7XG4gIEBpZiAkbmFtZSA9PSBhdXRvIGFuZCB0eXBlLW9mKCRtYXApID09ICdtYXAnIHtcbiAgICAvLyBcImF1dG9cIlxuICAgIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGspIHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJHYsICRtYXApIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gYnJlYWtwb2ludCBuYW1lXG4gICAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdzdHJpbmcnIHtcbiAgICAgICRuYW1lOiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkbmFtZSk7XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsZXgtZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgYSBmbGV4IGdyaWQgcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfExpc3R9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gdXNlIGZvciB0aGlzIHJvdy4gSWYgc2V0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpLCB0aGUgZ2xvYmFsIGNvbHVtbiBjb3VudCB3aWxsIGJlIHVzZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYmFzZSBbdHJ1ZV0gLSBTZXQgdG8gYGZhbHNlYCB0byBwcmV2ZW50IGJhc2ljIHN0eWxlcyBmcm9tIGJlaW5nIG91dHB1dC4gVXNlZnVsIGlmIHlvdSdyZSBjYWxsaW5nIHRoaXMgbWl4aW4gb24gdGhlIHNhbWUgZWxlbWVudCB0d2ljZSwgYXMgaXQgcHJldmVudHMgZHVwbGljYXRlIENTUyBvdXRwdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucywgaW4gY2FzZSB0aGUgcm93IGlzIG5lc3RlZC4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBmbGV4LWdyaWQtcm93KFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICRzaXplOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmFzZTogdHJ1ZSxcbiAgJHdyYXA6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgJG1hcmdpbjogYXV0bztcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcnMpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKCRzaXplKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGJhc2Uge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgJHdyYXA7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zLCAkYmFzZSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBDYWxjdWxhdGVzIHRoZSBgZmxleGAgcHJvcGVydHkgZm9yIGEgZmxleCBncmlkIGNvbHVtbi4gSXQgYWNjZXB0cyBhbGwgb2YgdGhlIHNhbWUgdmFsdWVzIGFzIHRoZSBiYXNpYyBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIGFsb25nIHdpdGggdHdvIGV4dHJhczpcbi8vLyAgIC0gYGV4cGFuZGAgKHRoZSBkZWZhdWx0KSB3aWxsIG1ha2UgdGhlIGNvbHVtbiBleHBhbmQgdG8gZmlsbCBzcGFjZS5cbi8vLyAgIC0gYHNocmlua2Agd2lsbCBtYWtlIHRoZSBjb2x1bW4gY29udHJhY3QsIHNvIGl0IG9ubHkgdGFrZXMgdXAgdGhlIGhvcml6b250YWwgc3BhY2UgaXQgbmVlZHMuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uXG5AZnVuY3Rpb24gZmxleC1ncmlkLWNvbHVtbigkY29sdW1uczogZXhwYW5kKSB7XG4gICRmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuXG4gIEBpZiAkY29sdW1ucyA9PSBzaHJpbmsge1xuICAgICRmbGV4OiAwIDAgYXV0bztcbiAgfVxuICBAZWxzZSBpZiAkY29sdW1ucyAhPSBleHBhbmQge1xuICAgICRmbGV4OiAwIDAgZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG5cbiAgQHJldHVybiAkZmxleDtcbn1cblxuLy8vIENyZWF0ZXMgYSBjb2x1bW4gZm9yIGEgZmxleCBncmlkLiBCeSBkZWZhdWx0LCB0aGUgY29sdW1uIHdpbGwgc3RyZXRjaCB0byB0aGUgZnVsbCB3aWR0aCBvZiBpdHMgY29udGFpbmVyLCBidXQgdGhpcyBjYW4gYmUgb3ZlcnJpZGRlbiB3aXRoIHNpemluZyBjbGFzc2VzLCBvciBieSB1c2luZyB0aGUgYHVuc3RhY2tgIGNsYXNzIG9uIHRoZSBwYXJlbnQgZmxleCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbZXhwYW5kXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZmxleC1ncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycyB3aWR0aC4gU2VlIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyYCBtaXhpbi5cbkBtaXhpbiBmbGV4LWdyaWQtY29sdW1uKFxuICAkY29sdW1uczogZXhwYW5kLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIC8vIEJhc2UgcHJvcGVydGllc1xuICBAaW5jbHVkZSBmbGV4LWdyaWQtc2l6ZSgkY29sdW1ucyk7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAvLyBmaXhlcyByZWNlbnQgQ2hyb21lIHZlcnNpb24gbm90IGxpbWl0aW5nIGNoaWxkIHdpZHRoXG4gIC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM0OTM0NTg2L3doaXRlLXNwYWNlLW5vd3JhcC1hbmQtZmxleGJveC1kaWQtbm90LXdvcmstaW4tY2hyb21lXG4gIEBpZiAkY29sdW1ucyA9PSBleHBhbmQge1xuICAgIG1pbi13aWR0aDogaW5pdGlhbDtcbiAgfVxuICAvLyBtYXgtd2lkdGggZml4ZXMgSUUgMTAvMTEgbm90IHJlc3BlY3RpbmcgdGhlIGZsZXgtYmFzaXMgcHJvcGVydHlcbiAgQGlmICRjb2x1bW5zICE9IGV4cGFuZCBhbmQgJGNvbHVtbnMgIT0gc2hyaW5rIHtcbiAgICBtYXgtd2lkdGg6IGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGJsb2NrIGdyaWQgZm9yIGEgZmxleCBncmlkIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBjb2x1bW5zIHRvIGRpc3BsYXkgb24gZWFjaCByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciAtIFNlbGVjdG9yIHRvIHVzZSB0byB0YXJnZXQgY29sdW1ucyB3aXRoaW4gdGhlIHJvdy5cbkBtaXhpbiBmbGV4LWdyaWQtbGF5b3V0KFxuICAkbixcbiAgJHNlbGVjdG9yOiAnLmNvbHVtbidcbikge1xuICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICRwY3Q6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgICBmbGV4OiAwIDAgJHBjdDtcbiAgICBtYXgtd2lkdGg6ICRwY3Q7XG4gIH1cbn1cblxuLy8vIENoYW5nZXMgdGhlIHdpZHRoIGZsZXggZ3JpZCBjb2x1bW4uXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgW2V4cGFuZF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGZsZXgtZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBmbGV4LWdyaWQtc2l6ZSgkY29sdW1uczogbnVsbCkge1xuICAkY29sdW1uczogJGNvbHVtbnMgb3IgZXhwYW5kO1xuXG4gIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuXG4gIC8vIG1heC13aWR0aCBmaXhlcyBJRSAxMC8xMSBub3QgcmVzcGVjdGluZyB0aGUgZmxleC1iYXNpcyBwcm9wZXJ0eVxuICBAaWYgJGNvbHVtbnMgIT0gZXhwYW5kIGFuZCAkY29sdW1ucyAhPSBzaHJpbmsge1xuICAgIG1heC13aWR0aDogZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG59XG5cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC1ncmlkIHtcbiAgLy8gUm93XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3c7XG5cbiAgICAvLyBOZXN0aW5nIGJlaGF2aW9yXG4gICAgJiAucm93IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3cobmVzdCwgJGJhc2U6IGZhbHNlKTtcblxuICAgICAgJi5jb2xsYXBzZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXhwYW5kZWQgcm93XG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG5cbiAgICAgIC5yb3cge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC5leHBhbmRlZCkgLnJvdyB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG4gICAgfVxuXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBVbmRvIG5lZ2F0aXZlIG1hcmdpbnNcbiAgICAvLyBGcm9tIGNvbGxhcHNlZCBjaGlsZFxuICAgICYuaXMtY29sbGFwc2UtY2hpbGQsXG4gICAgJi5jb2xsYXBzZSA+IC5jb2x1bW4gPiAucm93IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtblxuICAuY29sdW1uIHtcbiAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uO1xuICB9XG5cbiAgLy8gQ29sdW1uIHJvd1xuICAvLyBUaGUgZG91YmxlIC5yb3cgY2xhc3MgaXMgbmVlZGVkIHRvIGJ1bXAgdXAgdGhlIHNwZWNpZmljaXR5XG4gIC8vIC5jb2x1bW4ucm93LnJvdyB7XG4gIC8vICAgZmxvYXQ6IG5vbmU7XG4gIC8vICAgZGlzcGxheTogYmxvY2s7XG4gIC8vIH1cblxuICAvLyBUbyBwcm9wZXJseSBuZXN0IGEgY29sdW1uIHJvdywgcGFkZGluZyBhbmQgbWFyZ2luIGlzIHJlbW92ZWRcbiAgLnJvdyAuY29sdW1uLnJvdy5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG5cbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAuZmxleC1kaXItI3skZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW4tY291bnQge1xuICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oJGkpO1xuICAgICAgICBtYXgtd2lkdGg6IGdyaWQtY29sdW1uKCRpKTtcbiAgICAgIH1cblxuICAgICAgLy8gT2Zmc2V0c1xuICAgICAgJG86ICRpIC0gMTtcblxuICAgICAgLiN7JC16Zi1zaXplfS1vZmZzZXQtI3skb30ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoJG8pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvdXJjZSBvcmRlcmluZ1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggNiB7XG4gICAgICAuI3skLXpmLXNpemV9LW9yZGVyLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1vcmRlcigkaSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmxvY2sgZ3JpZFxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtbWF4IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtbGF5b3V0KCRpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJC16Zi1zaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC8vIFNpemluZyAoZXhwYW5kKVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXNpemUpIHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS1leHBhbmQge1xuICAgICAgICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC4jeyQtemYtc2l6ZX0tc2hyaW5rIHtcbiAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKHNocmluayk7XG4gICAgICAgIH1cblxuICAgICAgICAuI3skLXpmLXNpemV9LWV4cGFuZCxcbiAgICAgICAgLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBkaXJlY3Rpb24gaGVscGVyIGNsYXNzZXNcbiAgICAgIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgICAgICAuI3skLXpmLXNpemV9LWZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZGlyZWN0aW9uKCRwcm9wKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLy8gY2hpbGQgaGVscGVyIGNsYXNzZXNcbiAgICAgIC4jeyQtemYtc2l6ZX0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICB9XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tZmxleC1jaGlsZC1ncm93IHtcbiAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICB9XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgIH1cblxuICAgICAgLy8gQXV0by1zdGFja2luZy91bnN0YWNraW5nXG4gICAgICBAYXQtcm9vdCAod2l0aG91dDogbWVkaWEpIHtcbiAgICAgICAgLnJvdy4jeyQtemYtc2l6ZX0tdW5zdGFjayB7XG4gICAgICAgICAgPiAuY29sdW1uIHtcbiAgICAgICAgICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oMTAwJSk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi1zaXplKSB7XG4gICAgICAgICAgICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIGNvbGxhcHNpbmdcbiAgICAuI3skLXpmLXNpemV9LWNvbGxhcHNlIHtcbiAgICAgID4gLmNvbHVtbiB7IEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlOyB9XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS11bmNvbGxhcHNlIHtcbiAgICAgID4gLmNvbHVtbiB7IEBpbmNsdWRlIGdyaWQtY29sLWd1dHRlcigkLXpmLXNpemUpOyB9XG4gICAgfVxuICB9XG5cbiAgLy8gU2l6aW5nIChzaHJpbmspXG4gIC5zaHJpbmsge1xuICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oc2hyaW5rKTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBCbG9jayBncmlkIGNvbHVtbnNcbiAgLmNvbHVtbi1ibG9jayB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tbWFyZ2luO1xuICB9XG5cbiAgLmNvbHVtbnMge1xuICAgIEBleHRlbmQgLmNvbHVtbjsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBwbGFjZWhvbGRlci1pbi1leHRlbmRcblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBDaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIGNvbHVtbnMgZGVmaW5lZCBpbnNpZGUgdGhpcyBtaXhpbiB0byB1c2UgYSBkaWZmZXJlbnQgY29sdW1uIGNvdW50LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgLSBOdW1iZXIgb2YgY29sdW1ucyB0byB1c2UuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkcm9vdCBbZmFsc2VdXG4vLy8gICBJZiBgZmFsc2VgLCBzZWxlY3RvcnMgaW5zaWRlIHRoaXMgbWl4aW4gd2lsbCBuZXN0IGluc2lkZSB0aGUgcGFyZW50IHNlbGVjdG9yLlxuLy8vICAgSWYgYHRydWVgLCBzZWxlY3RvcnMgd2lsbCBub3QgbmVzdC5cbkBtaXhpbiBncmlkLWNvbnRleHQoXG4gICRjb2x1bW5zLFxuICAkcm9vdDogZmFsc2Vcbikge1xuICAvLyBTdG9yZSB0aGUgY3VycmVudCBjb2x1bW4gY291bnQgc28gaXQgY2FuIGJlIHJlLXNldCBsYXRlclxuICAkb2xkLWdyaWQtY29sdW1uLWNvdW50OiAkZ3JpZC1jb2x1bW4tY291bnQ7XG4gICRncmlkLWNvbHVtbi1jb3VudDogJGNvbHVtbnMgIWdsb2JhbDtcblxuICBAaWYgJHJvb3Qge1xuICAgIEBhdC1yb290IHsgQGNvbnRlbnQ7IH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBvbGQgY29sdW1uIGNvdW50XG4gICRncmlkLWNvbHVtbi1jb3VudDogJG9sZC1ncmlkLWNvbHVtbi1jb3VudCAhZ2xvYmFsO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgcm93LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gQ29sdW1uIGNvdW50IGZvciB0aGlzIHJvdy4gYG51bGxgIHdpbGwgdXNlIHRoZSBkZWZhdWx0IGNvbHVtbiBjb3VudC5cbi8vLyBAcGFyYW0ge0tleXdvcmRzfSAkYmVoYXZpb3IgW251bGxdXG4vLy8gICBNb2RpZmljYXRpb25zIHRvIHRoZSBkZWZhdWx0IGdyaWQgc3R5bGVzLiBgbmVzdGAgaW5kaWNhdGVzIHRoZSByb3cgd2lsbCBiZSBwbGFjZWQgaW5zaWRlIGFub3RoZXIgcm93LiBgY29sbGFwc2VgIGluZGljYXRlcyB0aGF0IHRoZSBjb2x1bW5zIGluc2lkZSB0aGlzIHJvdyB3aWxsIG5vdCBoYXZlIHBhZGRpbmcuIGBuZXN0IGNvbGxhcHNlYCBjb21iaW5lcyBib3RoIGJlaGF2aW9ycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkY2YgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gaW5jbHVkZSBhIGNsZWFyZml4LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1yb3coXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICRzaXplOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjZjogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICAkbWFyZ2luOiBhdXRvO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcnMpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKCRzaXplKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGNmIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIEBpZiAkY29sdW1ucyAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbnRleHQoJGNvbHVtbnMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gSW52ZXJ0cyB0aGUgbWFyZ2lucyBvZiBhIHJvdyB0byBuZXN0IGl0IGluc2lkZSBvZiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1yb3ctbmVzdCgkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAkbWFyZ2luOiByZW0tY2FsYygtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJC16Zi1zaXplKSkgLyAyICogLTE7XG5cbiAgICBtYXJnaW4tcmlnaHQ6ICRtYXJnaW47XG4gICAgbWFyZ2luLWxlZnQ6ICRtYXJnaW47XG4gIH1cbn1cblxuLy8vIFNldCBhIGdyaWQgcm93IHNpemVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbkBtaXhpbiBncmlkLXJvdy1zaXplKCRzaXplOiAkZ3JpZC1yb3ctd2lkdGgpIHtcbiAgQGlmICRzaXplID09IGV4cGFuZCB7XG4gICAgJHNpemU6IG5vbmU7XG4gIH1cblxuICBtYXgtd2lkdGg6ICRzaXplO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gUmVtb3ZlcyB0aGUgdW5pdCAoZS5nLiBweCwgZW0sIHJlbSkgZnJvbSBhIHZhbHVlLCByZXR1cm5pbmcgdGhlIG51bWJlciBvbmx5LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRudW0gLSBOdW1iZXIgdG8gc3RyaXAgdW5pdCBmcm9tLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHNhbWUgbnVtYmVyLCBzYW5zIHVuaXQuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG4gIEByZXR1cm4gJG51bSAvICgkbnVtICogMCArIDEpO1xufVxuXG4vLy8gQ29udmVydHMgb25lIG9yIG1vcmUgcGl4ZWwgdmFsdWVzIGludG8gbWF0Y2hpbmcgcmVtIHZhbHVlcy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC4gSWYgeW91J3JlIHVzaW5nIEZvdW5kYXRpb24gb3V0IG9mIHRoZSBib3gsIHRoaXMgaXMgMTZweC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgYG51bGxgLCB0aGUgZnVuY3Rpb24gd2lsbCByZWZlcmVuY2UgdGhlIGAkYmFzZS1mb250LXNpemVgIHZhcmlhYmxlIGFzIHRoZSBiYXNlLlxuLy8vXG4vLy8gQHJldHVybnMge0xpc3R9IEEgbGlzdCBvZiBjb252ZXJ0ZWQgdmFsdWVzLlxuQGZ1bmN0aW9uIHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlOiBudWxsKSB7XG4gICRyZW0tdmFsdWVzOiAoKTtcbiAgJGNvdW50OiBsZW5ndGgoJHZhbHVlcyk7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIC8vIFRoaXMgaXMgYmVjYXVzZSAxMDAlIGZvbnQgc2l6ZSA9IDE2cHggaW4gbW9zdCBhbGwgYnJvd3NlcnNcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIC8vIFVzaW5nIHJlbSBhcyBiYXNlIGFsbG93cyBjb3JyZWN0IHNjYWxpbmdcbiAgQGlmIHVuaXQoJGJhc2UpID09ICdyZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgQGlmICRjb3VudCA9PSAxIHtcbiAgICBAcmV0dXJuIC16Zi10by1yZW0oJHZhbHVlcywgJGJhc2UpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY291bnQge1xuICAgICRyZW0tdmFsdWVzOiBhcHBlbmQoJHJlbS12YWx1ZXMsIC16Zi10by1yZW0obnRoKCR2YWx1ZXMsICRpKSwgJGJhc2UpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlbS12YWx1ZXM7XG59XG5cbi8vIENvbnZlcnRzIGEgdW5pdGxlc3MsIHBpeGVsLCBvciByZW0gdmFsdWUgdG8gZW0sIGZvciB1c2UgaW4gYnJlYWtwb2ludHMuXG5AZnVuY3Rpb24gLXpmLWJwLXRvLWVtKCR2YWx1ZSkge1xuICAvLyBQaXhlbCBhbmQgdW5pdGxlc3MgdmFsdWVzIGFyZSBjb252ZXJ0ZWQgdG8gcmVtc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdweCcgb3IgdW5pdGxlc3MoJHZhbHVlKSB7XG4gICAgJHZhbHVlOiByZW0tY2FsYygkdmFsdWUsICRiYXNlOiAxNnB4KTtcbiAgfVxuXG4gIC8vIFRoZW4gdGhlIHZhbHVlIGlzIGNvbnZlcnRlZCB0byBlbXNcbiAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgKiAxZW07XG59XG5cbi8vLyBDb252ZXJ0cyBhIHBpeGVsIHZhbHVlIHRvIG1hdGNoaW5nIHJlbSB2YWx1ZS4gKkFueSogdmFsdWUgcGFzc2VkLCByZWdhcmRsZXNzIG9mIHVuaXQsIGlzIGFzc3VtZWQgdG8gYmUgYSBwaXhlbCB2YWx1ZS4gQnkgZGVmYXVsdCwgdGhlIGJhc2UgcGl4ZWwgdmFsdWUgdXNlZCB0byBjYWxjdWxhdGUgdGhlIHJlbSB2YWx1ZSBpcyB0YWtlbiBmcm9tIHRoZSBgJGdsb2JhbC1mb250LXNpemVgIHZhcmlhYmxlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFBpeGVsIHZhbHVlIHRvIGNvbnZlcnQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIEJhc2UgZm9yIHBpeGVsIGNvbnZlcnNpb24uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIG51bWJlciBpbiByZW1zLCBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSBnaXZlbiB2YWx1ZSBhbmQgdGhlIGJhc2UgcGl4ZWwgdmFsdWUuIHJlbSB2YWx1ZXMgYXJlIHBhc3NlZCB0aHJvdWdoIGFzIGlzLlxuQGZ1bmN0aW9uIC16Zi10by1yZW0oJHZhbHVlLCAkYmFzZTogbnVsbCkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSAhPSAnbnVtYmVyJyB7XG4gICAgQHdhcm4gaW5zcGVjdCgkdmFsdWUpICsgJyB3YXMgcGFzc2VkIHRvIHJlbS1jYWxjKCksIHdoaWNoIGlzIG5vdCBhIG51bWJlci4nO1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gVHJhbnNmb3JtIGVtIGludG8gcmVtIGlmIHNvbWVvbmUgaGFuZHMgb3ZlciAnZW0nc1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogMXJlbTtcbiAgfVxuXG4gIC8vIENhbGN1bGF0ZSByZW0gaWYgdW5pdHMgZm9yICR2YWx1ZSBpcyBub3QgcmVtIG9yIGVtXG4gIEBpZiB1bml0KCR2YWx1ZSkgIT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZSkgKiAxcmVtO1xuICB9XG5cbiAgLy8gVHVybiAwcmVtIGludG8gMFxuICBAaWYgJHZhbHVlID09IDByZW0ge1xuICAgICR2YWx1ZTogMDtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCwgcGVyY2VudGFnZSwgcmVtIG9yIGVtIHZhbHVlIHRvIGEgdW5pdGxlc3MgdmFsdWUgYmFzZWQgb24gYSBnaXZlbiBmb250IHNpemUuIElkZWFsIGZvciB3b3JraW5nIG91dCB1bml0bGVzcyBsaW5lIGhlaWdodHMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gY29udmVydCB0byBhIHVuaXRsZXNzIGxpbmUgaGVpZ2h0XG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIC0gVGhlIGZvbnQgc2l6ZSB0byB1c2UgdG8gd29yayBvdXQgdGhlIGxpbmUgaGVpZ2h0IC0gZGVmYXVsdHMgdG8gJGdsb2JhbC1mb250LXNpemVcbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gLSBVbml0bGVzcyBudW1iZXJcbkBmdW5jdGlvbiB1bml0bGVzcy1jYWxjKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcblxuICAvLyBJZiBubyBiYXNlIGlzIGRlZmluZWQsIGRlZmVyIHRvIHRoZSBnbG9iYWwgZm9udCBzaXplXG4gIEBpZiAkYmFzZSA9PSBudWxsIHtcbiAgICAkYmFzZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBGaXJzdCwgbGV0cyBjb252ZXJ0IG91ciAkYmFzZSB0byBwaXhlbHNcblxuICAvLyBJZiB0aGUgYmFzZSBmb250IHNpemUgaXMgYSAlLCB0aGVuIG11bHRpcGx5IGl0IGJ5IDE2cHhcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnZW0nIHtcbiAgICAkYmFzZTogc3RyaXAtdW5pdCgkYmFzZSkgKiAxNnB4O1xuICB9XG5cbiAgLy8gTm93IGxldHMgY29udmVydCBvdXIgdmFsdWUgdG8gcGl4ZWxzIHRvb1xuICBAaWYgdW5pdCgkdmFsdWUpID09ICclJyB7XG4gICAgJHZhbHVlOiAoJHZhbHVlIC8gMTAwJSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3JlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICBAaWYgdW5pdCgkdmFsdWUpID09ICdlbScge1xuICAgICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpICogJGJhc2U7XG4gIH1cblxuICAvLyAncHgnXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyB7XG4gICAgQHJldHVybiBzdHJpcC11bml0KCR2YWx1ZSkgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIC8vIGFzc3VtZSB0aGF0IGxpbmUtaGVpZ2h0cyBncmVhdGVybiB0aGVuIDEwIGFyZSBtZWFudCB0byBiZSBhYnNvbHV0ZSBpbiAncHgnXG4gIEBpZiB1bml0bGVzcygkdmFsdWUpIGFuZCAoJHZhbHVlID4gMTApIHtcbiAgICBAcmV0dXJuICR2YWx1ZSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgQHJldHVybiAkdmFsdWU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdZb3VyIHNtYWxsZXN0IGJyZWFrcG9pbnQgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnRzKSBtdXN0IGJlIHNldCB0byBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogMDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIEV2ZW50dWFsIG91dHB1dFxuICAkc3RyOiAnJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cbiAgQGVsc2UgaWYgJGJwID09ICdyZXRpbmEnIHtcbiAgICBAcmV0dXJuICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJztcbiAgfVxuXG4gIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkYnAtbWF4OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyICRicmVha3BvaW50cyBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udmVydCBhbnkgcGl4ZWwsIHJlbSwgb3IgdW5pdGxlc3MgdmFsdWUgdG8gZW1cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgQGlmICRicC1tYXgge1xuICAgICRicC1tYXg6IC16Zi1icC10by1lbSgkYnAtbWF4KSAtICgxLzE2KTtcbiAgfVxuXG4gIC8vIENvbmRpdGlvbnMgdG8gc2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvblxuICAvLyAtIEl0J3MgYSBuYW1lZCBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIGRvd25cIiBvciBcIjAgdXBcIlxuICAvLyAtIEl0J3MgYSBudW1lcmljIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgXCIgKyBhbnl0aGluZ1xuICBAaWYgJGJwID4gMGVtIG9yICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBgb25seWAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKSBhbmQgKG1heC13aWR0aDogbilgXG4gICAgQGlmICRkaXIgPT0gJ29ubHknIHtcbiAgICAgIC8vIE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBcIm9ubHlcIiByYW5nZVxuICAgICAgQGlmICRuYW1lZCA9PSB0cnVlIHtcbiAgICAgICAgLy8gT25seSB1c2UgXCJtaW4td2lkdGhcIiBpZiB0aGUgZmxvb3IgaXMgZ3JlYXRlciB0aGFuIDBcbiAgICAgICAgQGlmICRicCA+IDBlbSB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcblxuICAgICAgICAgIC8vIE9ubHkgYWRkIFwiYW5kXCIgdG8gdGhlIG1lZGlhIHF1ZXJ5IGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgICAkc3RyOiAkc3RyICsgJyBhbmQgJztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBPbmx5IHVzZSBcIm1heC13aWR0aFwiIGlmIHRoZXJlJ3MgYSBjZWlsaW5nXG4gICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skYnAtbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgZG93bmAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWF4LXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkZGlyID09ICdkb3duJyB7XG4gICAgICAkbWF4OiBpZigkbmFtZWQsICRicC1tYXgsICRicCk7XG5cbiAgICAgIC8vIFNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb24gaWYgaW5wdXQgdmFsdWUgaXMgZXhhY3RseSBcIjAgZG93blwiLFxuICAgICAgLy8gdW5sZXNzIHRoZSBmdW5jdGlvbiB3YXMgY2FsbGVkIGFzIFwic21hbGwgZG93blwiLCBpbiB3aGljaCBjYXNlIGl0J3MganVzdCBcInNtYWxsIG9ubHlcIlxuICAgICAgQGlmICRuYW1lZCBvciAkYnAgPiAwZW0ge1xuICAgICAgICBAaWYgJG1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JG1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGB1cGAgcmFuZ2VzIHVzZSB0aGUgZm9ybWF0IGAobWluLXdpZHRoOiBuKWBcbiAgICBAZWxzZSBpZiAkYnAgPiAwZW0ge1xuICAgICAgJHN0cjogJHN0ciArICcobWluLXdpZHRoOiAjeyRicH0pJztcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWUpIHtcbiAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHZhbHVlKTtcbiAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG5cbiAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICBAZWxzZSB7XG4gICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgJGJwIDw9ICRwYnAge1xuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIENvbnZlcnMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNldCB0aGUgZ3V0dGVycyBvbiBhIGNvbHVtblxuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRndXR0ZXIgW2F1dG9dXG4vLy8gICBTcGFjaW5nIGJldHdlZW4gY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJGd1dHRlcnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIGd1dHRlciByZXNwb25zaXZlLCB1c2luZyB0aGUgJGd1dHRlcnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciBtYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJGd1dHRlciwgJGd1dHRlcnMpIHtcbiAgICAkcGFkZGluZzogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuXG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgfVxufVxuXG4vLy8gQ29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmVtb3ZpbmcgdGhlIHBhZGRpbmcuICoqTm90ZToqKiBvbmx5IHVzZSB0aGlzIG1peGluIHdpdGhpbiBhIGJyZWFrcG9pbnQuIFRvIGNvbGxhcHNlIGEgY29sdW1uJ3MgZ3V0dGVycyBvbiBhbGwgc2NyZWVuIHNpemVzLCB1c2UgdGhlIGAkZ3V0dGVyYCBwYXJhbWV0ZXIgb2YgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiBpbnN0ZWFkLlxuQG1peGluIGdyaWQtY29sdW1uLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKDApO1xufVxuXG4vLy8gVW4tY29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmUtYWRkaW5nIHRoZSBwYWRkaW5nLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRndXR0ZXIgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IGdyaWQtY29sdW1uLWd1dHRlcigpLiBncmlkLWNvbHVtbi11bmNvbGxhcHNlKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi40Lic7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyczogJGd1dHRlcik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWd1dHRlclxuQG1peGluIGdyaWQtY29sLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlciwgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXVuY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXVuY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC11bmNvbGxhcHNlKCRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQHdhcm4gJ1RoaXMgbWl4aW4gaXMgYmVpbmcgcmVwbGFjZWQgYnkgZ3JpZC1jb2wtZ3V0dGVyKCkuIGdyaWQtY29sLXVuY29sbGFwc2UoKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjQuJztcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgkZ3V0dGVyKTtcbn1cblxuLy8vIFNldHMgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMgdG8gbWF0Y2ggZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRtYXJnaW4gW2F1dG9dXG4vLy8gICBUaGUgYm90dG9tIG1hcmdpbiBvbiBncmlkIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRtYXJnaW5zIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBtYXJnaW4gcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRtYXJnaW5zIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFyZ2lucyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLWNvbHVtbi1tYXJnaW4gKFxuICAkbWFyZ2luOiBhdXRvLFxuICAkbWFyZ2luczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRtYXJnaW4sICRtYXJnaW5zKSB7XG4gICAgJG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpO1xuICAgIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiJC16Zi1mbGV4LWp1c3RpZnk6IChcbiAgJ2xlZnQnOiBmbGV4LXN0YXJ0LFxuICAncmlnaHQnOiBmbGV4LWVuZCxcbiAgJ2NlbnRlcic6IGNlbnRlcixcbiAgJ2p1c3RpZnknOiBzcGFjZS1iZXR3ZWVuLFxuICAnc3BhY2VkJzogc3BhY2UtYXJvdW5kLFxuKTtcblxuJC16Zi1mbGV4LWFsaWduOiAoXG4gICd0b3AnOiBmbGV4LXN0YXJ0LFxuICAnYm90dG9tJzogZmxleC1lbmQsXG4gICdtaWRkbGUnOiBjZW50ZXIsXG4gICdzdHJldGNoJzogc3RyZXRjaCxcbik7XG5cbiQtemYtZmxleC1kaXJlY3Rpb246IChcbiAgJ3Jvdyc6IHJvdyxcbiAgJ3Jvdy1yZXZlcnNlJzogcm93LXJldmVyc2UsXG4gICdjb2x1bW4nOiBjb2x1bW4sXG4gICdjb2x1bW4tcmV2ZXJzZSc6IGNvbHVtbi1yZXZlcnNlLFxuKTtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBieSBhZGRpbmcgYGRpc3BsYXk6IGZsZXhgIHRvIHRoZSBlbGVtZW50LlxuQG1peGluIGZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkgYWxpZ25zIHRoZSBpdGVtcyB3aXRoaW4gYSBmbGV4IGNvbnRhaW5lci5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHggW251bGxdIC0gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYGxlZnRgLCBgcmlnaHRgLCBgY2VudGVyYCwgYGp1c3RpZnlgLCBvciBgc3BhY2VkYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IGhvcml6b250YWwgYWxpZ25tZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduKCR4OiBudWxsLCAkeTogbnVsbCkge1xuICBAaWYgJHgge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtanVzdGlmeSwgJHgpIHtcbiAgICAgICR4OiBtYXAtZ2V0KCQtemYtZmxleC1qdXN0aWZ5LCAkeCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHh9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBob3Jpem9udGFsIGFsaWdubWVudC4gVXNlIGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnksIG9yIHNwYWNlZC4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgdmVydGljYWwgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGp1c3RpZnktY29udGVudDogJHg7XG4gIGFsaWduLWl0ZW1zOiAkeTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgYWxpZ24gYSBzaW5nbGUgY29sdW1uIHdpdGhpbiBhIGZsZXggcm93LiBBcHBseSB0aGlzIG1peGluIHRvIGEgZmxleCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbi1zZWxmKCR5OiBudWxsKSB7XG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLWNvbHVtbi1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nO1xuICAgIH1cbiAgfVxuXG4gIGFsaWduLXNlbGY6ICR5O1xufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc291cmNlIG9yZGVyIG9mIGEgZmxleCBjaGlsZC4gQ2hpbGRyZW4gd2l0aCBsb3dlciBudW1iZXJzIGFwcGVhciBmaXJzdCBpbiB0aGUgbGF5b3V0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3JkZXIgWzBdIC0gT3JkZXIgbnVtYmVyIHRvIGFwcGx5LlxuQG1peGluIGZsZXgtb3JkZXIoJG9yZGVyOiAwKSB7XG4gIG9yZGVyOiAkb3JkZXI7XG59XG5cbi8vLyBDaGFuZ2UgZmxleC1kaXJlY3Rpb25cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW3Jvd10gLSBGbGV4IGRpcmVjdGlvbiB0byB1c2UuIENhbiBiZVxuLy8vICAgLSByb3cgKGRlZmF1bHQpOiBzYW1lIGFzIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIHJvdy1yZXZlcnNlOiBvcHBvc2l0ZSB0byB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSBjb2x1bW46IHNhbWUgYXMgcm93IGJ1dCB0b3AgdG8gYm90dG9tXG4vLy8gICAtIGNvbHVtbi1yZXZlcnNlOiBzYW1lIGFzIHJvdy1yZXZlcnNlIHRvcCB0byBib3R0b21cbkBtaXhpbiBmbGV4LWRpcmVjdGlvbigkZGlyZWN0aW9uOiByb3cpIHtcbiAgZmxleC1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBDYWxjdWxhdGVzIHRoZSB3aWR0aCBvZiBhIGNvbHVtbiBiYXNlZCBvbiBhIG51bWJlciBvZiBmYWN0b3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGNvbHVtbnNcbi8vLyAgIFdpZHRoIG9mIHRoZSBjb2x1bW4uIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHBlcmNlbnRhZ2UgdmFsdWUgd2lsbCBtYWtlIHRoZSBjb2x1bW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIHNpbmdsZSBkaWdpdCB3aWxsIG1ha2UgdGhlIGNvbHVtbiBzcGFuIHRoYXQgbnVtYmVyIG9mIGNvbHVtbnMgd2lkZSwgdGFraW5nIGludG8gYWNjb3VudCB0aGUgY29sdW1uIGNvdW50IG9mIHRoZSBwYXJlbnQgcm93LlxuLy8vICAgLSBBIGxpc3Qgb2YgdGhlIGZvcm1hdCBcInggb2YgeVwiICh3aXRob3V0IHF1b3Rlcykgd2lsbCBtYWtlIGEgY29sdW1uIHRoYXQgaXMgKngqIGNvbHVtbnMgd2lkZSwgYXNzdW1pbmcgKnkqIHRvdGFsIGNvbHVtbnMgZm9yIHRoZSBwYXJlbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIGNhbGN1bGF0ZWQgcGVyY2VudGFnZSB2YWx1ZS5cbkBmdW5jdGlvbiBncmlkLWNvbHVtbigkY29sdW1ucykge1xuICAkd2lkdGg6IDAlO1xuXG4gIC8vIFBhcnNpbmcgcGVyY2VudHMsIGRlY2ltYWxzLCBhbmQgY29sdW1uIGNvdW50c1xuICBAaWYgdHlwZS1vZigkY29sdW1ucykgPT0gJ251bWJlcicge1xuICAgIEBpZiB1bml0KCRjb2x1bW5zKSA9PSAnJScge1xuICAgICAgJHdpZHRoOiAkY29sdW1ucztcbiAgICB9XG4gICAgQGVsc2UgaWYgJGNvbHVtbnMgPCAxIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZSgkY29sdW1ucyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZSgkY29sdW1ucyAvICRncmlkLWNvbHVtbi1jb3VudCk7XG4gICAgfVxuICB9XG5cbiAgLy8gUGFyc2luZyBcIm4gb2YgblwiIGV4cHJlc3Npb25zXG4gIEBlbHNlIGlmIHR5cGUtb2YoJGNvbHVtbnMpID09ICdsaXN0JyB7XG4gICAgQGlmIGxlbmd0aCgkY29sdW1ucykgIT0gMyB7XG4gICAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4oKS4gVXNlIHRoZSBmb3JtYXQgXCJuIG9mIG5cIi4nO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkd2lkdGg6IHBlcmNlbnRhZ2UobnRoKCRjb2x1bW5zLCAxKSAvIG50aCgkY29sdW1ucywgMykpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFueXRoaW5nIGVsc2UgaXMgaW5jb3JyZWN0XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4oKS4gVXNlIGEgbnVtYmVyLCBkZWNpbWFsLCBwZXJjZW50YWdlLCBvciBcIm4gb2YgblwiLic7XG4gIH1cblxuICBAcmV0dXJuICR3aWR0aDtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRjb2x1bW5zIFskZ3JpZC1jb2x1bW4tY291bnRdIC0gV2lkdGggb2YgdGhlIGNvbHVtbi4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uLWd1dHRlcigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuQG1peGluIGdyaWQtY29sdW1uKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xuICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuXG4gIC8vIEd1dHRlcnNcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG5cbiAgLy8gTGFzdCBjb2x1bW4gYWxpZ25tZW50XG4gIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiAkZ2xvYmFsLXJpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uIHJvdy4gVGhpcyBpcyB0aGUgZXF1aXZhbGVudCBvZiBhZGRpbmcgYC5yb3dgIGFuZCBgLmNvbHVtbmAgdG8gdGhlIHNhbWUgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFdpZHRoIG9mIHRoZSBndXR0ZXJzIG9uIGVpdGhlciBzaWRlIG9mIHRoZSBjb2x1bW4gcm93LiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uLWd1dHRlcigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuQG1peGluIGdyaWQtY29sdW1uLXJvdyhcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLXJvdztcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAmLFxuICAmOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBmdW5jdGlvbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEByZXR1cm4gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AbWl4aW4gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXJvdygpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcm93XG5AbWl4aW4gZ3JpZC1jb2wtcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygkZ3V0dGVycyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBSZXBvc2l0aW9uIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJHBvc2l0aW9uIC0gRGlyZWN0aW9uIGFuZCBhbW91bnQgdG8gbW92ZS4gVGhlIGNvbHVtbiB3aWxsIG1vdmUgZXF1YWwgdG8gdGhlIHdpZHRoIG9mIHRoZSBjb2x1bW4gY291bnQgc3BlY2lmaWVkLiBBIHBvc2l0aXZlIG51bWJlciB3aWxsIHB1c2ggdGhlIGNvbHVtbiB0byB0aGUgcmlnaHQsIHdoaWxlIGEgbmVnYXRpdmUgbnVtYmVyIHdpbGwgcHVsbCBpdCB0byB0aGUgbGVmdC4gU2V0IHRvIGNlbnRlciB0byBjZW50ZXIgdGhlIGNvbHVtbi5cbkBtaXhpbiBncmlkLWNvbHVtbi1wb3NpdGlvbigkcG9zaXRpb24pIHtcbiAgQGlmIHR5cGUtb2YoJHBvc2l0aW9uKSA9PSAnbnVtYmVyJyB7XG4gICAgJG9mZnNldDogcGVyY2VudGFnZSgkcG9zaXRpb24gLyAkZ3JpZC1jb2x1bW4tY291bnQpO1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gY2VudGVyIHtcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbi1wb3NpdGlvbigpLiBFbnRlciBhIHBvc2l0aXZlIG9yIG5lZ2F0aXZlIG51bWJlciwgb3IgY2VudGVyLic7XG4gIH1cbn1cblxuLy8vIFJlc2V0IGEgcG9zaXRpb24gZGVmaW5pdGlvbi5cbkBtaXhpbiBncmlkLWNvbHVtbi11bnBvc2l0aW9uIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi8vLyBPZmZzZXRzIGEgY29sdW1uIHRvIHRoZSByaWdodCBieSBgJG5gIGNvbHVtbnMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBXaWR0aCB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbkBtaXhpbiBncmlkLWNvbHVtbi1vZmZzZXQoJG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogZ3JpZC1jb2x1bW4oJG4pO1xufVxuXG4vLy8gRGlzYWJsZSB0aGUgZGVmYXVsdCBiZWhhdmlvciBvZiB0aGUgbGFzdCBjb2x1bW4gaW4gYSByb3cgYWxpZ25pbmcgdG8gdGhlIG9wcG9zaXRlIGVkZ2UuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZW5kIHtcbiAgLy8gVGhpcyBleHRyYSBzcGVjaWZpY2l0eSBpcyByZXF1aXJlZCBmb3IgdGhlIHByb3BlcnR5IHRvIGJlIGFwcGxpZWRcbiAgJjpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXBvcygkcG9zaXRpb24pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcG9zaXRpb24oJHBvc2l0aW9uKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXVucG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXVucG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC11bnBvcyB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXVucG9zaXRpb247XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1vZmZzZXQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLW9mZnNldFxuQG1peGluIGdyaWQtY29sLW9mZigkbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoJG4pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZW5kKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1lbmRcbkBtaXhpbiBncmlkLWNvbC1lbmQge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1lbmQ7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT4tPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIGZvciBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHN0eWxlcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zdHlsZXMgbWFwIGlzIGJ1aWx0IGZyb20gJGhlYWRlci1zaXplcyBpbiBvcmRlciB0byBlbnN1cmUgZG93bndhcmQgY29tcGF0aWJpbGl0eVxuLy8gd2hlbiAkaGVhZGVyLXNpemVzIGlzIGRlcHJlY2lhdGVkLCAkaGVhZGVyLXN0eWxlcyBuZWVkcyB0byBnZXQgIWRlZmF1bHQgdmFsdWVzIGxpa2Ugc2V0dGluZ3Muc2Nzc1xuQGZ1bmN0aW9uIGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpIHtcbiAgQHdhcm4gJ05vdGUsIHRoYXQgJGhlYWRlci1zaXplcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoICRoZWFkZXItc3R5bGVzLiAkaGVhZGVyLXNpemVzIHN0aWxsIHdvcmtzLCBidXQgaXQgaXMgZ29pbmcgdG8gYmUgZGVwcmVjaWF0ZWQuJztcbiAgJGhlYWRlci1zdHlsZXM6ICgpO1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zaXplcyB7XG4gICAgJGhlYWRlci1tYXA6ICgpO1xuICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgJGhlYWRlci1tYXA6IG1hcC1tZXJnZSgkaGVhZGVyLW1hcCwgKCRoZWFkZXI6ICgnZm9udC1zaXplJzogJGZvbnQtc2l6ZSkpKTsgIFxuICAgIH1cbiAgICAkaGVhZGVyLXN0eWxlczogbWFwLW1lcmdlKCRoZWFkZXItc3R5bGVzLCAoJHNpemU6ICRoZWFkZXItbWFwKSk7XG4gIH1cbiAgQHJldHVybiAkaGVhZGVyLXN0eWxlcztcbn1cblxuLy8gSWYgaXQgZXhpc3RzICRoZWFkZXJzLXNpemVzIGlzIHVzZWQgdG8gYnVpbGQgJGhlYWRlci1zdHlsZXMuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoaGVhZGVyLXNpemVzKSB7XG4gICRoZWFkZXItc3R5bGVzOiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKTtcbn1cblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGA8c21hbGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzbWFsbC1mb250LXNpemU6IDgwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGA8c21hbGw+YCBlbGVtZW50cyB3aGVuIHBsYWNlZCBpbnNpZGUgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGluc2lkZSBgPHA+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIGZvciBwYXJhZ3JhcGggdGV4dC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBhcm91bmQgdGV4dCBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlb2NyYXRpb24gZm9yIGxpbmtzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBMaXN0XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0byAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b20gIWRlZmF1bHQ7XG5cbi8vLyBCdWxsZXQgdHlwZSB0byB1c2UgZm9yIHVub3JkZXJlZCBsaXN0cyAoZS5nLiwgYHNxdWFyZWAsIGBjaXJjbGVgLCBgZGlzY2ApLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYyAhZGVmYXVsdDtcblxuLy8vIFBvc2l0aW9uaW5nIGZvciBidWxsZXRzIG9uIHVub3JkZXJlZCBsaXN0IGl0ZW1zLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGUgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBsaXN0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgYSBsaXN0IGluc2lkZSBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBgPGRsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBgPGR0PmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYDxkdD5gIGFuZCBgPGRkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgYDxibG9ja3F1b3RlPmAgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpICFkZWZhdWx0O1xuXG4vLy8gU2lkZSBib3JkZXIgZm9yIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBzZXVkbyBjb250ZW50IGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCcgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIGJvcmRlciBzdHlsZSBmb3IgYDxhYmJyPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjayAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1iYXNlIHtcbiAgLy8gVHlwb2dyYXBoeSByZXNldHNcbiAgZGl2LFxuICBkbCxcbiAgZHQsXG4gIGRkLFxuICB1bCxcbiAgb2wsXG4gIGxpLFxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2LFxuICBwcmUsXG4gIGZvcm0sXG4gIHAsXG4gIGJsb2NrcXVvdGUsXG4gIHRoLFxuICB0ZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBQYXJhZ3JhcGhzXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgIHRleHQtcmVuZGVyaW5nOiAkcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nO1xuICB9XG5cbiAgLy8gRW1waGFzaXplZCB0ZXh0XG4gIGVtLFxuICBpIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTdHJvbmcgdGV4dFxuICBzdHJvbmcsXG4gIGIge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU21hbGwgdGV4dFxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSGVhZGluZ3NcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJGhlYWRlci1mb250LXN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgIHRleHQtcmVuZGVyaW5nOiAkaGVhZGVyLXRleHQtcmVuZGVyaW5nO1xuXG4gICAgc21hbGwge1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBjb2xvcjogJGhlYWRlci1zbWFsbC1mb250LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhlYWRpbmcgc3R5bGVzXG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXN0eWxlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGhlYWRlciwgJGhlYWRlci1kZWZzIGluICRoZWFkZXJzIHtcbiAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiAxcmVtO1xuICAgICAgICAjeyRoZWFkZXJ9IHtcblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZnMpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZzKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGgpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYygkaGVhZGVyLWxpbmVoZWlnaHQsICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtdCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYikpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJGhlYWRlci1tYXJnaW4tYm90dG9tKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBMaW5rc1xuICBhIHtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogJGFuY2hvci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgQGlmICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyICE9ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvcml6b250YWwgcnVsZVxuICBociB7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBtYXgtd2lkdGg6ICRoci13aWR0aDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAkaHItbWFyZ2luO1xuXG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhyLWJvcmRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuXG4gIC8vIExpc3RzXG4gIHVsLFxuICBvbCxcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaXN0LW1hcmdpbi1ib3R0b207XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XG4gICAgbGluZS1oZWlnaHQ6ICRsaXN0LWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBMaXN0IGl0ZW1zXG4gIGxpIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBVbm9yZGVyZWQgbGlzdHNcbiAgdWwge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogJGxpc3Qtc3R5bGUtdHlwZTtcbiAgfVxuXG4gIC8vIE9yZGVyZWQgbGlzdHNcbiAgb2wge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICB9XG5cbiAgLy8gTmVzdGVkIHVub3JkZXJlZC9vcmRlcmVkIGxpc3RzXG4gIHVsLCBvbCB7XG4gICAgJiAmIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5pdGlvbiBsaXN0c1xuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LW1hcmdpbi1ib3R0b207XG5cbiAgICBkdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tO1xuICAgICAgZm9udC13ZWlnaHQ6ICRkZWZubGlzdC10ZXJtLXdlaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBCbG9ja3F1b3Rlc1xuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgcGFkZGluZzogJGJsb2NrcXVvdGUtcGFkZGluZztcbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYmxvY2txdW90ZS1ib3JkZXI7XG5cbiAgICAmLCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2l0YXRpb25zXG4gIGNpdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJGNpdGUtZm9udC1zaXplO1xuICAgIGNvbG9yOiAkY2l0ZS1jb2xvcjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICRjaXRlLXBzZXVkby1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEFiYnJldmlhdGlvbnNcbiAgYWJiciB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgIGN1cnNvcjogaGVscDtcbiAgfVxuXG4gIC8vIEZpZ3VyZXNcbiAgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgXG4gIC8vIENvZGVcbiAgY29kZSB7XG4gICAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcblxuICAgIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1oZWxwZXJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGVhZC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0b3AgbWFyZ2luIGZvciBzdWJoaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3Igc3RhdGlzdGljIG51bWJlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3RhdC1mb250LXNpemU6IDIuNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1oZWxwZXJzIHtcbiAgLy8gVXNlIHRvIGNyZWF0ZSBhIHN1YmhlYWRpbmcgdW5kZXIgYSBtYWluIGhlYWRlclxuICAvLyBNYWtlIHN1cmUgeW91IHBhaXIgdGhlIHR3byBlbGVtZW50cyBpbiBhIDxoZWFkZXI+IGVsZW1lbnQsIGxpa2UgdGhpczpcbiAgLy8gPGhlYWRlcj5cbiAgLy8gICA8aDE+SGVhZGluZzwvaDE+XG4gIC8vICAgPGgyPlN1YmhlYWRpbmc8L2gyPlxuICAvLyA8L2hlYWRlcj5cbiAgLnN1YmhlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogJHN1YmhlYWRlci1tYXJnaW4tdG9wO1xuICAgIG1hcmdpbi1ib3R0b206ICRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkc3ViaGVhZGVyLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRzdWJoZWFkZXItY29sb3I7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYW4gaW50cm9kdWN0b3J5IGxlYWQsIGRlY2ssIGJsdXJiLCBldGMuXG4gIC5sZWFkIHtcbiAgICBmb250LXNpemU6ICRsZWFkLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxlYWQtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhIGxhcmdlIG51bWJlciB0byBkaXNwbGF5IGEgc3RhdGlzdGljXG4gIC5zdGF0IHtcbiAgICBmb250LXNpemU6ICRzdGF0LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIHAgKyAmIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIH1cbiAgfVxuXG4gIC8vIFVzZSB0byByZW1vdmUgdGhlIGJ1bGxldHMgZnJvbSBhbiB1bm9yZGVyZWQgbGlzdFxuICAubm8tYnVsbGV0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi10ZXh0LWFsaWdubWVudCB7XG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAudGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBJZiBgdHJ1ZWAsIGFsbCBlbGVtZW50cyB3aWxsIGhhdmUgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMgd2hlbiBwcmludGVkLCB0byBzYXZlIG9uIGluay5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlICFkZWZhdWx0O1xuJHByaW50LWhyZWZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcblxuQG1peGluIGZvdW5kYXRpb24tcHJpbnQtc3R5bGVzIHtcbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICAgLy8gSGVscGVyIHRvIHJlLWFsbG93IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgY2VydGFpbiBlbGVtZW50cyAoZS5nLiBwcmUsIGJsb2NrcXVvdGUsIHRyKVxuICAgIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b25cbi8vLy9cblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHdpZHRoIGZvciBob2xsb3cgb3V0bGluZSBidXR0b25zXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjZyZW0sXG4gIHNtYWxsOiAwLjc1cmVtLFxuICBkZWZhdWx0OiAwLjlyZW0sXG4gIGxhcmdlOiAxLjI1cmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gb3BhY2l0eSBmb3IgYSBkaXNhYmxlZCBidXR0b24uXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBob2xsb3cgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJSAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWw6IGZsaXAgZnJvbSBtYXJnaW4tcmlnaHQgdG8gbWFyZ2luLWxlZnQgZm9yIGRlZmF1bHRzXG5AaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG59XG5cbi8vLyB0cmFuc2l0aW9ucyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBEb2N1bWVudCBidXR0b24tYmFzZSgpIG1peGluXG5AbWl4aW4gYnV0dG9uLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG5cbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgYmFja2dyb3VuZCBmaWxsIG9uIGhvdmVyIGFuZCBmb2N1cyBmb3IgaG9sbG93IGJ1dHRvbnMuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdyB7XG4gICYsXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbkBtaXhpbiBidXR0b24taG9sbG93LXN0eWxlKFxuICAkY29sb3I6ICRwcmltYXJ5LWNvbG9yLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsIFxuICAkYm9yZGVyLXdpZHRoOiAkYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhcbikge1xuICAkY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGhvdmVyLWxpZ2h0bmVzcyk7XG5cbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICB9XG59XG5cbi8vLyBBZGRzIGRpc2FibGVkIHN0eWxlcyB0byBhIGJ1dHRvbiBieSBmYWRpbmcgdGhlIGVsZW1lbnQsIHJlc2V0aW5nIHRoZSBjdXJzb3IsIGFuZCBkaXNhYmxpbmcgcG9pbnRlciBldmVudHMuXG4vLy8gQHBhcmFtIFtDb2xvcl0gJGJhY2tncm91bmQgWyRwcmltYXJ5LWNvbG9yXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAcGFyYW0gW0NvbG9yXSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkcm9wZG93biBhcnJvdyB0byBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgWzAuNGVtXSAtIFNpemUgb2YgdGhlIGFycm93LiBXZSByZWNvbW1lbmQgdXNpbmcgYW4gYGVtYCB2YWx1ZSBzbyB0aGUgdHJpYW5nbGUgc2NhbGVzIHdoZW4gdXNlZCBpbnNpZGUgZGlmZmVyZW50IHNpemVzIG9mIGJ1dHRvbnMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFt3aGl0ZV0gLSBDb2xvciBvZiB0aGUgYXJyb3cuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvZmZzZXQgWyRidXR0b24tcGFkZGluZ10gLSBEaXN0YW5jZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHQgb2YgdGhlIGJ1dHRvbi4gRGVmYXVsdHMgdG8gd2hhdGV2ZXIgdGhlIHJpZ2h0IHBhZGRpbmcgb2YgYSBidXR0b24gaXMuXG5AbWl4aW4gYnV0dG9uLWRyb3Bkb3duKFxuICAkc2l6ZTogMC40ZW0sXG4gICRjb2xvcjogJHdoaXRlLFxuICAkb2Zmc2V0OiBnZXQtc2lkZSgkYnV0dG9uLXBhZGRpbmcsIHJpZ2h0KVxuKSB7XG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHNpemUsICRjb2xvciwgZG93bik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07IC8vIEFsaWducyB0aGUgYXJyb3cgd2l0aCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uXG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1yaWdodH07XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodCk7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcblxuICBAaWYgJHN0eWxlID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRzdHlsZSA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4jeyRuYW1lfS5kcm9wZG93bjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhvbGxvdyBzdHlsZVxuICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICYuaG9sbG93IHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3R5bGVcbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDtcblxuICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQoJGNvbG9yLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCdXR0b24gd2l0aCBkcm9wZG93biBhcnJvdyBvbmx5XG4gICAgJi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgICB0b3A6IC0wLjFlbTtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjY29yZGlvbiBncm91cC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgcGx1cyBhbmQgbWludXMgaWNvbnMgdG8gdGhlIHNpZGUgb2YgZWFjaCBhY2NvcmRpb24gdGl0bGUuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYWNjb3JkaW9uIHRpdGxlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gYWNjb3JkaW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgc2FtZSBlbGVtZW50IHRoYXQgZ2V0cyBgZGF0YS1hY2NvcmRpb25gLlxuQG1peGluIGFjY29yZGlvbi1jb250YWluZXIgKFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1iYWNrZ3JvdW5kXG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpc3QgaXRlbSB3aXRoaW4gYW4gYWNjb3JkaW9uIHVsLlxuQG1peGluIGFjY29yZGlvbi1pdGVtIHtcbiAgJjpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXMgMCAwO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB0aXRsZSBvZiBhbiBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGluayB3aXRoaW4gYW4gYWNjb3JkaW9uIGl0ZW0uXG5AbWl4aW4gYWNjb3JkaW9uLXRpdGxlIChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24taXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWl0ZW0tY29sb3IsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+ICYge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gIH1cblxuICBAaWYgJGFjY29yZGlvbi1wbHVzbWludXMge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgICAgY29udGVudDogJysnO1xuICAgIH1cblxuICAgIC5pcy1hY3RpdmUgPiAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJ1xcMjAxMyc7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYWNjb3JkaW9uIGNvbnRlbnQuIEFwcGx5IHRoaXMgdG8gdGhlIGNvbnRlbnQgcGFuZSBiZWxvdyBhbiBhY2NvcmRpb24gaXRlbSdzIHRpdGxlLlxuQG1peGluIGFjY29yZGlvbi1jb250ZW50IChcbiAgJHBhZGRpbmc6ICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJGFjY29yZGlvbi1jb250ZW50LWNvbG9yXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICBjb2xvcjogJGNvbG9yO1xuXG4gIDpsYXN0LWNoaWxkID4gJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbiB7XG4gIC5hY2NvcmRpb24ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250YWluZXI7XG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1pdGVtO1xuICB9XG5cbiAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLXRpdGxlO1xuICB9XG5cbiAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uLWdyb3VwXG4vLy8vXG5cbi8vLyBNYXJnaW4gZm9yIGJ1dHRvbiBncm91cHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBCb3JkZXJcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbicgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIG51bWJlciBvZiBidXR0b25zIHRoYXQgY2FuIGJlIGluIGFuIGV2ZW4td2lkdGggYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDYgIWRlZmF1bHQ7XG5cbi8vLyBEZXRlcm1pbmVzIGlmICRidXR0b24tcmFkaXVzIGlzIGFwcGxpZWQgdG8gZWFjaCBidXR0b24gb3IgdGhlIGJ1dHRvbiBncm91cCBhcyBhIHdob2xlLiBVc2UgJGdsb2JhbC1yYWRpdXMgaW4gX3NldHRpbmdzLnNjc3MgdG8gY2hhbmdlIHJhZGl1cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGQgc3R5bGVzIGZvciBhIGJ1dHRvbiBncm91cCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRjaGlsZC1zZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwKFxuICAkY2hpbGQtc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW4tYm90dG9tOiAkYnV0dG9uZ3JvdXAtbWFyZ2luO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgfVxuXG4gICN7JGNoaWxkLXNlbGVjdG9yfSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYnV0dG9uZ3JvdXAtc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAkYnV0dG9uZ3JvdXAtc3BhY2luZztcbiAgICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICB9XG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZnVsbC13aWR0aCBidXR0b24gZ3JvdXAsIG1ha2luZyBlYWNoIGJ1dHRvbiBlcXVhbCB3aWR0aC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtZXhwYW5kKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJGNvdW50OiBudWxsXG4pIHtcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAtJGJ1dHRvbmdyb3VwLXNwYWNpbmc7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gT25lIGNoaWxkXG4gICAgICAmOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogMTAwJVxuICAgICAgfVxuXG4gICAgICAvLyBUd28gb3IgbW9yZSBjaGlsZHJlZW5cbiAgICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXgge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB7XG4gICAgICAgICAgJiwgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkgfiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoI3twZXJjZW50YWdlKDEgLyAkaSl9IC0gI3skYnV0dG9uZ3JvdXAtc3BhY2luZ30pO1xuICAgICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRidXR0b25ncm91cC1zcGFjaW5nO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGJ1dHRvbmdyb3VwLXNwYWNpbmcgKiAtJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTdGFja3MgdGhlIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgdGhlIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtc3RhY2soXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGR7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG4vLy8gVW4tc3RhY2tzIHRoZSBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIHRoZSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLXVuc3RhY2soXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cCB7XG4gIC5idXR0b24tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cDtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBHcm91cFxuICAgICYuZXhwYW5kZWQgeyBAaW5jbHVkZSBidXR0b24tZ3JvdXAtZXhwYW5kOyB9XG5cbiAgICAvLyBDb2xvcnNcbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgQGlmICRidXR0b24tZmlsbCAhPSBob2xsb3cge1xuICAgICAgICAmLiN7JG5hbWV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLFxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwsXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0YWNrO1xuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtdW5zdGFjaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBmb3JjZS1lbGVtZW50LW5lc3RpbmdcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZW51XG4vLy8vXG5cbi8vLyBNYXJnaW4gb2YgYSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gTGVmdC1oYW5kIG1hcmdpbiBvZiBhIG5lc3RlZCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luLW5lc3RlZDogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWl0ZW0tcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYW4gaG92ZXJlZCBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBmb3IgYm9yZGVyZWQgbWVudVxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1ib3JkZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgTWVudS5cbkBtaXhpbiBtZW51LWJhc2Uge1xuICBtYXJnaW46ICRtZW51LW1hcmdpbjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXMgYXJlIHRhYmxlIGNlbGwgdG8gYWxsb3cgZm9yIHZlcnRpY2FsIGFsaWdubWVudFxuICA+IGxpIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBsaW5lIGhlaWdodCB0byBtYWtlIHRoZSBoZWlnaHQgb2YgdGhlIG92ZXJhbGwgaXRlbSBlYXNpZXIgdG8gY2FsY3VsYXRlXG4gID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtLXBhZGRpbmc7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb2YgaW5uZXIgZWxlbWVudHNcbiAgaW5wdXQsXG4gIHNlbGVjdCxcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBFeHBhbmRzIHRoZSBpdGVtcyBvZiBhIE1lbnUsIHNvIGVhY2ggaXRlbSBpcyB0aGUgc2FtZSB3aWR0aC5cbkBtaXhpbiBtZW51LWV4cGFuZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgID4gbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIH1cblxuICA+IGxpOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAgID4gbGkge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICA+IGxpIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgPiBsaSAgPiBhIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFNldCB0byBgbnVsbGAgdG8gZG8gbm90IGdlbmVyYXRlIHN0eWxlcyBmb3IgZGlyZWN0aW9uLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCkge1xuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgQGlmICRkaXIgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVudS1zaW1wbGUtZGlyZWN0aW9uKCRkaXIpO1xuICB9XG59XG5cbi8vLyBEaXJlY3Rpb24gbW9kaWZpZXIgZm9yIGEgc2ltcGxlIE1lbnVcbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnVcbkBtaXhpbiBtZW51LXNpbXBsZS1kaXJlY3Rpb24oJGRpcjogJGdsb2JhbC1sZWZ0KSB7XG4gICRuby1tYXJnaW4tZGlyOiAkZGlyO1xuICAkbWFyZ2luLWRpcjogZGlyZWN0aW9uLW9wcG9zaXRlKCRkaXIpO1xuXG4gIGxpIHtcbiAgICBtYXJnaW4tI3skbm8tbWFyZ2luLWRpcn06IDA7XG4gICAgbWFyZ2luLSN7JG1hcmdpbi1kaXJ9OiBnZXQtc2lkZSgkbWVudS1pdGVtLXBhZGRpbmcsICRtYXJnaW4tZGlyKTtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbmVzdGVkIE1lbnUsIGJ5IGFkZGluZyBgbWFyZ2luLWxlZnRgIHRvIHRoZSBtZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRwYWRkaW5nIFthdXRvXSAtIExlbmd0aCBvZiB0aGUgbWFyZ2luLlxuQG1peGluIG1lbnUtbmVzdGVkKCRtYXJnaW46ICRtZW51LW1hcmdpbi1uZXN0ZWQpIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG1hcmdpbjtcbn1cblxuLy8vIEFkZHMgc3VwcG9ydCBmb3IgaWNvbnMgdG8gTWVudSBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRwb3NpdGlvbiBbc2lkZV0gLSBQb3NpdGlvbmluZyBmb3IgaWNvbnMuIENhbiBiZSBgc2lkZWAgKGxlZnQsIG9yIHJpZ2h0IG9uIFJUTCkgb3IgYHRvcGAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYmFzZSBbdHJ1ZV0gLSBTZXQgdG8gYGZhbHNlYCB0byBwcmV2ZW50IHRoZSBzaGFyZWQgQ1NTIGJldHdlZW4gc2lkZS0gYW5kIHRvcC1hbGlnbmVkIGljb25zIGZyb20gYmVpbmcgcHJpbnRlZC4gU2V0IHRoaXMgdG8gYGZhbHNlYCBpZiB5b3UncmUgY2FsbGluZyB0aGUgbWl4aW4gbXVsdGlwbGUgdGltZXMgb24gdGhlIHNhbWUgZWxlbWVudC5cbkBtaXhpbiBtZW51LWljb25zKCRwb3NpdGlvbjogc2lkZSwgJGJhc2U6IHRydWUpIHtcbiAgQGlmICRiYXNlIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgPiBsaSA+IGEge1xuICAgICAgICBpbWcsXG4gICAgICAgIGksXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICAgICsgc3BhbiB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkcG9zaXRpb24gPT0gc2lkZSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkbWVudS1pY29uLXNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAwIGF1dG8gJG1lbnUtaWNvbi1zcGFjaW5nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRtZW51LWljb24tc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtdGV4dCB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcGFkZGluZzogJG1lbnUtaXRlbS1wYWRkaW5nO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUge1xuICAubWVudSB7XG4gICAgQGluY2x1ZGUgbWVudS1iYXNlO1xuICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG5cbiAgICAvLyBEZWZhdWx0IG9yaWVudGF0aW9uOiBob3Jpem9udGFsXG4gICAgJiwgJi5ob3Jpem9udGFsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggbW9kaWZpZXIgZm9yIGhvcml6b250YWwgb3JpZW50YXRpb25cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIG9yaWVudGF0aW9uIG1vZGlmaWVyXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IGZhbHNlKSB7XG4gICAgICAmLiN7JC16Zi1zaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNpbXBsZVxuICAgICYuc2ltcGxlIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc2ltcGxlO1xuXG4gICAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgICBAaW5jbHVkZSBtZW51LXNpbXBsZS1kaXJlY3Rpb24oJGdsb2JhbC1yaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgICAgID4gbGkge1xuICAgICAgICAgIGZsb2F0OiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgaWNvbnNcbiAgICAmLmljb24tdG9wIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnModG9wLCAkYmFzZTogZmFsc2UpO1xuICAgICAgLy8gTWFrZSB2ZXJ0aWNhbCBtZW51IHdpdGggaWNvbnMgb24gdG9wIHdvcmtcbiAgICAgICYudmVydGljYWwge1xuICAgICAgICBhID4gc3BhbiB7XG4gICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG4gICAgfVxuXG4gICAgLy8gTWVudSB3aXRoIGJvcmRlclxuICAgICYubWVudS1ib3JkZXJlZCB7XG4gICAgICBsaSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRtZW51LWJvcmRlcjtcbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1lbnUgd2l0aCBiYWNrZ3JvdW5kIGhvdmVyXG4gICAgJi5tZW51LWhvdmVyIHtcbiAgICAgIGxpOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tZW51LXRleHQge1xuICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgfVxuXG4gIC8vIEFsaWduIGNlbnRlclxuICAubWVudS1jZW50ZXJlZCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgPiAubWVudSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogdG9wKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1tZW51LWljb24ge1xuICAubWVudS1pY29uIHtcbiAgICBAaW5jbHVkZSBoYW1idXJnZXIoJGNvbG9yOiAkdGl0bGViYXItaWNvbi1jb2xvciwgJGNvbG9yLWhvdmVyOiAkdGl0bGViYXItaWNvbi1jb2xvci1ob3Zlcik7XG4gIH1cblxuICAubWVudS1pY29uLmRhcmsge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgb3JiaXRcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGFjdGl2ZSBjb2xvciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaWFtZXRlciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYmV0d2VlbiBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaXN0YW5jZSBmcm9tIHNsaWRlIHJlZ2lvbiBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZnJvbSBPcmJpdCdzIGJ1bGxldHMgdG8gd2hhdGV2ZXIgY29udGVudCBtYXkgbHVyayBiZWxvdyBpdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNvbnRyb2xzIHdoZW4gaG92ZXJlZC5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIE9yYml0J3MgY29udHJvbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB6LWluZGV4IGZvciBPcmJpdCdzIGNvbnRyb2xzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMCAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgb3V0ZXIgT3JiaXQgd3JhcHBlci4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0YCBjbGFzcy5cbkBtaXhpbiBvcmJpdC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbm5lciBPcmJpdCBzbGlkZSBjb250YWluZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1jb250YWluZXJgIGNsYXNzLlxuQG1peGluIG9yYml0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwOyAvLyBQcmV2ZW50IEZPVUMgYnkgbm90IHNob3dpbmcgdW50aWwgSlMgc2V0cyBoZWlnaHRcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbmRpdmlkdWFsIHNsaWRlcyBvZiBhbiBPcmJpdCBzbGlkZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1zbGlkZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtc2xpZGUge1xuICB3aWR0aDogMTAwJTtcblxuICAmLm5vLW1vdGlvbnVpIHtcbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gb3JiaXQtZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc2xpZGUgY29udGFpbmluZyBhbiBpbWFnZS4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWltYWdlYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBvcmJpdCBzbGlkZSBjYXB0aW9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtY2FwdGlvbmAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogJG9yYml0LWNhcHRpb24tcGFkZGluZztcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kO1xuICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kKTtcbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIHRoZSBuZXh0L3ByZXZpb3VzIGJ1dHRvbnMgaW4gYW4gT3JiaXQgc2xpZGVyLiBUaGVzZSBzdHlsZXMgYXJlIHNoYXJlZCBiZXR3ZWVuIHRoZSBgLm9yYml0LW5leHRgIGFuZCBgLm9yYml0LXByZXZpb3VzYCBjbGFzc2VzIGluIHRoZSBkZWZhdWx0IENTUy5cbkBtaXhpbiBvcmJpdC1jb250cm9sIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXI7XG4gIHotaW5kZXg6ICRvcmJpdC1jb250cm9sLXppbmRleDtcbiAgcGFkZGluZzogJG9yYml0LWNvbnRyb2wtcGFkZGluZztcbiAgY29sb3I6ICR3aGl0ZTtcblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBwcmV2aW91cyBidXR0b24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1wcmV2aW91c2AgY2xhc3MuXG5AbWl4aW4gb3JiaXQtcHJldmlvdXMge1xuICAjeyRnbG9iYWwtbGVmdH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIE9yYml0IG5leHQgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtbmV4dGAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtbmV4dCB7XG4gICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgI3skZ2xvYmFsLXJpZ2h0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNvbnRhaW5lciBvZiBPcmJpdCBidWxsZXRzLiAvLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBwcmV2aW91cyBidXR0b24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1idWxsZXRzYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1idWxsZXRzIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6ICRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDtcbiAgbWFyZ2luLWJvdHRvbTogJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgYnV0dG9uIHtcbiAgICB3aWR0aDogJG9yYml0LWJ1bGxldC1kaWFtZXRlcjtcbiAgICBoZWlnaHQ6ICRvcmJpdC1idWxsZXQtZGlhbWV0ZXI7XG4gICAgbWFyZ2luOiAkb3JiaXQtYnVsbGV0LW1hcmdpbjtcblxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tb3JiaXQge1xuICAub3JiaXQge1xuICAgIEBpbmNsdWRlIG9yYml0LXdyYXBwZXI7XG4gIH1cblxuICAub3JiaXQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jb250YWluZXI7XG4gIH1cblxuICAub3JiaXQtc2xpZGUge1xuICAgIEBpbmNsdWRlIG9yYml0LXNsaWRlO1xuICB9XG5cbiAgLm9yYml0LWZpZ3VyZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtZmlndXJlO1xuICB9XG5cbiAgLm9yYml0LWltYWdlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1pbWFnZTtcbiAgfVxuXG4gIC5vcmJpdC1jYXB0aW9uIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jYXB0aW9uO1xuICB9XG5cbiAgJW9yYml0LWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIG9yYml0LWNvbnRyb2w7XG4gIH1cblxuICAub3JiaXQtcHJldmlvdXMge1xuICAgIEBleHRlbmQgJW9yYml0LWNvbnRyb2w7XG4gICAgQGluY2x1ZGUgb3JiaXQtcHJldmlvdXM7XG4gIH1cblxuICAub3JiaXQtbmV4dCB7XG4gICAgQGV4dGVuZCAlb3JiaXQtY29udHJvbDtcbiAgICBAaW5jbHVkZSBvcmJpdC1uZXh0O1xuICB9XG5cbiAgLm9yYml0LWJ1bGxldHMge1xuICAgIEBpbmNsdWRlIG9yYml0LWJ1bGxldHM7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHBhZ2luYXRpb25cbi8vLy9cblxuLy8vIEZvbnQgc2l6ZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gb2YgdGhlIHBhZ2luYXRpb24gb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgbWFyZ2luIHRvIHNlcGFyYXRlIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZWxsaXBzaXMgaW4gYSBwYWdpbmF0aW9uIG1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgZmFsc2VgLCBkb24ndCBkaXNwbGF5IHBhZ2UgbnVtYmVyIGxpbmtzIG9uIG1vYmlsZSwgb25seSBuZXh0L3ByZXZpb3VzIGxpbmtzXG4vLy8gYW5kIG9wdGlvbmFsbHkgY3VycmVudCBwYWdlIG51bWJlci5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBkaXNwbGF5IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIG9uIG1vYmlsZSBldmVuIGlmIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgZmFsc2VgLlxuLy8vIFRoaXMgcGFyYW1ldGVyIHdpbGwgb25seSBvdmVycmlkZSB0aGUgdmlzaWJpbGl0eSBzZXR0aW5nIG9mIHRoZSBjdXJyZW50IGl0ZW0gZm9yIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO2AsXG4vLy8gaXQgd2lsbCBub3QgYWZmZWN0IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIHZpc2liaWxpdHkgd2hlbiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYHRydWVgLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhcnJvd3MgYXJlIGFkZGVkIHRvIHRoZSBuZXh0IGFuZCBwcmV2aW91cyBsaW5rcyBvZiBwYWdpbmF0aW9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHBhZ2luYXRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgYDx1bD5gLlxuQG1peGluIHBhZ2luYXRpb24tY29udGFpbmVyIChcbiAgJG1hcmdpbi1ib3R0b206ICRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b20sXG4gICRmb250LXNpemU6ICRwYWdpbmF0aW9uLWZvbnQtc2l6ZSxcbiAgJHNwYWNpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZyxcbiAgJHJhZGl1czogJHBhZ2luYXRpb24tcmFkaXVzLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3IsXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgLy8gTGlzdCBpdGVtXG4gIGxpIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG5cbiAgICBAaWYgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgJjpsYXN0LWNoaWxkLFxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cblxuICAgICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW0ge1xuICAgICAgICAmLmN1cnJlbnQge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSBsaW5rc1xuICBhLFxuICBidXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBjdXJyZW50IHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50LFxuICAkY29sb3ItY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50XG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWN1cnJlbnQ7XG4gIGNvbG9yOiAkY29sb3ItY3VycmVudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb2xvcjogJGNvbG9yO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gZWxsaXBzaXMgZm9yIHVzZSBpbiBhIHBhZ2luYXRpb24gbGlzdC5cbkBtaXhpbiBwYWdpbmF0aW9uLWVsbGlwc2lzIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvclxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb250ZW50OiAnXFwyMDI2JztcbiAgY29sb3I6ICRjb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcGFnaW5hdGlvbiB7XG4gIC5wYWdpbmF0aW9uIHtcbiAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWNvbnRhaW5lcjtcblxuICAgIC5jdXJyZW50IHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1jdXJyZW50O1xuICAgIH1cblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLmVsbGlwc2lzOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWVsbGlwc2lzO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFnaW5hdGlvbi1hcnJvd3Mge1xuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAnXFwwMGFiJztcbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuICAgIC5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYmInO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIFtUT0RPXSBDaGVjayBob3cgcGx1Z2luIGNvbmZpcm1zIGRpc2FibGVkIG9yIHZlcnRpY2FsIHN0YXR1c1xuLy8gW1RPRE9dIENoZWNrIGlmIHRyYW5zaXRpb246IGFsbDsgaXMgbmVjZXNzYXJ5XG5cbi8vLy9cbi8vLyBAZ3JvdXAgc2xpZGVyXG4vLy8vXG5cbi8vLyBEZWZhdWx0IHNsaWRlciB3aWR0aCBvZiBhIHZlcnRpY2FsIHNsaWRlci4gKERvZXNuJ3QgYXBwbHkgdG8gdGhlIG5hdGl2ZSBzbGlkZXIuKVxuLy8vIEB0eXBlIE51bWJlclxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wZXJ0aWVzIHRvIGFwcGx5IHRvIHRoZSBzbGlkZXIgaGFuZGxlIGFuZCBmaWxsLiAoRG9lc24ndCBhcHBseSB0byB0aGUgbmF0aXZlIHNsaWRlci4pXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciBzbGlkZXJzLlxuQG1peGluIHNsaWRlci1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogJHNsaWRlci1oZWlnaHQ7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuMjVyZW07XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1iYWNrZ3JvdW5kO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgYWN0aXZlIGZpbGwgZm9yIHNsaWRlcnMuXG5AbWl4aW4gc2xpZGVyLWZpbGwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodDtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWZpbGwtYmFja2dyb3VuZDtcbiAgdHJhbnNpdGlvbjogJHNsaWRlci10cmFuc2l0aW9uO1xuXG4gICYuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0aGUgc2xpZGVyIGhhbmRsZXMuXG5AbWl4aW4gc2xpZGVyLWhhbmRsZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gIGhlaWdodDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuXG4gIGJvcmRlci1yYWRpdXM6ICRzbGlkZXItcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHNjYWxlLWNvbG9yKCRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuICB9XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgfVxufVxuXG5AbWl4aW4gc2xpZGVyLWRpc2FibGVkIHtcbiAgb3BhY2l0eTogJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5AbWl4aW4gc2xpZGVyLXZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci13aWR0aC12ZXJ0aWNhbDtcbiAgaGVpZ2h0OiAxMi41cmVtO1xuICBtYXJnaW46IDAgMS4yNXJlbTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLCAtMSk7XG5cbiAgLnNsaWRlci1maWxsIHtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6ICRzbGlkZXItd2lkdGgtdmVydGljYWw7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuICAgIGhlaWdodDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXNsaWRlciB7XG4gIC8vIENvbnRhaW5lclxuICAuc2xpZGVyIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItY29udGFpbmVyO1xuICB9XG5cbiAgLy8gRmlsbCBhcmVhXG4gIC5zbGlkZXItZmlsbCB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWZpbGw7XG4gIH1cblxuICAvLyBEcmFnZ2FibGUgaGFuZGxlXG4gIC5zbGlkZXItaGFuZGxlIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItaGFuZGxlO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgLnNsaWRlci5kaXNhYmxlZCxcbiAgLnNsaWRlcltkaXNhYmxlZF0ge1xuICAgIEBpbmNsdWRlIHNsaWRlci1kaXNhYmxlZDtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIHNsaWRlclxuICAuc2xpZGVyLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBSVEwgc3VwcG9ydFxuICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgIC5zbGlkZXI6bm90KC52ZXJ0aWNhbCkge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSwgMSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tc3RpY2t5IHtcbiAgLnN0aWNreS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5zdGlja3kge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAuc3RpY2t5LmlzLXN0dWNrIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogNTtcblxuICAgICYuaXMtYXQtdG9wIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0YWJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBvZiB0aGUgdGFiIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgZm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRhYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhIHRhYiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSBudW1iZXIgb2YgYGV4cGFuZC1uYCBjbGFzc2VzIHRvIGluY2x1ZGUgaW4gdGhlIENTUy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItZXhwYW5kLW1heDogNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gdGFicy1jb250YWluZXIgKFxuICAkbWFyZ2luOiAkdGFiLW1hcmdpbixcbiAgJGJhY2tncm91bmQ6ICR0YWItYmFja2dyb3VuZCxcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46ICRtYXJnaW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250YWluZXIgdG8gaGF2ZSB2ZXJ0aWNhbCB0YWJzLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRhaW5lcigpYC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbCB7XG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGxpbmtzIHdpdGhpbiBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIGA8bGk+YCBlbGVtZW50cyBpbnNpZGUgYSB0YWIgY29udGFpbmVyLlxuQG1peGluIHRhYnMtdGl0bGUgKFxuICAkcGFkZGluZzogJHRhYi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICR0YWItaXRlbS1mb250LXNpemUsXG4gICRjb2xvcjogJHRhYi1jb2xvcixcbiAgJGNvbG9yLWFjdGl2ZTogJHRhYi1hY3RpdmUtY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGJhY2tncm91bmQtYWN0aXZlOiAkdGFiLWJhY2tncm91bmQtYWN0aXZlXG4pIHtcbiAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICAgIGNvbG9yOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJlthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRjb2xvci1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHdyYXBwZXIgdGhhdCBzdXJyb3VuZHMgYSB0YWIgZ3JvdXAncyBjb250ZW50IHBhbmVzLlxuQG1peGluIHRhYnMtY29udGVudCAoXG4gICRiYWNrZ3JvdW5kOiAkdGFiLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkdGFiLWNvbnRlbnQtY29sb3IsXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRlbnQgY29udGFpbmVyIHRvIGhhdmUgYSB2ZXJ0aWNhbCBzdHlsZSwgYnkgc2hpZnRpbmcgdGhlIGJvcmRlciBhcm91bmQuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGVudCgpYC5cbkBtaXhpbiB0YWJzLWNvbnRlbnQtdmVydGljYWwgKFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBpbmRpdmlkdWFsIHRhYiBjb250ZW50IHBhbmVsIHdpdGhpbiB0aGUgdGFiIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIHRhYnMtcGFuZWwgKFxuICAkcGFkZGluZzogJHRhYi1jb250ZW50LXBhZGRpbmdcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAmW2FyaWEtaGlkZGVuPVwiZmFsc2VcIl0ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYnMge1xuICAudGFicyB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXI7XG4gIH1cblxuICAvLyBWZXJ0aWNhbFxuICAudGFicy52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBTaW1wbGVcbiAgLnRhYnMuc2ltcGxlIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJpbWFyeSBjb2xvclxuICAudGFicy5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRwcmltYXJ5LWNvbG9yKTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkcHJpbWFyeS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRhYnMtdGl0bGUge1xuICAgIEBpbmNsdWRlIHRhYnMtdGl0bGU7XG4gIH1cblxuICAudGFicy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQ7XG4gIH1cblxuICAudGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQtdmVydGljYWw7XG4gIH1cblxuICAudGFicy1wYW5lbCB7XG4gICAgQGluY2x1ZGUgdGFicy1wYW5lbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbHVtaW5hbmNlIG9mLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbkBmdW5jdGlvbiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICAkcmdiYTogcmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKTtcbiAgJHJnYmEyOiAoKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMge1xuICAgICRyZ2I6IG50aCgkcmdiYSwgJGkpO1xuICAgICRyZ2I6ICRyZ2IgLyAyNTU7XG5cbiAgICAkcmdiOiBpZigkcmdiIDwgMC4wMzkyOCwgJHJnYiAvIDEyLjkyLCBwb3coKCRyZ2IgKyAwLjA1NSkgLyAxLjA1NSwgMi40KSk7XG5cbiAgICAkcmdiYTI6IGFwcGVuZCgkcmdiYTIsICRyZ2IpO1xuICB9XG5cbiAgQHJldHVybiAwLjIxMjYgKiBudGgoJHJnYmEyLCAxKSArIDAuNzE1MiAqIG50aCgkcmdiYTIsIDIpICsgMC4wNzIyICogbnRoKCRyZ2JhMiwgMyk7XG59XG5cbi8vLyBDaGVja3MgdGhlIGNvbnRyYXN0IHJhdGlvIG9mIHR3byBjb2xvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IxIC0gRmlyc3QgY29sb3IgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IyIC0gU2Vjb25kIGNvbG9yIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgY29udHJhc3QgcmF0aW8gb2YgdGhlIGNvbXBhcmVkIGNvbG9ycy5cbkBmdW5jdGlvbiBjb2xvci1jb250cmFzdCgkY29sb3IxLCAkY29sb3IyKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNjb250cmFzdC1yYXRpb2RlZlxuICAkbHVtaW5hbmNlMTogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjEpICsgMC4wNTtcbiAgJGx1bWluYW5jZTI6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IyKSArIDAuMDU7XG4gICRyYXRpbzogJGx1bWluYW5jZTEgLyAkbHVtaW5hbmNlMjtcblxuICBAaWYgJGx1bWluYW5jZTIgPiAkbHVtaW5hbmNlMSB7XG4gICAgJHJhdGlvOiAxIC8gJHJhdGlvO1xuICB9XG5cbiAgJHJhdGlvOiByb3VuZCgkcmF0aW8gKiAxMCkgLyAxMDtcblxuICBAcmV0dXJuICRyYXRpbztcbn1cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkYmFzZWAsIGFuZCByZXR1cm5zIHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItcGljay1jb250cmFzdCgkYmFzZSwgJGNvbG9yczogKCR3aGl0ZSwgJGJsYWNrKSwgJHRvbGVyYW5jZTogMCkge1xuICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgMSkpO1xuICAkYmVzdDogbnRoKCRjb2xvcnMsIDEpO1xuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggbGVuZ3RoKCRjb2xvcnMpIHtcbiAgICAkY3VycmVudC1jb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgIEBpZiAoJGN1cnJlbnQtY29udHJhc3QgLSAkY29udHJhc3QgPiAkdG9sZXJhbmNlKSB7XG4gICAgICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICAgICRiZXN0OiBudGgoJGNvbG9ycywgJGkpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGNvbnRyYXN0IDwgMykge1xuICAgIEB3YXJuIFwiQ29udHJhc3QgcmF0aW8gb2YgI3skYmVzdH0gb24gI3skYmFzZX0gaXMgcHJldHR5IGJhZCwganVzdCAjeyRjb250cmFzdH1cIjtcbiAgfVxuXG4gIEByZXR1cm4gJGJlc3Q7XG59XG5cbi8vLyBTY2FsZXMgYSBjb2xvciB0byBiZSBkYXJrZXIgaWYgaXQncyBsaWdodCwgb3IgbGlnaHRlciBpZiBpdCdzIGRhcmsuIFVzZSB0aGlzIGZ1bmN0aW9uIHRvIHRpbnQgYSBjb2xvciBhcHByb3ByaWF0ZSB0byBpdHMgbGlnaHRuZXNzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gc2NhbGUuXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkc2NhbGUgWzUlXSAtIEFtb3VudCB0byBzY2FsZSB1cCBvciBkb3duLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHRocmVzaG9sZCBbNDAlXSAtIFRocmVzaG9sZCBvZiBsaWdodG5lc3MgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gQSBzY2FsZWQgY29sb3IuXG5AZnVuY3Rpb24gc21hcnQtc2NhbGUoJGNvbG9yLCAkc2NhbGU6IDUlLCAkdGhyZXNob2xkOiA0MCUpIHtcbiAgQGlmIGxpZ2h0bmVzcygkY29sb3IpID4gJHRocmVzaG9sZCB7XG4gICAgJHNjYWxlOiAtJHNjYWxlO1xuICB9XG4gIEByZXR1cm4gc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkc2NhbGUpO1xufVxuXG4vLy8gR2V0IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcGFyYW0ge2tleX0gY29sb3Iga2V5IGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG5AZnVuY3Rpb24gZ2V0LWNvbG9yKCRrZXkpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnZ2l2ZW4gJGtleSBpcyBub3QgYXZhaWxhYmxlIGluICRmb3VuZGF0aW9uLXBhbGV0dGUnO1xuICB9XG59XG5cbi8vLyBUcmFuc2ZlcnMgdGhlIGNvbG9ycyBpbiB0aGUgYCRmb3VuZGF0aW9uLXBhbGV0dGVgbWFwIGludG8gdmFyaWFibGVzLCBzdWNoIGFzIGAkcHJpbWFyeS1jb2xvcmAgYW5kIGAkc2Vjb25kYXJ5LWNvbG9yYC4gQ2FsbCB0aGlzIG1peGluIGJlbG93IHRoZSBHbG9iYWwgc2VjdGlvbiBvZiB5b3VyIHNldHRpbmdzIGZpbGUgdG8gcHJvcGVybHkgbWlncmF0ZSB5b3VyIGNvZGViYXNlLlxuQG1peGluIGFkZC1mb3VuZGF0aW9uLWNvbG9ycygpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgICAkcHJpbWFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2Vzcykge1xuICAgICRzdWNjZXNzLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpIHtcbiAgICAkd2FybmluZy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkge1xuICAgICRhbGVydC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkgIWdsb2JhbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGl0bGUtYmFyXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgV2VpZ2h0XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIG1lbnUgaWNvbnMgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgbWVudSBpY29ucyBpbnNpZGUgYSB0aXRsZSBiYXIgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gdGhlIG1lbnUgaWNvbiBhbmQgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10aXRsZS1iYXIge1xuICAudGl0bGUtYmFyIHtcbiAgICBwYWRkaW5nOiAkdGl0bGViYXItcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkdGl0bGViYXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRpdGxlYmFyLWNvbG9yO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgfVxuXG4gICAgLm1lbnUtaWNvbiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkdGl0bGViYXItaWNvbi1zcGFjaW5nO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICR0aXRsZWJhci1pY29uLXNwYWNpbmc7XG4gICAgfVxuICB9XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgLnRpdGxlLWJhci1sZWZ0LFxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG5cbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRpdGxlLWJhci1sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLnRpdGxlLWJhci10aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC13ZWlnaHQ6ICR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gKDEgLyAxNik7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IHdpdGhpbiBhIGNlcnRhaW4gYnJlYWtwb2ludC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yLW9ubHkoJHNpemUpIHtcbiAgJGxvd2VyLWJvdW5kLXNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICR1cHBlci1ib3VuZC1zaXplOiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG5cbiAgLy8gbW9yZSBvZnRlbiB0aGFuIG5vdCB0aGlzIHdpbGwgYmUgY29ycmVjdCwganVzdCBvbmUgdGltZSByb3VuZCB0aGUgbG9vcCBpdCB3b24ndCBzbyBzZXQgaW4gc2NvcGUgaGVyZVxuICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSkgLSAoMSAvIDE2KTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsb2F0XG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXMge1xuICAuZmxvYXQtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAuZmxvYXQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG4gIC5mbG9hdC1jZW50ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIC5jbGVhcmZpeCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cbn1cbiIsIkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcyB7XG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IHVzaW5nIGp1c3RpZnktY29udGVudFxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gbWFwLXJlbW92ZSgkLXpmLWZsZXgtanVzdGlmeSwgbGVmdCkge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5hbGlnbi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG4gICAgfVxuXG4gICAgLmFsaWduLXNlbGYtI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2VudHJhbCBhbGlnbm1lbnQgb2YgY29udGVudFxuICAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogbWlkZGxlKTtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA2IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tb3JkZXItI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LW9yZGVyKCRpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBBcHBsaWVzIGJhc2ljIHRyYW5zaXRpb24gc2V0dGluZ3MgdG8gYW4gZWxlbWVudC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiB0cmFuc2l0aW9uLWJhc2ljcyhcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICBAaW5jbHVkZSAtbW90aW9uLXVpLWRlZmF1bHRzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgc2V0dXAgY2xhc3MgZm9yIGEgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgLSBTdGF0ZSB0byBzZXR1cCBmb3IgdHJhbnNpdGlvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLXN0YXJ0KCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gV3JhcHMgdGhlIGNvbnRlbnQgaW4gdGhlIGFjdGl2ZSBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIGFjdGl2YXRlIGEgdHJhbnNpdGlvbiBvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLWVuZCgkZGlyKSB7XG4gICRzZWxlY3RvcjogLW11aS1idWlsZC1zZWxlY3RvcihtYXAtZ2V0KCRtb3Rpb24tdWktc3RhdGVzLCAkZGlyKSwgdHJ1ZSk7XG5cbiAgQGF0LXJvb3Qge1xuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWdnZXIgYW5pbWF0aW9uLCB3aGljaCBjYW4gYmUgdXNlZCB3aXRoIEFuZ3VsYXIncyBgbmctcmVwZWF0YC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXktYW1vdW50IC0gQW1vdW50IG9mIHRpbWUgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgdG8gYWRkIGJldHdlZW4gZWFjaCBpdGVtJ3MgYW5pbWF0aW9uLlxuQG1peGluIHN0YWdnZXIoJGRlbGF5LWFtb3VudCkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXktYW1vdW50O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwOyAvLyBQcmV2ZW50IGFjY2lkZW50YWwgQ1NTIGluaGVyaXRhbmNlXG59XG4iLCIvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBJbXBvcnRhbnRSdWxlLCBTcGFjZUFmdGVyQ29tbWEsIFNpbmdsZUxpbmVQZXJQcm9wZXJ0eVxuXG5AbWl4aW4gLW1vdGlvbi11aS1kZWZhdWx0cyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG1vdGlvbi11aS1zcGVlZHMsIGRlZmF1bHQpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLWVhc2luZ3MsIGRlZmF1bHQpO1xufVxuXG4vLyBUcmFuc2l0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktdHJhbnNpdGlvbnMge1xuICAvLyBTbGlkZVxuICAuc2xpZGUtaW4tZG93biAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIGRvd24pOyB9XG4gIC5zbGlkZS1pbi1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgcmlnaHQpOyB9XG4gIC5zbGlkZS1pbi11cCAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgdXApOyB9XG4gIC5zbGlkZS1pbi1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgbGVmdCk7IH1cbiAgLnNsaWRlLW91dC1kb3duICAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCBkb3duKTsgfVxuICAuc2xpZGUtb3V0LXJpZ2h0ICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHJpZ2h0KTsgfVxuICAuc2xpZGUtb3V0LXVwICAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHVwKTsgfVxuICAuc2xpZGUtb3V0LWxlZnQgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGxlZnQpOyB9XG5cbiAgLy8gRmFkZVxuICAuZmFkZS1pbiAgeyBAaW5jbHVkZSBtdWktZmFkZShpbiwgIDAsIDEpOyB9XG4gIC5mYWRlLW91dCB7IEBpbmNsdWRlIG11aS1mYWRlKG91dCwgMSwgMCk7IH1cblxuICAvLyBIaW5nZVxuICAuaGluZ2UtaW4tZnJvbS10b3AgICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHRvcCk7IH1cbiAgLmhpbmdlLWluLWZyb20tcmlnaHQgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCk7IH1cbiAgLmhpbmdlLWluLWZyb20tYm90dG9tICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBib3R0b20pOyB9XG4gIC5oaW5nZS1pbi1mcm9tLWxlZnQgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgbGVmdCk7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXggIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXkgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgcmlnaHQsIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXRvcCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCB0b3ApOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1ib3R0b20gIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgYm90dG9tKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIGxlZnQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteCB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCwgICBjZW50ZXIpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteSB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHJpZ2h0LCBjZW50ZXIpOyB9XG5cbiAgLy8gU2NhbGVcbiAgLnNjYWxlLWluLXVwICAgIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAwLjUsIDEpOyB9XG4gIC5zY2FsZS1pbi1kb3duICB7IEBpbmNsdWRlIG11aS16b29tKGluLCAgMS41LCAxKTsgfVxuICAuc2NhbGUtb3V0LXVwICAgeyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDEuNSk7IH1cbiAgLnNjYWxlLW91dC1kb3duIHsgQGluY2x1ZGUgbXVpLXpvb20ob3V0LCAxLCAwLjUpOyB9XG5cbiAgLy8gU3BpblxuICAuc3Bpbi1pbiAgICAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGN3KTsgfVxuICAuc3Bpbi1vdXQgICAgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGN3KTsgfVxuICAuc3Bpbi1pbi1jY3cgIHsgQGluY2x1ZGUgbXVpLXNwaW4oaW4sICBjY3cpOyB9XG4gIC5zcGluLW91dC1jY3cgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGNjdyk7IH1cblxuICAvLyBUcmFuc2l0aW9uIE1vZGlmaWVyc1xuICAvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1zcGVlZHMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IHRyYW5zaXRpb24tZGVsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFuaW1hdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLWFuaW1hdGlvbnMge1xuICAuc2hha2UgICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNoYWtlKTsgfVxuICAuc3Bpbi1jdyAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNwaW4pOyB9XG4gIC5zcGluLWNjdyB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3BpbihjY3cpKTsgfVxuICAud2lnZ2xlICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHdpZ2dsZSk7IH1cblxuICAuc2hha2UsXG4gIC5zcGluLWN3LFxuICAuc3Bpbi1jY3csXG4gIC53aWdnbGUge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIH1cblxuICAvLyBBbmltYXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4gIC5pbmZpbml0ZSB7IGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1lYXNpbmdzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IGFuaW1hdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBGb3JtYXQgZm9yIENTUyBjbGFzc2VzIGNyZWF0ZWQgd2l0aCBNb3Rpb24gVUkuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQHByb3Age0Jvb2xlYW59IGFwcGVuZCBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNlbGVjdG9ycyBhcmUgY2hhaW5lZCB0byB0aGUgc2VsZWN0b3IgKGAuY2xhc3MuZW50ZXJgKSwgb3IgYXBwZW5kZWQgYXMgYSBuZXcgY2xhc3MgKGAuY2xhc3MtZW50ZXJgKS5cbi8vLyBAcHJvcCB7U3RyaW5nfSBwcmVmaXggWydtdWktJ10gLSBQcmVmaXggdG8gYWRkIGJlZm9yZSB0aGUgc3RhdGUgb2YgYSBjbGFzcy4gRW50ZXIgYW4gZW1wdHkgc3RyaW5nIHRvIHVzZSBubyBwcmVmaXguXG4vLy8gQHByb3Age1N0cmluZ30gcHJlZml4IFsnLWFjdGl2ZSddIC0gU3VmZml4IHRvIGFkZCB0byB0aGUgYWN0aXZlIHN0YXRlIGNsYXNzLlxuJG1vdGlvbi11aS1jbGFzc2VzOiAoXG4gIGNoYWluOiB0cnVlLFxuICBwcmVmaXg6ICdtdWktJyxcbiAgYWN0aXZlOiAnLWFjdGl2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGUgbmFtZXMgdG8gcmVmZXJlbmNlIHdoZW4gd3JpdGluZyBtb3Rpb24gY2xhc3Nlcy4gVG8gdXNlIG11bHRpcGxlIGNsYXNzIG5hbWVzIGZvciBvbmUgc3RhdGUsIGVudGVyIGEgbGlzdCBvZiBzdHJpbmdzIGluc3RlYWQgb2Ygb25lIHN0cmluZy5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktc3RhdGVzOiAoXG4gIGluOiAnZW50ZXInLFxuICBvdXQ6ICdsZWF2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzcGVlZCB0aGF0IHRyYW5zaXRpb25zIGFuZCBhbmltYXRpb25zIHBsYXkgYXQsIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgc3BlZWQuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLXNwZWVkczogKFxuICBkZWZhdWx0OiA1MDBtcyxcbiAgc2xvdzogNzUwbXMsXG4gIGZhc3Q6IDI1MG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGVsYXkgdG8gYWRkIGJlZm9yZSBtb3Rpb24sIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgZGVsYXkuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWRlbGF5czogKFxuICBkZWZhdWx0OiAwLFxuICBzaG9ydDogMzAwbXMsXG4gIGxvbmc6IDcwMG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZWFzaW5nIGZvciB0cmFuc2l0aW9ucyBhbmQgYW5pbWF0aW9ucywgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBlYXNpbmcuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWVhc2luZ3M6IChcbiAgZGVmYXVsdDogbGluZWFyLFxuICBsaW5lYXI6IGxpbmVhcixcbiAgZWFzZTogZWFzZSxcbiAgZWFzZS1pbjogZWFzZS1pbixcbiAgZWFzZS1vdXQ6IGVhc2Utb3V0LFxuICBlYXNlLWluLW91dDogZWFzZS1pbi1vdXQsXG4gIGJvdW5jZS1pbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpLFxuICBib3VuY2Utb3V0OiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpLFxuICBib3VuY2UtaW4tb3V0OiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSksXG4pICFkZWZhdWx0O1xuXG4vLy8gTWlzY2VsbGFuZW91cyBzZXR0aW5ncyByZWxhdGVkIHRvIE1vdGlvbiBVSS5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW2ZhbHNlXSAtIERlZmluZXMgaWYgc2xpZGUgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBoaW5nZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNjYWxlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgc3BpbiBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuJG1vdGlvbi11aS1zZXR0aW5nczogKFxuICBzbGlkZS1hbmQtZmFkZTogZmFsc2UsXG4gIGhpbmdlLWFuZC1mYWRlOiB0cnVlLFxuICBzY2FsZS1hbmQtZmFkZTogdHJ1ZSxcbiAgc3Bpbi1hbmQtZmFkZTogdHJ1ZSxcbiAgYWN0aXZhdGUtcXVldWUtY2xhc3M6ICdpcy1hbmltYXRpbmcnLFxuKSAhZGVmYXVsdDtcbiIsIi8vIEludGVybmFsIGNvdW50ZXIgZm9yIGNyZWF0aW5nIHVuaXF1ZSBrZXlmcmFtZSBuYW1lc1xuJC1tdWktY3VzdG9tOiAwO1xuXG4vLy8gQ3JlYXRlcyBhIGtleWZyYW1lIGZyb20gb25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucy4gVXNlIHRoaXMgZnVuY3Rpb24gaW5zdGVhZCBvZiBgbXVpLWFuaW1hdGlvbmAgaWYgeW91IHdhbnQgdG8gY3JlYXRlIGEga2V5ZnJhbWUgYW5pbWF0aW9uICp3aXRob3V0KiBhdXRvbWF0aWNhbGx5IGFzc2lnbmluZyBpdCB0byB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBrZXlmcmFtZS5cbi8vLyBAcGFyYW0ge0Z1bmN0aW9ufSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWtleWZyYW1lcygkbmFtZSwgJGVmZmVjdHMuLi4pIHtcbiAgJG9iajogLW11aS1wcm9jZXNzLWFyZ3MoJGVmZmVjdHMuLi4pO1xuICAkb2JqOiBtYXAtcmVtb3ZlKCRvYmosIG5hbWUpO1xuXG4gIEBrZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgIC8vIE5vdyBpdGVyYXRlIHRocm91Z2ggZWFjaCBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgQGVhY2ggJHBjdCwgJHByb3BzIGluICRvYmoge1xuICAgICAgI3stbXVpLWtleWZyYW1lLXBjdCgkcGN0KX0ge1xuICAgICAgICAvLyBMYXN0bHksIGl0ZXJhdGUgdGhyb3VnaCBlYWNoIENTUyBwcm9wZXJ0eSB3aXRoaW4gYSBwZXJjZW50YWdlIGFuZCBwcmludCBpdCBvdXRcbiAgICAgICAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkcHJvcHMge1xuICAgICAgICAgICN7JHByb3B9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzdHJpbmcgZm9yIGEgQ1NTIGtleWZyYW1lLCBieSBjb252ZXJ0aW5nIGEgbGlzdCBvZiBudW1iZXJzIHRvIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgcGVyY2VudGFnZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGlucHV0IC0gTGlzdCBvZiBudW1iZXJzIHRvIHVzZS5cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IEEgc2V0IG9mIGNvbW1hLXNlcGFyYXRlZCBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLXBjdCgkaW5wdXQpIHtcbiAgJG91dHB1dDogKCk7XG5cbiAgQGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbnVtYmVyJyB7XG4gICAgJG91dHB1dDogKCRpbnB1dCAqIDElKTtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCRpbnB1dCkgPT0gJ2xpc3QnIHtcbiAgICBAZWFjaCAkaSBpbiAkaW5wdXQge1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICgkaSAqIDElKSwgY29tbWEpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG91dHB1dDtcbn1cblxuLy8vIFByaW50cyB0aGUgQ1NTIHByb3BlcnRpZXMgZnJvbSBhIHNwZWNpZmljIGtleSBpbiBhIGtleWZyYW1lcyBtYXAuIFVzZWQgdG8gYm9ycm93IENTUyBmcm9tIGtleWZyYW1lIGZ1bmN0aW9ucyBmb3IgdXNlIGluIHRyYW5zaXRpb25zLlxuLy8vIEBwYXJhbSB7TWFwfSAka2YgLSBLZXlmcmFtZSBtYXAgdG8gZXh0cmFjdCBmcm9tLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAka2V5IC0gS2V5IGluIHRoZSBtYXAgdG8gcHJpbnQgdGhlIENTUyBvZi5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiAtbXVpLWtleWZyYW1lLWdldCgka2YsICRrZXkpIHtcbiAgJG1hcDogbWFwLWdldCgka2YsICRrZXkpO1xuXG4gIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJG1hcCBvciAoKSB7XG4gICAgLy8gU29tZSBrZXlmcmFtZSBtYXBzIHN0b3JlIHRyYW5zZm9ybXMgYXMgcXVvdGVkIHN0cmluZ3NcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdzdHJpbmcnIHtcbiAgICAgICR2YWx1ZTogdW5xdW90ZSgkdmFsdWUpO1xuICAgIH1cbiAgICAjeyRwcm9wfTogJHZhbHVlO1xuICB9XG59XG5cbi8vLyBSZWZvcm1hdHMgYSBtYXAgY29udGFpbmluZyBrZXlzIHdpdGggYSBsaXN0IG9mIHZhbHVlcywgc28gdGhhdCBlYWNoIGtleSBpcyBhIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBzcGxpdCB1cC5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgcmVmb3JtYXR0ZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtc3BsaXQoJG1hcCkge1xuICAkbmV3LW1hcDogKCk7XG5cbiAgLy8gU3BsaXQga2V5cyB3aXRoIG11bHRpcGxlIHZhbHVlcyBpbnRvIGluZGl2aWR1YWwga2V5c1xuICBAZWFjaCAka2V5LCAkaXRlbSBpbiAkbWFwIHtcbiAgICAka2V5LXR5cGU6IHR5cGUtb2YoJGtleSk7XG5cbiAgICBAaWYgJGtleS10eXBlID09ICdudW1iZXInIHtcbiAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgka2V5OiAkaXRlbSkpO1xuICAgIH0gQGVsc2UgaWYgJGtleS10eXBlID09ICdsaXN0JyB7XG4gICAgICBAZWFjaCAkayBpbiAka2V5IHtcbiAgICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrOiAkaXRlbSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyBhIHNlcmllcyBvZiBrZXlmcmFtZSBvYmplY3RzIGludG8gb25lLlxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwcy4uLiAtIEEgc2VyaWVzIG9mIG1hcHMgdG8gbWVyZ2UsIGFzIGluZGl2aWR1YWwgcGFyYW1ldGVycy5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQga2V5ZnJhbWUgb2JqZWN0LlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtY29tYmluZSgkbWFwcy4uLikge1xuICAkbmV3LW1hcDogKCk7XG5cbiAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2ggbWFwIHBhc3NlZCBpblxuICBAZWFjaCAkbWFwIGluICRtYXBzIHtcbiAgICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkbWFwOiBjYWxsKCRtYXApO1xuICAgIH1cblxuICAgICRtYXA6IC1tdWkta2V5ZnJhbWUtc3BsaXQoJG1hcCk7XG5cbiAgICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBrZXlmcmFtZSBpbiB0aGUgbWFwXG4gICAgLy8gJGtleSBpcyB0aGUga2V5ZnJhbWUgcGVyY2VudGFnZVxuICAgIC8vICR2YWx1ZSBpcyBhIG1hcCBvZiBDU1MgcHJvcGVydGllc1xuICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAgICRuZXctdmFsdWU6ICgpO1xuXG4gICAgICBAaWYgbWFwLWhhcy1rZXkoJG5ldy1tYXAsICRrZXkpIHtcbiAgICAgICAgLy8gSWYgdGhlIG1hcCBhbHJlYWR5IGhhcyB0aGUga2V5ZnJhbWUgJSwgYXBwZW5kIHRoZSBuZXcgcHJvcGVydHlcbiAgICAgICAgJG5ldy12YWx1ZTogLW11aS1tZXJnZS1wcm9wZXJ0aWVzKG1hcC1nZXQoJG5ldy1tYXAsICRrZXkpLCAkdmFsdWUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIE90aGVyd2lzZSwgY3JlYXRlIGEgbmV3IG1hcCB3aXRoIHRoZSBuZXcgcHJvcGVydHlcbiAgICAgICAgJG5ldy12YWx1ZTogJHZhbHVlO1xuICAgICAgfVxuXG4gICAgICAvLyBGaW5hbGx5LCBtZXJnZSB0aGUgbW9kaWZpZWQga2V5ZnJhbWUgdmFsdWUgaW50byB0aGUgb3V0cHV0IG1hcFxuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRuZXctdmFsdWUpKTtcbiAgICB9XG4gIH1cblxuICAvLyBNYWtlIGEgbmFtZSBmb3IgdGhlIGtleWZyYW1lc1xuICAkLW11aS1jdXN0b206ICQtbXVpLWN1c3RvbSArIDEgIWdsb2JhbDtcbiAgJG1hcC1uYW1lOiAobmFtZTogJ2N1c3RvbS0jeyQtbXVpLWN1c3RvbX0nKTtcbiAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgJG1hcC1uYW1lKTtcblxuICBAcmV0dXJuICRuZXctbWFwO1xufVxuXG4vLy8gQ29tYmluZXMgdHdvIG1hcHMgb2YgQ1NTIHByb3BlcnRpZXMgaW50byBvbmUgbWFwLiBJZiBib3RoIG1hcHMgaGF2ZSBhIHRyYW5zZm9ybSBwcm9wZXJ0eSwgdGhlIHZhbHVlcyBmcm9tIGVhY2ggd2lsbCBiZSBjb21iaW5lZCBpbnRvIG9uZSBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge01hcH0gJG9uZSAtIEZpcnN0IG1hcCB0byBtZXJnZS5cbi8vLyBAcGFyYW0ge01hcH0gJHR3byAtIFNlY29uZCBtYXAgdG8gbWVyZ2UuXG4vLy8gQHJldHVybiB7TWFwfSBBIGNvbWJpbmVkIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLW1lcmdlLXByb3BlcnRpZXMoJG9uZSwgJHR3bykge1xuICBAaWYgbWFwLWhhcy1rZXkoJG9uZSwgdHJhbnNmb3JtKSBhbmQgbWFwLWhhcy1rZXkoJHR3bywgdHJhbnNmb3JtKSB7XG4gICAgJHRyYW5zZm9ybTogam9pbihtYXAtZ2V0KCRvbmUsIHRyYW5zZm9ybSksIG1hcC1nZXQoJHR3bywgdHJhbnNmb3JtKSk7XG4gICAgJG9uZTogbWFwLW1lcmdlKCRvbmUsICh0cmFuc2Zvcm06ICR0cmFuc2Zvcm0pKTtcbiAgICAkdHdvOiBtYXAtcmVtb3ZlKCR0d28sIHRyYW5zZm9ybSk7XG4gIH1cblxuICBAcmV0dXJuIG1hcC1tZXJnZSgkb25lLCAkdHdvKTtcbn1cbiIsIi8vLyBDcmVhdGVzIGEgc2xpZGluZyB0cmFuc2l0aW9uIGJ5IHRyYW5zbGF0aW5nIHRoZSBlbGVtZW50IGhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbbGVmdF0gLSBEaXJlY3Rpb24gdG8gc2xpZGUgdG8uIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbi8vLyBAcGFyYW0ge0xlbmd0aH0gJGFtb3VudCBbMTAwJV0gLSBMZW5ndGggb2YgdGhlIHNsaWRlIGFzIGEgcGVyY2VudGFnZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zbGlkZSAoXG4gICRzdGF0ZTogaW4sXG4gICRkaXJlY3Rpb246IGxlZnQsXG4gICRhbW91bnQ6IDEwMCUsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNsaWRlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkc2xpZGU6IHNsaWRlKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgLy8gQ1NTIE91dHB1dFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNsaWRlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGZhZGUgdHJhbnNpdGlvbiBieSBhZGp1c3RpbmcgdGhlIG9wYWNpdHkgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFswXSAtIE9wYWNpdHkgdG8gc3RhcnQgYXQuIE11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiAwIGFuZCAxLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG8gWzFdIC0gT3BhY2l0eSB0byBlbmQgb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktZmFkZShcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IDAsXG4gICR0bzogMSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZmFkZTogZmFkZSgkZnJvbSwgJHRvKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMCk7XG5cbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGZhZGUsIDEwMCk7XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgaGluZ2UgZWZmZWN0IGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZyb20gW2xlZnRdIC0gRWRnZSBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgZnJvbS4gQ2FuIGJlIGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGF4aXMgW2VkZ2VdIC0gQXhpcyBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgb24uIENhbiBiZSBgZWRnZWAgb3IgYGNlbnRlcmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwZXJzcGVjdGl2ZSBbMjAwMHB4XSAtIFBlcmNlaXZlZCBkaXN0YW5jZSBiZXR3ZWVuIHRoZSB2aWV3ZXIgYW5kIHRoZSBlbGVtZW50LiBBIGhpZ2hlciBudW1iZXIgd2lsbCBtYWtlIHRoZSByb3RhdGlvbiBlZmZlY3QgbW9yZSBwcm9ub3VuY2VkLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHR1cm4tb3JpZ2luIFtmcm9tLWJhY2tdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC5cbkBmdW5jdGlvbiBoaW5nZSAoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBsZWZ0LFxuICAkYXhpczogZWRnZSxcbiAgJHBlcnNwZWN0aXZlOiAyMDAwcHgsXG4gICR0dXJuLW9yaWdpbjogZnJvbS1iYWNrXG4pIHtcbiAgLy8gUm90YXRpb24gZGlyZWN0aW9ucyB3aGVuIGhpbmdpbmcgZnJvbSBiYWNrIHZzLiBmcm9udFxuICAkcm90YXRpb24tYW1vdW50OiA5MGRlZztcbiAgJHJvdGF0aW9ucy1iYWNrOiAoXG4gICAgdG9wOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgcmlnaHQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICBib3R0b206IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCksXG4gICAgbGVmdDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50KSxcbiAgKTtcbiAgJHJvdGF0aW9ucy1mcm9tOiAoXG4gICAgdG9wOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIHJpZ2h0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIGJvdHRvbTogcm90YXRlWCgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIGxlZnQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgKTtcblxuICAvLyBSb3RhdGlvbiBvcmlnaW5cbiAgJHJvdGF0aW9uOiAnJztcbiAgQGlmICR0dXJuLW9yaWdpbiA9PSBmcm9tLWZyb250IHtcbiAgICAkcm90YXRpb246IG1hcC1nZXQoJHJvdGF0aW9ucy1mcm9tLCAkZnJvbSk7XG4gIH0gQGVsc2UgaWYgJHR1cm4tb3JpZ2luID09IGZyb20tYmFjayB7XG4gICAgJHJvdGF0aW9uOiBtYXAtZ2V0KCRyb3RhdGlvbnMtYmFjaywgJGZyb20pO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiAnJHR1cm4tb3JpZ2luIG11c3QgYmUgZWl0aGVyIFwiZnJvbS1iYWNrXCIgb3IgXCJmcm9tLWZyb250XCInO1xuICB9XG5cbiAgLy8gU3RhcnQgYW5kIGVuZCBzdGF0ZVxuICAkc3RhcnQ6ICcnO1xuICAkZW5kOiAnJztcbiAgQGlmICRzdGF0ZSA9PSBpbiB7XG4gICAgJHN0YXJ0OiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICRyb3RhdGlvbjtcbiAgICAkZW5kOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHJvdGF0ZSgwZGVnKTtcbiAgfSBAZWxzZSB7XG4gICAgJHN0YXJ0OiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHJvdGF0ZSgwZGVnKTtcbiAgICAkZW5kOiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpICRyb3RhdGlvbjtcbiAgfVxuXG4gIC8vIFR1cm4gYXhpc1xuICAkb3JpZ2luOiAnJztcbiAgQGlmICRheGlzID09IGVkZ2Uge1xuICAgICRvcmlnaW46ICRmcm9tO1xuICB9IEBlbHNlIHtcbiAgICAkb3JpZ2luOiBjZW50ZXI7XG4gIH1cblxuICAka2V5ZnJhbWVzOiAoXG4gICAgbmFtZTogJ2hpbmdlLSN7JHN0YXRlfS0jeyRmcm9tfS0jeyRheGlzfS0jeyR0dXJuLW9yaWdpbn0nLFxuICAgIDA6ICh0cmFuc2Zvcm06ICRzdGFydCwgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbiksXG4gICAgMTAwOiAodHJhbnNmb3JtOiAkZW5kKSxcbiAgKTtcblxuICBAcmV0dXJuICRrZXlmcmFtZXM7XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGhpbmdlIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZnJvbSBbbGVmdF0gLSBFZGdlIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYXhpcyBbZWRnZV0gLSBBeGlzIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBvbi4gQ2FuIGJlIGBlZGdlYCBvciBgY2VudGVyYC5cbi8vLyBAcGFyYW0ge0xlbmd0aH0gJHBlcnNwZWN0aXZlIFsyMDAwcHhdIC0gUGVyY2VpdmVkIGRpc3RhbmNlIGJldHdlZW4gdGhlIHZpZXdlciBhbmQgdGhlIGVsZW1lbnQuIEEgaGlnaGVyIG51bWJlciB3aWxsIG1ha2UgdGhlIHJvdGF0aW9uIGVmZmVjdCBtb3JlIHByb25vdW5jZWQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHVybi1vcmlnaW4gW2Zyb20tYmFja10gLSBTaWRlIG9mIHRoZSBlbGVtZW50IHRvIHN0YXJ0IHRoZSByb3RhdGlvbiBmcm9tLiBDYW4gYmUgYGZyb20tYmFja2Agb3IgYGZyb20tZnJvbnRgLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktaGluZ2UgKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbGVmdCxcbiAgJGF4aXM6IGVkZ2UsXG4gICRwZXJzcGVjdGl2ZTogMjAwMHB4LFxuICAkdHVybi1vcmlnaW46IGZyb20tYmFjayxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgaGluZ2UtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRoaW5nZTogaGluZ2UoJHN0YXRlLCAkZnJvbSwgJGF4aXMsICRwZXJzcGVjdGl2ZSwgJHR1cm4tb3JpZ2luKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNjYWxpbmcgdHJhbnNpdGlvbi4gQSBzY2FsZSBvZiBgMWAgbWVhbnMgdGhlIGVsZW1lbnQgaXMgdGhlIHNhbWUgc2l6ZS4gTGFyZ2VyIG51bWJlcnMgbWFrZSB0aGUgZWxlbWVudCBiaWdnZXIsIHdoaWxlIG51bWJlcnMgbGVzcyB0aGFuIDEgbWFrZSB0aGUgZWxlbWVudCBzbWFsbGVyLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbMS41XSAtIFNpemUgdG8gc3RhcnQgYXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFsxXSAtIFNpemUgdG8gZW5kIGF0LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktem9vbShcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IDEuNSxcbiAgJHRvOiAxLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzY2FsZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJHNjYWxlOiB6b29tKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc3Bpbm5pbmcgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC4gVGhlIGB0dXJuYCB1bml0IGlzIHVzZWQgdG8gc3BlY2lmeSBob3cgZmFyIHRvIHJvdGF0ZS4gYDF0dXJuYCBpcyBlcXVhbCB0byBhIDM2MC1kZWdyZWUgc3Bpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRkaXJlY3Rpb24gW2N3XSAtIERpcmVjdGlvbiB0byBzcGluLiBTaG91bGQgYmUgYGN3YCAoY2xvY2t3aXNlKSBvciBgY2N3YCAoY291bnRlcmNsb2Nrd2lzZSkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhbW91bnQgWzAuNzV0dXJuXSAtIEFtb3VudCB0byBlbGVtZW50IHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXNwaW4oXG4gICRzdGF0ZTogaW4sXG4gICRkaXJlY3Rpb246IGN3LFxuICAkYW1vdW50OiAwLjc1dHVybixcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc3Bpbi1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJHNwaW46IHNwaW4oJHN0YXRlLCAkZGlyZWN0aW9uLCAkYW1vdW50KTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc3BpbiwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc3BpbiwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBrZXlmcmFtZSBmcm9tIG9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgYW5kIGFzc2lnbnMgaXQgdG8gdGhlIGVsZW1lbnQgYnkgYWRkaW5nIHRoZSBgYW5pbWF0aW9uLW5hbWVgIHByb3BlcnR5LlxuLy8vIEBwYXJhbSB7RnVuY3Rpb259ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWktYW5pbWF0aW9uKCRhcmdzLi4uKSB7XG4gICRuYW1lOiBtYXAtZ2V0KC1tdWktcHJvY2Vzcy1hcmdzKCRhcmdzLi4uKSwgbmFtZSk7XG4gIEBpbmNsdWRlIG11aS1rZXlmcmFtZXMoJG5hbWUsICRhcmdzLi4uKTtcbiAgYW5pbWF0aW9uLW5hbWU6IHVucXVvdGUoJG5hbWUpO1xufVxuIiwiLy8gRm9udHNcclxuQG1peGluIGZvbnQoJG5hbWU6ICdDYWJpbicpIHtcclxuICBAaWYgJG5hbWUgPT0gJ0NhYmluJyB7XHJcbiAgICBmb250LWZhbWlseTogQ2FiaW4sICRzYW5zLXNlcmlmLXN0YWNrO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICB9IEBlbHNlIGlmICRuYW1lID09ICdDYWJpbiBNZWRpdW0nIHtcclxuICAgIGZvbnQtZmFtaWx5OiBDYWJpbiwgJHNhbnMtc2VyaWYtc3RhY2s7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gIH0gQGVsc2UgaWYgJG5hbWUgPT0gJ0NhYmluIFNlbWlCb2xkJyB7XHJcbiAgICBmb250LWZhbWlseTogQ2FiaW4sICRzYW5zLXNlcmlmLXN0YWNrO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICB9IEBlbHNlIGlmICRuYW1lID09ICdDYWJpbiBCb2xkJyB7XHJcbiAgICBmb250LWZhbWlseTogQ2FiaW4sICRzYW5zLXNlcmlmLXN0YWNrO1xyXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICB9XHJcbn1cclxuXHJcbi8vIEZvbnQgc21vb3RoaW5nIG1peGluXHJcbi8vIE9ubHkgdXNlIGZvciBsaWdodCB0ZXh0IG9uIGRhcmsgYmFja2dyb3VuZFxyXG5AbWl4aW4gZm9udC1zbW9vdGhpbmcge1xyXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbn1cclxuXHJcbi8qXHJcbiAgVGhpcyBtaXhpbiBjYW4gYmUgdXNlZCB0byBzZXQgdGhlIG9iamVjdC1maXQ6XHJcbiAgQGluY2x1ZGUgb2JqZWN0LWZpdChjb250YWluKTtcclxuICBvciBvYmplY3QtZml0IGFuZCBvYmplY3QtcG9zaXRpb246XHJcbiAgQGluY2x1ZGUgb2JqZWN0LWZpdChjb3ZlciwgdG9wKTtcclxuKi9cclxuQG1peGluIG9iamVjdC1maXQoJGZpdDogZmlsbCwgJHBvc2l0aW9uOiBudWxsKSB7XHJcbiAgICAtby1vYmplY3QtZml0OiAkZml0O1xyXG4gICAgICAgb2JqZWN0LWZpdDogJGZpdDtcclxuXHJcbiAgICBAaWYgJHBvc2l0aW9uIHtcclxuICAgICAgICAtby1vYmplY3QtcG9zaXRpb246ICRwb3NpdGlvbjtcclxuICAgICAgICBvYmplY3QtcG9zaXRpb246ICRwb3NpdGlvbjtcclxuICAgICAgICBmb250LWZhbWlseTogJ29iamVjdC1maXQ6ICN7JGZpdH07IG9iamVjdC1wb3NpdGlvbjogI3skcG9zaXRpb259JztcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAnb2JqZWN0LWZpdDogI3skZml0fSc7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLyBTaG9ydGhhbmQgbWl4aW4gZm9yIG9mZnNldCBwb3NpdGlvbmluZ1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRwb3NpdGlvbiAtIEVpdGhlciBgcmVsYXRpdmVgLCBgYWJzb2x1dGVgIG9yIGBmaXhlZGBcclxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkdG9wIFtudWxsXSAtIFRvcCBvZmZzZXRcclxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkcmlnaHQgW251bGxdIC0gUmlnaHQgb2Zmc2V0XHJcbi8vLyBAcGFyYW0ge0xlbmd0aH0gJGJvdHRvbSBbbnVsbF0gLSBCb3R0b20gb2Zmc2V0XHJcbi8vLyBAcGFyYW0ge0xlbmd0aH0gJGxlZnQgW251bGxdIC0gTGVmdCBvZmZzZXRcclxuQG1peGluIHBvc2l0aW9uKCRwb3NpdGlvbiwgJHRvcDogbnVsbCwgJHJpZ2h0OiBudWxsLCAkYm90dG9tOiBudWxsLCAkbGVmdDogbnVsbCkge1xyXG4gICAgYm90dG9tOiAkYm90dG9tO1xyXG4gICAgbGVmdDogJGxlZnQ7XHJcbiAgICBwb3NpdGlvbjogJHBvc2l0aW9uO1xyXG4gICAgcmlnaHQ6ICRyaWdodDtcclxuICAgIHRvcDogJHRvcDtcclxufVxyXG5cclxuQG1peGluIHNpemUoJHZhbHVlKSB7XHJcbiAgICAkd2lkdGg6IG50aCgkdmFsdWUsIDEpO1xyXG4gICAgJGhlaWdodDogJHdpZHRoO1xyXG5cclxuICAgIEBpZiBsZW5ndGgoJHZhbHVlKSA+IDEge1xyXG4gICAgICAgICRoZWlnaHQ6IG50aCgkdmFsdWUsIDIpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpZiBpcy1zaXplKCRoZWlnaHQpIHtcclxuICAgICAgICBoZWlnaHQ6ICRoZWlnaHQ7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgICBAd2FybiBcImAjeyRoZWlnaHR9YCBpcyBub3QgYSB2YWxpZCBsZW5ndGggZm9yIHRoZSBgJGhlaWdodGAgcGFyYW1ldGVyIGluIHRoZSBgc2l6ZWAgbWl4aW4uXCI7XHJcbiAgICB9XHJcblxyXG4gICAgQGlmIGlzLXNpemUoJHdpZHRoKSB7XHJcbiAgICAgICAgd2lkdGg6ICR3aWR0aDtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAgIEB3YXJuIFwiYCN7JHdpZHRofWAgaXMgbm90IGEgdmFsaWQgbGVuZ3RoIGZvciB0aGUgYCR3aWR0aGAgcGFyYW1ldGVyIGluIHRoZSBgc2l6ZWAgbWl4aW4uXCI7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiB3b3JkLXdyYXAge1xyXG4gICAgaHlwaGVuczogYXV0bztcclxuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xyXG59XHJcblxyXG4vLyBVbnN0eWxlZCBsaXN0XHJcbkBtaXhpbiB1bnN0eWxlZC1saXN0IHtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxufVxyXG5cclxuQG1peGluIGJiKCl7XHJcbiAgICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG5AbWl4aW4gdmFsaWduKCkge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbn1cclxuXHJcbkBtaXhpbiBoYWxpZ24oKSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbn1cclxuXHJcbkBtaXhpbiB2aGNlbnRlcigpIHtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHRyYW5zbGF0ZVkoLTUwJSk7XHJcbn1cclxuXHJcbkBtaXhpbiBjb250YWluKCkge1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgLy8gVE9ETzogUmUtZXZhbHVhdGVcclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0KSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJG1pbiwgJGRlc2t0b3ApIHtcclxuICAgICAgICAvL0BpbmNsdWRlIGNvbnRhaW5lcig5NzBweCk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbXEoJG1pbiwgJGJpZ19kZXNrdG9wKSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMjAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi1mbHVpZCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIHBsYWNlaG9sZGVyIHtcclxuICAgIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XHJcbiAgICAgICBAY29udGVudDtcclxuICAgIH1cclxuXHJcbiAgICA6LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgOjotbW96LXBsYWNlaG9sZGVyIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxuXHJcbiAgICA6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbkBtaXhpbiBhY2Nlc3MoKXtcclxuICAgIGhlaWdodDogMXB4O1xyXG4gICAgbGVmdDogLTk5OTlweDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMXB4O1xyXG59XHJcblxyXG5AbWl4aW4gY2xlYXJmaXgoKSB7XHJcbiAgICAmOjphZnRlcixcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogdGFibGU7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIGNsZWFyOiBib3RoO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gY29tcG9uZW50LW1hcmdpbi10b3Age1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDRyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiB2aXN1YWxseWhpZGRlbiB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xyXG4gICAgaGVpZ2h0OiAxcHg7XHJcbiAgICBtYXJnaW46IC0xcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxcHg7XHJcbn1cclxuXHJcbi8vIEljb25zXHJcbkBtaXhpbiBpY29uLWNoZXZyb24oJGNoZXZyb24sICR3LCAkaCwgJHYtYWxpZ24sICRsZWZ0KSB7XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgQGlmICRjaGV2cm9uID09ICdvcmFuZ2Utbicge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaGV2cm9uLW9yYW5nZS1uLnN2ZycpIGNlbnRlciBuby1yZXBlYXQ7XHJcbiAgICAgICAgfSAvLyB3OiAxMHB4IGg6IDZweFxyXG4gICAgICAgIEBpZiAkY2hldnJvbiA9PSAnb3JhbmdlLWUnIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcvbWljcm9zaXRldGVtcGxhdGVzL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2hldnJvbi1vcmFuZ2UtZS5zdmcnKSBjZW50ZXIgbm8tcmVwZWF0O1xyXG4gICAgICAgIH0gLy8gdzogNnB4IGg6IDEwcHhcclxuICAgICAgICBAaWYgJGNoZXZyb24gPT0gJ29yYW5nZS1zJyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnL21pY3Jvc2l0ZXRlbXBsYXRlcy9hc3NldHMvaW1nL3N2Zy9pY29uLWNoZXZyb24tb3JhbmdlLXMuc3ZnJykgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgICAgICB9IC8vIHc6IDEwcHggaDogNnB4XHJcbiAgICAgICAgQGlmICRjaGV2cm9uID09ICdvcmFuZ2Utdycge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaGV2cm9uLW9yYW5nZS13LnN2ZycpIGNlbnRlciBuby1yZXBlYXQ7XHJcbiAgICAgICAgfSAvLyB3OiA2cHggaDogMTBweFxyXG4gICAgICAgIEBpZiAkY2hldnJvbiA9PSAnd2hpdGUtbicge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaGV2cm9uLXdoaXRlLW4uc3ZnJykgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgICAgICB9IC8vIHc6IDEwcHggaDogNnB4XHJcbiAgICAgICAgQGlmICRjaGV2cm9uID09ICd3aGl0ZS1lJyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnL21pY3Jvc2l0ZXRlbXBsYXRlcy9hc3NldHMvaW1nL3N2Zy9pY29uLWNoZXZyb24td2hpdGUtZS5zdmcnKSBjZW50ZXIgbm8tcmVwZWF0O1xyXG4gICAgICAgIH0gLy8gdzogNnB4IGg6IDEwcHhcclxuICAgICAgICBAaWYgJGNoZXZyb24gPT0gJ3doaXRlLXMnIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcvbWljcm9zaXRldGVtcGxhdGVzL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2hldnJvbi13aGl0ZS1zLnN2ZycpIGNlbnRlciBuby1yZXBlYXQ7XHJcbiAgICAgICAgfSAvLyB3OiAxMHB4IGg6IDZweFxyXG4gICAgICAgIEBpZiAkY2hldnJvbiA9PSAnd2hpdGUtdycge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaGV2cm9uLXdoaXRlLXcuc3ZnJykgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgICAgICB9IC8vIHc6IDZweCBoOiAxMHB4XHJcbiAgICAgICAgQGlmICRjaGV2cm9uID09ICdibHVlLW4nIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcvbWljcm9zaXRldGVtcGxhdGVzL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2hldnJvbi1ibHVlLW4uc3ZnJykgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgICAgICB9IC8vIHc6IDEwcHggaDogNnB4XHJcbiAgICAgICAgQGlmICRjaGV2cm9uID09ICdibHVlLWUnIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcvbWljcm9zaXRldGVtcGxhdGVzL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2hldnJvbi1ibHVlLWUuc3ZnJykgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgICAgICB9IC8vIHc6IDZweCBoOiAxMHB4XHJcbiAgICAgICAgQGlmICRjaGV2cm9uID09ICdibHVlLXMnIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcvbWljcm9zaXRldGVtcGxhdGVzL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2hldnJvbi1ibHVlLXMuc3ZnJykgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgICAgICB9IC8vIHc6IDEwcHggaDogNnB4XHJcbiAgICAgICAgQGlmICRjaGV2cm9uID09ICdibHVlLXcnIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcvbWljcm9zaXRldGVtcGxhdGVzL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2hldnJvbi1ibHVlLXcuc3ZnJykgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgICAgICB9IC8vIHc6IDZweCBoOiAxMHB4XHJcbiAgICAgICAgQGlmICRjaGV2cm9uID09ICdjeWFuLWUnIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcvbWljcm9zaXRldGVtcGxhdGVzL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2hldnJvbi1jeWFuLWUuc3ZnJykgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgICAgICB9IC8vIHc6IDZweCBoOiAxMHB4XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkdyAkaDtcclxuICAgICAgICBib3R0b206ICR2LWFsaWduO1xyXG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBjb250ZW50OiAnXFwwYTAwJztcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICBoZWlnaHQ6ICRoO1xyXG4gICAgICAgIGxlZnQ6ICRsZWZ0O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGxlZnQgLjNzIGVhc2U7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG4gICAgICAgIHdpZHRoOiAkdztcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogJGxlZnQgKyA0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBpY29uLWNpcmNsZS1hcnJvdy13aGl0ZS1lKCRzaXplKSB7XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcvbWljcm9zaXRldGVtcGxhdGVzL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2lyY2xlLWFycm93LXdoaXRlLWUuc3ZnJykgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRzaXplICRzaXplO1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGhlaWdodDogJHNpemU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGljb24tbmV3c2xldHRlcigkaCwgJHcpIHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1uZXdzbGV0dGVyLnN2ZycpIGNlbnRlciBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaCAkdztcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBoZWlnaHQ6ICRoO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB3aWR0aDogJHc7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBpY29uLXNlYXJjaCgkaCwgJHcpIHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1zZWFyY2guc3ZnJykgY2VudGVyIG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6ICRoICR3O1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGhlaWdodDogJGg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAkdztcclxuICAgIH1cclxufVxyXG5cclxuQG1peGluIGljb24tc2VhcmNoLWZsYXQoJGgsICR3LCAkY29sb3IpIHtcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy9hc3NldHMvaW1nL3N2Zy9pY29uLXNlYXJjaC1mbGF0LSN7JGNvbG9yfS5zdmcnKSBjZW50ZXIgbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGggJHc7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgaGVpZ2h0OiAkaDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgd2lkdGg6ICR3O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gY2xlYXItZmxvYXQge1xyXG4gICAgY29udGVudDogJyc7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMDtcclxuICAgIGNsZWFyOiBib3RoO1xyXG59XHJcbiIsImF1ZGlvLFxyXG5jYW52YXMsXHJcbmVtYmVkLFxyXG5pZnJhbWUsXHJcbmltZyxcclxub2JqZWN0LFxyXG5zdmcsXHJcbnZpZGVvIHtcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuIiwiQGtleWZyYW1lcyBmYWRlSW4ge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9IHRvIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcbiIsIi50d28tZ3JpZCB7XHJcblxyXG4gICZfX3dyYXAge1xyXG4gICAgQGluY2x1ZGUgY29udGFpbigpO1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRtaW4sICRwYWxtX3NtKSB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHJcbiAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmX19pdGVtIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldCkge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XHJcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIwcHgpO1xyXG5cclxuICAgICAgJjpudGgtb2YtdHlwZSgybikge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtLXR3by10aGlyZHMge1xyXG4gICAgICBAZXh0ZW5kIC50d28tZ3JpZF9faXRlbTtcclxuICAgICAgd2lkdGg6IGNhbGMoNjAlIC0gNDBweCk7XHJcbiAgICB9XHJcblxyXG4gICAgJi0tb25lLXRoaXJkIHtcclxuICAgICAgQGV4dGVuZCAudHdvLWdyaWRfX2l0ZW07XHJcbiAgICAgIHdpZHRoOiBjYWxjKDQwJSk7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gJFZhcmlhYmxlc1xyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBTdXBwb3J0c1xyXG4vLyBAbWVkaWEgbWluLXdpZHRoXHJcbi8vIEBtZWRpYSBtYXgtd2lkdGhcclxuLy8gQG1lZGlhIG1pbi13aWR0aCBhbmQgbWF4LXdpZHRoXHJcblxyXG4kdmlld3BvcnQtaW5jcmVtZW50OiAwLjFweDsgLy8gY3VzdG9taXplIHRvIHN1aXRlXHJcblxyXG4vLyBIdWdlIERlc2t0b3BcclxuJGV4dHJhX2xhcmdlX2Rlc2t0b3A6IDE2ODBweDsgLy8gY3VzdG9taXplIHRvIHN1aXRlXHJcbiRwcmUtZXh0cmFfbGFyZ2VfZGVza3RvcDogJGV4dHJhX2xhcmdlX2Rlc2t0b3AgLSAkdmlld3BvcnQtaW5jcmVtZW50O1xyXG5cclxuLy8gSHVnZSBEZXNrdG9wXHJcbiRodWdlX2Rlc2t0b3A6IDE0NDBweDsgLy8gY3VzdG9taXplIHRvIHN1aXRlXHJcbiRwcmUtaHVnZV9kZXNrdG9wOiAkaHVnZV9kZXNrdG9wIC0gJHZpZXdwb3J0LWluY3JlbWVudDtcclxuXHJcbi8vIEJpZyBEZXNrdG9wXHJcbiRiaWdfZGVza3RvcDogMTIwMHB4OyAvLyBjdXN0b21pemUgdG8gc3VpdGVcclxuJHByZS1iaWdkZXNrdG9wOiAkYmlnX2Rlc2t0b3AgLSAkdmlld3BvcnQtaW5jcmVtZW50O1xyXG5cclxuLy8gRGVza3RvcFxyXG4kZGVza3RvcDogMTAyNHB4OyAvLyBjdXN0b21pemUgdG8gc3VpdGVcclxuJHByZS1kZXNrdG9wOiAkZGVza3RvcCAtICR2aWV3cG9ydC1pbmNyZW1lbnQ7XHJcbiRwb3N0LWRlc2t0b3A6ICRkZXNrdG9wICsgJHZpZXdwb3J0LWluY3JlbWVudDtcclxuLy9VcCB0byBUYWJsZXRcclxuJHRhYmxldF9wbHVzOiA5NjBweDtcclxuJHByZS10YWJsZXRwbHVzOiAkdGFibGV0X3BsdXMgLSAkdmlld3BvcnQtaW5jcmVtZW50O1xyXG4kcG9zdC10YWJsZXRwbHVzOiAkdGFibGV0X3BsdXMgPSAkdmlld3BvcnQtaW5jcmVtZW50O1xyXG4vLyBUYWJsZXRcclxuJHRhYmxldDogNzY4cHg7IC8vIGN1c3RvbWl6ZSB0byBzdWl0ZVxyXG4kcHJlLXRhYmxldDogJHRhYmxldCAtICR2aWV3cG9ydC1pbmNyZW1lbnQ7XHJcblxyXG4vLyBQYWxtXHJcbiRwYWxtOiA2NzBweDsgLy8gY3VzdG9taXplIHRvIHN1aXRlXHJcbiRwcmUtcGFsbTogJHBhbG0gLSAkdmlld3BvcnQtaW5jcmVtZW50O1xyXG4kcG9zdC1wYWxtOiAkcGFsbSArICR2aWV3cG9ydC1pbmNyZW1lbnQ7XHJcblxyXG4vLyBQYWxtX3NtXHJcbiRwYWxtX3NtOiA0ODBweDsgLy8gY3VzdG9taXplIHRvIHN1aXRlXHJcbiRwcmUtcGFsbV9zbTogJHBhbG1fc20gLSAkdmlld3BvcnQtaW5jcmVtZW50O1xyXG4kcG9zdC1wYWxtX3NtOiAkcGFsbV9zbSArICR2aWV3cG9ydC1pbmNyZW1lbnQ7XHJcblxyXG4vLyBQYWxtX3hzbVxyXG4kcGFsbV94c206IDM4MHB4OyAvLyBjdXN0b21pemUgdG8gc3VpdGVcclxuJHByZS1wYWxtX3hzbTogJHBhbG1feHNtIC0gJHZpZXdwb3J0LWluY3JlbWVudDtcclxuJHBvc3QtcGFsbV94c206ICRwYWxtX3hzbSArICR2aWV3cG9ydC1pbmNyZW1lbnQ7XHJcbi8vIENvbnN0cmFpbnRzXHJcbiRtaW46IG1pbi13aWR0aDtcclxuJG1heDogbWF4LXdpZHRoO1xyXG5cclxuJG1pbkg6IG1pbi1oZWlnaHQ7XHJcbiRtYXhIOiBtYXgtaGVpZ2h0O1xyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vICRNZWRpYSBRdWVyeSBATWl4aW5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbkBtaXhpbiBtcSgkY29uc3RyYWludCwgJHZpZXdwb3J0MSwgJHZpZXdwb3J0MjogbnVsbCwgJGNvbnN0cmFpbnQyOiBudWxsKSB7XHJcblxyXG4gIEBpZiAkY29uc3RyYWludDIgIT0gbnVsbCB7XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKCRjb25zdHJhaW50OiAkdmlld3BvcnQxKSBhbmQgKCRjb25zdHJhaW50MjogJHZpZXdwb3J0Mikge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuXHJcbiAgfSBAZWxzZSBpZiAkY29uc3RyYWludCA9PSAkbWluIHtcclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoJG1pbjogJHZpZXdwb3J0MSkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuXHJcbiAgfSBAZWxzZSBpZiAkY29uc3RyYWludCA9PSAkbWF4IHtcclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoJG1heDogJHZpZXdwb3J0MSkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuXHJcbiAgfSAgQGVsc2UgaWYgJGNvbnN0cmFpbnQgPT0gJG1pbkgge1xyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kICgkbWluSDogJHZpZXdwb3J0MSkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuXHJcbiAgfSBAZWxzZSBpZiAkY29uc3RyYWludCA9PSAkbWF4SCB7XHJcblxyXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKCRtYXhIOiAkdmlld3BvcnQxKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG5cclxuICB9IEBlbHNlIHtcclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoJG1pbjogJHZpZXdwb3J0MSkgYW5kICgkbWF4OiAkdmlld3BvcnQyKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG59XHJcblxyXG4iLCIudGhyZWUtZ3JpZCB7XHJcblx0Jl9fd3JhcCB7XHJcblx0XHRAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0KSB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRcdGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcblx0XHRcdCY6YmVmb3JlLCAmOmFmdGVyIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQmX19pdGVtIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0QGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldCkge1xyXG5cdFx0XHR3aWR0aDogY2FsYygzMy4zMzMzJSAtIDFyZW0pO1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cdFx0fVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCAkZGVza3RvcCkge1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYygzMy4zMzMzJSAtIDFyZW0pO1xyXG4gICAgICAgIH1cclxuXHJcblx0XHQmLnNwcmVhZC10d28ge1xyXG5cdFx0XHRAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0KSB7XHJcblx0XHRcdFx0d2lkdGg6IGNhbGMoNjYuNjY2NyUgLSAyOHB4KTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG4gICAgfVxyXG59XHJcbiIsIi5mb3VyLWdyaWQge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0Jl9fd3JhcCB7XHJcblx0XHQvL0BpbmNsdWRlIGNvbnRhaW4oKTtcclxuXHRcdGRpc3BsYXk6IGZsZXg7XHJcblx0XHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0XHRhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuXHR9XHJcblxyXG5cdCZfX2l0ZW0ge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XHJcblx0XHRoZWlnaHQ6IGF1dG87XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHJcblx0XHRAaW5jbHVkZSBtcSgkbWluLCAkcGFsbV9zbSkge1xyXG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHR9XHJcblxyXG5cdFx0QGluY2x1ZGUgbXEoJG1pbiwgJHBhbG0sICRwcmUtdGFibGV0LCAkbWF4KSB7XHJcblx0XHRcdHdpZHRoOiBjYWxjKDUwJSAtIC41cmVtKTtcclxuXHJcblx0XHRcdCY6bnRoLW9mLXR5cGUoMm4pIHtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuLyogXHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAyMHB4OyAqL1xyXG5cclxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgLy8gICAgbWFyZ2luLWxlZnQ6IC41cmVtO1xyXG4gICAgICAgICAgICB9XHJcblx0XHR9XHJcblxyXG5cdFx0QGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldCwgJHByZS1kZXNrdG9wLCAkbWF4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDFyZW0pO1xyXG5cdFx0XHQvL3dpZHRoOiBjYWxjKDMzLjMzMzMlIC0gMXJlbSk7XHJcblx0XHRcdCY6bnRoLW9mLXR5cGUoM24pIHtcclxuXHRcdFx0XHQvKiBtYXJnaW4tcmlnaHQ6IDA7ICovXHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBtcSgkbWluLCAkZGVza3RvcCkge1xyXG5cdFx0XHR3aWR0aDogY2FsYygyNSUgLSAxcmVtKTtcclxuXHRcdFx0JjpudGgtb2YtdHlwZSg0bikge1xyXG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcclxuXHRcdFx0fVxyXG5cclxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHRcdH1cclxuXHJcblx0XHRAaW5jbHVkZSBtcSgkbWluLCAkYmlnX2Rlc2t0b3ApIHtcclxuXHRcdFx0LyogbWFyZ2luLXJpZ2h0OiAzMHB4O1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzMHB4OyAqL1xyXG5cdFx0XHR3aWR0aDogY2FsYygyNSUgLSAxcmVtKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCYubW9iaWxlLXR3byB7XHJcblx0XHQuZm91ci1ncmlkX19pdGVtIHtcclxuXHRcdFx0QGluY2x1ZGUgbXEoJG1heCwgJHByZS1wYWxtX3NtKSB7XHJcblx0XHRcdFx0d2lkdGg6IGNhbGMoNTAlIC0gNXB4KTtcclxuXHRcdFx0XHQmOm50aC1vZi10eXBlKDJuKSB7XHJcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbiIsIi8qIFNsaWRlciAqL1xyXG5cclxuLnNsaWNrLXNsaWRlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xyXG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcclxuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuLnNsaWNrLWxpc3Qge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICYuZHJhZ2dpbmcge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBjdXJzb3I6IGhhbmQ7XHJcbiAgICB9XHJcbn1cclxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXHJcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxufVxyXG5cclxuLnNsaWNrLXRyYWNrIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgZGlzcGxheTogdGFibGU7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXJvdXNlbF9fdGl0bGUge1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0KSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uc2xpY2stc2xpZGUge1xyXG4gICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBtaW4taGVpZ2h0OiAxcHg7XHJcbiAgICBbZGlyPVwicnRsXCJdICYge1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgIH1cclxuICAgIGltZyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgJi5kcmFnZ2luZyBpbWcge1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1pbml0aWFsaXplZCAmIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLXZlcnRpY2FsICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIH1cclxufVxyXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8gRGVmYXVsdCBWYXJpYWJsZXNcclxuXHJcbi8vIFNsaWNrIGljb24gZW50aXR5IGNvZGVzIG91dHB1dHMgdGhlIGZvbGxvd2luZ1xyXG4vLyBcIlxcMjE5MFwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaQXCJcclxuLy8gXCJcXDIxOTJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGklwiXHJcbi8vIFwiXFwyMDIyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLigKJcIlxyXG5cclxuJHNsaWNrLWZvbnQtcGF0aDogXCIvYXNzZXRzL3dlYmZvbnRzL1wiICFkZWZhdWx0O1xyXG4kc2xpY2stZm9udC1mYW1pbHk6IFwic2xpY2tcIiAhZGVmYXVsdDtcclxuJHNsaWNrLWxvYWRlci1wYXRoOiBcIi4vXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1hcnJvdy1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3QtY29sb3I6IGJsYWNrICFkZWZhdWx0O1xyXG4kc2xpY2stZG90LWNvbG9yLWFjdGl2ZTogJHNsaWNrLWRvdC1jb2xvciAhZGVmYXVsdDtcclxuJHNsaWNrLXByZXYtY2hhcmFjdGVyOiBcIlxcMjE5MFwiICFkZWZhdWx0O1xyXG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IFwiXFwyMTkyXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3QtY2hhcmFjdGVyOiBcIlxcMjAyMlwiICFkZWZhdWx0O1xyXG4kc2xpY2stZG90LXNpemU6IDZweCAhZGVmYXVsdDtcclxuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMC43NSAhZGVmYXVsdDtcclxuJHNsaWNrLW9wYWNpdHktb24taG92ZXI6IDEgIWRlZmF1bHQ7XHJcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XHJcblxyXG5AZnVuY3Rpb24gc2xpY2staW1hZ2UtdXJsKCR1cmwpIHtcclxuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XHJcbiAgICAgICAgQHJldHVybiBpbWFnZS11cmwoJHVybCk7XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWxvYWRlci1wYXRoICsgJHVybCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBzbGljay1mb250LXVybCgkdXJsKSB7XHJcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGZvbnQtdXJsKSB7XHJcbiAgICAgICAgQHJldHVybiBmb250LXVybCgkdXJsKTtcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgICBAcmV0dXJuIHVybCgkc2xpY2stZm9udC1wYXRoICsgJHVybCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFNsaWRlciAqL1xyXG5cclxuLnNsaWNrLWxpc3Qge1xyXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZiBzbGljay1pbWFnZS11cmwoXCIuLi9pbWcvYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBJY29ucyAqL1xyXG5AaWYgJHNsaWNrLWZvbnQtZmFtaWx5ID09IFwic2xpY2tcIiB7XHJcbiAgICBAZm9udC1mYWNlIHtcclxuICAgICAgICBmb250LWZhbWlseTogXCJzbGlja1wiO1xyXG4gICAgICAgIHNyYzogc2xpY2stZm9udC11cmwoXCIuLi93ZWJmb250cy9zbGljay5lb3RcIik7XHJcbiAgICAgICAgc3JjOiBzbGljay1mb250LXVybChcIi4uL3dlYmZvbnRzL3NsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwiLi4vd2ViZm9udHMvc2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCBzbGljay1mb250LXVybChcIi4uL3dlYmZvbnRzL3NsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCIuLi93ZWJmb250cy9zbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBBcnJvd3MgKi9cclxuXHJcbi5zbGljay1wcmV2LFxyXG4uc2xpY2stbmV4dCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDBweDtcclxuICAgIGZvbnQtc2l6ZTogMHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XHJcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBjb2xvcjogJHNsaWNrLWFycm93LWNvbG9yO1xyXG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XHJcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgIH1cclxufVxyXG5cclxuLnNsaWNrLXByZXYge1xyXG4gICAgbGVmdDogLTI1cHg7XHJcbiAgICBbZGlyPVwicnRsXCJdICYge1xyXG4gICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgcmlnaHQ6IC0yNXB4O1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcclxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xyXG4gICAgICAgICAgICBjb250ZW50OiAkc2xpY2stbmV4dC1jaGFyYWN0ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc2xpY2stbmV4dCB7XHJcbiAgICByaWdodDogLTI1cHg7XHJcbiAgICBbZGlyPVwicnRsXCJdICYge1xyXG4gICAgICAgIGxlZnQ6IC0yNXB4O1xyXG4gICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcclxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xyXG4gICAgICAgICAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiBEb3RzICovXHJcblxyXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG59XHJcblxyXG4uc2xpY2stZG90cyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBib3R0b206IC0yNXB4O1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbGkge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCA1cHg7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMHB4O1xyXG4gICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1kb3QtY2hhcmFjdGVyO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkc2xpY2stZG90LXNpemU7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gICAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcclxuICAgICAgICAgICAgY29sb3I6ICRzbGljay1kb3QtY29sb3ItYWN0aXZlO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIuYWNjb3JkaW9uIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xyXG5cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgLmFjY29yZGlvbl9fY29udGFjdDo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXDIyMTInO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRhY3Qge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDJweCAjZTZlN2U4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgcGFkZGluZzogMTNweCAzcHggMTNweCA0MXB4O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBjb2xvcjogIzAwNjZhMTtcclxuICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4zNzVyZW07XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbicpO1xyXG4gICAgICAgICAgICB3aWR0aDogMjhweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyOHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2VhLWJ1Y2t0aG9ybjtcclxuICAgICAgICAgICAgY29udGVudDogJysnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTNweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMXB4O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMTBweDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuXHJcbiAgICAgICAgICAgIC5mb3VuZGF0aW9uICYge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsb2ctdGVhbDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG5cclxuICAgICAgICAmLnJ0ZiB7XHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyNnB4O1xyXG5cclxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGEuYnRuIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIuYWRkaXRpb25hbC1mZWF0dXJlIHtcclxuICAgIHBhZGRpbmc6IDMwcHggMCAzNXB4O1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4IDAgNDVweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0X3BsdXMpIHtcclxuICAgICAgICBwYWRkaW5nOiA2MHB4IDAgNjVweDtcclxuICAgIH1cclxuXHJcbiAgICAmX193cmFwIHtcclxuICAgICAgICBAaW5jbHVkZSBjb250YWluKCk7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA2NDBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMTZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY29udGVudCB7XHJcbiAgICAgICAgb3JkZXI6IDE7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICAgICAgb3JkZXI6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDJyZW0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcclxuXHJcbiAgICAgICAgLmZvdW5kYXRpb24gJiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkaG92ZXItdGFuO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19leGNlcnB0IHtcclxuICAgICAgICBjb2xvcjogYmxhY2s7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4nKTtcclxuICAgICAgICBmb250LXNpemU6IC44NzVyZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbGluayB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlYS1idWNrdGhvcm47XHJcbiAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluJyk7XHJcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNzUwcmVtO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDE0cHggMzBweDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC40cyBlYXNlLW91dDtcclxuXHJcbiAgICAgICAgLmZvdW5kYXRpb24gJiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1jeWFuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWJhaGlhO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4yNHMgZWFzZS1vdXQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2ltYWdlIHtcclxuICAgICAgICBvcmRlcjogMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0KSB7XHJcbiAgICAgICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAycmVtKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIuYWxlcnQge1xyXG4gICAgJGJsb2NrOiAmO1xyXG5cclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1hbHRvO1xyXG5cclxuICAgICYtLWFubm91bmNlbWVudCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXBlYWNoLW9yYW5nZTtcclxuICAgIH1cclxuXHJcbiAgICAmLS1lbWVyZ2VuY3kge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13ZS1wZWVwO1xyXG4gICAgfVxyXG5cclxuICAgICYtLWluZm8ge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ibGFjay1zcXVlZXplO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRhaW5lciB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLXJvdztcclxuICAgIH1cclxuXHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMTZweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc3ZnIHtcclxuICAgICAgICBAaW5jbHVkZSBwb3NpdGlvbihhYnNvbHV0ZSwgMTRweCwgbnVsbCwgbnVsbCwgMjBweCk7XHJcblxyXG4gICAgICAgICN7JGJsb2NrfS0tYW5ub3VuY2VtZW50ICYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDIycHggMjVweCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjeyRibG9ja30tLWVtZXJnZW5jeSAmIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgyN3B4IDI1cHgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI3skYmxvY2t9LS1pbmZvICYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDI0cHggMjVweCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNTJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGl0bGUsXHJcbiAgICAmX190ZXh0IHtcclxuICAgICAgICAjeyRibG9ja30tLWFubm91bmNlbWVudCAmLFxyXG4gICAgICAgICN7JGJsb2NrfS0tZW1lcmdlbmN5ICYsXHJcbiAgICAgICAgI3skYmxvY2t9LS1pbmZvICYge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNDBweDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNTJweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gTWVkaXVtJyk7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwLCAtMzBweCwgbnVsbCBudWxsKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgyMHB4KTtcclxuICAgICAgICAgICAgY29udGVudDogJysnO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvci13aGl0ZSwgLjc1KTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMThweDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICAgICAgdG9wOiAtMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmlzLXRvZ2dsZWQge1xyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnLSc7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX190ZXh0IHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAwO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAuNHMgZWFzZSwgcGFkZGluZy10b3AgLjRzIGxpbmVhcjtcclxuXHJcbiAgICAgICAgJi5pcy1leHBhbmRlZCB7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMwMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnXFwwMGEwXFwyMDNBJztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDdweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnJ0ZiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxufVxyXG4iLCIuYmFja2dyb3VuZC0tYmx1ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZmlsZXMtYmx1ZTtcclxufVxyXG5cclxuLmJhY2tncm91bmQtLXBhZGRpbmcge1xyXG4gICAgcGFkZGluZzogNzJweCAwO1xyXG59XHJcbiIsIiRiYW5kLWhlaWdodDogMzcwcHg7XHJcblxyXG4uYmFuZCB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdpbGQtc2FuZDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICAmX19pbWFnZS13cmFwcGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIC8vZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcG9zaXRpb24oYWJzb2x1dGUsIDAgMCAwIDApO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDEwMCUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19pbWFnZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMDAlKTtcclxuICAgICAgICBmb250LWZhbWlseTogJ29iamVjdC1maXQ6IGNvdmVyOyc7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY29udGFpbmVyIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtcm93O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fYm94IHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggNTdweCAwIHJnYmEoMzUsIDMxLCAzMiwgLjA4KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgICAgIHotaW5kZXg6ICR6LWluZGV4LWJhbmQtYm94O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uKDQsIDgwcHgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBvbmx5KSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgxKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2FkZHJlc3MsXHJcbiAgICAmX19ob3VycyB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbGluayB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19pbWctbGluayB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2J1dHRvbiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcclxuICAgIH1cclxufVxyXG4iLCIuYmFyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAuZm91bmRhdGlvbiAmIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1uYXZ5O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBwYWRkaW5nOiAzM3B4IDA7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIHBhZGRpbmc6IDQwcHggMDtcclxuICAgIH1cclxuXHJcbiAgICAmX19jb250YWluZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3c7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gQnV0dG9uc1xyXG5cclxuJWJ0bixcclxuLmJ0bixcclxuLmJ0bjp2aXNpdGVkIHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgIEBpbmNsdWRlIGZvbnQtc21vb3RoaW5nO1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWEtYnVja3Rob3JuO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgcGFkZGluZzogMThweCAyMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjUwbXMgZWFzZTtcclxuXHJcbiAgICAuZm91bmRhdGlvbiAmIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItY3lhbjtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjphY3RpdmUsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmFoaWE7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHJcbiAgICAgICAgLmZvdW5kYXRpb24gJiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uY2xlYXIge1xyXG4gICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246IGNvbG9yIC40cyBlYXNlLW91dDtcclxuXHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICRob3Zlci1jeWFuO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4yNXMgZWFzZS1vdXQ7XHJcbiAgICB9XHJcbn1cclxuIiwiLmNhbGxvdXQge1xyXG4gICAgcGFkZGluZzogODhweCAwIDI0cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMzQwcHg7XHJcblxyXG4gICAgJi5jYWxsb3V0LS1sZWZ0IHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmNhbGxvdXQtLXJpZ2h0IHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmNhbGxvdXQtLXdpZGUge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgICYuY2FsbG91dC0tc3Ryb25nIHtcclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMzVweDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9zdmcvY2FsbG91dC1xdW90ZS5zdmcnKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGhlaWdodDogNTRweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAxMHB4O1xyXG4gICAgICAgIHdpZHRoOiA3M3B4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2FsbG91dF9fc3ViIHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICBjb2xvcjogJGNvbG9yLWdyYXk7XHJcbiAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgdG9wOiAtNXB4O1xyXG59XHJcbiIsIi5jYXJvdXNlbCB7XHJcbiAgICAkYmxvY2s6ICY7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogNzZweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDc2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLWxpc3Qge1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc2xpZGUge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgLmNhcm91c2VsX19pbWFnZS13cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC45KTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuZGggJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgLmNhcm91c2VsX190aXRsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLmNhcm91c2VsX19jdGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICAgIEBleHRlbmQgJWJ0bjtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kaCAmIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGV4dCB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcclxuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2xpbmsge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgJGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY3RhIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICAgICAgQGluY2x1ZGUgaWNvbi1jaGV2cm9uKCdvcmFuZ2UtZScsIDZweCwgMTBweCwgMXB4LCAwKTtcclxuICAgICAgICBjb2xvcjogJG9yYW5nZTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9faW1hZ2Utd3JhcHBlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLjg1KTtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNTAwbXMgZWFzZTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19wbHVzIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgzN3B4KTtcclxuICAgICAgICAgICAgbGVmdDogMjUlO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgLmhlYXJ0LXZhc2N1bGFyICYge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19pbWFnZSB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2Fycm93IHtcclxuICAgICAgICBAaW5jbHVkZSBzaXplKDIwcHggMzBweCk7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1wcmltYXJ5O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDM2JTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICAgJi0tbGVmdCB7XHJcbiAgICAgICAgICAgIGxlZnQ6IDEwcHg7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IC0xMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLS1yaWdodCB7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XHJcbiAgICAgICAgfVxyXG4gICAgIH1cclxufVxyXG4iLCIuY29udGVudCB7XHJcbiAgICAkYmxvY2s6ICY7XHJcblxyXG4gICAgJi0tc3BsaXQge1xyXG4gICAgICAgIC5jb250ZW50X19jb250YWluZXIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXRfcGx1cykge1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJG1heCwgJHByZS10YWJsZXRwbHVzKSB7XHJcbiAgICAgICAgICAgICAgICAmLnNpZGViYXItYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAuY29udGVudCxcclxuICAgICAgICAgICAgICAgICAgICAudGFicyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLnNpZGViYXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCAkcGFsbSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyNDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0X3BsdXMpIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMDhweCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5kaCAmIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyNDBweCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYtLW1haW4ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXJlbTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmX19jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldF9wbHVzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDI2cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5kaCAmIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmX19jb3B5IHtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjAlO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldF9wbHVzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMzA4cHgpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi0tZnVsbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldF9wbHVzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJl9faW1hZ2Utd3JhcHBlciB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMjQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCA5NjBweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi0tcmlnaHQge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRtYXgsICRwcmUtdGFibGV0cGx1cykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDI0MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRhYnMge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0X3BsdXMpIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMDhweCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICZfX25hdiB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCAkZGVza3RvcCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmX19jb3B5IHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwJTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRhaW5lciB7XHJcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3c7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDI1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faW1hZ2Utd3JhcHBlciB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCwgNDBweCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjeyRibG9ja31fX3BsdXMge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDM0cHgpO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMzVweDtcclxuICAgICAgICAgICAgICAgIHRvcDogMzVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSg1M3B4KTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDM1cHg7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDQ1cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC51cmdlbnQtY2FyZSAmIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYtLXJpZ2h0IHtcclxuICAgICAgICAgICAgQGV4dGVuZCAuY29udGVudF9faW1hZ2Utd3JhcHBlcjtcclxuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19pbWFnZS1pbm5lciB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICAmX19pbWFnZSB7XHJcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAxNXB4ICR3aGl0ZTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgyNDBweCk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldF9wbHVzKSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1zaXplOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19jb3B5IHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oOCwgNDBweCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLS1mdWxsIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG5cclxuICAgICAgICAgICAgPiAucnRmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcbiAgICAgICAgJi0tY2FwcyB7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm91bmRhdGlvbiAmIHtcclxuICAgICAgICAgICAgY29sb3I6ICRob3Zlci10YW47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGggJiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSB3aWR0aCBvZiBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHdpZHRoIFskZ3JpZC1jb2x1bW4tY291bnRdIC0gV2lkdGggdG8gbWFrZSB0aGUgY29sdW1uLiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIHdpZHRoOiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1zaXplKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1zaXplXG5AbWl4aW4gZ3JpZC1jb2wtc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xufVxuIiwiLmNvbnRlbnQtYmxvY2sge1xyXG4gICAgJGJsb2NrOiAmO1xyXG5cclxuICAgICYtLWRhcmsge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgIH1cclxuXHJcbiAgICAmX19jb250YWluZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1yb3c7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19pbWFnZS13cmFwcGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1jb2x1bW4oMTIsIDApO1xyXG5cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1jb2x1bW4oNiwgMCk7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XHJcblxyXG4gICAgICAgICAgICAjeyRibG9ja30tLXJldmVyc2VkICYge1xyXG4gICAgICAgICAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICN7JGJsb2NrfS0tbGlnaHQgJiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1vZmZzZXQoMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fcGljdHVyZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19pbWFnZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAvL2ZvbnQtZmFtaWx5OiAnb2JqZWN0LWZpdDogY292ZXI7JztcclxuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLWNvbHVtbigxMik7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuXHJcbiAgICAgICAgICAgICN7JGJsb2NrfS0tbGlnaHQgJiB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNiwgMCk7XHJcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcclxuXHJcbiAgICAgICAgICAgICN7JGJsb2NrfS0tcmV2ZXJzZWQgJiB7XHJcbiAgICAgICAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDQsIDApO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI3skYmxvY2t9LS1kYXJrICYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb250LXNtb290aGluZztcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig1LCAwKTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNzBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICN7JGJsb2NrfS0tbGlnaHQgJiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYTpub3QoLmJ0bik6aG92ZXIge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHAsXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGksXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAjeyRibG9ja30tLWRhcmsgJiB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udC1zbW9vdGhpbmc7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xyXG5cclxuICAgICAgICAjeyRibG9ja30tLWRhcmsgJiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLmN0YS1saXN0LWJsb2NrIHtcclxuICAgIEBpbmNsdWRlIGdyaWQtcm93O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDNyZW07XHJcbiAgICBwYWRkaW5nLXRvcDogM3JlbTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVyZW07XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogNXJlbTtcclxuICAgIH1cclxufVxyXG5cclxuLmN0YS1saXN0LWJsb2NrX19pbm5lciB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jdGEtbGlzdC1ibG9ja19faGVhZGluZyB7XHJcbiAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICBjb2xvcjogJHByb2ZpbGVzLWJsdWU7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgIH1cclxufVxyXG5cclxuLmN0YS1saXN0LWJsb2NrX190ZXh0IHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluJyk7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uY3RhLWxpc3QtYmxvY2tfX2N0YS1oZWFkaW5nIHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgbWFyZ2luLXRvcDogMi41cmVtO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgIH1cclxufVxyXG5cclxuLmN0YS1saXN0LWJsb2NrX19jdGEtbGlzdCB7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xyXG5cclxuICAgIGxpIHtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGljb24tY2hldnJvbignYmx1ZS1lJywgNnB4LCAxMHB4LCAxcHgsIDJweCk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkcHJvZmlsZXMtYmx1ZTtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRob3Zlci1jeWFuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICYrIGxpIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkYmctZ3JheTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMSAzMyU7XHJcblxyXG4gICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJnLWdyYXk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMyU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGljb24tY2hldnJvbignYmx1ZS1lJywgNnB4LCAxMHB4LCAxcHgsIDJweCk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByb2ZpbGVzLWJsdWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLmV2ZW50c19fY29udGFpbmVyIHtcclxuICAgICYtLWNlbnRlcmVkIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmV2ZW50c19fdGV4dCB7XHJcbiAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBNZWRpdW0nKTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxufVxyXG5cclxuLmV2ZW50c19fbGluayB7XHJcbiAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG59XHJcblxyXG4uZXZlbnRzX19pbWcge1xyXG4gICAgbWFyZ2luLXRvcDogM3B4O1xyXG59XHJcblxyXG4uZXZlbnRzX19yZWdpc3RyYXRpb24tYnRuIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcblxyXG4gICAgLmJ0biB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ldmVudHNfX3JlZ2lzdHJhdGlvbiB7XHJcbiAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE4cHggMThweDtcclxuICAgIGNvbG9yOiAjOGJiNzQwO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB0b3A6IC03cHg7XHJcblxyXG4gICAgJi0tb3BlbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaGVja21hcmstZ3JlZW4uc3ZnJyk7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICAmLS1jbG9zZWQge1xyXG4gICAgICAgIGNvbG9yOiAkcGxhY2Vob2xkZXItZ3JheTtcclxuICAgIH1cclxufVxyXG5cclxuLmV2ZW50c19fZGlzY2xhaW1lciB7XHJcbiAgICBAaW5jbHVkZSBmb250KCdDYWJpbicpO1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmF5LWxpZ2h0O1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG59XHJcbiIsIi8vc2Fzcy1saW50OmRpc2FibGUgbWl4aW5zLWJlZm9yZS1kZWNsYXJhdGlvbnMgZm9yY2UtZWxlbWVudC1uZXN0aW5nXHJcblxyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gZG9jdG9yLXNlYXJjaCAoZmluZCBhIGRvY3RvciBzZWFyY2ggb24gdGhlIGZhZCBzZWFyY2ggcmVzdWx0cyB0ZW1wbGF0ZSlcclxuXHJcbi5kb2N0b3Itc2VhcmNoX19jb250YWluZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktYmFja2dyb3VuZDtcclxuXHJcbiAgICAuZG9jdG9yLXNlYXJjaF9faW5uZXItY29udGFpbmVyIHtcclxuICAgICAgICBwYWRkaW5nOiA2MHB4IDAgNDBweDtcclxuICAgIH1cclxufVxyXG5cclxuLnNlYXJjaC10aXRsZV9fbWFpbi1zZWFyY2gge1xyXG4gICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgIHBhZGRpbmc6IDAgOHB4O1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5kb2N0b3Itc2VhcmNoX19pbm5lci1jb250YWluZXIge1xyXG4gICAgLmRvY3Rvci1zZWFyY2hfX29ubHktc2hvdyB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXItY29sLXIge1xyXG4gICAgICAgIEBpbmNsdWRlIHNtYWxsLW1heCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZG9jdG9yLXNlYXJjaC1sYXN0bmFtZV9fY29udGFpbmVyIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0NXB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC50aXRsZS1sYXN0bmFtZSB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGl1bS1tYXgge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgbWFyZ2luOiA2cHggMnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzRweDtcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzNHB4O1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJi5pcy1zZWxlY3RlZCB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZG9jdG9yLXRhYnNfX2NvbnRhaW5lciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheS1iYWNrZ3JvdW5kO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcblxyXG4gICAgLmRvY3Rvci10YWJzX19pbm5lci1jb250YWluZXIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5kb2N0b3ItdGFic19fZmlsdGVycy1idXR0b25zIHtcclxuICAgICYubGFyZ2UtMTIuY29sdW1ucyB7XHJcbiAgICAgICAgZmxleDogbm9uZTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMjVweDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpO1xyXG4gICAgfVxyXG5cclxuICAgIC5sYXJnZS0zLnNtYWxsLTEyLmNvbHVtbnMge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgZmxleDogMCAwIDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCAyMSU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5sYXJnZS05LmNvbHVtbnMge1xyXG4gICAgICAgIEBpbmNsdWRlIG1lZGl1bS1tYXgge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjllbTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpdW0tbWF4IHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpdW0tbWF4IHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1vZi10eXBlKDEpIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1sYXN0LW9mLXR5cGUoMSkge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaXVtLW1heCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5jdXJyZW50LXNlbGVjdGlvbiB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmF5LWxpZ2h0O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpdW0tbWF4IHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIG9ubHkpIHtcclxuICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuX19jb250YWluZXItY29udGVudC1pbm5lciB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIHdpZHRoOiA3NSU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mYWQtc2VhcmNoX19maWx0ZXItYnRuIHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIE1lZGl1bScpO1xyXG4gICAgYmFja2dyb3VuZDogdXJsKCcvYXNzZXRzL2ltZy9zdmcvaWNvbi1jbG9zZS1jaXJjbGUtYmx1ZS5zdmcnKSBuby1yZXBlYXQgcmlnaHQgMTJweCBjZW50ZXI7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItYWxscG9ydHM7XHJcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIHBhZGRpbmc6IDdweCAzNXB4IDdweCAxNXB4O1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMjVzIGVhc2U7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvc3ZnL2ljb24tY2xvc2UtY2lyY2xlLXdoaXRlLnN2ZycpO1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5kb2N0b3ItdGFic19fZmlsdGVycy1idXR0b25zLS1zZWxlY3RlZCAmIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmRvY3Rvci10YWJzX19maWx0ZXJzLWJ1dHRvbnMtLXVuYXBwbGllZCAmIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxuICAgIH1cclxufVxyXG5cclxuLmRvY3Rvci10YWJzX19maWx0ZXJzLWNvbnRhaW5lciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcGFkZGluZzogMzVweCA0NXB4O1xyXG5cclxuICAgIEBpbmNsdWRlIG1lZGl1bS1tYXgge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LWJhY2tncm91bmQ7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcclxuICAgICAgICBwYWRkaW5nOiAzMHB4IDM1cHg7XHJcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB6LWluZGV4OiA5OTk4O1xyXG4gICAgfVxyXG5cclxuICAgIC5kb2N0b3ItdGFic19fY2xvc2UtZmlsdGVyLW1vZGFsIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpdW0tbWF4IHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxOHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1nL2Fycm93LWxlZnQtYmx1ZS5wbmcnKTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYub3BlbiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcblxyXG4gICAgLmRvY3Rvci10YWJzX19maWx0ZXJzLWNvbnRhaW5lci1pbm5lciB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTMuMzMlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm11bHRpc2VsZWN0LWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDAgMSAzMCU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMy4wNSU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRvY3Rvci10YWJzX19maWx0ZXItc2VsZWN0IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWdyYXktbGlnaHQ7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAxNTBweDtcclxuICAgICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDEwcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuXHJcbiAgICAgICAgJi5vcGVuIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGxlZnQ6IDE1cHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgICAgIHRvcDogNjNweDtcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyLWZsb2F0O1xyXG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDdweCAwO1xyXG5cclxuICAgICAgICAgICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IC02cHggMCAwIDVweDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDkxLjUlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5tdWx0aXNlbGVjdC1jb250YWluZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5kb2N0b3ItdGFic19fZmlsdGVyLXNlbGVjdC1jb250YWluZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICAgICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy9hc3NldHMvaW1nL2Fycm93LWRvd24td2hpdGUucG5nJykgOTYlIGNlbnRlciBuby1yZXBlYXQgJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIHBhZGRpbmc6IDEycHggMTVweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLm9wZW4ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1nL2Fycm93LXVwLXdoaXRlLnBuZycpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi5kb2N0b3ItZmlsdGVyX19pbm5lciB7XHJcbiAgICBtYXJnaW4tdG9wOiAzNXB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgIC5kb2N0b3ItdGFic19fYXBwbHktZmlsdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYXF1YS1yb2xsb3ZlcjtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjVweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMgZWFzZS1vdXQ7XHJcbiAgICAgICAgd2lkdGg6IDE4NXB4O1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaXVtLW1heCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmFuZ2U7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1iYWhpYTtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmRvY3Rvci10YWJzX19maWx0ZXJzLXRvZ2dsZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmFoaWE7XHJcbiAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgIGhlaWdodDogNjBweDtcclxuICAgIG1pbi13aWR0aDogMjIwcHg7XHJcbiAgICBwYWRkaW5nOiAxOHB4IDQwcHggMThweCAyMHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMgZWFzZS1vdXQsIGhlaWdodCAuMjVzIGVhc2Utb3V0O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1nL3N2Zy9pY29uLWNoZXZyb24td2hpdGUtcy5zdmcnKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5MCUgY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1nL2Fycm93LXJpZ2h0LXdoaXRlLnBuZycpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5NyUgY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmlzLW9wZW4ge1xyXG4gICAgICAgIGhlaWdodDogNzVweDtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9zdmcvaWNvbi1jaGV2cm9uLXdoaXRlLW4uc3ZnJyk7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1nL2Fycm93LXJpZ2h0LXdoaXRlLnBuZycpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cclxuLy8gZmFkLXNlYXJjaCAocHJpbWFyeSBuYXYgZmluZCBhIGRvY3RvciBzZWFyY2gpXHJcblxyXG4uZmFkLXNlYXJjaCxcclxuLmRvY3Rvci1zZWFyY2gge1xyXG4gICAgLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXIge1xyXG4gICAgICAgIC5mYWQtc2VhcmNoX19zZWFyY2gtaW5wdXQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1zZWFyY2gtZmxhdC1ibGFjay5zdmcnKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTVweCBjZW50ZXI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZmFkLXNlYXJjaCB7XHJcbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19pdGVtICYge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWFyY2gtYm94X19zZWFyY2gtY29udGFpbmVyIHtcclxuICAgICAgICAuZmFkLXNlYXJjaF9fc2VhcmNoLWlucHV0IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAyMXB4IDIxcHg7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjFweCAyMnB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZG9jdG9yLXNlYXJjaCB7XHJcbiAgICAuc2VhcmNoLWJveF9fc2VhcmNoLWNvbnRhaW5lciB7XHJcbiAgICAgICAgLmZhZC1zZWFyY2hfX3NlYXJjaC1pbnB1dCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxN3B4IDE3cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQycHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxOXB4IDE5cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQ1cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTdweCAxN3B4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0MnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZmFkLXNlYXJjaF9faW5uZXItY29udGFpbmVyIHtcclxuICAgIHBhZGRpbmc6IDUwcHggMDtcclxuXHJcbiAgICAuc2VhcmNoLWlucHV0LWZpZWxkIHtcclxuICAgICAgICBmbGV4OiBub25lO1xyXG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICBwIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZmFkLXNlYXJjaF9fbmF2aWdhdGlvbi1jb250YWluZXIge1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAmLm9wZW4ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZmFkLXNlYXJjaF9fY29udGFpbmVyIHtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAwcHg7XHJcbiAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbn1cclxuXHJcbi5mYWQtc2VhcmNoX19ydWxlIHtcclxuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkY29sb3Itd2hpdGU7XHJcbiAgICBoZWlnaHQ6IDFweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uZmFkLXNlYXJjaC1sYXN0bmFtZV9fY29udGFpbmVyIHtcclxuICAgIC50aXRsZS1sYXN0bmFtZSB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1lZGl1bS1tYXgge1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgbWFyZ2luOiA3cHggMTFweDtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ1cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDVweDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnNlYXJjaC1ib3hfX2NvbnRhaW5lciB7XHJcbiAgICAuc2VhcmNoLWNvbnRlbnRfX2NvbnRhaW5lciB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDM1cHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtZWRpdW0tbWF4IHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VhcmNoLWJveF9fc2VhcmNoLWNvbnRhaW5lci1jb2wtciB7XHJcbiAgICAgICAgQGluY2x1ZGUgc21hbGwtbWF4IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy9CcmVha3BvaW50cyBhcmUgc2V0IHRvIG1hdGNoIEZvdW5kYXRpb24gZXhpc3RpbmcgYnJlYWtwb2ludC5cclxuXHJcbiRleHRyYS1sYXJnZTogMTkyMHB4O1xyXG4kbGFyZ2U6IDE0NDBweDtcclxuJG1lZGl1bTogMTAyNHB4O1xyXG4kbWVkaXVtLXNtYWxsOiA5MjVweDtcclxuJHNtYWxsLWxhcmdlOiA3NjdweDtcclxuJHNtYWxsOiA2NDBweDtcclxuXHJcbi8vTWF4IFdpZHRoIEJyZWFrIFBvaW50c1xyXG5AbWl4aW4gZXh0cmEtbGFyZ2UtbWF4IHtcclxuICBAbWVkaWEgKG1heC13aWR0aDogI3skZXh0cmEtbGFyZ2V9KSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBsYXJnZS1tYXgge1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRsYXJnZX0pIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG1lZGl1bS1tYXgge1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRtZWRpdW19KSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBtZWRpdW0tc21hbGwtbWF4IHtcclxuICBAbWVkaWEgKG1heC13aWR0aDogI3skbWVkaXVtLXNtYWxsfSkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gc21hbGwtbGFyZ2UtbWF4IHtcclxuICBAbWVkaWEgKG1heC13aWR0aDogI3skc21hbGwtbGFyZ2V9KSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBzbWFsbC1tYXgge1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAjeyRzbWFsbH0pIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vTWluIFdpZHRoIEJyZWFrIFBvaW50c1xyXG5AbWl4aW4gZXh0cmEtbGFyZ2UtbWluIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogI3skZXh0cmEtbGFyZ2V9KSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBsYXJnZS11cC1taW4ge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAjeyRsYXJnZX0pIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG1lZGl1bS1taW4ge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAjeyRtZWRpdW19KSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBtZWRpdW0tc21hbGwtbWluIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogI3skbWVkaXVtLXNtYWxsfSkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gc21hbGwtbGFyZ2UtbWluIHtcclxuICBAbWVkaWEgKG1pbi13aWR0aDogI3skc21hbGwtbGFyZ2V9KSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBzbWFsbC1taW4ge1xyXG4gIEBtZWRpYSAobWluLXdpZHRoOiAjeyRzbWFsbH0pIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG4iLCIvL3Nhc3MtbGludDpkaXNhYmxlIG1peGlucy1iZWZvcmUtZGVjbGFyYXRpb25zXHJcblxyXG4uZmFkLXNlYXJjaC1yZXN1bHRzIHtcclxuICAgIEBpbmNsdWRlIGdyaWQtcm93O1xyXG4gICAgLy8gbWF4LXdpZHRoOiA2MHJlbTtcclxuICAgIC8vIHBhZGRpbmc6IDFyZW0gMDtcclxuXHJcbiAgICAvLyBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAvLyAgICAgcGFkZGluZzogMXJlbSAzMHB4O1xyXG4gICAgLy8gfVxyXG5cclxuICAgIG1heC13aWR0aDogNzMuNjI1cmVtO1xyXG4gICAgcGFkZGluZzogNDVweCAwIDEwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAuc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1jb3VudCB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtLWxpbmsge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuXHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtIHtcclxuICAgIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xyXG4gICAgZm9udC1zaXplOiAxLjE1ZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRyYW5zaXRpb246IGJvcmRlciAyMDBtcyBlYXNlLW91dDtcclxuXHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgQGluY2x1ZGUgY2xlYXItZmxvYXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgLmhvdmVyLWJvcmRlciB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMnB4O1xyXG5cclxuICAgICAgICAgICAgLmFycm93LWxlZnQge1xyXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvYXJyb3ctcmlnaHQtd2hpdGUucG5nJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5mYWQtc2VhcmNoLXJlc3VsdHNfX3Jlc3VsdC1pdGVtLS1waHlzaWNpYW4ge1xyXG4gICAgICAgIC5ob3Zlci1ib3JkZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2VhLWJ1Y2t0aG9ybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5tb2JpbGUtYnV0dG9uIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlYS1idWNrdGhvcm47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbS0tcHJhY3RpY2Uge1xyXG4gICAgICAgIC5ob3Zlci1ib3JkZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc3VzaGk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubW9iaWxlLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zdXNoaTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fbG9nbyB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4nKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxNXB4IDEycHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA3cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHRvcDogLTIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jb250ZW50LWNvbnRhaW5lciB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICB3aWR0aDogNjAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMTBweCAyNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xyXG4gICAgICAgICAgICB3aWR0aDogNjUlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDM1cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiA3NSU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY29udGVudC1jb250YWluZXItcm93IHtcclxuICAgICAgICAgICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fc3BlY2lhbHR5LWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19zcGVjaWFsdHkge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19zcGVjaWFsdHktY29tbWE6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19sb2NhdGlvbi1jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19zcGVjaWFsdHktY29tbWEge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5kb3lsZXN0b3duLWxvZ28ge1xyXG4gICAgICAgIG1hcmdpbjogLTExcHggMCAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5pbWctY29udGFpbmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgICBmbG9hdDogbGVmdDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMSAxMTVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMTVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNzVweDtcclxuICAgICAgICAgICAgd2lkdGg6IDE3NXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDI3NXB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMjUlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbS1pbWctY29udGVudC1yb3cge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHggMTVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gLmNvbnRlbnQtY29udGFpbmVyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ob3Zlci1ib3JkZXIge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHdpZHRoIC4ycztcclxuICAgICAgICB3aWR0aDogOHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5yb3ctYXJlYSB7XHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjbGVhci1mbG9hdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0tdGl0bGUtcm93IHtcclxuICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgd2lkdGg6IDc1JTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaXVtLW1heCB7XHJcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fcmVzdWx0LWl0ZW0tdGl0bGUtY29udGFpbmVyIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAzNXB4IDAgMTVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweCAzNXB4IDEwcHggMTVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweCAzNXB4IDEwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19yZXN1bHQtaXRlbS10aXRsZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjVweDtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc2VhcmNoLXRpdGxlX190eXBlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgICAgICBjb2xvcjogJHBsYWNlaG9sZGVyLWdyYXk7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuMDVlbTtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuX19jb250YWluZXItY29udGVudC1pbm5lciB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTFweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDc1JTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbWVkaXVtLW1heCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBzbWFsbC1tYXgge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm1lZGl1bS0xMi5jb2x1bW5zIHtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbnAuZmFkLXNlYXJjaC1yZXN1bHRzX19waG9uZS1saW5rIHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1nL2ljb24tcGhvbmUucG5nJyk7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIHBhZGRpbmc6IDAgMCAwIDI1cHg7XHJcblxyXG4gICAgJi5mYWQtc2VhcmNoLXJlc3VsdHNfX3Bob25lLWxpbmstLWRlc2t0b3Age1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmZhZC1zZWFyY2gtcmVzdWx0c19fcGhvbmUtbGluay0tbW9iaWxlIHtcclxuICAgICAgICBjb2xvcjogJHByb2ZpbGVzLWJsdWU7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjJzIGVhc2U7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgNHB4IGxlZnQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMjJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mYWQtc2VhcmNoLXJlc3VsdHNfX2NvbnRhaW5lciB7XHJcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xyXG5cclxuICAgIC5mYWQtc2VhcmNoLXJlc3VsdHNfX2xvY2F0aW9uLWNvbnRhaW5lciB7XHJcbiAgICAgICAgLmZhZC1zZWFyY2gtcmVzdWx0c19fY2l0eS1zdGF0ZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluJyk7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDIycHg7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLm1vcmUtbG9jYXRpb24ge1xyXG4gICAgICAgICAgICBjb2xvcjogJHBsYWNlaG9sZGVyLWdyYXk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZmFkLXNlYXJjaC1yZXN1bHRzX19sb2NhdGlvbiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvaWNvbi1sb2NhdGlvbi5wbmcnKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMjJweDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIDNweCBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCA1cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mYWQtc2VhcmNoLXJlc3VsdHNfX21vYmlsZS1idG4tY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLm1vYmlsZS1idXR0b24ge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4IDUwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cyBlYXNlLW91dDtcclxuXHJcbiAgICAgICAgLmNhcnJvdC1yaWdodCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvYXJyb3ctcmlnaHQtd2hpdGUucG5nJyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgaGVpZ2h0OiAxM3B4O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjVweDtcclxuICAgICAgICAgICAgd2lkdGg6IDlweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLmZiLWNvbW1lbnRzIHtcclxuICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcblxyXG59XHJcblxyXG4uZmItY29tbWVudHNfX3dyYXAge1xyXG4gICAgbWF4LXdpZHRoOiA2NTBweDtcclxufVxyXG4iLCIuZmVhdHVyZS1ncmlkIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xyXG5cclxuICAgIC5kaCAmIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0cmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZmVhdHVyZS1ncmlkX19pdGVtIHtcclxuICAgIEBpbmNsdWRlIGljb24tY2lyY2xlLWFycm93LXdoaXRlLWUoNDBweCk7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgZmxleDogMCAxIDEwMCU7XHJcbiAgICAgICAgbWluLWhlaWdodDogMzUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xyXG4gICAgICAgIGZsZXg6IDAgMSA1MCU7XHJcbiAgICAgICAgaGVpZ2h0OiAzMDBweDtcclxuXHJcbiAgICAgICAgJjpudGgtY2hpbGQoMSkge1xyXG4gICAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcclxuICAgICAgICAgICAgb3JkZXI6IDI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7XHJcbiAgICAgICAgICAgIG9yZGVyOiA0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpudGgtY2hpbGQoNCkge1xyXG4gICAgICAgICAgICBvcmRlcjogMztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bnRoLWNoaWxkKDUpIHtcclxuICAgICAgICAgICAgb3JkZXI6IDU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOm50aC1jaGlsZCg2KSB7XHJcbiAgICAgICAgICAgIG9yZGVyOiA2O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgZmxleDogMCAxIDMzLjMzMyU7XHJcbiAgICAgICAgaGVpZ2h0OiA0MDBweDtcclxuICAgIH1cclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtYmxlbmQtbW9kZTogbXVsdGlwbHk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgIH1cclxuXHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjJzIGVhc2U7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICBib3R0b206IDUwcHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMTVweCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgICAgICBib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAuMTU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi0taW1nIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjI1O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLS1ncmVlbiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzkzYzI0MztcclxuICAgIH1cclxuXHJcbiAgICAmLS1wdXJwbGUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2MjNmOTA7XHJcbiAgICB9XHJcblxyXG4gICAgJi0tYmx1ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwYWZkNztcclxuICAgIH1cclxufVxyXG5cclxuLmZlYXR1cmUtZ3JpZF9faXRlbS1saW5rIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG59XHJcblxyXG4uZmVhdHVyZS1ncmlkX19pdGVtLWNvbnRhaW4ge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgcGFkZGluZzogMzBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLmZlYXR1cmUtZ3JpZF9faXRlbS10eXBlLFxyXG4uZmVhdHVyZS1ncmlkX19pdGVtLXRpdGxlIHtcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAyO1xyXG59XHJcblxyXG4uZmVhdHVyZS1ncmlkX19pdGVtLXR5cGUge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mZWF0dXJlLWdyaWRfX2l0ZW0tdGl0bGUge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcclxuICAgICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICB9XHJcbn1cclxuIiwiLmZlYXR1cmVkLWV2ZW50cyB7XHJcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAuZGggJiB7XHJcbiAgICAgICAgQGluY2x1ZGUgY29tcG9uZW50LW1hcmdpbi10b3A7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMnJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgcGFkZGluZzogMCA0cmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZmVhdHVyZWQtZXZlbnRzX190aXRsZSB7XHJcbiAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4uZmVhdHVyZWQtZXZlbnRzX19zdWJ0aXRsZSB7XHJcbiAgICBAaW5jbHVkZSBmb250KCdDYWJpbicpO1xyXG4gICAgY29sb3I6ICRjb2xvci1ibGFjaztcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIHBhZGRpbmc6IDAgMjBweDtcclxufVxyXG5cclxuLmZlYXR1cmVkLWV2ZW50c19fZXZlbnRzIHtcclxuICAgIG1hcmdpbi10b3A6IDJyZW07XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIC8vIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgLy8gZ3JpZC1hdXRvLXJvd3M6IDFmciAxZnI7XHJcbiAgICAgICAgLy8gZ3JpZC1nYXA6IDMwcHg7XHJcbiAgICAgICAgLy8gZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZmVhdHVyZWQtZXZlbnRzX19ldmVudCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC41cyBlYXNlO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDU2ODY7XHJcblxyXG4gICAgICAgIC5mZWF0dXJlZC1ldmVudHNfX2V2ZW50LWltYWdlIHtcclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICBAaW5jbHVkZSBpY29uLWNpcmNsZS1hcnJvdy13aGl0ZS1lKDQwcHgpO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3MHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB3aWR0aDogOTAlO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGJvdHRvbTogNDBweDtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgbGVmdDogY2FsYyg1MCUgLSAyMHB4KTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4ycyBlYXNlO1xyXG4gICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcclxuICAgICAgICBmbGV4OiAwIDEgNDUlO1xyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMnJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mZWF0dXJlZC1ldmVudHNfX2V2ZW50LWxpbmsge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5mZWF0dXJlZC1ldmVudHNfX2V2ZW50LWltYWdlIHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJjo6YmVmb3JlLFxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBib3gtc2hhZG93OiAtNTBweCA3MHB4IDE3MHB4IDIwcHggcmdiYSgwLCAwLCAwLCAuNSk7XHJcbiAgICAgICAgdG9wOiAtMTAwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcclxuICAgICAgICB3aWR0aDogMzAwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXMgZWFzZTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZmVhdHVyZWQtZXZlbnRzX19ldmVudC10eXBlIHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMjVweDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB0b3A6IDIwcHg7XHJcbiAgICB6LWluZGV4OiAyO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgIH1cclxufVxyXG5cclxuLmZlYXR1cmVkLWV2ZW50c19fZXZlbnQtaW5mbyB7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgcGFkZGluZzogMjBweCAyNXB4O1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mZWF0dXJlZC1ldmVudHNfX2V2ZW50LXRpdGxlLFxyXG4uZmVhdHVyZWQtZXZlbnRzX19ldmVudC1kYXRlLFxyXG4uZmVhdHVyZWQtZXZlbnRzX19ldmVudC1kZXNjcmlwdGlvbiB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA2cHg7XHJcbn1cclxuXHJcbi5mZWF0dXJlZC1ldmVudHNfX2V2ZW50LXRpdGxlIHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi5mZWF0dXJlZC1ldmVudHNfX2V2ZW50LWRhdGUge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxufVxyXG5cclxuLmZlYXR1cmVkLWV2ZW50c19fY3RhIHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgIEBpbmNsdWRlIGljb24tY2hldnJvbignb3JhbmdlLWUnLCA2cHgsIDEwcHgsIDFweCwgMCk7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi10b3A6IDJyZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3Itc2VhLWJ1Y2t0aG9ybjtcclxuICAgIH1cclxufVxyXG4iLCIuZmlndXJlIHtcclxuICAgICYuZmlndXJlLS1tYWluIHtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5maWd1cmVfX2NhcHRpb24ge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4nKTtcclxuICAgIGNvbG9yOiAkY29sb3ItZ3JheTtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgIG1hcmdpbi10b3A6IDFyZW07XHJcbn1cclxuXHJcbi5maWd1cmVfX3ZpZGVvIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNzE5ODEyJTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICBpZnJhbWUsXHJcbiAgICB2aWRlbyB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxufVxyXG4iLCIuZmlsdGVyX19oZWFkaW5nIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgbWFyZ2luLXRvcDogMnJlbTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIHAge1xyXG4gICAgICAgIGZsZXg6IDAgMCAxMzBweDtcclxuICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMzBweDtcclxuICAgICB9XHJcblxyXG4gICAgLmZpbHRlcl9faGVhZGluZy1ydWxlIHtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLWFsdG87XHJcbiAgICAgICAgZmxleDogMSAwIGF1dG87XHJcbiAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRvcDogMTNweDtcclxuICAgIH1cclxufVxyXG5cclxuLmZpbHRlcl9fcm93IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIH1cclxufVxyXG5cclxuLmZpbHRlciB7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDcwcHg7XHJcbiAgICB3aWR0aDogNTAlO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAmOm50aC1jaGlsZCgybikge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIH1cclxuXHJcbiAgICAuZmlsdGVyX19pbnB1dCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0MnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtX19zZWxlY3Qge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAuZGggJiB7XHJcbiAgICAgICAgICAgIGhlaWdodDogNTVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5maWx0ZXJfX3N1Ym1pdCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xyXG4gICAgd2lkdGg6IDIxNHB4O1xyXG59XHJcbiIsIi5mb290ZXIge1xyXG4gICAgJl9fdXBwZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aWxkLXNhbmQ7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdXBwZXItY29udGFpbmVyIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX191cHBlci1pbm5lciB7XHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJG1heCwgJHByZS1kZXNrdG9wKSB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLXJvdztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fYnJhbmRpbmcge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcblxyXG4gICAgICAgICAgICAuZGggJiB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigzKTtcclxuICAgICAgICAgICAgLy90ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX3dyYXAge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3VyZ2VudC1jYXJlLFxyXG4gICAgJl9fbG9nbyB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdXJnZW50LWNhcmUge1xyXG4gICAgICAgIGhlaWdodDogNjZweDtcclxuICAgICAgICB3aWR0aDogMjQwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbG9nbyB7XHJcbiAgICAgICAgaGVpZ2h0OiAyNnB4O1xyXG4gICAgICAgIHdpZHRoOiAxNTJweDtcclxuICAgIH1cclxuXHJcbiAgICAmX19hZGRyZXNzIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX25hdmlnYXRpb24ge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMi41KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbmF2aWdhdGlvbiB7XHJcbiAgICAgICAgYTpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMjVweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibG9nLXRlYWw7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0cHg7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAzcHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTRweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcblxyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX25hdmlnYXRpb24tbGlzdCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdW5zdHlsZWQtbGlzdDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xyXG4gICAgfVxyXG5cclxuICAgICZfX25hdmlnYXRpb24taXRlbSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNnB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kaCAmIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4nKTtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbmF2aWdhdGlvbi1saW5rIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRhY3Qge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICAvL2Rpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDQpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW0haW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuZGggJiB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWJsYWNrO1xyXG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fZXhjZXJwdCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19uYXZpZ2F0aW9uLS1jb250YWN0IHtcclxuICAgICAgICA+IHAsXHJcbiAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZm9ybSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjhweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX2lucHV0IHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNTVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAjZTZlMWUyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmX19idG4ge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzUwcmVtO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogLjc1MHJlbTtcclxuICAgICAgICAgICAgcGFkZGluZzogOXB4IDE1cHg7XHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRhY3QtbGluayB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3NvY2lhbCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAvKiBAaW5jbHVkZSBncmlkLWNvbHVtbigzKTsgKi9cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc29jaWFsLWxpc3Qge1xyXG4gICAgICAgIEBpbmNsdWRlIHVuc3R5bGVkLWxpc3Q7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19zb2NpYWwtaXRlbSB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMnB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA4cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc29jaWFsLWxpbmsge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMjUwbXMgZWFzZS1vdXQ7XHJcblxyXG4gICAgICAgICYtLWZhY2Vib29rIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMnB4IDI1cHgpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDEwcHggMjBweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYtLXllbHAge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDI1cHggMjVweCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMjBweCAyMHB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi0tdHdpdHRlciB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMjBweCAyNXB4KTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgyMHB4IDE2cHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLS1nb29nbGUtcGx1cyB7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDMxcHggMjBweCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMjVweCAxNnB4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi0tcGludGVyZXN0LFxyXG4gICAgICAgICYtLXlvdXR1YmUsXHJcbiAgICAgICAgJi0taW5zdGFncmFtIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgyMHB4IDI1cHgpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDE2cHggMjBweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc29jaWFsLWxvZ28ge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAmX19sb3dlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWViYjtcclxuICAgIH1cclxuXHJcbiAgICAmX19sb3dlci1jb250YWluZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDMycHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuICAgICAgICAgICAgcGFkZGluZzogMThweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbG93ZXItaW5uZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLWNvbHVtbigxMik7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19jb3B5cmlnaHQge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICBvcmRlcjogMjtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbicpO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2xlZ2FsLW5hdmlnYXRpb24ge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcclxuICAgICAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbGVnYWwtbmF2aWdhdGlvbi1saXN0IHtcclxuICAgICAgICBAaW5jbHVkZSB1bnN0eWxlZC1saXN0O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbGVnYWwtbmF2aWdhdGlvbi1pdGVtIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19sZWdhbC1uYXZpZ2F0aW9uLWxpbmsge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kaCAmIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvL3Nhc3MtbGludDpkaXNhYmxlIG5vLXZlbmRvci1wcmVmaXhlcyBwbGFjZWhvbGRlci1pbi1leHRlbmRcclxuXHJcbiRib3hTaGFkb3c6IDAgMCA2MHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcblxyXG4vLyBNaWNyb3NpdGVcclxuXHJcbi5mb3JtIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmLS1ldmVudC1maWx0ZXIge1xyXG4gICAgICAgIEBleHRlbmQgLmZvcm07XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRjb2xvci1hbHRvO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faW5wdXQge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggJGNvbG9yLWFsdG87XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItZ3JheTtcclxuICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcclxuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc2VsZWN0IHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi8uLi9hc3NldHMvaW1nL3NlbGVjdC1hcnJvdy5wbmcnKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDEwMCUgLSAxNnB4KSBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAkY29sb3ItYWx0bztcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgIHRleHQtb3ZlcmZsb3c6ICcnO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0X3BsdXMpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDQwMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgb3B0aW9uIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbn1cclxuXHJcbnNlbGVjdDo6LW1zLWV4cGFuZCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vLyBSZWRlc2lnblxyXG4uZGgge1xyXG4gICAgLmZvcm0tLWZpbHRlcnMge1xyXG5cclxuICAgICAgICBmaWVsZHNldCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1hbHRvO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JheTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmZvcm0tLWJveCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWlyb247XHJcbiAgICAgICAgYm94LXNoYWRvdzogJGJveFNoYWRvdztcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMTJweCBzb2xpZCAkd2hpdGU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgICAgICBib3JkZXI6IDE1cHggc29saWQgJHdoaXRlO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZmllbGRzZXQge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtLS1maWx0ZXJzLFxyXG4gICAgLmZvcm0tLWJveCB7XHJcblxyXG4gICAgICAgIGFzaWRlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZpZWxkc2V0IHtcclxuICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgZm9ybSB7XHJcbiAgICAgICAgICAgID4gKiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICA+IC5maWVsZHNldC0tbWFyZ2luLWJvdHRvbS1zbSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuOXJlbTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaW5wdXQsXHJcbiAgICAgICAgdGV4dGFyZWEge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbicpO1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgICZbdHlwZT0ndGV4dCddLFxyXG4gICAgICAgICAgICAmW3R5cGU9J251bWJlciddLFxyXG4gICAgICAgICAgICAmW3R5cGU9J2VtYWlsJ10ge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1NXB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcGxhY2Vob2xkZXItZ3JheTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJlt0eXBlPSdyYWRpbyddLFxyXG4gICAgICAgICAgICAmW3R5cGU9J2NoZWNrYm94J10ge1xyXG4gICAgICAgICAgICAgICAgJi5pcy1pbnZhbGlkLWlucHV0ICsgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRyZWctcmVkO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJlt0eXBlPSdjaGVja2JveCddIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGV4dGFyZWEge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRwbGFjZWhvbGRlci1ncmF5O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZm9ybV9fdGV4dGFyZWEtd3JhcCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDIxcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmlucHV0LWxhYmVsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgICAmLS1pbmxpbmUge1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMnJlbTtcclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTJweCAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT0ncmFkaW8nXSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxM3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxM3B4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLS1ibG9jayB7XHJcbiAgICAgICAgICAgICAgICAmICsgLmlucHV0LWxhYmVsLS1ibG9jayB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLjI1cmVtO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLS1zaG9ydCB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNzVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi0tY2hlY2tib3gge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuXHJcbiAgICAgICAgICAgICAgICBpbnB1dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogM3B4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYtLXBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgdGV4dGFyZWEge1xyXG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDdweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZm9ybS0tZmlsdGVycyxcclxuICAgIC5mb3JtLS1ib3gsXHJcbiAgICAuc2VhcmNoLWJveCB7XHJcbiAgICAgICAgLmlucHV0LWxhYmVsLS1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkcGxhY2Vob2xkZXItZ3JheTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGxlZnQgLjJzIGVhc2UsIHRvcCAuMnMgZWFzZSwgZm9udC1zaXplIC4ycyBlYXNlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBpbnB1dCxcclxuICAgICAgICAgICAgdGV4dGFyZWEge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDdweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDVweDtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuZm9ybV9fYXN0ZXJpc2sge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLmlucHV0LWxhYmVsLS1pY29uLXNlYXJjaCB7XHJcbiAgICAgICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA0NXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1zZWFyY2gtZmxhdC1ibGFjay5zdmcnKTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxNXB4IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTdweCAxN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VhcmNoLWJveCB7XHJcbiAgICAgICAgLmlucHV0LWxhYmVsLS1wbGFjZWhvbGRlciB7XHJcbiAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgdG9wOiAxMnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5mb3JtX19hc3RlcmlzayB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuICAgICAgICBjb2xvcjogI2I3MDAwMDtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIC4xZW07XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdG9wOiAuMDJlbTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBlYXNlLCBmb250LXNpemUgLjJzIGVhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLmZvcm0tZXJyb3Ige1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluJyk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZy1yZWQ7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuXHJcbiAgICAgICAgJi5pcy12aXNpYmxlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5zZWFyY2gtYm94ICYge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMWVtO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZm9ybV9faW5uZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJ0bi5mb3JtX19zdWJtaXQtYnRuIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNTBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uZm9ybV9fZGlzY2xhaW1lciB7XHJcbiAgICAmLmlzLWNvbGxhcHNlZCB7XHJcbiAgICAgICAgLmZvcm1fX2Rpc2NsYWltZXItdG9nZ2xlIHtcclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9zdmcvaWNvbi1wbHVzLnN2ZycpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMnB4IDEycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mb3JtX19kaXNjbGFpbWVyLWNvbnRlbnQtY29udGFpbmVyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1leHBhbmRlZCB7XHJcbiAgICAgICAgLmZvcm1fX2Rpc2NsYWltZXItdG9nZ2xlIHtcclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9zdmcvaWNvbi1taW51cy5zdmcnKTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTJweCAzcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mb3JtX19kaXNjbGFpbWVyLWNvbnRlbnQtY29udGFpbmVyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZm9ybV9fZGlzY2xhaW1lci1oZWFkaW5nLWNvbnRhaW5lciB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIH1cclxufVxyXG5cclxuLmZvcm1fX2Rpc2NsYWltZXItdG9nZ2xlIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgIGhlaWdodDogMzBweDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLmZvcm1fX2Rpc2NsYWltZXItdGV4dCB7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuIiwiJHktb2Zmc2V0OiAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcclxuXHJcbi5oYW1idXJnZXIge1xyXG4gIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAxM3B4LCAyMHB4LCBudWxsLCBudWxsKTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgcGFkZGluZzogJGhhbWJ1cmdlci1wYWRkaW5nLXkgJGhhbWJ1cmdlci1wYWRkaW5nLXg7XHJcbiAgdHJhbnNpdGlvbjogZmlsdGVyICRoYW1idXJnZXItdHJhbnNpdGlvbi1kdXJhdGlvbiAkaGFtYnVyZ2VyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uO1xyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgJl9fb3V0ZXIge1xyXG4gICAgQGluY2x1ZGUgc2l6ZSgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMyArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIpO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIH1cclxuXHJcbiAgJl9faW5uZXIge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW4tdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArIDNweDtcclxuXHJcbiAgICAuaXMtb3BlbiAmIHtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxcHgsIDApIHJvdGF0ZSg0NWRlZyk7XHJcbiAgICB9XHJcblxyXG4gICAgJixcclxuICAgICY6OmJlZm9yZSxcclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgQGluY2x1ZGUgc2l6ZSgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0KTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhhbWJ1cmdlci1sYXllci1jb2xvcjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGhhbWJ1cmdlci10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UsIHdpZHRoICRoYW1idXJnZXItdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlO1xyXG5cclxuICAgICAgLmlzLW9wZW4gJiB7XHJcbiAgICAgICAgd2lkdGg6ICRoYW1idXJnZXItbGF5ZXItd2lkdGg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOjpiZWZvcmUsXHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcclxuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRoYW1idXJnZXItdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlO1xyXG5cclxuICAgICAgLmlzLW9wZW4gJiB7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggLyAtNywgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogLTEsIDApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICBib3R0b206ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcclxuXHJcbiAgICAgIC5pcy1vcGVuICYge1xyXG4gICAgICAgIHRvcDogKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKyAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMik7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkeS1vZmZzZXQgKiAtMiwgMCkgcm90YXRlKC05MGRlZyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLmhlYWRlciB7XHJcbiAgICAuZGggJiB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDEycHggMnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgei1pbmRleDogJHotaW5kZXgtMjtcclxuICAgIH1cclxuXHJcbiAgICAmX19tYWluIHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtcm93O1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24obGVmdCwgbWlkZGxlKTtcclxuICAgICAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2JyYW5kaW5nIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1jb2x1bW4oNyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1jb2x1bW4oNyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2hvbWUtbGluayB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19sb2dvLFxyXG4gICAgJl9fdXJnZW50LWNhcmUge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19sb2dvIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoMik7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMTAycHggMThweCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMzE4cHggNTJweCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3VyZ2VudC1jYXJlIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoMSk7XHJcbiAgICAgICAgICAgIC8vQGluY2x1ZGUgc2l6ZSgyNDBweCA2NnB4KTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAvL0BpbmNsdWRlIHNpemUoMjc5cHggMjZweCk7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNTM1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICAvL21hcmdpbi1ib3R0b206IDdweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9faGVhcnQtdmFzY3VsYXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1vcmRlcigxKTtcclxuICAgICAgICAgICAgLy9AaW5jbHVkZSBzaXplKDI0MHB4IDY2cHgpO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIC8vQGluY2x1ZGUgc2l6ZSgyNzlweCAyNnB4KTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgIC8vbWFyZ2luLWJvdHRvbTogN3B4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX193ZWxjb21lIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1jb2x1bW4oNSk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDhweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3dlbGNvbWUtbGluayB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1zZWEtYnVja3Rob3JuO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2RoIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoMSk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMjAwcHggMzNweCk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgzNTVweCA1OXB4KTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAzNTVweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIiRoZXJvSGVpZ2h0U206IDUwMHB4ICFpbXBvcnRhbnQ7XHJcbiRoZXJvSGVpZ2h0TWQ6IDUwMHB4ICFpbXBvcnRhbnQ7XHJcbiRoZXJvSGVpZ2h0TGc6IDYwMHB4ICFpbXBvcnRhbnQ7XHJcbiRjb2xvci1oZXJvLW92ZXJsYXk6ICMwMDY3QTA7XHJcblxyXG4uaGVybyB7XHJcbiAgICAkYmxvY2s6ICY7XHJcblxyXG4gICAgQGluY2x1ZGUgb3JiaXQtd3JhcHBlcjtcclxuICAgIG1pbi1oZWlnaHQ6IDI3MHB4O1xyXG5cclxuICAgICYtLXNsaWRlciB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRhaW5lciB7XHJcbiAgICAgICAgI3skYmxvY2t9XFwtLXNsaWRlciAmIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgb3JiaXQtY29udGFpbmVyO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldCkge1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNjQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgICZfX3NoYXJlIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtcm93O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDEwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi0tY2xlYXIsXHJcbiAgICAmLS1iYW5uZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYigyOCw2MiwxMDcpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI4LDYyLDEwNywxKSAwJSwgcmdiYSgxOSwxMDcsMTY5LDEpIDEwMCUpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI4LDYyLDEwNywxKSAwJSxyZ2JhKDE5LDEwNywxNjksMSkgMTAwJSk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI4LDYyLDEwNywxKSAwJSxyZ2JhKDE5LDEwNywxNjksMSkgMTAwJSk7XHJcbiAgICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyMxYzNlNmInLCBlbmRDb2xvcnN0cj0nIzEzNmJhOScsR3JhZGllbnRUeXBlPTEgKTtcclxuICAgIH1cclxuXHJcbiAgICAmLS1iYW5uZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYig0LDQ2LDg1KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCg0NWRlZywgcmdiYSg0LDQ2LDg1LDEpIDAlLCByZ2JhKDkxLDE0NSwxODUsMSkgMTAwJSk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoNDVkZWcsIHJnYmEoNCw0Niw4NSwxKSAwJSxyZ2JhKDkxLDE0NSwxODUsMSkgMTAwJSk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDQsNDYsODUsMSkgMCUscmdiYSg5MSwxNDUsMTg1LDEpIDEwMCUpO1xyXG4gICAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDQyZTU1JywgZW5kQ29sb3JzdHI9JyM1YjkxYjknLEdyYWRpZW50VHlwZT0xICk7XHJcbiAgICAgICAgaGVpZ2h0OiAxNzJweDtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxNzJweDtcclxuXHJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQ5cHgpIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaGVyb19fd3JhcHBlcixcclxuICAgICAgICAuaGVyb19fY29udGFpbmVyLFxyXG4gICAgICAgIC5oZXJvX19jb250ZW50LFxyXG4gICAgICAgIC5oZXJvX19zbGlkZSxcclxuICAgICAgICAuaGVyb19fYmctaW1hZ2UtY29udGFpbmVyLFxyXG4gICAgICAgIC5oZXJvX19iZy1pbWFnZSB7XHJcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0OXB4KSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NTBweCkge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNzJweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTcycHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhlcm9fX2NvbnRlbnQge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9zdmcvYmFubmVyLWNoZWNrLnN2ZycpO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM4NXB4O1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjA1O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICB0b3A6IC04MHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ5M3B4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3NsaWRlIHtcclxuICAgICAgICBAaW5jbHVkZSBvcmJpdC1zbGlkZTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuXHJcbiAgICAmX193cmFwcGVyIHtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBoZWlnaHQ6IDM1M3B4O1xyXG4gICAgICAgIC8vbWF4LWhlaWdodDogMzUzcHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgLy9oZWlnaHQ6IDI3MHB4O1xyXG4gICAgICAgICAgICAvL21heC1oZWlnaHQ6IDI3MHB4O1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI21haW4gJiB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzUzcHg7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ2MnB4O1xyXG5cclxuICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI3skYmxvY2t9XFwtLWNsZWFyICYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMzUzcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI3MHB4O1xyXG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMjcwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9faW1hZ2Uge1xyXG4gICAgICAgIEBpbmNsdWRlIG9yYml0LWltYWdlO1xyXG5cclxuICAgICAgICAjeyRibG9ja31cXC0td2lkZSAmIHtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiBjb3ZlcjsnO1xyXG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDM1M3B4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjcwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI3skYmxvY2t9XFwtLWNsZWFyICYge1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJ29iamVjdC1maXQ6IGNvdmVyOyc7XHJcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1JTtcclxuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2JnLWltYWdlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAmLS1zbSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0OXB4KSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi0tbWQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSBhbmQgKG1pbi13aWR0aDogNzUwcHgpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLS1sZyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjVweCkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY29udGVudCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udC1zbW9vdGhpbmc7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY29udGVudC1vdXRlciB7XHJcbiAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLXJvdztcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAjeyRibG9ja31cXC0tbmFycm93ICYge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDU3cHgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19jb250ZW50LWlubmVyIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLWNvbHVtbigxMik7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICN7JGJsb2NrfVxcLS1uYXJyb3cgJiB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uKDUsIDIwcHgpO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgI3skYmxvY2t9XFwtLXdpZGUgJiwgI3skYmxvY2t9XFwtLWNsZWFyICYge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLWNvbHVtbigxMSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgI3skYmxvY2t9XFwtLW5hcnJvdyAmIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICN7JGJsb2NrfVxcLS13aWRlICYsICN7JGJsb2NrfVxcLS1jbGVhciAmIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZsZXgtZ3JpZC1jb2x1bW4oOCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgICAgICN7JGJsb2NrfVxcLS1uYXJyb3cgJiB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA4MHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAjeyRibG9ja31cXC0td2lkZSAmLCAjeyRibG9ja31cXC0tY2xlYXIgJiB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uKDcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxOHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTUwcHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIGFuZCAobWluLXdpZHRoOiA3NTBweCkge1xyXG4gICAgICAgICAgICAgICAgZmxleDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDM1MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIGZsZXg6IDEgMCAxMDAlO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5oZXJvLS1iYW5uZXIgJiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDYwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgICAgICN7JGJsb2NrfVxcLS13aWRlICYsICN7JGJsb2NrfVxcLS1jbGVhciAmIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzOHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI3skYmxvY2t9XFwtLW5hcnJvdyAmIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCAkcGFsbV9zbSkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0OHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDRweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Ugb25seSkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA1NHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGggJiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhlcm8tLWJhbm5lciAmIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19oaWxpdGUge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmFoaWE7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc3ViaGVhZGluZyB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICAjeyRibG9ja31cXC0tc2xpZGVyICYge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNmVtO1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3NlcnZpY2UtbGluZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgI3skYmxvY2t9XFwtLXNsaWRlciAmIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZGVzY3JpcHRpb24ge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhOm5vdCguYnRuKTpob3ZlciB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19idXR0b24ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XHJcblxyXG4gICAgICAgIC5kaCAmIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0OXB4KSB7XHJcbiAgICAgICAgICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEzcHggMThweDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19uYXZpZ2F0aW9uIHtcclxuICAgICAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHotaW5kZXg6IDEwMDtcclxuXHJcbiAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NDlweCkge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGluaGVyaXQgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19uYXZpZ2F0aW9uLWNvbnRhaW5lciB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAzM3B4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICBib3R0b206IDI1cHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMDVweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMjVweDtcclxuICAgICAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgYm90dG9tOiAyNXB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAxMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NDlweCkge1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiAyNXB4O1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMDVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSBhbmQgKG1pbi13aWR0aDogNzUwcHgpIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbmV4dCxcclxuICAgICZfX3ByZXZpb3VzIHtcclxuICAgICAgICBAaW5jbHVkZSBvcmJpdC1jb250cm9sO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIHRvcDogN3B4O1xyXG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19uZXh0IHtcclxuICAgICAgICBAaW5jbHVkZSBvcmJpdC1uZXh0O1xyXG4gICAgICAgIHJpZ2h0OiAxM3B4O1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcclxuICAgIH1cclxuXHJcbiAgICAmX19wcmV2aW91cyB7XHJcbiAgICAgICAgQGluY2x1ZGUgb3JiaXQtcHJldmlvdXM7XHJcbiAgICAgICAgbGVmdDogMTNweDtcclxuICAgIH1cclxuXHJcbiAgICAmX19hcnJvdyB7XHJcbiAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMnB4IDE4cHgpO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3Itd2hpdGU7XHJcblxyXG4gICAgICAgICN7JGJsb2NrfV9fbmV4dDpob3ZlciAmLFxyXG4gICAgICAgICN7JGJsb2NrfV9fcHJldmlvdXM6aG92ZXIgJiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19kb3RzIHtcclxuICAgICAgICBAaW5jbHVkZSBvcmJpdC1idWxsZXRzO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTFweCAxMnB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTBweDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgICAgICAmLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQ5cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDExcHggMTJweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmRoIHtcclxuICAgIC5oZXJvLS1iYW5uZXIsXHJcbiAgICAuaGVyby0tY2xlYXIge1xyXG4gICAgICAgIC5oZXJvX19zaGFyZSArIC5oZXJvX193cmFwcGVyIHtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBIZXJvIENhcm91c2VsICh3aXRoIGNvbG9yIG92ZXJsYXkpXHJcbi5oZXJvLS1jYXJvdXNlbCB7XHJcbiAgICAkYmxvY2s6ICY7XHJcblxyXG4gICAgLmhlcm9fX2NvbnRhaW5lcixcclxuICAgIC5oZXJvX19jb250ZW50LFxyXG4gICAgLmhlcm9fX3NsaWRlLFxyXG4gICAgLmhlcm9fX2JnLWltYWdlLWNvbnRhaW5lcixcclxuICAgIC5oZXJvX19iZy1pbWFnZSB7XHJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQ5cHgpIHtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogJGhlcm9IZWlnaHRTbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkgYW5kIChtaW4td2lkdGg6IDc1MHB4KSB7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6ICRoZXJvSGVpZ2h0TWQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI1cHgpIHtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogJGhlcm9IZWlnaHRMZztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmhlcm9fX2NvbnRhaW5lciB7XHJcbiAgICAgICAgI3skYmxvY2t9LS1zbGlkZXIgJiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5oZXJvX19zbGlkZSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDY0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5oZXJvX19iZy1pbWFnZSB7XHJcbiAgICAgICAgJi1jb250YWluZXIge1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmhlcm9fX2NvbnRlbnQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLWhlcm8tb3ZlcmxheSwgLjgyNSk7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiA0NjBweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB3aWR0aDogNTAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJGRlc2t0b3ApIHtcclxuICAgICAgICAgICAgd2lkdGg6IDMzJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmhlcm9fX2NvbnRlbnQtb3V0ZXIge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDMycHggMzVweCA2NHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGVyb19fY29udGVudC1pbm5lciB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMThweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkgYW5kIChtaW4td2lkdGg6IDc1MHB4KSB7XHJcbiAgICAgICAgICAgIGZsZXg6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB3aWR0aDogMzUwcHggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBmbGV4OiAxIDAgMTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICAuaGVyb19fdGl0bGUge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzNHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGVyb19fc3ViaGVhZGluZyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNmVtO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmhlcm9fX25hdmlnYXRpb24ge1xyXG4gICAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTEwMHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAuaGVyb19fbmF2aWdhdGlvbi1jb250YWluZXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCAkZGVza3RvcCkge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIkaGVyb1RodW1iQWNjZW50Q29sb3JUZXh0OiAjNDlmMWZmO1xyXG5cclxuLmhlcm8tdGh1bWIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIG1pbi1oZWlnaHQ6IDI1MHB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICYtLXByYWN0aWNlIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogNTBweCAzMHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtLXByb3ZpZGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggMzBweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhlcm8tdGh1bWJfX2lubmVyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3c7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaGVyby10aHVtYl9faW1nIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cclxuICAgIC5oZXJvLXRodW1iLS1wcmFjdGljZSAmIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNTBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogNDAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5oZXJvLXRodW1iLS1wcm92aWRlciAmIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjUwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogMjUwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCAyNjBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNjBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDI2MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmhlcm8tdGh1bWJfX2NvbnRlbnQge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAuaGVyby10aHVtYi0tcHJhY3RpY2UgJiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjc1cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggMzBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQwMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5oZXJvLXRodW1iLS1wcm92aWRlciAmIHtcclxuICAgICAgICBmbGV4OiAxIDEgYXV0bztcclxuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4uaGVyby10aHVtYl9faGVhZGluZyB7XHJcbiAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzNHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5oZXJvLXRodW1iLS1wcm92aWRlciAmIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAtM3B4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0b3A6IC0xMHB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMzVweCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuaGVyby10aHVtYl9faGVhZGluZy0tbGluayB7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcblxyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9hc3NldHMvaW1nL3N2Zy9pY29uLWV4dC1saW5rLXdoaXRlLnN2ZycpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTRweCAxMnB4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJ1xcMGEwMCc7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAzcHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IC0xMXB4O1xyXG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5oZXJvLXRodW1iX19zdWJoZWFkaW5nIHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluJyk7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjNweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL21pY3Jvc2l0ZXRlbXBsYXRlcy9hc3NldHMvaW1nL3N2Zy9pY29uLWRveWxlc3Rvd24uc3ZnJyk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIycHggMjhweDtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMTZweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDIwcHggMTZweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgICB0b3A6IDdweDtcclxuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaGVyby10aHVtYl9fc3ViaGVhZGluZy10b29sdGlwIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4uaGVyby10aHVtYl9fY29sLTIge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5oZXJvLXRodW1iX19jb2wtbCxcclxuLmhlcm8tdGh1bWJfX2NvbC1yIHtcclxuICAgIGZsZXg6IDAgMSA1MCU7XHJcbn1cclxuXHJcbi5oZXJvLXRodW1iX19jb2wtbCB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAyJTtcclxufVxyXG5cclxuLmhlcm8tdGh1bWJfX2NvbC1yIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmLmhlcm8tdGh1bWJfX2NvbC1yLS1zaWRlYmFyIHtcclxuICAgICAgICBmbGV4OiAwIDAgMzUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDcwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGVyby10aHVtYi0tcHJhY3RpY2UgJiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDM1cHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5oZXJvLXRodW1iLS1wcm92aWRlciAmIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDM1cHgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaGVyby10aHVtYl9fY29sLWwtLXdpdGgtcnVsZSB7XHJcbiAgICBwYWRkaW5nLXRvcDogMjVweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAkd2hpdGU7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHdpZHRoOiA3MHB4O1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5oZXJvLXRodW1iLS1wcmFjdGljZSAmIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMzVweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmhlcm8tdGh1bWItLXByb3ZpZGVyICYge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMzVweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5oZXJvLXRodW1iX19jb2wtbC10ZXh0IHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluJyk7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5oZXJvLXRodW1iX19jb2wtbC1zdWJzZWN0aW9uLWhlYWRpbmcge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uaGVyby10aHVtYl9fY29sLWwtc3Vic2VjdGlvbi10ZXh0IHtcclxuICAgIGNvbG9yOiAkaGVyb1RodW1iQWNjZW50Q29sb3JUZXh0O1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG5cclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAkaGVyb1RodW1iQWNjZW50Q29sb3JUZXh0O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRoZXJvVGh1bWJBY2NlbnRDb2xvclRleHQ7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGVyby10aHVtYi0tcHJhY3RpY2UgJiB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGVyby10aHVtYi0tcHJvdmlkZXIgJiB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuICAgIH1cclxufVxyXG5cclxuLmhlcm8tdGh1bWJfX2NvbC1yLWhlYWRpbmcge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIH1cclxufVxyXG5cclxuLmhlcm8tdGh1bWJfX2NvbC1yLWxpc3Qge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBtYXJnaW4tbGVmdDogMDtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5oZXJvLXRodW1iX19idG4ge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIFNpZGViYXIgU3R5bGVzXHJcblxyXG4uaGVyby10aHVtYl9fc2lkZWJhciB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IDAgcmdiYSgwLCAwLCAwLCAuMik7XHJcbiAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiA1MHB4O1xyXG4gICAgICAgIHdpZHRoOiAzNTBweDtcclxuICAgIH1cclxufVxyXG5cclxuLmhlcm8tdGh1bWJfX3NpZGViYXItaW5uZXIge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5oZXJvLXRodW1iX19zaWRlYmFyLWxpc3Qge1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgIG1hcmdpbjogMDtcclxufVxyXG5cclxuLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmKyAuaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHdoaXRlO1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDM1cHgpO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDcwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0tc3ViaGVhZGluZyxcclxuLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLWFkZHJlc3MsXHJcbi5oZXJvLXRodW1iX19zaWRlYmFyLWxpc3QtaXRlbS1saW5rLFxyXG4uaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0tdGV4dCB7XHJcbiAgICBAaW5jbHVkZSBmb250KCdDYWJpbicpO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG59XHJcblxyXG4uaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0taGVhZGluZyB7XHJcbiAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgZm9udC1zaXplOiAyMnB4O1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgfVxyXG59XHJcblxyXG4uaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0tc3ViaGVhZGluZyB7XHJcbiAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICBtYXJnaW4tdG9wOiAxLjc1cmVtO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5oZXJvLXRodW1iX19zaWRlYmFyLWxpc3QtaXRlbS1saW5rIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBAaW5jbHVkZSBpY29uLWNoZXZyb24oJ2N5YW4tZScsIDVweCwgOHB4LCAxcHgsIDFweCk7XHJcbiAgICAgICAgY29sb3I6ICRoZXJvVGh1bWJBY2NlbnRDb2xvclRleHQ7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGhlcm9UaHVtYkFjY2VudENvbG9yVGV4dDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgIEBpbmNsdWRlIGljb24tY2hldnJvbignYmx1ZS1lJywgNXB4LCA4cHgsIDFweCwgMXB4KTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgfVxyXG59XHJcblxyXG4uaGVyby10aHVtYl9fc2lkZWJhci1saXN0LWl0ZW0tdGV4dCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAuMmVtO1xyXG5cclxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBzcGFuIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5oZXJvLXRodW1iX19zaWRlYmFyLWxpc3QtaXRlbS1waG9uZS1jdGEge1xyXG4gICAgbWFyZ2luLXRvcDogMTVweDtcclxuXHJcbiAgICAmLmhlcm8tdGh1bWJfX3NpZGViYXItbGlzdC1pdGVtLXBob25lLWN0YS0tZGVza3RvcCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvc3ZnL2ljb24tcGhvbmUtb3JhbmdlLnN2ZycpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxOHB4IDE4cHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkYmctZ3JheTtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRiZy1ncmF5O1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXNlYS1idWNrdGhvcm47XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwIDEwcHggMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5oZXJvLXRodW1iX19zaWRlYmFyLWxpc3QtaXRlbS1waG9uZS1jdGEtLW1vYmlsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIkZXh0OiAnNXdxYzJhJztcclxuXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XHJcbiAgc3JjOiAgdXJsKCcuLi93ZWJmb250cy9pY29tb29uL2ljb21vb24uZW90PycrJGV4dCk7XHJcbiAgc3JjOiAgdXJsKCcuLi93ZWJmb250cy9pY29tb29uL2ljb21vb24uZW90PycrJGV4dCsnI2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxyXG4gICAgdXJsKCcuLi93ZWJmb250cy9pY29tb29uL2ljb21vb24udHRmPycrJGV4dCkgZm9ybWF0KCd0cnVldHlwZScpLFxyXG4gICAgdXJsKCcuLi93ZWJmb250cy9pY29tb29uL2ljb21vb24ud29mZj8nKyRleHQpIGZvcm1hdCgnd29mZicpLFxyXG4gICAgdXJsKCcuLi93ZWJmb250cy9pY29tb29uL2ljb21vb24uc3ZnPycrJGV4dCsnI2ljb21vb24nKSBmb3JtYXQoJ3N2ZycpO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG59XHJcblxyXG5bY2xhc3NePVwiaWNvbi1cIl0sIFtjbGFzcyo9XCIgaWNvbi1cIl0ge1xyXG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXHJcbiAgJjpiZWZvcmUsICY6YWZ0ZXIge1xyXG4gICAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xyXG4gICAgc3BlYWs6IG5vbmU7XHJcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gIH1cclxuXHJcbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXHJcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxufVxyXG5cclxuQG1peGluIGljb21vb24oKSB7XHJcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cclxuICBmb250LWZhbWlseTogJ2ljb21vb24nICFpbXBvcnRhbnQ7XHJcbiAgc3BlYWs6IG5vbmU7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcblxyXG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xyXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbn1cclxuXHJcbiRpY29uLXR3aXR0ZXI6IFwiXFxmMDk5XCI7XHJcbiRpY29uLWZhY2Vib29rOiBcIlxcZjA5YVwiO1xyXG4kaWNvbi1nb29nbGUtcGx1czogXCJcXGYwZDVcIjtcclxuJGljb24tYW5nbGUtbGVmdDogXCJcXGYxMDRcIjtcclxuJGljb24tYW5nbGUtcmlnaHQ6IFwiXFxmMTA1XCI7XHJcbiRpY29uLXlvdXR1YmU6IFwiXFxmMTY3XCI7XHJcbiRpY29uLXBpbnRlcmVzdDogXCJcXGYyMzFcIjtcclxuJGljb24tY2FsZW5kYXI6IFwiXFxlOTAwXCI7XHJcbiRpY29uLW1lZGljYWwtZm9sZGVyOiBcIlxcZTkwMlwiO1xyXG4kaWNvbi1naWZ0OiBcIlxcZTkwMVwiO1xyXG4kaWNvbi1zdGV0aG9zY29wZTogXCJcXGU5MDZcIjtcclxuJGljb24tY2xvc2U6IFwiXFxlOTA3XCI7XHJcbiRpY29uLXNlYXJjaDogXCJcXGYwMDJcIjtcclxuXHJcbi5pY29uLWNsb3NlOmJlZm9yZSB7XHJcbiAgY29udGVudDogJGljb24tY2xvc2U7XHJcbn1cclxuLmljb24tc2VhcmNoOmJlZm9yZSB7XHJcbiAgY29udGVudDogJGljb24tc2VhcmNoO1xyXG59XHJcblxyXG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7XHJcbiAgY29udGVudDogJGljb24tdHdpdHRlcjtcclxufVxyXG4uaWNvbi1mYWNlYm9vazpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6ICRpY29uLWZhY2Vib29rO1xyXG59XHJcbi5pY29uLWdvb2dsZS1wbHVzOmJlZm9yZSB7XHJcbiAgY29udGVudDogJGljb24tZ29vZ2xlLXBsdXM7XHJcbn1cclxuLmljb24tYW5nbGUtbGVmdDpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6ICRpY29uLWFuZ2xlLWxlZnQ7XHJcbn1cclxuLmljb24tYW5nbGUtcmlnaHQ6YmVmb3JlIHtcclxuICBjb250ZW50OiAkaWNvbi1hbmdsZS1yaWdodDtcclxufVxyXG4uaWNvbi15b3V0dWJlOmJlZm9yZSB7XHJcbiAgY29udGVudDogJGljb24teW91dHViZTtcclxufVxyXG4uaWNvbi1waW50ZXJlc3Q6YmVmb3JlIHtcclxuICBjb250ZW50OiAkaWNvbi1waW50ZXJlc3Q7XHJcbn1cclxuLmljb24tY2FsZW5kYXI6YmVmb3JlIHtcclxuICBjb250ZW50OiAkaWNvbi1jYWxlbmRhcjtcclxufVxyXG4uaWNvbi1naWZ0OmJlZm9yZSB7XHJcbiAgY29udGVudDogJGljb24tZ2lmdDtcclxufVxyXG4uaWNvbi1tZWRpY2FsLWZvbGRlcjpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6ICRpY29uLW1lZGljYWwtZm9sZGVyO1xyXG59XHJcbi5pY29uLXN0ZXRob3Njb3BlOmJlZm9yZSB7XHJcbiAgY29udGVudDogJGljb24tc3RldGhvc2NvcGU7XHJcbn1cclxuIiwiLmZsZXhsaXN0IHtcclxuICAgIHBhZGRpbmctbGVmdDogMnJlbTtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XHJcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgaDMsXHJcbiAgICBwIHtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6ICMwMDY2YTE7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMjZhM2RjO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ydGYge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fd3JhcCB7XHJcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlc21va2U7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgICAgICAgcGFkZGluZzogNDVweCAzNXB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtcSgkbWF4LCAkcHJlLXBhbG0pIHtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMyMHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZmxleGxpc3QtLW5ld3MgJiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDI0cHggMjhweDtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4pIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRjb2xvci1pcm9uO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGNvbG9yLWlyb247XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGVzbW9rZTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLWlyb247XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5mbGV4bGlzdF9fdHlwZSxcclxuICAgICAgICAgICAgLmZsZXhsaXN0X19kYXRlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcclxuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmZsZXhsaXN0X190eXBlIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmZsZXhsaXN0X19kYXRlIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuZmxleGxpc3RfX2V4Y2VycHQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHJcbiAgICAgICAgICAgICAgICAuZGggJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5mbGV4bGlzdF9fdGFnIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcblxyXG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJywnO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRob3Zlci1jeWFuO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZmxleGxpc3QtLW5ld3MtZmVhdHVyZSAmIHtcclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGh1bWJuYWlsICsgLmZsZXhsaXN0X19jb250ZW50IHtcclxuICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCAkcGFsbSkge1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMjE5cHgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgICAtbXMtZmxleDogMSAxIGF1dG87XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgLmZsZXhsaXN0LS1uZXdzICYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3RodW1ibmFpbCB7XHJcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxOTVweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJG1heCwgJHByZS1wYWxtKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZsZXhsaXN0LS1uZXdzICYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxNTBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTYwcHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTYwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY29udGVudCB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XHJcblxyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5mbGV4bGlzdC0tbmV3cyAmIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3JlZ2lzdHJhdGlvbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogLjg3NXJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4zNzVyZW07XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgJi0tb3BlbixcclxuICAgICAgICAmLS1jbG9zZWQge1xyXG4gICAgICAgICAgICBAZXh0ZW5kIC5mbGV4bGlzdF9fcmVnaXN0cmF0aW9uO1xyXG5cclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjY1cmVtO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDNweDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLS1vcGVuIHtcclxuICAgICAgICAgICAgY29sb3I6ICRyZWctZ3JlZW47XHJcblxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHJlZy1ncmVlbjtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICdcXDI3MTMnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLS1jbG9zZWQge1xyXG4gICAgICAgICAgICBjb2xvcjogJHJlZy1yZWQ7XHJcblxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHJlZy1yZWQ7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi1jbG9zZTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGljb21vb247XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IC4zNXJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19hZGRyZXNzIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAuODc1cmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG5cclxuICAgICAgICAmLS1zaG9ydCB7XHJcbiAgICAgICAgICAgIEBleHRlbmQgLmZsZXhsaXN0X19hZGRyZXNzO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxMzBweCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZGF0ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgIGNvbG9yOiAkZXZlbnQtZ3JheTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmb250LXNpemU6IC45MzhyZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzc1cmVtO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldCkge1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTMwcHgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZsZXhsaXN0LS1uZXdzICYge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZXhjZXJwdCB7XHJcbiAgICAgICAgQGV4dGVuZCAucnRmO1xyXG5cclxuICAgICAgICAuZmxleGxpc3RfX2l0ZW0gJiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19yZWdpc3Rlci1saW5rIHtcclxuICAgICAgICBmb250LXNpemU6IC44NzVyZW07XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkaG92ZXItY3lhbjtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGljb21vb247XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkaG92ZXItY3lhbjtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJGljb24tYW5nbGUtcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzA7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNHB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLmxvY2F0aW9uLWJveCB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZ3JheS1saWdodDtcclxuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1ib3hfX2lubmVyIHtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcclxuICAgICAgICBwYWRkaW5nOiAxMnB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogNDMlO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubG9jYXRpb24tYm94X190aXRsZSB7XHJcbiAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgY29sb3I6ICRwcm9maWxlcy1ibHVlO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgIH1cclxufVxyXG5cclxuLmxvY2F0aW9uLWJveF9fZGF0ZSB7XHJcbiAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgICAmLmxvY2F0aW9uLWJveF9fZGF0ZS1waXBlIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmxvY2F0aW9uLWJveF9fbG9jYXRpb24tbmFtZSB7XHJcbiAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgY29sb3I6ICRibGFjaztcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ubG9jYXRpb24tYm94X19sb2NhdGlvbi1hZGRyZXNzIHtcclxuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuXHJcbiAgICAmLmxvY2F0aW9uLWJveF9fbG9jYXRpb24tYWRkcmVzcy0tbW9iaWxlIHtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5sb2NhdGlvbi1ib3hfX2xvY2F0aW9uLWFkZHJlc3MtLWRlc2t0b3Age1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ubG9jYXRpb24tYm94X19tYXAge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXktbGlnaHQ7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XHJcbiAgICAgICAgaGVpZ2h0OiAxNTBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogNDAlO1xyXG4gICAgfVxyXG59XHJcbiIsIiRsb2NhdGlvbkxpc3RCZzogI2VlZTtcclxuJGxvY2F0aW9uTGlzdEl0ZW1QYWRkaW5nOiA0cmVtO1xyXG5cclxuLmxvY2F0aW9uLWxpc3Qge1xyXG4gICAgLnJ0ZiB7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1saXN0X19pdGVtIHtcclxuICAgIHBhZGRpbmc6ICRsb2NhdGlvbkxpc3RJdGVtUGFkZGluZyAwO1xyXG5cclxuICAgICY6bnRoLWNoaWxkKG9kZCkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsb2NhdGlvbkxpc3RCZztcclxuXHJcbiAgICAgICAgLmxvY2F0aW9uLWxpc3RfX2l0ZW0taW5uZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAtKCRsb2NhdGlvbkxpc3RJdGVtUGFkZGluZyk7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmxvY2F0aW9uLWxpc3RfX2l0ZW0taW5uZXIge1xyXG4gICAgQGluY2x1ZGUgZ3JpZC1yb3c7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG59XHJcblxyXG4ubG9jYXRpb24tbGlzdF9fY29udGVudCB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1saXN0X19pdGVtLWhlYWRpbmcge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgY29sb3I6ICRibGFjaztcclxuICAgIGZvbnQtc2l6ZTogMzRweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgdG9wOiAtMTBweDtcclxuXHJcbiAgICAmLmxvY2F0aW9uLWxpc3RfX2l0ZW0taGVhZGluZy0tZGVza3RvcCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmxvY2F0aW9uLWxpc3RfX2l0ZW0taGVhZGluZy0tbW9iaWxlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubG9jYXRpb24tbGlzdF9fcGhvbmUtY3RhIHtcclxuXHJcbiAgICAmLmxvY2F0aW9uLWxpc3RfX3Bob25lLWN0YS0tZGVza3RvcCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xyXG4gICAgICAgIHBhZGRpbmc6IDEzcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICRiZy1ncmF5O1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgICAgICBsZWZ0OiAxcmVtO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAxcmVtO1xyXG4gICAgICAgICAgICB0b3A6IDIycHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5sb2NhdGlvbi1saXN0X19waG9uZS1jdGEtLW1vYmlsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi5sb2NhdGlvbi1saXN0X19waG9uZS1jdGEtaGVhZGluZyB7XHJcbiAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICBoZWlnaHQ6IDI1cHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBwYWRkaW5nOiAycHggN3B4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgdG9wOiAtM3B4O1xyXG4gICAgei1pbmRleDogMTtcclxufVxyXG5cclxuLmxvY2F0aW9uLWxpc3RfX3Bob25lLWN0YS1udW1iZXIge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgY29sb3I6ICRjb2xvci1zZWEtYnVja3Rob3JuO1xyXG4gICAgZm9udC1zaXplOiAzMnB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmctYm90dG9tOiA4cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IC01cHg7XHJcblxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkYmctZ3JheTtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1saXN0X19pdGVtLXN1YmhlYWRpbmcge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgbWFyZ2luOiAtNXB4IDAgNnB4O1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIH1cclxufVxyXG5cclxuLmxvY2F0aW9uLWxpc3RfX2FkZHJlc3Mge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4nKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ubG9jYXRpb24tbGlzdF9fdGV4dC1saW5rIHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluJyk7XHJcbiAgICBAaW5jbHVkZSBpY29uLWNoZXZyb24oJ2JsdWUtZScsIDVweCwgOHB4LCAxcHgsIDFweCk7XHJcbiAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgbWFyZ2luLXRvcDogLjVyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOiAuN3JlbTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5sb2NhdGlvbi1saXN0X19jYXRlZ29yeS10ZXh0IHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluJyk7XHJcbiAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogN3B4O1xyXG5cclxuICAgIHNwYW4ge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIH1cclxuXHJcbiAgICAmLmxvY2F0aW9ucy1saXN0X19jYXRlZ29yeS10ZXh0LS1kZXNrdG9wIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYubG9jYXRpb25zLWxpc3RfX2NhdGVnb3J5LXRleHQtLW1vYmlsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxufVxyXG5cclxuLmxvY2F0aW9ucy1saXN0X19jYXRlZ29yeS10ZXh0LS1pbmxpbmUge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xyXG59XHJcblxyXG4ubG9jYXRpb24tbGlzdF9fYWRkaXRpb25hbC10ZXh0LWhlYWRpbmcge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgY29sb3I6ICRibGFjaztcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgbWFyZ2luLXRvcDogMnJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ubG9jYXRpb24tbGlzdF9fcGh5c2ljaWFucy1saXN0IHtcclxuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGZsZXg6IDAgMSAzMSU7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLjVlbTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyJTtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkaG92ZXItY3lhbjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgY29sdW1uLWNvdW50OiAzO1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAuNzVlbTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIubmV3c19fdGl0bGUge1xyXG4gICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgIGZvbnQtc2l6ZTogMzRweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxufVxyXG5cclxuLm5ld3NfX2NhdGVnb3JpZXMge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gTWVkaXVtJyk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG5cclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcclxuICAgIH1cclxufVxyXG5cclxuLm5ld3NfX2RhdGEge1xyXG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxufVxyXG5cclxuLm5ld3NfX2RhdGUge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcclxufVxyXG5cclxuLm5ld3NfX3R5cGUge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbn1cclxuXHJcbi5uZXdzX19ib2lsZXJwbGF0ZSB7XHJcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG59XHJcbiIsIi8vc2Fzcy1saW50OmRpc2FibGUgcGxhY2Vob2xkZXItaW4tZXh0ZW5kXHJcblxyXG4uZmxleGxpc3QtLW5ld3MgKyAucGFnaW5hdGlvbiB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4ucGFnaW5hdGlvbiB7XHJcbiAgICAuZG9jdG9yLXJlc3VsdHMgJixcclxuICAgIC5mYWQtc2VhcmNoLXJlc3VsdHMgJiB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWFyY2gtcmVzdWx0cyAmIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3dyYXAge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbGkge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuXHJcbiAgICAmX19pdGVtIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICBjb2xvcjogJHByb2ZpbGVzLWJsdWU7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldCkge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDhweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYtLWZpcnN0IHtcclxuICAgICAgICAgICAgQGV4dGVuZCAucGFnaW5hdGlvbl9faXRlbTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaWNvbW9vbjtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi1hbmdsZS1sZWZ0ICsgJycgKyAkaWNvbi1hbmdsZS1sZWZ0O1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYtLWxhc3Qge1xyXG4gICAgICAgICAgICBAZXh0ZW5kIC5wYWdpbmF0aW9uX19pdGVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaWNvbW9vbjtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi1hbmdsZS1yaWdodCArICcnICsgJGljb24tYW5nbGUtcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi0tbmV4dCB7XHJcbiAgICAgICAgICAgIEBleHRlbmQgLnBhZ2luYXRpb25fX2l0ZW07XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaWNvbW9vbjtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi1hbmdsZS1yaWdodDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLS1wcmV2IHtcclxuICAgICAgICAgICAgQGV4dGVuZCAucGFnaW5hdGlvbl9faXRlbTtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpY29tb29uO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLWFuZ2xlLWxlZnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi0tYWN0aXZlIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAucGFnaW5hdGlvbl9faXRlbTtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHByb2ZpbGVzLWJsdWU7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuNHMgZWFzZS1vdXQ7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibG9nLXRlYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4yNHMgZWFzZS1vdXQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9faHVkIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbicpO1xyXG4gICAgICAgIGNvbG9yOiAkbWVkLWdyYXk7XHJcbiAgICAgICAgZm9udC1zaXplOiAuODc1cmVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM3NWVtO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIycHg7XHJcblxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkbm90LWJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gU3dpZnR5cGUgUGFnaW5hdGlvblxyXG4uc3QtdWktY29udGFpbmVyLWZvb3Rlcl9iYXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICAgIG1hcmdpbi10b3A6IDJyZW07XHJcbn1cclxuXHJcbi5zdC1zZWFyY2gtcGFnaW5hdGlvbiB7XHJcbiAgICAuc3QtcXVlcnktcHJlc2VudCB7XHJcbiAgICAgICAgLnN0LXVpLXBhZ2luYXRpb24tbGluayB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgY29sb3I6ICRwcm9maWxlcy1ibHVlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogM3B4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGhvdmVyLWN5YW47XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcm9maWxlcy1ibHVlO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjRzIGVhc2Utb3V0O1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxvZy10ZWFsO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4yNHMgZWFzZS1vdXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3QtdWktYXJyb3cge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvL3Nhc3MtbGludDpkaXNhYmxlIG5vLWltcG9ydGFudFxyXG5cclxuJHRvcGJhci1yZXNwb25zaXZlLWFuaW1hdGlvbi10eXBlOiBmYWRlLWluO1xyXG5cclxuLnByaW1hcnktbmF2aWdhdGlvbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRjb2xvci1pcm9uO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3dyYXBwZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgYW5pbWF0aW9uOiBmYWRlSW4gMXMgZWFzZS1pbjtcclxuICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzO1xyXG4gICAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjJweDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtcm93O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19saXN0IHtcclxuICAgICAgICBAaW5jbHVkZSB1bnN0eWxlZC1saXN0O1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgIHdpZHRoOiA5OCU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGggJiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19pdGVtIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkY29sb3ItaXJvbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi0taGFzLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi0tZmFkIHtcclxuXHJcbiAgICAgICAgICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX2wyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5LWJhY2tncm91bmQ7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19sMi1jb250YWluIHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogaW5pdGlhbDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYtLWZseW91dCB7XHJcbiAgICAgICAgICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX2wyIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuaXMtb3BlbiB7XHJcbiAgICAgICAgICAgICAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19sMiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgICYuaXMtY29sbGFwc2VkIHtcclxuICAgICAgICAgICAgICAgICAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19sMiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX2xpbmsge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBpY29uLWNoZXZyb24oJ2JsdWUtcycsIDEwcHgsIDZweCwgMXB4LCAxcHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmLmlzLWV4cGFuZGVkIHtcclxuICAgICAgICAgICAgICAgICAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19sMiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19saW5rIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaWNvbi1jaGV2cm9uKCdibHVlLW4nLCAxMHB4LCA2cHgsIDFweCwgMXB4KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5pcy1jb2xsYXBzZWQsXHJcbiAgICAgICAgICAgICAgICAmLmlzLWV4cGFuZGVkIHtcclxuICAgICAgICAgICAgICAgICAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19saW5rIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogaW5pdGlhbDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAxN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBpbml0aWFsO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgLnByaW1hcnktbmF2aWdhdGlvbl9fbDIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgICZfX2xpbmsge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAgICAgJixcclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kaCAmIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuXHJcbiAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkaG92ZXItY3lhbjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA3cHggMjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgJHdoaXRlO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEycHggNXB4O1xyXG5cclxuICAgICAgICAgICAgLmhlYXJ0LXZhc2N1bGFyICYge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvci1zZWEtYnVja3Rob3JuO1xyXG5cclxuICAgICAgICAgICAgICAgIC5mb3VuZGF0aW9uICYge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvci1zZWEtYnVja3Rob3JuO1xyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG5cclxuICAgICAgICAgICAgICAgIC5mb3VuZGF0aW9uICYge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRhY3RpdmUtdGFuO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLS1idXR0b24ge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGNvbG9yLXByaW1hcnksICRjb2xvci1zZWNvbmRhcnksICRjb2xvci13aGl0ZSk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMjBweCAwO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIExldmVsIDJcclxuXHJcbi5wcmltYXJ5LW5hdmlnYXRpb25fX2wyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAxM3B4IDIwcHggLThweCByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDdweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRjb2xvci1pcm9uO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMTVweCAyOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjI1KTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMS41cmVtO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIHRvcDogNTZweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB6LWluZGV4OiAyMDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wcmltYXJ5LW5hdmlnYXRpb25fX2wyLWNvbnRhaW4ge1xyXG4gICAgQGluY2x1ZGUgZ3JpZC1yb3c7XHJcbn1cclxuXHJcbi5wcmltYXJ5LW5hdmlnYXRpb25fX2wyLWlubmVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbn1cclxuXHJcbi5wcmltYXJ5LW5hdmlnYXRpb25fX2wyLWNvbC1sIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICBmbGV4OiAwIDEgMjclO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogNiU7XHJcblxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ucHJpbWFyeS1uYXZpZ2F0aW9uX19pdGVtLXRleHQge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4nKTtcclxufVxyXG5cclxuLnByaW1hcnktbmF2aWdhdGlvbl9fc2VhcmNoIHtcclxuICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgbGFiZWwge1xyXG4gICAgICAgIEBpbmNsdWRlIHZpc3VhbGx5aGlkZGVuO1xyXG4gICAgfVxyXG5cclxuICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX3NlYXJjaC1pbnB1dCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdpbGQtc2FuZDtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBjb2xvcjogJHBsYWNlaG9sZGVyLW1kLWdyYXk7XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNDVweCk7XHJcblxyXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRwbGFjZWhvbGRlci1ncmF5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnByaW1hcnktbmF2aWdhdGlvbl9fc2VhcmNoLXN1Ym1pdCB7XHJcbiAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIHdpZHRoOiA0MHB4O1xyXG5cclxuICAgIC5wcmltYXJ5LW5hdmlnYXRpb25fX3NlYXJjaC1zdWJtaXQtYnRuLFxyXG4gICAgLnByaW1hcnktbmF2aWdhdGlvbl9fc2VhcmNoLXN1Ym1pdC1pY29uIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIH1cclxuXHJcbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19zZWFyY2gtc3VibWl0LWJ0biB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYW5nZTtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGhlaWdodDogNDBweDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjUwbXMgZWFzZTtcclxuICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGljb21vb24oKTtcclxuICAgICAgICAgICAgY29udGVudDogJGljb24tc2VhcmNoO1xyXG5cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTRkNjBhO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1iYWhpYTtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19zZWFyY2gtc3VibWl0LWljb24ge1xyXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgbGVmdDogMTNweDtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICB0b3A6IDhweDtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLmRoIHtcclxuXHJcbiAgICAucHJpbWFyeS1uYXZpZ2F0aW9uX19zZWFyY2gtc3VibWl0LWJ0biB7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTRkNjBhO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnByaW1hcnktbmF2aWdhdGlvbl9fbDItY29sLXIge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICBmbGV4OiAwIDEgNjclO1xyXG4gICAgfVxyXG59XHJcblxyXG4ucHJpbWFyeS1uYXZpZ2F0aW9uX19sMi1saW5rcyB7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgIGNvbHVtbi1jb3VudDogMjtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4yZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5wcmltYXJ5LW5hdmlnYXRpb25fX2wyLWl0ZW0ge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItaXJvbjtcclxuICAgICAgICBwYWRkaW5nOiA1cHggMjBweDtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItaXJvbjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIGEge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4nKTtcclxuICAgICAgICAgICAgY29sb3I6ICMwMDdhYmQ7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnByaW1hcnktbmF2aWdhdGlvbl9fbDItYnRuLWNvbnRhaW5lciB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5wcmltYXJ5LW5hdmlnYXRpb25fX2wyLWJ0biB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luOiAyMHB4IDA7XHJcbiAgICAgICAgd2lkdGg6IGluaGVyaXQ7XHJcbiAgICB9XHJcblxyXG4gICAgJi0tbW9iaWxlIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLS1kZXNrdG9wIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogNTElO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiLnByb2ZpbGVzIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmVlbmlzaC13aGl0ZTtcclxuICAgIHBhZGRpbmc6IDMwcHggMCAzNXB4O1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4IDAgNDVweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0X3BsdXMpIHtcclxuICAgICAgICBwYWRkaW5nOiA2MHB4IDAgNjVweDtcclxuICAgIH1cclxuXHJcbiAgICAmX193cmFwIHtcclxuICAgICAgICBAZXh0ZW5kIC5mb3VyLWdyaWQ7XHJcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3c7XHJcbiAgICAgICAgcGFkZGluZzogMCAxLjI1cmVtO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCA3MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc2OHB4O1xyXG4gICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA5NjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgICAgICBmb250LXNpemU6IDEuMzc1ZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzc1ZW07XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgLmZvdW5kYXRpb24gJiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkaG92ZXItdGFuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19saXN0IHtcclxuICAgICAgICBAZXh0ZW5kIC5mb3VyLWdyaWRfX3dyYXA7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgICAgIC50YWJzX19jb2x1bW5zICYge1xyXG4gICAgICAgICAgICBAZXh0ZW5kIC50aHJlZS1ncmlkX193cmFwO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgQGV4dGVuZCAuZm91ci1ncmlkX19pdGVtO1xyXG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAvLyAudGFic19fY29sdW1ucyAmLFxyXG4gICAgICAgIC8vIC5jb250ZW50X19jb3B5ICYge1xyXG4gICAgICAgICAgICAvLyBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIC8vIHBhZGRpbmctcmlnaHQ6IDA7XHJcblxyXG4gICAgICAgICAgICAvLyBAaW5jbHVkZSBtcSgkbWluLCAkcGFsbSwgJHByZS10YWJsZXQsICRtYXgpIHtcclxuICAgICAgICAgICAgLy8gICAgIHdpZHRoOiBjYWxjKDUwJSAtIDFyZW0pO1xyXG4gICAgICAgICAgICAvLyAgICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcclxuICAgICAgICAgICAgLy9cclxuICAgICAgICAgICAgLy8gICAgICY6bnRoLW9mLXR5cGUoMm4pIHtcclxuICAgICAgICAgICAgLy8gICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIC8vICAgICB9XHJcbiAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgLy8gQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldCkge1xyXG5cclxuICAgICAgICAgICAgLy8gICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgLy8gICAgICAgICBhbGlnbi1zZWxmOiB1bnNldDtcclxuICAgICAgICAgICAgLy8gICAgICAgICBtYXJnaW4tbGVmdDogLjVyZW07XHJcbiAgICAgICAgICAgIC8vICAgICB9XHJcbiAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgLy9cclxuICAgICAgICAgICAgLy8gLy8gQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldCwgJHByZS1kZXNrdG9wLCAkbWF4KSB7XHJcbiAgICAgICAgICAgIC8vIC8vICAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xyXG4gICAgICAgICAgICAvLyAvLyB9XHJcbiAgICAgICAgICAgIC8vIC8vXHJcbiAgICAgICAgICAgIC8vIC8vIEBpbmNsdWRlIG1xKCRtaW4sICRkZXNrdG9wKSB7XHJcbiAgICAgICAgICAgIC8vIC8vICAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xyXG4gICAgICAgICAgICAvLyAvLyAgICAgJjpudGgtb2YtdHlwZSgzbikge1xyXG4gICAgICAgICAgICAvLyAvLyAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgLy8gLy8gICAgIH1cclxuICAgICAgICAgICAgLy8gLy9cclxuICAgICAgICAgICAgLy8gLy8gICAgICY6bnRoLW9mLXR5cGUoNG4pIHtcclxuICAgICAgICAgICAgLy8gLy8gICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIC8vIC8vICAgICB9XHJcbiAgICAgICAgICAgIC8vIC8vXHJcbiAgICAgICAgICAgIC8vIC8vICAgICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgIC8vIC8vICAgICAgICAgLy9tYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgLy8gLy8gICAgIH1cclxuICAgICAgICAgICAgLy8gLy8gfVxyXG5cclxuICAgICAgICAgICAgLy8gQGluY2x1ZGUgbXEoJG1pbiwgJGJpZ19kZXNrdG9wKSB7XHJcbiAgICAgICAgICAgIC8vXHJcbiAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAvLyB9XHJcblxyXG4gICAgICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHBhbG0pIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJG1heCwgJHByZS1wYWxtKSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKCRtYXgsICRwcmUtcGFsbSkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0byAxcmVtO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDMwMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJGRlc2t0b3ApIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjMzM3JlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICAgICAgIC5wcm9maWxlc19faXRlbV9fb3ZlcmxheSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgLjI0cyBlYXNlLW91dDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnByb2ZpbGVzX19pdGVtX190ZXh0LXNtYWxsIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5wcm9maWxlc19faXRlbV9fdGV4dC1sYXJnZSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9faW1hZ2Uge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX292ZXJsYXkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRwcm9maWxlcy1ibHVlLCAuODUpO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjUlO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGhlaWdodCAuMjRzIGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcblxyXG4gICAgICAgICAgICAuZm91bmRhdGlvbiAmIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGRlZXAtbmF2eSwgLjg1KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fdGV4dC13cmFwIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAxcmVtO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX3RleHQtc21hbGwsXHJcbiAgICAgICAgJl9fdGV4dC1sYXJnZSB7XHJcbiAgICAgICAgICAgIHAsXHJcbiAgICAgICAgICAgIGg0IHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluJyk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGVzbW9rZTtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NXJlbTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjA2M3JlbTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC44NzVyZW07XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAgICAgICAgICAgJi50aXRsZSxcclxuICAgICAgICAgICAgICAgICYubmFtZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX3RleHQtc21hbGwge1xyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX3RleHQtbGFyZ2Uge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRwcm9maWxlcy1saW5rO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgaWNvbW9vbigpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi1hbmdsZS1yaWdodDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC50YWJzICYge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnByb2ZpbGVzX193cmFwIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRlbnQgJiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldF9wbHVzKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggMCA0NXB4IDJyZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAucHJvZmlsZXNfX3dyYXAge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmNvbnRlbnQge1xyXG4gICAgLmRoICYge1xyXG4gICAgICAgIC5wcm9maWxlcyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuXHJcbiAgICAgICAgICAgICYucHJvZmlsZXMtLW1peGVkIHtcclxuXHJcbiAgICAgICAgICAgICAgICAucHJvZmlsZXNfX2xpc3Qge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5wcm9maWxlc19faXRlbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDAgMCAyNjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyNjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDEuNXJlbSAxLjVyZW0gMXJlbTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMCAwIDI1MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMS41cmVtIDEuNXJlbSAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAwIDAgMjEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxcmVtIDFyZW0gMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLnByb2ZpbGVzX19pdGVtX19iZy1pbWFnZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5wcm9maWxlc19faXRlbSB7XHJcblxyXG4gICAgICAgICAgICAmLnByb2ZpbGVzX19pdGVtLS1pbWctb25seSB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAuODtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYucHJvZmlsZXNfX2l0ZW0tLXRleHQtb25seSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIxMnB4O1xyXG5cclxuICAgICAgICAgICAgICAgIC5wcm9maWxlc19faXRlbV9fb3ZlcmxheSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5wcm9maWxlc19faXRlbV9fdGV4dC1zbWFsbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAucHJvZmlsZXNfX2l0ZW1fX3RleHQtbGFyZ2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIucHJvdmlkZXItcHJvZmlsZSB7XHJcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogMzAlO1xyXG4gICAgcGFkZGluZy10b3A6IDUwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIHBhZGRpbmc6IDUwcHggMzBweDtcclxuICAgIH1cclxuXHJcbiAgICA+ICo6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgPiBoMiB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgPiBwIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbicpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xyXG5cclxuICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICA+IGEge1xyXG4gICAgICAgIEBpbmNsdWRlIGljb24tY2hldnJvbignYmx1ZS1lJywgNXB4LCA4cHgsIDFweCwgMXB4KTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgIH1cclxufVxyXG4iLCIucG9zdC1saXN0aW5nIHtcclxuICAgIHBhZGRpbmc6IDMwcHggMCAzNXB4O1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4IDAgNDVweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0X3BsdXMpIHtcclxuICAgICAgICBwYWRkaW5nOiA2MHB4IDAgNjVweDtcclxuICAgIH1cclxuXHJcbiAgICAuZGggJiB7XHJcbiAgICAgICAgLnBvc3QtbGlzdGluZ19fd3JhcCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtcm93O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5wb3N0LWxpc3RpbmctLWdyYXktYmcge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2lsZC1zYW5kO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggMzBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYucG9zdC1saXN0aW5nLS1ib3JkZXItdG9wIHtcclxuICAgICAgICAgICAgLnBvc3QtbGlzdGluZ19fd3JhcCB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDMwcHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi0tYm9yZGVyLXRvcCB7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRiZy1ncmF5O1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAmLS1hbHQge1xyXG4gICAgICAgIEBleHRlbmQgLnBvc3QtbGlzdGluZztcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZTllOWU5IDAlLCAkZ3JlZW5pc2gtd2hpdGUgMTAlKTsgLyogVzNDLCBJRTEwKywgRkYxNissIENocm9tZTI2KywgT3BlcmExMissIFNhZmFyaTcrICovXHJcbiAgICB9XHJcblxyXG4gICAgJl9fd3JhcCB7XHJcbiAgICAgICAgQGluY2x1ZGUgY29udGFpbigpO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAxNnB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAxNnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19saXN0aW5nIHtcclxuICAgICAgICBAZXh0ZW5kIC50aHJlZS1ncmlkX193cmFwO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDQwcHg7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA0ODBweDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJG1heCwgJHRhYmxldCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XHJcbiAgICAgICAgICAgIC8vbWF4LXdpZHRoOiA3NjhweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAycmVtO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDk1NnB4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGggJiB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDRyZW07XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIEBleHRlbmQgLnRocmVlLWdyaWRfX2l0ZW07XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMlIC0gMzcuMzMzcHgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fdGh1bWJuYWlsIHtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDJweDtcclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmX190aXRsZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAuODc1cmVtO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zNzVlbTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmX19leGNlcnB0IHtcclxuICAgICAgICAgICAgY29sb3I6IGJsYWNrO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbicpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IC44NzVyZW07XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM3NWVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgICAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmX19saW5rIHtcclxuICAgICAgICAgICAgY29sb3I6ICRibG9nLXRlYWw7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAuODc1cmVtO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zMjVyZW07XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsb2ctdGVhbDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGJsb2ctdGVhbDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGljb21vb24oKTtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLWFuZ2xlLXJpZ2h0O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAuNXJlbTtcclxuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4xODhlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4xODhlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgICAgIC5mb3VuZGF0aW9uICYge1xyXG4gICAgICAgICAgICBjb2xvcjogJGhvdmVyLXRhbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kaCAmIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbGluayB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMC45MzhlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4zNzVlbTtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAycmVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkYmxvZy10ZWFsO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRibG9nLXRlYWw7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyN3B4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyN3B4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDVweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibG9nLXRlYWw7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBpY29tb29uKCk7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi1hbmdsZS1yaWdodDtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGggJiB7XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaWNvbi1jaGV2cm9uKCdvcmFuZ2UtZScsIDZweCwgMTBweCwgMnB4LCAwKTtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itc2VhLWJ1Y2t0aG9ybjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogNDBweCBhdXRvIDA7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsImlucHV0W3R5cGU9cmFuZ2VdIHtcclxuICBoZWlnaHQ6IDI5cHg7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gIG1hcmdpbjogMTBweCAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcbmlucHV0W3R5cGU9cmFuZ2VdOmZvY3VzIHtcclxuICBvdXRsaW5lOiBub25lO1xyXG59XHJcbmlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxcHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGFuaW1hdGU6IDAuMnM7XHJcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggIzAwMDAwMDtcclxuICBiYWNrZ3JvdW5kOiAjRDJEMkQyO1xyXG4gIGJvcmRlci1yYWRpdXM6IDFweDtcclxuICBib3JkZXI6IDBweCBzb2xpZCAjMDAwMDAwO1xyXG59XHJcbmlucHV0W3R5cGU9cmFuZ2VdOjotd2Via2l0LXNsaWRlci10aHVtYiB7XHJcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggIzAwMDAwMDtcclxuICBib3JkZXI6IDBweCBzb2xpZCAjMjQ5N0UzO1xyXG4gIGhlaWdodDogMjNweDtcclxuICB3aWR0aDogMjNweDtcclxuICBib3JkZXItcmFkaXVzOiAxMnB4O1xyXG4gIGJhY2tncm91bmQ6ICMwMEFGRDc7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICBtYXJnaW4tdG9wOiAtMTFweDtcclxufVxyXG5pbnB1dFt0eXBlPXJhbmdlXTpmb2N1czo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xyXG4gIGJhY2tncm91bmQ6ICNEMkQyRDI7XHJcbn1cclxuaW5wdXRbdHlwZT1yYW5nZV06Oi1tb3otcmFuZ2UtdHJhY2sge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBhbmltYXRlOiAwLjJzO1xyXG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4ICMwMDAwMDA7XHJcbiAgYmFja2dyb3VuZDogI0QyRDJEMjtcclxuICBib3JkZXItcmFkaXVzOiAxcHg7XHJcbiAgYm9yZGVyOiAwcHggc29saWQgIzAwMDAwMDtcclxufVxyXG5pbnB1dFt0eXBlPXJhbmdlXTo6LW1vei1yYW5nZS10aHVtYiB7XHJcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggIzAwMDAwMDtcclxuICBib3JkZXI6IDBweCBzb2xpZCAjMjQ5N0UzO1xyXG4gIGhlaWdodDogMjNweDtcclxuICB3aWR0aDogMjNweDtcclxuICBib3JkZXItcmFkaXVzOiAxMnB4O1xyXG4gIGJhY2tncm91bmQ6ICMwMEFGRDc7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdHJhY2sge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBhbmltYXRlOiAwLjJzO1xyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtZmlsbC1sb3dlciB7XHJcbiAgYmFja2dyb3VuZDogI0QyRDJEMjtcclxuICBib3JkZXI6IDBweCBzb2xpZCAjMDAwMDAwO1xyXG4gIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAjMDAwMDAwO1xyXG59XHJcbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtZmlsbC11cHBlciB7XHJcbiAgYmFja2dyb3VuZDogI0QyRDJEMjtcclxuICBib3JkZXI6IDBweCBzb2xpZCAjMDAwMDAwO1xyXG4gIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAjMDAwMDAwO1xyXG59XHJcbmlucHV0W3R5cGU9cmFuZ2VdOjotbXMtdGh1bWIge1xyXG4gIG1hcmdpbi10b3A6IDFweDtcclxuICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAjMDAwMDAwO1xyXG4gIGJvcmRlcjogMHB4IHNvbGlkICMyNDk3RTM7XHJcbiAgaGVpZ2h0OiAyM3B4O1xyXG4gIHdpZHRoOiAyM3B4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XHJcbiAgYmFja2dyb3VuZDogIzAwQUZENztcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuaW5wdXRbdHlwZT1yYW5nZV06Zm9jdXM6Oi1tcy1maWxsLWxvd2VyIHtcclxuICBiYWNrZ3JvdW5kOiAjRDJEMkQyO1xyXG59XHJcbmlucHV0W3R5cGU9cmFuZ2VdOmZvY3VzOjotbXMtZmlsbC11cHBlciB7XHJcbiAgYmFja2dyb3VuZDogI0QyRDJEMjtcclxufVxyXG4iLCIvL3Nhc3MtbGludDpkaXNhYmxlIG5vLXF1YWxpZnlpbmctZWxlbWVudHMgZm9yY2UtZWxlbWVudC1uZXN0aW5nXHJcblxyXG4ucnRmIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5kaCAmIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY29udGVudC0tbWFpbiAmIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gICAgfVxyXG5cclxuICAgIGgzIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHAsXHJcbiAgICAucCxcclxuICAgIHVsIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNnB4O1xyXG5cclxuICAgICAgICAuZGggJiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG9sIHtcclxuICAgICAgICBsaXN0LXN0eWxlOiBkZWNpbWFsO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMThweDtcclxuXHJcbiAgICAgICAgb2wge1xyXG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBsb3dlci1hbHBoYTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdWwgbGksXHJcbiAgICBvbCBsaSB7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE2cHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTZweDtcclxuXHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHVsIHVsIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG5cclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogNnB4IDAgNnB4IDEycHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnVsLWNvbHMtMixcclxuICAgIC5vbC1jb2xzLTIge1xyXG4gICAgICAgIG1hcmdpbjogMWVtIDAgMWVtIDFlbTtcclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG5cclxuICAgICAgICAgICAgbGk6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucnRmLW11bHRpLWNvbC0yLWNvbHMge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAyO1xyXG4gICAgICAgICAgICBjb2x1bW4tZ2FwOiAxMDBweDtcclxuICAgICAgICAgICAgY29sdW1uLXdpZHRoOiAyNTBweDtcclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ydGYtbXVsdGktY29sLTMtY29scyB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDM7XHJcbiAgICAgICAgICAgIGNvbHVtbi1nYXA6IDY1cHg7XHJcbiAgICAgICAgICAgIGNvbHVtbi13aWR0aDogMTUwcHg7XHJcblxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgfVxyXG5cclxuICAgIGEuYnRuIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyAuY29udGVudCxcclxuLy8gLmNvbnRlbnRfX2NvbnRhaW5lciB7XHJcbi8vICAgICA+IC5ydGYsXHJcbi8vICAgICAuY29udGVudF9fY29weS0tZnVsbCA+IC5ydGYsXHJcbi8vICAgICAudGFic19fY29weSA+IC5ydGYge1xyXG4vLyAgICAgICAgID4gaDE6Zmlyc3QtY2hpbGQsXHJcbi8vICAgICAgICAgPiBoMjpmaXJzdC1jaGlsZCxcclxuLy8gICAgICAgICA+IGgzOmZpcnN0LWNoaWxkLFxyXG4vLyAgICAgICAgID4gaDQ6Zmlyc3QtY2hpbGQsXHJcbi8vICAgICAgICAgPiBoNTpmaXJzdC1jaGlsZCxcclxuLy8gICAgICAgICA+IGg2OmZpcnN0LWNoaWxkLCB7XHJcbi8vICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbi8vICAgICAgICAgfVxyXG4vL1xyXG4vLyAgICAgICAgID4gaDIsXHJcbi8vICAgICAgICAgPiAuaDIsXHJcbi8vICAgICAgICAgPiBoMyxcclxuLy8gICAgICAgICA+IC5oMyxcclxuLy8gICAgICAgICA+IGg0LFxyXG4vLyAgICAgICAgID4gLmg0LFxyXG4vLyAgICAgICAgID4gaDUsXHJcbi8vICAgICAgICAgPiAuaDUsXHJcbi8vICAgICAgICAgPiBoNixcclxuLy8gICAgICAgICA+IC5oNiB7XHJcbi8vICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC43NWVtO1xyXG4vLyAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyZW07XHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgfVxyXG4vLyB9Ly9ET1lMUkVELTM0MyAtIE1heSBub3QgbmVlZCB0aGlzXHJcbiIsIiRib3hTaGFkb3c6IDAgMCA2MHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcblxyXG4uc2VhcmNoLWJveCB7XHJcbiAgICBwYWRkaW5nOiAwIDEuMjVyZW07XHJcblxyXG4gICAgLmRoICYge1xyXG4gICAgICAgIEBpbmNsdWRlIGNvbXBvbmVudC1tYXJnaW4tdG9wO1xyXG4gICAgfVxyXG5cclxuICAgICYuc2VhcmNoLWJveC0tYmFja2dyb3VuZCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgIH1cclxufVxyXG5cclxuLnNlYXJjaC1ib3hfX2NvbnRhaW4ge1xyXG4gICAgQGluY2x1ZGUgZ3JpZC1yb3c7XHJcbn1cclxuXHJcbi5zZWFyY2gtYm94X19vdXRlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICBib3gtc2hhZG93OiAkYm94U2hhZG93O1xyXG4gICAgcGFkZGluZzogMTVweDtcclxufVxyXG5cclxuLnNlYXJjaC1ib3hfX2lubmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZy1ncmF5O1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2VhcmNoLWJveF9fdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAyNnB4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi0tc2VhcmNoIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgaWNvbi1zZWFyY2goNDBweCwgNDBweCk7XHJcblxyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDIwcHgpO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBpY29uLXNlYXJjaCgzNXB4LCAzNXB4KTtcclxuXHJcbiAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi0tbmV3c2xldHRlciB7XHJcbiAgICAgICAgQGluY2x1ZGUgaWNvbi1uZXdzbGV0dGVyKDM1cHgsIDM1cHgpO1xyXG5cclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICAgICAgbGVmdDogY2FsYyg1MCUgLSAxN3B4KTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB0b3A6IC0ycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgY29sb3I6ICRob3Zlci1jeWFuO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2VhcmNoLWJveF9fc2VhcmNoLWNvbnRhaW5lciB7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XHJcbiAgICBtYXJnaW46IDEuNXJlbSAwIDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuXHJcblxyXG4gICAgbGFiZWwge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgZmllbGRzZXQge1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuXHJcbiAgICAuc2VhcmNoLWJveF9fc2VhcmNoLWlucHV0LFxyXG4gICAgLnNlYXJjaC1ib3hfX3NlYXJjaC1zdWJtaXQge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDU1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zZWFyY2gtYm94X19zZWFyY2gtY29udGFpbmVyLWNvbC1sIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xyXG4gICAgICAgICAgICBmbGV4OiAxIDEgMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNlYXJjaC1ib3hfX3NlYXJjaC1jb250YWluZXItY29sLXIsXHJcbiAgICAuc2VhcmNoLWJveF9fc2VhcmNoLXN1Ym1pdCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcclxuICAgICAgICAgICAgZmxleDogMCAwIDk1cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiA5NXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICBmbGV4OiAwIDAgMTIwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VhcmNoLWJveF9fc2VhcmNoLWlucHV0IHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbicpO1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcclxuICAgICAgICAgICAgY29sb3I6ICRwbGFjZWhvbGRlci1ncmF5O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zZWFyY2gtYm94X19zZWFyY2gtc3VibWl0IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JhbmdlO1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMjVzIGVhc2Utb3V0O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzk0ZDYwYTtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc2VhcmNoLWJveF9fdGV4dCB7XHJcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07XHJcbiAgICBtYXgtd2lkdGg6IDc2MHB4O1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICA+ICo6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxufVxyXG4iLCIkc2VhcmNoQkc6ICNlZWU7XHJcblxyXG4uc2VhcmNoLWdsb2JhbCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VhcmNoQkc7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uc2VhcmNoLWdsb2JhbF9faW5uZXIge1xyXG4gICAgQGluY2x1ZGUgZ3JpZC1yb3c7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBtYXgtd2lkdGg6IDYwcmVtO1xyXG4gICAgcGFkZGluZzogNGVtIDA7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2VhcmNoLWdsb2JhbF9fdGl0bGUge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgY29sb3I6ICRwcm9maWxlcy1ibHVlO1xyXG4gICAgZm9udC1zaXplOiAzMnB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjRweDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi5zZWFyY2gtZ2xvYmFsX19mb3JtIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2VhcmNoLWdsb2JhbF9fc2VhcmNoLWljb24ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IDE0cHg7XHJcbiAgICAgICAgICAgIHRvcDogMTRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgbGVmdDogMTVweDtcclxuICAgICAgICAgICAgdG9wOiAxNnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnNlYXJjaC1nbG9iYWxfX2lucHV0IHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluJyk7XHJcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIGhlaWdodDogNDdweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZiA4cHggOHB4IHVybCgpIWltcG9ydGFudDtcclxuICAgICAgICBib3gtc2l6aW5nOiBpbmhlcml0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgIGZsZXg6IDEgMSBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgZm9udC1zaXplOiAyOXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgaGVpZ2h0OiA1NnB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA1MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwcHggIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwcHggIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmIDhweCA4cHggdXJsKCkhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2VhcmNoLWdsb2JhbF9fc3VibWl0IHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWEtYnVja3Rob3JuO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XHJcbiAgICAgICAgcGFkZGluZzogMTRweCAyMHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICBmbGV4OiAwIDAgMTUwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA1NnB4O1xyXG4gICAgfVxyXG59XHJcbiIsIi5zZWFyY2gtcmVzdWx0cyB7XHJcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuICAgIG1heC13aWR0aDogNjByZW07XHJcbiAgICBwYWRkaW5nOiAxcmVtIDA7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAuc3Qtc2VhcmNoLWNvbnRhaW5lciB7XHJcblxyXG4gICAgICAgIC5zdC1zZWFyY2gtc3VtbWFyeSB7XHJcbiAgICAgICAgICAgIC5zdC1xdWVyeS1wcmVzZW50IHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluJyk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGNvbG9yLWlyb247XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA3cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgc3Ryb25nIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3Qtc2VhcmNoLXJlc3VsdHMge1xyXG4gICAgICAgICAgICAuX19zd2lmdHlwZV9yZXN1bHQge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogM3B4IDE4cHggMCAwO1xyXG5cclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnN0LXVpLXR5cGUtaGVhZGluZyB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDI1MG1zIGVhc2U7XHJcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTlweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyM3B4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgZW0ge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXNlYS1idWNrdGhvcm47XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IC43O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5zdC11aS10eXBlLWRldGFpbCB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbicpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLnNlcnZpY2VzIHtcclxuICAgIC5kaCAmIHtcclxuICAgICAgICBAaW5jbHVkZSBjb21wb25lbnQtbWFyZ2luLXRvcDtcclxuICAgIH1cclxuXHJcbiAgICAmX19jb250YWluZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtcm93O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uKDEyKTtcclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDhweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kaCAmIHtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGVhcnQtdmFzY3VsYXIgJiwgLnVyZ2VudC1jYXJlICYge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjVyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3N1YnRpdGxlIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbicpO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgNDBweDtcclxuICAgIH1cclxuXHJcbiAgICAmX19idG4ge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcblxyXG4gICAgICAgIC5kaCAmIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItY3lhbjtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRoICYge1xyXG4gICAgICAgIC5jYXJvdXNlbF9fYXJyb3ctLWxlZnQge1xyXG4gICAgICAgICAgICBsZWZ0OiA1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2Fyb3VzZWxfX2Fycm93LS1yaWdodCB7XHJcbiAgICAgICAgICAgIHJpZ2h0OiA1cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbn1cclxuIiwiLnNoYXJlIHtcclxuICAgICRibG9jazogJjtcclxuXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2lsZC1zYW5kO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBwYWRkaW5nOiA2cHggMjFweCAxMHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHJcbiAgICAgICAgJi0tZm9yLW1lZGl1bS1kb3duIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5oZXJvICYge1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDIycHggMjJweCAtMjJweCByZ2JhKDAsIDAsIDAsIC4zKTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19jb250YWluZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ibGFjaztcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19uYXZpZ2F0aW9uIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbGlzdCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdW5zdHlsZWQtbGlzdDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmX19pdGVtIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0cHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogNHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhlcm8gJiB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNnB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2xpbmsge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDI1MG1zIGVhc2Utb3V0O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMzZweCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMjBweCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbG9nbyB7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDUwJTtcclxuXHJcbiAgICAgICAgI3skYmxvY2t9X19saW5rLS15ZWxwICYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDIycHggMjJweCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTExcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMTRweCAxNHB4KTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtN3B4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjeyRibG9ja31fX2xpbmstLWZhY2Vib29rICYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDExcHggMjJweCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTVweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSg2cHggMTJweCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTNweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgI3skYmxvY2t9X19saW5rLS10d2l0dGVyICYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDE5cHggMTZweCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTlweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMTBweCAxMHB4KTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjeyRibG9ja31fX2xpbmstLWdvb2dsZS1wbHVzICYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDI4cHggMThweCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTE0cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA5cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMTZweCAxMHB4KTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtOHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjeyRibG9ja31fX2xpbmstLWxpbmtlZGluICYge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDI4cHggMThweCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTE0cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA5cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoOXB4IDEwcHgpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC00cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICN7JGJsb2NrfV9fbGluay0tZW1haWwgJiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMjJweCAxOHB4KTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTFweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDlweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxMnB4IDEwcHgpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC02cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5kaCB7XHJcbiAgICAuc2hhcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5zaGFyZV9faW5uZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtcm93O1xyXG4gICAgfVxyXG5cclxuICAgIC5zaGFyZV9fY29udGFpbmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2lsZC1zYW5kO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxOHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDE4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zaGFyZV9fdGl0bGUge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2hhcmVfX25hdmlnYXRpb24ge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNoYXJlX19pdGVtIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zaGFyZV9fbGluayB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi0tZmFjZWJvb2sge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICAuc2hhcmVfX2xvZ28ge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoOXB4IDE3cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDZweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi0tdHdpdHRlciB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgIC5zaGFyZV9fbG9nbyB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxNnB4IDEzcHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDlweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi0tbGlua2VkaW4ge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICAuc2hhcmVfX2xvZ28ge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMjJweCAxNHB4KTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTExcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogN3B4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLS1lbWFpbCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgIC5zaGFyZV9fbG9nbyB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgxOHB4IDE1cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtOXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIkc2xpZGVyQ29sb3I6ICMwMGFmZDc7XHJcblxyXG4uc2xpZGVyLS1kYXRlcmFuZ2Uge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWFsdG87XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICBoZWlnaHQ6IDFweDtcclxuICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgJjo6YmVmb3JlLFxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGNvbG9yLWFsdG87XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgaGVpZ2h0OiAzNXB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IC0xN3B4O1xyXG4gICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBsZWZ0OiAxMnB4O1xyXG4gICAgfVxyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICByaWdodDogMTJweDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGVyLXJ1bGUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1hbHRvO1xyXG4gICAgICAgIGhlaWdodDogMXB4O1xyXG4gICAgICAgIGxlZnQ6IDEycHg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OiAxMnB4O1xyXG4gICAgICAgIHRvcDogMXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGlkZXItaGFuZGxlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyQ29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvYXNzZXRzL2ltZy9zdmcvaWNvbi1zbGlkZXItYXJyb3dzLXdoaXRlLnN2ZycpO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTJweCA5cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWRlci1maWxsIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyQ29sb3I7XHJcbiAgICAgICAgaGVpZ2h0OiAycHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWRlcl9fdmFsdWVzIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxNHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG59XHJcbiIsIi5zaWRlYmFyIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBvcmRlcjogMDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xyXG4gICAgd2lkdGg6IDI0MHB4O1xyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXRfcGx1cykge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC5kaCAmIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19wYWdlLXRpdGxlIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstbmF2eTtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4zMjVyZW07XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBwYWRkaW5nOiAxN3B4IDFyZW07XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgJi0tZXhwYW5kYWJsZSB7XHJcbiAgICAgICAgICAgIEBleHRlbmQgLnNpZGViYXJfX3BhZ2UtdGl0bGU7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgIC5zaWRlYmFyX190b2dnbGU6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcrJztcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgLnNpZGViYXJfX3RvZ2dsZTo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICctJztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZvdW5kYXRpb24gJiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci10YW47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbWVudSB7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIC4xKTtcclxuICAgICAgICBib3JkZXItd2lkdGg6IDAgMCAxcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xyXG5cclxuICAgICAgICAmX19saXN0IHtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIC4xKTtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDFyZW07XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMnJlbSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLS1leHBhbmQge1xyXG4gICAgICAgICAgICAgICAgQGV4dGVuZCAuc2lkZWJhcl9fbWVudV9faXRlbTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHByb2ZpbGVzLWJsdWU7XHJcblxyXG4gICAgICAgICAgICAgICAgLnNpZGViYXJfX21lbnVfX3BhZGRpbmcgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5zaWRlYmFyX19tZW51X190b2dnbGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJvZmlsZXMtYmx1ZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJy0nO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fcGFkZGluZyB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAuMSk7XHJcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAxcHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDFyZW07XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuNHMgZWFzZS1vdXQsIGJvcmRlciAuNHMgZWFzZS1vdXQ7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRwcm9maWxlcy1ibHVlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMjRzIGVhc2Utb3V0LCBib3JkZXIgLjI0cyBlYXNlLW91dDtcclxuXHJcbiAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjI0cyBlYXNlLW91dCwgYm9yZGVyIC4yNHMgZWFzZS1vdXQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjI0cyBlYXNlLW91dCwgYm9yZGVyIC4yNHMgZWFzZS1vdXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5zaWRlYmFyX19tZW51X190b2dnbGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJvZmlsZXMtYmx1ZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHByb2ZpbGVzLWJsdWU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg3NXJlbTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzI1cmVtO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjRzIGVhc2Utb3V0O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX3RvZ2dsZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIE1lZGl1bScpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgY29sb3I6ICRwcm9maWxlcy1ibHVlO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjRzIGVhc2Utb3V0LCBjb2xvciAuNHMgZWFzZS1vdXQ7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG5cclxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJysnO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4yNXMgZWFzZS1vdXQsIGNvbG9yIC4yNXMgZWFzZS1vdXQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3N1Yi1tZW51IHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIC4xKTtcclxuICAgICAgICBib3JkZXItd2lkdGg6IDAgMXB4O1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gTWVkaXVtJyk7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjg1N3JlbTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzI1cmVtO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aHJlZS1ncmF5O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjRzIGVhc2Utb3V0O1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXNlYS1idWNrdGhvcm47XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjI0cyBlYXNlLW91dDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLmZvdW5kYXRpb24gJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkaG92ZXItY3lhbjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1zZWEtYnVja3Rob3JuO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLm9wZW4ge1xyXG4gICAgICAgICAgICAgICAgLnNpZGViYXJfX3N1Yi1tZW51X190b2dnbGU6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnLSc7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgID4gLnNpZGViYXJfX3N1Yi1tZW51IHtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAuNXJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJl9fdG9nZ2xlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gTWVkaXVtJyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkcHJvZmlsZXMtYmx1ZTtcclxuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XHJcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIHRvcDogNnB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMjRweDtcclxuXHJcbiAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcrJztcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2N0YSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGVzbW9rZTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgIC5mb3VuZGF0aW9uICYge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JlZW5pc2gtd2hpdGU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2VhLWJ1Y2t0aG9ybjtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDRweDtcclxuICAgICAgICAgICAgbGVmdDogY2FsYyg1MCUgLSAzMHB4KTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG5cclxuICAgICAgICAgICAgLmZvdW5kYXRpb24gJiB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGU5MmEyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmX19pdGVtIHtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA3MHB4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAuMSk7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAxLjVyZW07XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gM3JlbSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIE1lZGl1bScpO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICMwMDY2YTE7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC45MzhlbTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTI1ZW07XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDUuNXJlbTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjRzIGVhc2Utb3V0LCBjb2xvciAuNHMgZWFzZS1vdXQ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHByb2ZpbGVzLWJsdWU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4yNHMgZWFzZS1vdXQsIGNvbG9yIC4yNHMgZWFzZS1vdXQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4yNHMgZWFzZS1vdXQsIGNvbG9yIC4yNHMgZWFzZS1vdXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAuZm91bmRhdGlvbiAmIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGhvdmVyLXRhbjtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1zZWEtYnVja3Rob3JuO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDNyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDEuNXJlbSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuNHMgZWFzZS1vdXQsIGNvbG9yIC40cyBlYXNlLW91dDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogM3JlbTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLmZvdW5kYXRpb24gJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkYmxvZy10ZWFsO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHByb2ZpbGVzLWJsdWU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLmZvdW5kYXRpb24gJiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRob3Zlci10YW47XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMjRzIGVhc2Utb3V0LCBjb2xvciAuMjRzIGVhc2Utb3V0O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY2FsbCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gTWVkaXVtJyk7XHJcbiAgICAgICAgY29sb3I6ICRvZmYtYmxhY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjkzOHJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgICAuZGggJiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3RlbCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgIGNvbG9yOiAkcGhvbmUtYmx1ZTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3RvZ2dsZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSAxMnB4KTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC40cyBlYXNlLW91dDtcclxuICAgICAgICB3aWR0aDogMjRweDtcclxuXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJHByb2ZpbGVzLWJsdWU7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICfigJMnO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogOHB4O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuNHMgZWFzZS1vdXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZGFyay1uYXZ5O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4yNHMgZWFzZS1vdXQ7XHJcblxyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjI0cyBlYXNlLW91dDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19tb2JpbGUtc3dpdGNoIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwYWRkaW5nOiAxcmVtO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0X3BsdXMpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZfX2J0biB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29uLWFycm93LXdoaXRlLXctbWVkLnN2ZycpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMCUgNTAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgZm9udC1zaXplOiAuODc1cmVtO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMXJlbTtcclxuICAgICAgICAgICAgcGFkZGluZzogOHB4IDEwcHggOHB4IDM0cHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjRzIGVhc2Utb3V0O1xyXG4gICAgICAgICAgICB3aWR0aDogMTI1cHg7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkZWVwLW5hdnk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMgZWFzZS1vdXQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2ljb24tbWVudS1vcGVuLXNtLnN2ZycpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogOCUgNTAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxufVxyXG4iLCIuc3RvcnktY3RhIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAuZGggJiB7XHJcbiAgICAgICAgQGluY2x1ZGUgY29tcG9uZW50LW1hcmdpbi10b3A7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdG9yeS1jdGFfX3N0b3J5LFxyXG4uc3RvcnktY3RhX19zdG9yeS1saW5rLFxyXG4uc3RvcnktY3RhX19pbWctY29udGFpbmVyLFxyXG4uc3RvcnktY3RhX19pbWcsXHJcbi5zdG9yeS1jdGFfX2NvbnRhaW4sXHJcbi5zdG9yeS1jdGFfX3N0b3J5LXF1b3RlIHtcclxuICAgIGhlaWdodDogMTAwJTtcclxufVxyXG5cclxuLnN0b3J5LWN0YV9fc3Rvcnkge1xyXG59XHJcblxyXG4uc3RvcnktY3RhX19zdG9yeS1saW5rIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIC5zdG9yeS1jdGFfX3N0b3J5LXF1b3RlLWxpbmsge1xyXG4gICAgICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdG9yeS1jdGFfX2ltZy1jb250YWluZXIsXHJcbi5zdG9yeS1jdGFfX3N0b3J5LXF1b3RlIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDMyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAzNzBweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgbWluLWhlaWdodDogNDIwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdG9yeS1jdGFfX2ltZy1jb250YWluZXIge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMnMgZWFzZTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAuMjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdG9yeS1jdGFfX2ltZyB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodDtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogMDtcclxuICAgIHRvcDogMDtcclxuXHJcbiAgICAmLS1zbSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLS1tZCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi0tbGcge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc3RvcnktY3RhX19jb250YWluIHtcclxuICAgIEBpbmNsdWRlIGdyaWQtcm93O1xyXG4gICAgcGFkZGluZzogMjBweDtcclxufVxyXG5cclxuLnN0b3J5LWN0YV9fc3RvcnktcXVvdGUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMjtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB3aWR0aDogNjUlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc3RvcnktY3RhX19zdG9yeS1xdW90ZS10ZXh0IHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgIHdpZHRoOiA3MCU7XHJcblxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcblxyXG4gICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHNwYW4ge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc3RvcnktY3RhX19zdG9yeS1xdW90ZS1saW5rIHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQtc21vb3RoaW5nO1xyXG4gICAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlYS1idWNrdGhvcm47XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZzogMThweCAyMHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAyNTBtcyBlYXNlO1xyXG5cclxuICAgICAgICAuZm91bmRhdGlvbiAmIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWN5YW47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXdoaXRlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmFoaWE7XHJcblxyXG4gICAgICAgICAgICAuZm91bmRhdGlvbiAmIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWNvbmRhcnk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcclxuICAgICAgICBAaW5jbHVkZSBpY29uLWNoZXZyb24oJ29yYW5nZS1lJywgNnB4LCAxMHB4LCAxcHgsIDApO1xyXG4gICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkd2hpdGU7XHJcbiAgICAgICAgY29sb3I6ICRvcmFuZ2U7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc3RvcnktY3RhX19jdGFzIHtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgd2lkdGg6IDM1JTtcclxuICAgIH1cclxufVxyXG5cclxuLnN0b3J5LWN0YV9fY3RhIHtcclxuICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICBoZWlnaHQ6IDUwJTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDEwcHggMzBweDtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXg6IDAgMSA1MCU7XHJcbiAgICAgICAgaGVpZ2h0OiA2NXB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgaWNvbi1jaGV2cm9uKCd3aGl0ZS1lJywgNnB4LCAxMHB4LCAxcHgsIDJweCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRuIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgdG9wOiAzcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgICAgICo6bm90KC5idG4pIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYtLXRvcCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyOCwgMTA5LCAxNTMsIDAuOTI1KVxyXG4gICAgfVxyXG5cclxuICAgICYtLWJvdHRvbSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg0LCA0NiwgOTUsIDAuOTI1KTtcclxuICAgIH1cclxuXHJcbn1cclxuIiwiJHRhYmxlLWJnOiAjZmZmICFkZWZhdWx0O1xyXG4kdGFibGUtYmctYWNjZW50OiAjZjNmM2Y0ICFkZWZhdWx0O1xyXG4kdGFibGUtYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICM5N2FjYzI7XHJcbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAkY29sb3ItZ3JheTtcclxuJHRhYmxlLWNlbGwtcGFkZGluZy10b3A6IDE2cHg7XHJcbiR0YWJsZS1jZWxsLXBhZGRpbmctc2lkZTogMjBweDtcclxuJHRhYmxlLWNlbGwtcGFkZGluZy1ib3R0b206IDEycHg7XHJcbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmctdG9wICR0YWJsZS1jZWxsLXBhZGRpbmctc2lkZSAkdGFibGUtY2VsbC1wYWRkaW5nLWJvdHRvbSAhZGVmYXVsdDtcclxuJHRhYmxlLXRoZWFkLWJnOiAjZWVlO1xyXG4kdGFibGUtdGhlYWQtYm9yZGVyOiA0cHggc29saWQgIzExM2U3MztcclxuXHJcbi5kaCB7XHJcbiAgICB0YWJsZSB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLWJvcmRlci1ib3R0b207XHJcblxyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA3IHtcclxuICAgICAgICAgICAgICAgIC8vIE1ha2VzIGFsbCB0ZCBhbmQgdGhzIGEgdW5pZm9ybSB3aWR0aCAtIGh0dHA6Ly9sZWEudmVyb3UubWUvMjAxMS8wMS9zdHlsaW5nLWNoaWxkcmVuLWJhc2VkLW9uLXRoZWlyLW51bWJlci13aXRoLWNzczMvXHJcbiAgICAgICAgICAgICAgICB0ZDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSksXHJcbiAgICAgICAgICAgICAgICB0ZDpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkgfiB0ZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6ICN7MTAwJS8kaX07XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgdGg6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pLFxyXG4gICAgICAgICAgICAgICAgdGg6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIH4gdGgge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAjezEwMCUvJGl9O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGhvdmVyLWN5YW47XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRhYmxlIHtcclxuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gICAgICAgIGNhcHRpb24tc2lkZTogYm90dG9tO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIHRoLFxyXG4gICAgICAgIHRkIHtcclxuICAgICAgICAgICAgLy8gYm9yZGVyOiAkdGFibGUtYm9yZGVyLXdpZHRoIHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTU1cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gQm90dG9tIGFsaWduIGZvciBjb2x1bW4gaGVhZGluZ3NcclxuICAgICAgICA+IHRoZWFkIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXRoZWFkLWJnO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAkdGFibGUtdGhlYWQtYm9yZGVyO1xyXG5cclxuICAgICAgICAgICAgdGgge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICMxMTNlNzM7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcclxuXHJcbiAgICAgICAgICAgICAgICArIHRoIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBBY2NvdW50IGZvciBtdWx0aXBsZSB0Ym9keSBpbnN0YW5jZXNcclxuICAgICAgICA+IHRib2R5ICsgdGJvZHkge1xyXG4gICAgICAgICAgICBib3JkZXItdG9wOiAkdGFibGUtYm9yZGVyLWJvdHRvbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIE5lc3RpbmdcclxuICAgICAgICAudGFibGUge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRhYmxlX19jYXB0aW9uIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4nKTtcclxuICAgICAgICAgICAgY2FwdGlvbi1zaWRlOiBib3R0b207XHJcbiAgICAgICAgICAgIGNvbG9yOiAkdGFibGUtY2FwdGlvbi1jb2xvcjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnRhYmxlLS1zdHJpcGVkIHtcclxuICAgICAgICAgICAgPiB0Ym9keSA+IHRyOm50aC1jaGlsZChldmVuKSB7XHJcbiAgICAgICAgICAgICAgICA+IHRkLFxyXG4gICAgICAgICAgICAgICAgPiB0aCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnLWFjY2VudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi50YWJsZS0tZGlyZWN0b3J5IHtcclxuICAgICAgICAgICAgPiB0aGVhZCxcclxuICAgICAgICAgICAgPiB0Ym9keSB7XHJcbiAgICAgICAgICAgICAgICA+IHRyIHtcclxuICAgICAgICAgICAgICAgICAgICA+IHRoLFxyXG4gICAgICAgICAgICAgICAgICAgID4gdGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPiB0aDpsYXN0LWNoaWxkLFxyXG4gICAgICAgICAgICAgICAgICAgID4gdGQ6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnRhYmxlLS1yZXNwb25zaXZlIHtcclxuICAgICAgICBtYXJnaW46IDNyZW0gMDtcclxuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xyXG5cclxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLnRhYnMge1xyXG4gICAgJGJsb2NrOiAmO1xyXG5cclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgIGJvcmRlcjogMDtcclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0X3BsdXMpIHtcclxuICAgICAgICBvcmRlcjogMTtcclxuICAgIH1cclxuXHJcbiAgICAmX19jb250YWluZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3c7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3dyYXBwZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX25hdiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lcjtcclxuICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgbWFyZ2luOiAxOHB4IDAgMzBweDtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19uYXYtaXRlbSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB0YWJzLXRpdGxlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgID4gYTpmb2N1cywgPiBhW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSwgPiBhOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zZWEtYnVja3Rob3JuO1xyXG5cclxuICAgICAgICAgICAgICAgIC5mb3VuZGF0aW9uICYge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRob3Zlci1jeWFuO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbmF2LWxpbmsge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2lsZC1zYW5kO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgMjUwbXMgZWFzZS1vdXQsIGJhY2tncm91bmQtY29sb3IgMjUwbXMgZWFzZS1vdXQ7XHJcblxyXG4gICAgICAgICAgICAuaXMtYWN0aXZlICYge1xyXG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3RvZ2dsZS1saW5rIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIFNlbWlCb2xkJyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDI3cHggMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmOmFjdGl2ZSxcclxuICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgyNXB4IDZweCk7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgdG9wOiAzOHB4O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcyBlYXNlO1xyXG5cclxuICAgICAgICAgICAgICAgIC5oZWFydC12YXNjdWxhciAmIHtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogY2FsYyg1MCUgLSAxNHB4KTtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc2VhLWJ1Y2t0aG9ybjtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBNZWRpdW0nKTtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCIrXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC40cyBlYXNlLW91dCwgY29sb3IgLjRzIGVhc2Utb3V0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjeyRibG9ja31fX3BsdXMge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDI0cHgpO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDI4cHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDI1MG1zIGVhc2U7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5oZWFydC12YXNjdWxhciAmIHtcclxuICAgICAgICAgICAgPiAudGFic19fcGx1cyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRlbnQge1xyXG4gICAgICAgIEBpbmNsdWRlIHVuc3R5bGVkLWxpc3Q7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVudS1iYXNlO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHRhYnMtY29udGVudDtcclxuICAgICAgICAgICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3BhbmVsIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkY29sb3ItaXJvbjtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICZbYXJpYS1leHBhbmRlZD0ndHJ1ZSddICN7JGJsb2NrfV9fdG9nZ2xlLWxpbmsgI3skYmxvY2t9X19wbHVzIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICZbYXJpYS1leHBhbmRlZD0ndHJ1ZSddICN7JGJsb2NrfV9fdG9nZ2xlLWxpbms6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmhlYXJ0LXZhc2N1bGFyICYge1xyXG4gICAgICAgICAgICAgICAgJlthcmlhLWV4cGFuZGVkPSd0cnVlJ10gI3skYmxvY2t9X190b2dnbGUtbGluazo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIi1cIjtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXNlYS1idWNrdGhvcm47XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgdGFicy1wYW5lbDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gdWwge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB1bnN0eWxlZC1saXN0O1xyXG5cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3c7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19jb2x1bW5zIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtcm93O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19pbWFnZS13cmFwcGVyIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbig0LCA0MHB4KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICN7JGJsb2NrfV9fcGx1cyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMzRweCk7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAzNXB4O1xyXG4gICAgICAgICAgICAgICAgdG9wOiA0NXB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzaXplKDUzcHgpO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMzVweDtcclxuICAgICAgICAgICAgICAgIHRvcDogMzVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19pbWFnZS1pbm5lciB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICAmX19pbWFnZSB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJvcmRlcjogc29saWQgMzBweCB3aGl0ZTtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMjQwcHgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19jb3B5IHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDgsIDQwcHgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX190aXRsZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG4gICAgICAgIC5mb3VuZGF0aW9uICYge1xyXG4gICAgICAgICAgICBjb2xvcjogJGhvdmVyLXRhbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIudGlsZXMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdpbGQtc2FuZDtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA1NXB4O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2NvbnRhaW5lciB7XHJcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1yb3c7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19jb250ZW50IHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgzKTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdGl0bGUge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjhweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZGVzY3JpcHRpb24ge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTZweDtcclxuICAgIH1cclxuXHJcbiAgICAgICAgYTpob3ZlciB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19saXN0IHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2hpdGU7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICAtbXMtZmxleDogMSAwIGF1dG87XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbWVudS1iYXNlO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHVuc3R5bGVkLWxpc3Q7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2l0ZW0ge1xyXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJGNvbG9yLWlyb247XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblxyXG4gICAgICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9J3RydWUnXSAudGlsZXNfX3BsdXMge1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJlthcmlhLWV4cGFuZGVkPSd0cnVlJ10gLnRpbGVzX190b2dnbGUtbGluazo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICZbYXJpYS1leHBhbmRlZD0ndHJ1ZSddIC50aWxlc19fdG9nZ2wge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXNlYS1idWNrdGhvcm47XHJcblxyXG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiLVwiXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMTBweCA1N3B4IDAgcmdiYSgzNSwgMzEsIDMyLCAuMDgpO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDQycHg7XHJcblxyXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDEgMSBwZXJjZW50YWdlKDM1NiAvIDEwMDApO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTM0cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNTRweDtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMiksXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAxIDEgcGVyY2VudGFnZSgzMjIgLyAxMDAwKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xyXG4gICAgICAgICAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICBvcmRlcjogMztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX190b2dnbGUtbGluayB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDI3cHggMjBweCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgc2l6ZSgyNXB4IDZweCk7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgdG9wOiA0MnB4O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcyBlYXNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3N1Yi10aXRsZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19wbHVzIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHNpemUoMjRweCk7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgIHRvcDogMzJweDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcyBlYXNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX191cmdlbnQtY2FyZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDIwNXB4IDIwcHgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBzaXplKDI1MnB4IDI0cHgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19zdWItbGlzdCB7XHJcbiAgICAgICAgQGluY2x1ZGUgdW5zdHlsZWQtbGlzdDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fc3ViLWl0ZW0ge1xyXG4gICAgICAgIGE6aG92ZXIge1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdG9nZ2wge1xyXG4gICAgICAgIGhlaWdodDogMjhweDtcclxuICAgICAgICB3aWR0aDogMjhweDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDE4cHg7XHJcbiAgICAgICAgdG9wOiAzMnB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICBmb250LXNpemU6IDIuMnJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zZWEtYnVja3Rob3JuO1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIE1lZGl1bScpO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC40cyBlYXNlLW91dCwgY29sb3IgLjRzIGVhc2Utb3V0O1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiK1wiXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8vIFRvb2x0aXBcclxuXHJcbi50b29sdGlwIHtcclxuICAgIGRpc3BsYXk6IGlubGluZTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG59XHJcblxyXG4udG9vbHRpcF9fdG9nZ2xlIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDVweCAxMnB4O1xyXG4gICAgY29udGVudDogJ1xcMGEwMCc7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICBsZWZ0OiAzcHg7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6IC01cHg7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbiAgICB3aWR0aDogNnB4O1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAmLnRvb2x0aXBfX3RvZ2dsZS0td2hpdGUge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL21pY3Jvc2l0ZXRlbXBsYXRlcy9hc3NldHMvaW1nL3N2Zy9pY29uLWluZm8td2hpdGUuc3ZnJyk7XHJcbiAgICB9XHJcblxyXG4gICAgJi50b29sdGlwX190b2dnbGUtLWJsdWUge1xyXG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2Fzc2V0cy9pbWcvc3ZnL2ljb24taW5mby1ibHVlLnN2ZycpO1xyXG4gICAgfVxyXG59XHJcblxyXG4udG9vbHRpcF9fcG9wdXAge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMxY2IwZDU7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMjBweCA1cHggcmdiYSgwLCAwLCAwLCAuMTUpO1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDEwMDtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgbGVmdDogMjBweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIHJpZ2h0OiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICBsZWZ0OiAtMzFweDtcclxuICAgICAgICB0b3A6IDMwcHg7XHJcbiAgICAgICAgd2lkdGg6IDQyNXB4O1xyXG4gICAgfVxyXG5cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkICR3aGl0ZTtcclxuICAgICAgICBib3JkZXItbGVmdDogMThweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXItcmlnaHQ6IDE4cHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IC0xMHB4O1xyXG4gICAgICAgIHdpZHRoOiAwO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgbGVmdDogY2FsYyg1MCUgLSAxOHB4KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcclxuICAgICAgICAgICAgbGVmdDogY2FsYyg1MCUgLSAxOHB4KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgbGVmdDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5pcy1vcGVuIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxufVxyXG5cclxuLnRvb2x0aXBfX2J0bi1jbG9zZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9taWNyb3NpdGV0ZW1wbGF0ZXMvYXNzZXRzL2ltZy9zdmcvaWNvbi1jbG9zZS1jeWFuLnN2ZycpO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogMTVweCAxNXB4O1xyXG4gICAgaGVpZ2h0OiAxNXB4O1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgcmlnaHQ6IDhweDtcclxuICAgIHRvcDogOHB4O1xyXG4gICAgd2lkdGg6IDE1cHg7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4udG9vbHRpcF9fcG9wdXAtaW5uZXIge1xyXG4gICAgY29sb3I6ICRibGFjaztcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcblxyXG4gICAgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi50b29sdGlwX19wb3B1cC10aXRsZSB7XHJcbiAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcbiIsIi8vIExpbmtzXHJcbmEge1xyXG4gICAgY29sb3I6ICRjb2xvci1wcmltYXJ5O1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgMjUwbXMgZWFzZTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcclxuICAgIH1cclxufVxyXG5cclxuLmxpbmstY2hldnJvbiB7XHJcbiAgICAmLS1ibHVlIHtcclxuICAgICAgICBAaW5jbHVkZSBpY29uLWNoZXZyb24oJ2JsdWUtZScsIDVweCwgOHB4LCAxcHgsIDFweCk7XHJcbiAgICAgICAgY29sb3I6ICRoZXJvVGh1bWJBY2NlbnRDb2xvclRleHQ7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGhvdmVyLWN5YW47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5ociB7XHJcbiAgICBjb2xvcjogJGNvbG9yLWlyb247XHJcbiAgICBtYXJnaW46IDIuNzVyZW0gMDtcclxufVxyXG5cclxuLy8gQnV0dG9uc1xyXG4uYnV0dG9uIHtcclxuICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi8vIFRleHRcclxuaDEge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgY29sb3I6ICRjb2xvci13aGl0ZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbmgyLFxyXG4uaDIge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbn1cclxuXHJcbmgzLFxyXG4uaDMge1xyXG4gICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gU2VtaUJvbGQnKTtcclxuICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbn1cclxuXHJcbi5jb250ZW50LFxyXG4uY29udGVudF9fY29udGFpbmVyIHtcclxuICAgID4gLnJ0ZixcclxuICAgIC5jb250ZW50X19jb3B5LS1mdWxsID4gLnJ0ZixcclxuICAgIC50YWJzX19jb3B5ID4gLnJ0ZiB7XHJcbiAgICAgICAgPiBoMSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzRweDtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1hbGxwb3J0cztcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgPiBoMixcclxuICAgICAgICA+IC5oMiB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IGgzLFxyXG4gICAgICAgID4gLmgzIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xyXG5cclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gaDQsXHJcbiAgICAgICAgPiAuaDQge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIycHg7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gaDUsXHJcbiAgICAgICAgPiAuaDUge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgID4gaDYsXHJcbiAgICAgICAgPiAuaDYge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcblxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmRoIHtcclxuICAgIGg2LFxyXG4gICAgLmg2IHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMS43NXJlbTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLnVwY29taW5nLWV2ZW50cyB7XHJcbiAgICBiYWNrZ3JvdW5kOiAkZ3JlZW5pc2gtd2hpdGU7XHJcbiAgICBwYWRkaW5nOiAzMHB4IDAgMzVweDtcclxuXHJcbiAgICAmLS13aGl0ZS1iZyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG5cclxuICAgICYtLXdpbGRzYW5kLWJnIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itd2lsZC1zYW5kO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICBwYWRkaW5nOiA0MHB4IDAgNDVweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBtcSgkbWluLCAkdGFibGV0X3BsdXMpIHtcclxuICAgICAgICBwYWRkaW5nOiA2MHB4IDAgNjVweDtcclxuICAgIH1cclxuXHJcbiAgICAmX193cmFwIHtcclxuICAgICAgICBAaW5jbHVkZSBjb250YWluKCk7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDE2cHg7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjM3NWVtO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM3NWVtO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgICAgIC5mb3VuZGF0aW9uICYge1xyXG4gICAgICAgICAgICBjb2xvcjogJGhvdmVyLXRhbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kaCAmIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDVweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fbGlzdGluZyB7XHJcbiAgICAgICAgQGV4dGVuZCAudHdvLWdyaWRfX3dyYXA7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0byA0MHB4O1xyXG4gICAgICAgIG1heC13aWR0aDogNDgwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHBhbG1fc20pIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCA1MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDg5MnB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDJyZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGggJiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19pdGVtIHtcclxuICAgICAgICBAZXh0ZW5kIC50d28tZ3JpZF9faXRlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogOThweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIG1xKCRtaW4sICR0YWJsZXQpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19iaWctZGF0ZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRkYXRlLWdyYXktYWx0O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XHJcbiAgICAgICAgY29sb3I6IHdoaXRlc21va2U7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNWVtO1xyXG4gICAgICAgIGhlaWdodDogODBweDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM3NXJlbTtcclxuICAgICAgICBwYWRkaW5nOiAxOXB4IDIwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICB3aWR0aDogODBweDtcclxuXHJcbiAgICAgICAgLmZvdW5kYXRpb24gJiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRkYXRlLWdyYXk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGggJiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICM5M2MyNDM7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5udW0ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZXZlbnQtbmFtZSB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogLjg3NXJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4zMjVyZW07XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkcHJvZmlsZXMtYmx1ZTtcclxuXHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkaG92ZXItY3lhbjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcblxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19mdWxsLWRhdGUge1xyXG4gICAgICAgIC5kaCAmIHtcclxuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZnVsbC1kYXRlLFxyXG4gICAgJl9fYWRkcmVzcyB7XHJcbiAgICAgICAgQGluY2x1ZGUgZm9udCgnQ2FiaW4gQm9sZCcpO1xyXG4gICAgICAgIGNvbG9yOiAkZXZlbnQtZ3JheTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBmb250LXNpemU6IC44NzVyZW07XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzI1cmVtO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XHJcblxyXG4gICAgICAgIC5mb3VuZGF0aW9uICYge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2FkZHJlc3Mge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluJyk7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19saW5rIHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBCb2xkJyk7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMC45MzhlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4zNzVlbTtcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgbXEoJG1pbiwgJHRhYmxldCkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6ICRibG9nLXRlYWw7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRibG9nLXRlYWw7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGljb21vb24oKTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibG9nLXRlYWw7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRpY29uLWFuZ2xlLXJpZ2h0O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMjdweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjdweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmRoICYge1xyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGljb24tY2hldnJvbignb3JhbmdlLWUnLCA2cHgsIDEwcHgsIDJweCwgMCk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXNlYS1idWNrdGhvcm47XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLnV0aWxpdHktbmF2aWdhdGlvbiB7XHJcbiAgICAkYmxvY2s6ICY7XHJcblxyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXdpbGQtc2FuZDtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmX19jb250YWluZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdztcclxuICAgIH1cclxuXHJcbiAgICAmX19saXN0IHtcclxuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XHJcbiAgICAgICAgQGluY2x1ZGUgbWVudS1iYXNlO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faXRlbSB7XHJcbiAgICAgICAgcGFkZGluZzogMTNweCA3cHg7XHJcblxyXG4gICAgICAgICYtLXNlYXJjaCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2xpbmsge1xyXG4gICAgICAgIEBpbmNsdWRlIGZvbnQoJ0NhYmluIEJvbGQnKTtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG5cclxuICAgICAgICAmLFxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjphY3RpdmUsXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAjeyRibG9ja31fX2l0ZW06Zmlyc3QtY2hpbGQgJiB7XHJcbiAgICAgICAgICAgICYsXHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYmxhY2s7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6YWN0aXZlLFxyXG4gICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvci1ibGFjaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgJl9fc2VhcmNoIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc2VhLWJ1Y2t0aG9ybjtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcclxuICAgICAgICBtYXJnaW4tbGVmdDogN3B4O1xyXG4gICAgICAgIHBhZGRpbmc6IDlweCAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjI1cyBlYXNlLW91dDtcclxuICAgICAgICB3aWR0aDogNDBweDtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgaWNvbW9vbigpO1xyXG4gICAgICAgICAgICBjb250ZW50OiAkaWNvbi1zZWFyY2g7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWJhaGlhO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gLmRoICYge1xyXG4gICAgICAgIC8vICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYXRsYW50aXM7XHJcbiAgICAgICAgLy8gfVxyXG5cclxuICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1hbGxwb3J0cztcclxuXHJcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi1jbG9zZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3Itc3QtdHJvcGF6O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmX19pbWFnZSB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjJweDtcclxuICAgICAgICAgICAgd2lkdGg6IDIycHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uZGgge1xyXG4gICAgLnV0aWxpdHktbmF2aWdhdGlvbl9faXRlbTpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgLnV0aWxpdHktbmF2aWdhdGlvbl9fbGluayB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItYWxscG9ydHM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4udXRpbGl0eS1zZWFyY2gge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fd3JhcCB7XHJcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93O1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5nc2MtY29udHJvbC1zZWFyY2hib3gtb25seSB7XHJcbiAgICAgICAgaGVpZ2h0OiAzNHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGZvcm0uZ3NjLXNlYXJjaC1ib3gge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIHdpZHRoOiA3NSU7XHJcblxyXG4gICAgICAgIHRhYmxlLmdzYy1zZWFyY2gtYm94IHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRkLmdzYy1pbnB1dCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzRweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDM0cHgpO1xyXG5cclxuICAgICAgICAgICAgLmdzYy1pbnB1dC1ib3gge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlucHV0IHtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMzRweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ3NjLXNlYXJjaC1ib3ggdHIge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0ZC5nc2Mtc2VhcmNoLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDM0cHg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgd2lkdGg6IDM0cHg7XHJcblxyXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgaWNvbW9vbigpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlYS1idWNrdGhvcm47XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJGljb24tc2VhcmNoO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDZweDtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cyBlYXNlLW91dDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWJhaGlhO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBidXR0b24uZ3NjLXNlYXJjaC1idXR0b24tdjIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMzRweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzRweDtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMzRweDtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDk5OTlweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzNHB4O1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcclxuXHJcbiAgICAgICAgICAgICAgICBzdmcge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5nc2MtY2xlYXItYnV0dG9uIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fZmllbGQge1xyXG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICRjb2xvci1zZWEtYnVja3Rob3JuO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICBoZWlnaHQ6IDM0cHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAxMHB4O1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzNHB4KTtcclxuICAgIH1cclxuXHJcbiAgICAmX19zdWJtaXQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1zZWEtYnVja3Rob3JuO1xyXG4gICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICBoZWlnaHQ6IDM0cHg7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuMjVzIGVhc2Utb3V0O1xyXG4gICAgICAgIHdpZHRoOiAzNHB4O1xyXG5cclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItYmFoaWE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDUwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDUwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi51dGlsaXR5LXNlYXJjaC0tbW9iaWxlIHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1hbGxwb3J0cztcclxuICAgIGJveC1zaGFkb3c6IDAgMCA2cHggcmdiYSgkYmxhY2ssIDApO1xyXG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAuMjVzIGVhc2Utb3V0O1xyXG5cclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMTJweCByZ2JhKCRibGFjaywgLjY1KTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuZ3NjLWNvbnRyb2wtc2VhcmNoYm94LW9ubHkge1xyXG4gICAgICAgIGhlaWdodDogMzRweDtcclxuICAgIH1cclxuXHJcbiAgICBmb3JtLmdzYy1zZWFyY2gtYm94IHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICB0YWJsZS5nc2Mtc2VhcmNoLWJveCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0ZC5nc2MtaW5wdXQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDM0cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzNHB4KTtcclxuXHJcbiAgICAgICAgICAgIC5nc2MtaW5wdXQtYm94IHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaW5wdXQge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzNHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRkLmdzYy1zZWFyY2gtYnV0dG9uIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzRweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB3aWR0aDogMzRweDtcclxuXHJcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBpY29tb29uKCk7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2VhLWJ1Y2t0aG9ybjtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi1zZWFyY2g7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNnB4O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMjVzIGVhc2Utb3V0O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAwO1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmFoaWE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGJ1dHRvbi5nc2Mtc2VhcmNoLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2VhLWJ1Y2t0aG9ybjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL01pY3Jvc2l0ZVRlbXBsYXRlcy9hc3NldHMvaW1nL3N2Zy9zZWFyY2guc3ZnJyk7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMzRweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzRweDtcclxuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMzRweDtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDk5OTlweDtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cyBlYXNlLW91dDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAzNHB4O1xyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmFoaWE7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgc3ZnIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZ3NjLWNsZWFyLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4udXRpbGl0eS1zZWFyY2hfX2Zvcm0ge1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC5pY29uLXNlYXJjaCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlYS1idWNrdGhvcm47XHJcbiAgICAgICAgLy9iYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9pY29uLXNlYXJjaC5qcGcnKTtcclxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XHJcbiAgICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHdpZHRoOiAzMnB4O1xyXG5cclxuICAgICAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHRvcDogNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyAuZGggJiB7XHJcbiAgICAgICAgLy8gICAgIGJhY2tncm91bmQ6ICRjb2xvci1hdGxhbnRpcztcclxuICAgICAgICAvLyB9XHJcbiAgICB9XHJcblxyXG4gICAgIC8vZGlzYWJsZSB2aXN1YWwgYnV0dG9uIC0gYWxsb3cgcmVhbCBzdWJtaXQgdG8gc3VibWl0XHJcbiAgICAgYS5pY29uLXNlYXJjaCB7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLnV0aWxpdHktc2VhcmNoX19pbnB1dCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICAgICAgcGFkZGluZzogMCAxcmVtO1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzMnB4KTtcclxuICAgIH1cclxufVxyXG5cclxuLm1vYmlsZS1zZWFyY2gge1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiA1NXB4O1xyXG4gICAgdG9wOiAxMHB4O1xyXG4gICAgd2lkdGg6IDUwcHg7XHJcblxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1hbGxwb3J0cztcclxuXHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXN0LXRyb3BhejtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJl9faW1hZ2Uge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBoZWlnaHQ6IDYwJTtcclxuICAgICAgICB3aWR0aDogNjAlO1xyXG4gICAgfVxyXG59XHJcblxyXG4udXRpbGl0eS1uYXZpZ2F0aW9uLS1tb2JpbGUge1xyXG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNlNmU3ZTg7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgcGFkZGluZzogMTBweCAwO1xyXG5cclxuICAgIC51dGlsaXR5LW5hdmlnYXRpb25fX2NvbnRhaW5lciB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC51dGlsaXR5LW5hdmlnYXRpb25fX2xpc3Qge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC51dGlsaXR5LW5hdmlnYXRpb25fX2l0ZW0ge1xyXG4gICAgICAgIHBhZGRpbmc6IDE0cHggMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAudXRpbGl0eS1uYXZpZ2F0aW9uX19saW5rIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuXHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmFjdGl2ZSxcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9IFxyXG59IiwiLndhaXQtdGltZSB7XHJcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgJGNvbG9yLWlyb247XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgJl9fY29udGFpbmVyIHtcclxuICAgICAgICBAaW5jbHVkZSBncmlkLXJvdztcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmX19jb3B5IHtcclxuICAgICAgICBAaW5jbHVkZSBmb250KCdDYWJpbiBTZW1pQm9sZCcpO1xyXG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWFsbHBvcnRzO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2J1dHRvbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIkBtZWRpYSBwcmludCB7XHJcbiAgICAqLCAqOmJlZm9yZSwgKjphZnRlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgICAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50OyAvKiBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zICovXHJcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgYSxcclxuICAgIGE6dmlzaXRlZCB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICB9XHJcblxyXG4gICAgYVtocmVmXTphZnRlciB7XHJcbiAgICAgICAgLy9jb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcclxuICAgIH1cclxuXHJcbiAgICBhYmJyW3RpdGxlXTphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgLy9jb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XHJcbiAgICB9XHJcblxyXG4gICAgLypcclxuICAgICAqIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXHJcbiAgICAgKiBvciB1c2UgdGhlIGBqYXZhc2NyaXB0OmAgcHNldWRvIHByb3RvY29sXHJcbiAgICAgKi9cclxuXHJcbiAgICBhW2hyZWZePVwiI1wiXTphZnRlcixcclxuICAgIGFbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICB9XHJcblxyXG4gICAgcHJlLFxyXG4gICAgYmxvY2txdW90ZSB7XHJcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xyXG4gICAgfVxyXG5cclxuICAgIHRoZWFkIHtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IC8qIGg1YnAuY29tL3QgKi9cclxuICAgIH1cclxuXHJcbiAgICB0cixcclxuICAgIGltZyxcclxuICAgIHNlY3Rpb24ge1xyXG4gICAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIHAsXHJcbiAgICBoMixcclxuICAgIGgzIHtcclxuICAgICAgICBvcnBoYW5zOiAzO1xyXG4gICAgICAgIHdpZG93czogMztcclxuICAgIH1cclxuXHJcbiAgICBoMixcclxuICAgIGgzIHtcclxuICAgICAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcclxuICAgIH1cclxuXHJcbiAgICAuaGVhZGVyX19tYWluIHtcclxuICAgICAgICBoZWlnaHQ6IDYwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgaW1nLmhlYWRlcl9fdXJnZW50LWNhcmUsXHJcbiAgICBpbWcuaGVhZGVyX19oZWFydC12YXNjdWxhciB7XHJcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgfVxyXG4gICAgLy8gRm91bmRhdGlvbiBzcGVjaWZpY1xyXG5cclxuICAgIC5mb290ZXJfX3VwcGVyLWlubmVyIHtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgfVxyXG5cclxuICAgIC5mb290ZXJfX2xvd2VyLWlubmVyIHtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgfVxyXG5cclxuICAgIC5wcm9maWxlc19faXRlbSB7XHJcbiAgICAgICAgd2lkdGg6IDIyLjUlO1xyXG4gICAgfVxyXG5cclxuICAgIC5wb3N0LWxpc3RpbmdfX2xpc3RpbmcsXHJcbiAgICAudXBjb21pbmctZXZlbnRzX19saXN0aW5nIHtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICB9XHJcblxyXG4gICAgLmFkZGl0aW9uYWwtZmVhdHVyZV9fd3JhcCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA5ODBweDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgfVxyXG5cclxuICAgIC5hZGRpdGlvbmFsLWZlYXR1cmVfX2ltYWdlIHtcclxuICAgICAgICB3aWR0aDogNDUlO1xyXG4gICAgICAgIG9yZGVyOiAxO1xyXG4gICAgfVxyXG5cclxuICAgIC5hZGRpdGlvbmFsLWZlYXR1cmVfX2NvbnRlbnQge1xyXG4gICAgICAgIHdpZHRoOiA1MiU7XHJcbiAgICAgICAgb3JkZXI6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnVwY29taW5nLWV2ZW50c19fbGlzdGluZyB7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgfVxyXG5cclxuICAgIC51cGNvbWluZy1ldmVudHNfX2l0ZW0ge1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICB9XHJcblxyXG4gICAgLnBvc3QtbGlzdGluZ19faXRlbSB7XHJcbiAgICAgICAgd2lkdGg6IDMwJTtcclxuICAgIH1cclxuXHJcbiAgICAucHJvZmlsZXNfX2l0ZW1fX292ZXJsYXkge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBIaWRlXHJcbiAgICAuYWxlcnQsXHJcbiAgICAudXRpbGl0eS1uYXZpZ2F0aW9uLFxyXG4gICAgLnByaW1hcnktbmF2aWdhdGlvbixcclxuICAgIC5oZXJvIC5zaGFyZSxcclxuICAgIC5jYXJvdXNlbF9fYXJyb3csXHJcbiAgICAuZm9vdGVyX19jb250YWN0LFxyXG4gICAgLmZvb3Rlcl9fbmF2aWdhdGlvbixcclxuICAgIC5mb290ZXJfX2xlZ2FsLW5hdmlnYXRpb24sXHJcbiAgICAuc2lkZWJhcl9fbW9iaWxlLXN3aXRjaCxcclxuICAgIC5wb3N0LWxpc3RpbmdfX2xpbmssXHJcbiAgICAudXBjb21pbmctZXZlbnRzX19saW5rLFxyXG4gICAgLnBhZ2luYXRpb25cclxuICAgICB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4iXX0= */
